export type SkinGenerationStatus = 'queued' | 'running' | 'completed' | 'failed';

export interface SkinGenerationJob {
  jobId: string;
  userId: string;
  status: SkinGenerationStatus;
  message: string;
  stage: string;
  name: string;
  sourceImagePath: string;
  createdAt: number;
  updatedAt: number;
  outDir: string;
  statusJsonPath: string;
  resultJsonPath: string;
  spritesheetPath?: string;
  reviewPath?: string;
  feetZoomPath?: string;
  logPath?: string;
  skinId?: string;
  textureUrl?: string;
  error?: string;
}

export interface SkinGenerationJobResponse {
  job_id: string;
  status: SkinGenerationStatus;
  stage: string;
  message: string;
  name: string;
  created_at: number;
  updated_at: number;
  hframes: number;
  vframes: number;
  spritesheet_base64?: string;
  mime_type?: string;
  skin_id?: string;
  texture_url?: string;
  error?: string;
}
