import { Type } from 'class-transformer';
import { IsIn, IsInt, IsOptional, IsString, Length, Max, Min } from 'class-validator';

export class CreateAnalysisDto {
  @IsOptional()
  @Type(() => Number)
  @IsInt()
  @Min(1)
  snapshotId?: number;

  @IsString()
  @Length(2, 64)
  gameName: string;

  @IsString()
  @Length(2, 16)
  tagLine: string;

  @IsString()
  @IsIn(['KR', 'NA1', 'EUW1', 'EUN1', 'JP1'])
  region: string;

  @IsOptional()
  @Type(() => Number)
  @IsInt()
  @Min(1)
  @Max(100)
  matchCount?: number;
}
