export interface CaptureState { step: 'front' | 'back' | 'completed'; isCapturing: boolean; isDetectionPaused: boolean; isVideoActive: boolean; isLoading: boolean; showFlipAnimation: boolean; showSuccessAnimation: boolean; bestScore: number; hasScreenshotTaken: boolean; } export interface CapturedImages { front: { fullFrame: string | null; cropped: string | null; }; back: { fullFrame: string | null; cropped: string | null; }; metadata: { totalImages: number; processCompleted: boolean; backCaptureSkipped: boolean; }; } export interface IStateManager { getCaptureState(): CaptureState; updateCaptureState(updates: Partial): void; getCapturedImages(): CapturedImages; setCapturedImages(images: Partial): void; reset(): void; isProcessCompleted(): boolean; canProceedToBack(): boolean; }