Files
Fabric.Backend.Center/src/entities/guild-node.entity.ts

42 lines
732 B
TypeScript

import {
Column,
CreateDateColumn,
Entity,
PrimaryGeneratedColumn,
UpdateDateColumn,
} from 'typeorm';
@Entity('guild_nodes')
export class GuildNode {
@PrimaryGeneratedColumn('uuid')
id!: string;
@Column({ unique: true })
nodeId!: string;
@Column()
name!: string;
@Column()
endpoint!: string;
@Column({ type: 'varchar', length: 255, nullable: true })
apiKeyHash!: string | null;
@Column({
type: 'enum',
enum: ['active', 'offline', 'revoked'],
default: 'active',
})
status!: 'active' | 'offline' | 'revoked';
@Column({ type: 'datetime', nullable: true })
lastHeartbeatAt!: Date | null;
@CreateDateColumn()
createdAt!: Date;
@UpdateDateColumn()
updatedAt!: Date;
}