import {
  IsEnum,
  IsString,
  IsOptional,
  IsDateString,
  IsObject,
  IsNotEmpty,
} from 'class-validator';
import { ActivityType } from '../../../database/entities/activity.entity';

export class CreateActivityDto {
  @IsEnum(ActivityType)
  @IsNotEmpty()
  type: ActivityType;

  @IsDateString()
  @IsNotEmpty()
  startedAt: string;

  @IsDateString()
  @IsOptional()
  endedAt?: string;

  @IsString()
  @IsOptional()
  notes?: string;

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

export { ActivityType };
