51 lines
933 B
TypeScript
51 lines
933 B
TypeScript
import {
|
|
Entity,
|
|
PrimaryColumn,
|
|
Column
|
|
} from 'typeorm';
|
|
|
|
@Entity('rooms')
|
|
export class RoomEntity {
|
|
@PrimaryColumn('text')
|
|
id!: string;
|
|
|
|
@Column('text')
|
|
name!: string;
|
|
|
|
@Column('text', { nullable: true })
|
|
description!: string | null;
|
|
|
|
@Column('text', { nullable: true })
|
|
topic!: string | null;
|
|
|
|
@Column('text')
|
|
hostId!: string;
|
|
|
|
@Column('text', { nullable: true })
|
|
password!: string | null;
|
|
|
|
@Column('integer', { default: 0 })
|
|
isPrivate!: number;
|
|
|
|
@Column('integer')
|
|
createdAt!: number;
|
|
|
|
@Column('integer', { default: 0 })
|
|
userCount!: number;
|
|
|
|
@Column('integer', { nullable: true })
|
|
maxUsers!: number | null;
|
|
|
|
@Column('text', { nullable: true })
|
|
icon!: string | null;
|
|
|
|
@Column('integer', { nullable: true })
|
|
iconUpdatedAt!: number | null;
|
|
|
|
@Column('text', { nullable: true })
|
|
permissions!: string | null;
|
|
|
|
@Column('text', { nullable: true })
|
|
channels!: string | null;
|
|
}
|