import { ApiProperty } from '@nestjs/swagger';
import { IsEnum, IsString, MinLength } from 'class-validator';
import type { MeterKind } from '../files.types';

export class PresignedMeterUploadDto {
  @ApiProperty()
  @IsString()
  @MinLength(8)
  requestId: string;

  @ApiProperty({ enum: ['start', 'end'] })
  @IsEnum(['start', 'end'] as const)
  kind: MeterKind;

  @ApiProperty({ example: 'image/jpeg' })
  @IsString()
  contentType: string;

  @ApiProperty({ example: 'meter.jpg' })
  @IsString()
  fileName: string;
}
