import { Group } from './group.entity';
import { BaseEntity } from './base.entity';
import { Entity, JoinColumn, OneToMany, OneToOne } from 'typeorm';
import { ConversationMember } from './conversation-member.entity';
import { Message } from './message.entity';

@Entity('conversations')
export class Conversation extends BaseEntity {
  @OneToOne(() => Group, { onDelete: 'CASCADE' })
  @JoinColumn()
  group: Group;

  @OneToMany(() => ConversationMember, (member) => member.conversation)
  members: ConversationMember[];

  @OneToMany(() => Message, (message) => message.conversation)
  messages: Message[];
}
