import { Transform, Type } from 'class-transformer' import { BaseModel } from '../../base.model' import { parseDate } from '../../../utils/date' import { CompetitionCategories } from './enums/categories.enum' import { CompetitionCategory } from './category' import { CompetitionCompetitor } from './competitor' export class Competition extends BaseModel { id: string title: string category: CompetitionCategories patient_id: string winner_id: string link: string @Transform(value => parseDate(value), { toClassOnly: true }) created_at: Date @Transform(value => parseDate(value), { toClassOnly: true }) finished_at: Date @Transform(value => parseDate(value), { toClassOnly: true }) will_end_at: Date @Transform(value => parseDate(value), { toClassOnly: true }) cancelled_at: Date @Type(() => CompetitionCompetitor) competitors: CompetitionCompetitor[] @Type(() => CompetitionCategory) competition_category: CompetitionCategory }