import { ApiPropertyOptional } from '@nestjs/swagger';
import { IsBoolean, IsEnum, IsOptional, IsString, MaxLength } from 'class-validator';
import { CreatePersonaDto } from 'src/personas/dto/create-persona.dto';

export enum TipoAgente {
  TRANSPORTE = 'transporte',
  ADUANAS = 'aduanas',
  AMBOS = 'ambos',
}

export class CreateAgenteTransporteDto extends CreatePersonaDto {
  @ApiPropertyOptional({ enum: TipoAgente, default: TipoAgente.TRANSPORTE })
  @IsEnum(TipoAgente)
  @IsOptional()
  tipo_agente?: TipoAgente;

  @ApiPropertyOptional({ example: 'ADU-001234' })
  @IsString()
  @IsOptional()
  @MaxLength(50)
  nro_habilitacion_aduana?: string;

  @ApiPropertyOptional({ default: true })
  @IsBoolean()
  @IsOptional()
  activo?: boolean;
}
