import blessed from 'blessed';
import { EventEmitter } from 'events';
export interface BatchOperationsDialogConfig {
    screen: blessed.Widgets.Screen;
    eventBus: EventEmitter;
    showColors: boolean;
}
export type BatchOperation = 'start' | 'stop' | 'delete' | 'refresh' | 'export';
export interface BatchOperationResult {
    operation: BatchOperation;
    totalChannels: number;
    successCount: number;
    failureCount: number;
    errors: Array<{
        channelId: string;
        error: string;
    }>;
    timestamp: Date;
}
export declare class BatchOperationsDialog {
    private screen;
    private eventBus;
    private config;
    private dialog;
    private operationsList;
    private statusBox;
    private progressBar;
    private footerBox;
    private selectedChannels;
    private isVisible;
    private currentOperation;
    private operationInProgress;
    constructor(config: BatchOperationsDialogConfig);
    private createDialog;
    private getOperationItems;
    private setupKeyBindings;
    private setupEventListeners;
    show(selectedChannels: string[]): void;
    hide(): void;
    private executeSelectedOperation;
    private showConfirmationDialog;
    private startOperation;
    private updateProgress;
    private handleOperationCompleted;
    private formatOperationResult;
    private updateStatusBox;
    private getFooterContent;
    private updateFooter;
    private refreshFooter;
    isShowing(): boolean;
    getSelectedChannels(): string[];
    getOperationStatus(): {
        operation: BatchOperation | null;
        inProgress: boolean;
    };
    destroy(): void;
}
//# sourceMappingURL=batch-operations.dialog.d.ts.map