import { Column, Entity, Index, JoinColumn, OneToOne, PrimaryGeneratedColumn, } from "typeorm"; import { User } from "./User"; @Index("PK_user_config", ["id"], { unique: true }) @Index("IX_user_config_user_id", ["userId"], { unique: true }) @Entity("user_config", { schema: "sec" }) export class UserConfig { @PrimaryGeneratedColumn({ type: "integer", name: "id" }) id: number; @Column("timestamp without time zone", { name: "created_date" }) createdDate: Date; @Column("integer", { name: "created_by" }) createdBy: number; @Column("timestamp without time zone", { name: "modified_date" }) modifiedDate: Date; @Column("integer", { name: "modified_by" }) modifiedBy: number; @Column("jsonb", { name: "ab_test", nullable: true }) abTest: object | null; @Column("integer", { name: "user_id" }) userId: number; @OneToOne(() => User, (user) => user.userConfig, { onDelete: "CASCADE" }) @JoinColumn([{ name: "user_id", referencedColumnName: "id" }]) user: User; }