import { Column, Entity, JoinColumn, ManyToOne, PrimaryGeneratedColumn, Unique } from 'typeorm'; import { UserEntity } from './user.entity'; import { AlbumEntity } from './album.entity'; @Entity('user_shared_album') @Unique('PK_unique_user_in_album', ['albumId', 'sharedUserId']) export class UserAlbumEntity { @PrimaryGeneratedColumn() id!: string; @Column() albumId!: string; @Column() sharedUserId!: string; @ManyToOne(() => AlbumEntity, (album) => album.sharedUsers, { onDelete: 'CASCADE', nullable: true, }) @JoinColumn({ name: 'albumId' }) albumInfo!: AlbumEntity; @ManyToOne(() => UserEntity) @JoinColumn({ name: 'sharedUserId' }) userInfo!: UserEntity; }