import { Bus } from '../../../common/bus';
import { JsonRpc } from '../../../common/jsonrpc';
import { IOverlayManager, OverlayConfig } from '../interfaces';
import { Overlay } from './overlay';
export declare class OverlayManager implements IOverlayManager {
    private _iframeMessenger;
    private _panel;
    readonly systemPopupEventBus: Bus;
    activeOverlay: Overlay;
    onActiveOverlayChanged: (newOverlay: Overlay | null) => void | null;
    private _root;
    private _tabsRegistry;
    constructor(_iframeMessenger: JsonRpc);
    /**
     * Expands the panel.
     */
    open(): void;
    /**
     * Collapses the panel.
     */
    close(): void;
    /**
     * Shows the panel.
     */
    show(): void;
    togglePanel(): void;
    /**
     * Hides the panel.
     */
    hide(): void;
    toggle(): void;
    register(overlay: Overlay): void;
    unregister(overlay: Overlay): void;
    unregisterAll(source?: string): void;
    activate(overlay: Overlay): any;
    deactivate(overlay: Overlay): void;
    getOverlays(): Overlay[];
    openPopup(): void;
    destroy(): void;
    createOverlay(config: OverlayConfig): Overlay;
    private _render;
}
