import { IsNotEmpty, IsObject, IsOptional, IsString, MaxLength } from 'class-validator';

export class CreateDrawingTemplateDto {
  @IsString()
  @IsNotEmpty()
  @MaxLength(255)
  name!: string;

  /** Storage path of the background image the learner draws on top of. */
  @IsString()
  @IsNotEmpty()
  @MaxLength(1024)
  filePath!: string;

  /** Canvas defaults: width, height, allowed colours, stroke widths, tools. */
  @IsOptional()
  @IsObject()
  meta?: Record<string, any>;
}

export class UpdateDrawingTemplateDto {
  @IsOptional()
  @IsString()
  @MaxLength(255)
  name?: string;

  @IsOptional()
  @IsString()
  @MaxLength(1024)
  filePath?: string;

  @IsOptional()
  @IsObject()
  meta?: Record<string, any>;
}
