import { IsEnum, IsOptional, IsString, IsNotEmpty, IsBoolean } from 'class-validator'

export class CreateDocumentDto {
  @IsString() @IsNotEmpty()
  clientFolderId: string

  @IsOptional() @IsString() matterId?: string

  @IsString() @IsNotEmpty()
  title: string

  @IsEnum(['contract', 'pleading', 'correspondence', 'evidence', 'court_order', 'internal', 'other'])
  documentType: string

  @IsEnum(['privileged', 'non_privileged', 'work_product'])
  privilege: string

  @IsString() @IsNotEmpty()
  storageRef: string

  @IsOptional() @IsString() version?: string
  @IsOptional() @IsString() notes?: string
  @IsOptional() @IsBoolean() signed?: boolean
}
