export interface UploadedImage { file: File; previewUrl: string; subjectDescription: string; maskDataUrl?: string; segmentedDataUrl?: string; } export enum AppStep { Upload = 1, Segment = 2, Prompt = 3, Result = 4, } export interface GenerationResult { baseImage: string; // base64 string currentImage: string; // base64 string history: string[]; // array of base64 strings } export interface ImageFile { inlineData: { data: string; mimeType: string; }; }