import { Freight } from "@edr/types";
import { Type } from "class-transformer";
import { IsEnum, IsInt, IsOptional, IsUUID, Min } from "class-validator";

export class FilterConsignmentDto {
  @IsOptional()
  @IsEnum(Freight.ConsignmentStatus)
  status?: Freight.ConsignmentStatus;

  @IsOptional()
  @IsUUID()
  bookingId?: string;

  @IsOptional()
  @Type(() => Number)
  @IsInt()
  @Min(1)
  page?: number = 1;

  @IsOptional()
  @Type(() => Number)
  @IsInt()
  @Min(1)
  pageSize?: number = 20;
}
