import View from './chromecast.view';
import { IEventEmitter } from '../../../event-emitter/types';
import { ITooltipService } from '../../core/tooltip/types';
import { IChromecastButton } from './types';
import { ITextMap } from '../../../text-map/types';
import { IThemeService } from '../../core/theme';
import { IChromecastManager } from '../../../chromecast-manager/types';
import { IBottomBlock } from '../../bottom-block/types';
export default class ChromecastButton implements IChromecastButton {
    static moduleName: string;
    static View: typeof View;
    static dependencies: string[];
    private _eventEmitter;
    private _textMap;
    private _interceptor;
    private _tooltipService;
    private _theme;
    private _chromecastManager;
    private _bottomBlock;
    private _callback;
    view: View;
    isHidden: boolean;
    private _unbindEvents;
    constructor({ eventEmitter, textMap, tooltipService, theme, chromecastManager, bottomBlock, }: {
        eventEmitter: IEventEmitter;
        textMap: ITextMap;
        tooltipService: ITooltipService;
        theme: IThemeService;
        chromecastManager: IChromecastManager;
        bottomBlock: IBottomBlock;
    });
    getElement(): HTMLElement;
    private _connectToPanel;
    private _bindCallbacks;
    private _initUI;
    private _initInterceptor;
    private _bindEvents;
    private _destroyInterceptor;
    private _triggerCallback;
    setChromecastButtonCallback(callback: Function): void;
    hide(): void;
    show(): void;
    destroy(): void;
}
