polyv-live-cli
Version:
CLI tool for managing PolyV live streaming services.
58 lines • 1.68 kB
TypeScript
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