import { Entity, Column, PrimaryGeneratedColumn, CreateDateColumn, UpdateDateColumn, Index, OneToMany } from 'typeorm';
import { BreachRecord } from './breach-data.entity';

@Entity('breached_record_identifiers')
export class BreachedRecordIdentifier {
  @PrimaryGeneratedColumn()
  id: number;

  @Column({ type: 'varchar' })
  type: 'email' | 'phone';

  @Column({ type: 'varchar' })
  @Index()
  value: string;

  @OneToMany(() => BreachRecord, breach => breach.identifier)
  breaches: BreachRecord[];

  @CreateDateColumn({ name: 'created_at', type: 'timestamp' })
  createdAt: Date;

  @UpdateDateColumn({ name: 'updated_at', type: 'timestamp' })
  updatedAt: Date;
}
