import { Column, Entity, PrimaryColumn } from 'typeorm'; @Entity('room_roles') export class RoomRoleEntity { @PrimaryColumn('text') roomId!: string; @PrimaryColumn('text') roleId!: string; @Column('text') name!: string; @Column('text', { nullable: true }) color!: string | null; @Column('integer') position!: number; @Column('integer', { default: 0 }) isSystem!: number; @Column('text', { default: 'inherit' }) manageServer!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) manageRoles!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) manageChannels!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) manageIcon!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) kickMembers!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) banMembers!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) manageBans!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) deleteMessages!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) joinVoice!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) shareScreen!: 'allow' | 'deny' | 'inherit'; @Column('text', { default: 'inherit' }) uploadFiles!: 'allow' | 'deny' | 'inherit'; }