import { IsIn, IsOptional, IsString, IsUUID, MaxLength, MinLength, ValidateIf } from 'class-validator'; export class ResolveAssetImportPlanItemDto { @IsIn(['CREATE', 'MATCH', 'IGNORE']) action!: 'CREATE' | 'MATCH' | 'IGNORE'; @ValidateIf((value: ResolveAssetImportPlanItemDto) => value.action === 'MATCH') @IsUUID('4') matchedAssetId?: string; @IsString() @MinLength(5) @MaxLength(1000) reason!: string; }