import blessed from 'blessed';
import { EventEmitter } from 'events';
import { ChannelStatusInfo } from './channel-status.panel';
export interface ChannelDetailsPopupConfig {
    screen: blessed.Widgets.Screen;
    eventBus: EventEmitter;
    showColors: boolean;
    refreshInterval: number;
}
export declare class ChannelDetailsPopup {
    private screen;
    private eventBus;
    private config;
    private popup;
    private headerBox;
    private scrollBox;
    private footerBox;
    private channel;
    private isVisible;
    private scrollOffset;
    private maxScrollOffset;
    private refreshTimer?;
    private notificationTimer?;
    constructor(config: ChannelDetailsPopupConfig);
    private createPopup;
    private setupKeyBindings;
    private setupEventListeners;
    show(channel: ChannelStatusInfo): void;
    hide(): void;
    updateChannel(channel: ChannelStatusInfo): void;
    private updateContent;
    private getHeaderContent;
    private getDetailsContent;
    private getBasicInfoSection;
    private getStatisticsSection;
    private getTimingSection;
    private getPublisherSection;
    private getStatusHistorySection;
    private getPublishingStatus;
    private getFooterContent;
    private updateFooter;
    private getStatusColors;
    private scroll;
    private scrollToTop;
    private scrollToBottom;
    private copyChannelInfo;
    private showNotification;
    private refreshChannel;
    private startAutoRefresh;
    private stopAutoRefresh;
    isShowing(): boolean;
    getCurrentChannel(): ChannelStatusInfo | null;
    destroy(): void;
}
//# sourceMappingURL=channel-details.popup.d.ts.map