import { IsString, IsInt, IsOptional, MaxLength, Min, Max, IsIn } from 'class-validator';
import { ApiProperty } from '@nestjs/swagger';

export class CreateExperienceDto {
  @ApiProperty({ example: 'IT Infrastruktur' })
  @IsString()
  @MaxLength(200)
  area!: string;

  @ApiProperty({ example: 10 })
  @IsInt()
  @Min(0, { message: 'Jahre dürfen nicht negativ sein' })
  @Max(60, { message: 'Maximal 60 Jahre Erfahrung' })
  years!: number;

  @ApiProperty({
    example: 'Experte',
    required: false,
    enum: ['Experte', 'Fortgeschritten', 'Grundkenntnisse'],
  })
  @IsOptional()
  @IsString()
  @IsIn(['Experte', 'Fortgeschritten', 'Grundkenntnisse'])
  level?: string;
}
