/**
 * Vision overlay component for the TUI.
 * Shows screen capture state: selecting display, capturing, recording.
 */
import { Container } from "@dotkaio/avis-tui";
import type { DisplayInfo } from "../../../core/vision/index.js";
export type VisionState = "selecting" | "screenshot" | "recording" | "processing" | "ready" | "error";
export interface VisionOverlayConfig {
    state: VisionState;
    displays: DisplayInfo[];
    selectedDisplay?: number;
    mode: "screenshot" | "record";
    errorMessage?: string;
    recordingDuration?: number;
    frameCount?: number;
}
export declare class VisionOverlayComponent extends Container {
    private stateText;
    private detailText;
    private displayText;
    private hintText;
    private config;
    private animFrame;
    private animInterval;
    private recordStartTime;
    private recordTimer;
    onCancel?: () => void;
    onSelectDisplay?: (id: number) => void;
    onToggleMode?: () => void;
    onCapture?: () => void;
    constructor(config: VisionOverlayConfig);
    updateState(config: Partial<VisionOverlayConfig>): void;
    startAnimation(requestRender: () => void): void;
    stopAnimation(): void;
    startRecordTimer(requestRender: () => void): void;
    private getDots;
    private getRecordIndicator;
    private formatDuration;
    private updateDisplay;
    handleInput(data: string): void;
    dispose(): void;
}
//# sourceMappingURL=vision-overlay.d.ts.map