import { ApiProperty, ApiPropertyOptional } from '@nestjs/swagger';
import { IsBoolean, IsInt, IsObject, IsOptional, IsString, Min } from 'class-validator';

export class AttachTemplateQuestionDto {
  @ApiProperty()
  @IsString()
  questionId!: string;

  @ApiProperty()
  @IsInt()
  @Min(1)
  sortOrder!: number;

  @ApiPropertyOptional()
  @IsOptional()
  @IsString()
  sectionName?: string;

  @ApiPropertyOptional()
  @IsOptional()
  @IsBoolean()
  isRequiredOverride?: boolean;

  @ApiPropertyOptional({ type: 'object', additionalProperties: true })
  @IsOptional()
  @IsObject()
  configJson?: Record<string, unknown>;
}
