import { BaseEntity } from './base.entity';
import { Conversation } from './conversation.entity';
import { User } from './user.entity';
import { Column, Entity, Index, ManyToOne } from 'typeorm';

@Entity('conversation_members')
@Index(['conversation', 'user'], { unique: true })
export class ConversationMember extends BaseEntity {
  @ManyToOne(() => Conversation, (conversation) => conversation.members, {
    onDelete: 'CASCADE',
  })
  conversation: Conversation;

  @ManyToOne(() => User, { onDelete: 'CASCADE' })
  user: User;

  @Column({ type: 'datetime', nullable: true })
  lastReadAt: Date | null;
}
