import { IsEnum, IsInt, IsOptional, IsString, IsUUID, Max, Min } from 'class-validator';
import { Type } from 'class-transformer';
import { LabCaseTabReadTarget } from '@prisma/client';

export class MarkTabReadDto {
  @IsEnum(LabCaseTabReadTarget)
  tab!: LabCaseTabReadTarget;
}

export class MarkCaseReadDto {
  @IsUUID()
  labCaseId!: string;
}

export class ListInboxQueryDto {
  @IsOptional()
  @Type(() => Number)
  @IsInt()
  @Min(1)
  @Max(50)
  limit?: number;

  @IsOptional()
  @IsString()
  cursor?: string;
}
