import { Type } from 'class-transformer' import { IsNotEmpty, IsOptional, IsString, ValidateNested } from 'class-validator' import { AppointmentCancellationReasons } from '../../../../models/enums/appointment_cancellation_reasons.enum' import { AuthBaseParams } from '../../../../params' export class CancelInput { @IsString() @IsNotEmpty() appointment_id: string @IsOptional() @IsString() cancellation_reason?: AppointmentCancellationReasons @IsOptional() cancellation_comment?: string } export class CancelParams extends AuthBaseParams { @IsNotEmpty() @ValidateNested() @Type(() => CancelInput) readonly input: CancelInput }