/**
 * Custom Status Line
 *
 * Configurable status bar with template rendering, script execution,
 * auto-refresh, and model/git/token display.
 */
export interface StatusLineConfig {
    enabled: boolean;
    script?: string;
    template?: string;
    refreshInterval: number;
    position: 'top' | 'bottom';
}
export interface StatusLineData {
    model?: string;
    gitBranch?: string;
    tokenUsage?: {
        used: number;
        max: number;
    };
    uncommittedChanges?: number;
    sessionId?: string;
    customContent?: string;
}
export declare class StatusLineManager {
    private config;
    private currentData;
    private refreshTimer;
    constructor(config?: Partial<StatusLineConfig>);
    /**
     * Update status data
     */
    updateData(data: Partial<StatusLineData>): void;
    /**
     * Render the status line
     */
    render(): string;
    /**
     * Render template with placeholders
     */
    private renderTemplate;
    /**
     * Execute script for dynamic content
     */
    executeScript(): Promise<string>;
    /**
     * Start auto-refresh
     */
    startRefresh(): void;
    /**
     * Stop auto-refresh
     */
    stopRefresh(): void;
    /**
     * Check if auto-refreshing
     */
    isRefreshing(): boolean;
    /**
     * Format token usage
     */
    private formatTokenUsage;
    /**
     * Format git branch
     */
    private formatGitBranch;
    /**
     * Enable status line
     */
    enable(): void;
    /**
     * Disable status line
     */
    disable(): void;
    /**
     * Check if enabled
     */
    isEnabled(): boolean;
    /**
     * Get current data
     */
    getData(): StatusLineData;
    /**
     * Get config
     */
    getConfig(): StatusLineConfig;
    /**
     * Dispose resources
     */
    dispose(): void;
}
