/**
 * Voice overlay component for the TUI.
 * Shows voice status: enrolling, listening, speech detection, transcription.
 */
import { Container } from "@dotkaio/avis-tui";
export type VoiceState = "initializing" | "installing" | "enrolling" | "recording" | "idle" | "listening" | "speech_detected" | "transcribing" | "speaking" | "processing" | "error";
export interface VoiceOverlayConfig {
    state: VoiceState;
    hasProfile: boolean;
    errorMessage?: string;
    enrollDuration?: number;
    lastTranscription?: string;
    confidence?: number;
    statusText?: string;
}
export declare class VoiceOverlayComponent extends Container {
    private stateText;
    private detailText;
    private timingText;
    private hintText;
    private config;
    private animFrame;
    private animInterval;
    private lastEscTime;
    onCancel?: () => void;
    constructor(config: VoiceOverlayConfig);
    updateState(config: Partial<VoiceOverlayConfig>): void;
    startAnimation(requestRender: () => void): void;
    stopAnimation(): void;
    private getWaveform;
    private getDots;
    private updateDisplay;
    handleInput(data: string): void;
    onEnter?: () => void;
    onCtrlC?: () => void;
    onCtrlZ?: () => void;
    onEscHint?: () => void;
    onStopSpeaking?: () => void;
    dispose(): void;
}
//# sourceMappingURL=voice-overlay.d.ts.map