import View from './loader.view';
import { IEventEmitter } from '../../event-emitter/types';
import { IPlaybackEngine } from '../../playback-engine/types';
import { IPlayerConfig } from '../../../core/config';
import { IRootContainer } from '../../root-container/types';
import { ILoader } from './types';
export declare const DELAYED_SHOW_TIMEOUT = 100;
export default class Loader implements ILoader {
    static moduleName: string;
    static View: typeof View;
    static dependencies: string[];
    private _eventEmitter;
    private _engine;
    private _delayedShowTimeout;
    private _unbindEvents;
    view: View;
    isHidden: boolean;
    constructor({ config, eventEmitter, engine, rootContainer, }: {
        config: IPlayerConfig;
        eventEmitter: IEventEmitter;
        engine: IPlaybackEngine;
        rootContainer: IRootContainer;
    });
    getElement(): HTMLElement;
    private _bindCallbacks;
    private _bindEvents;
    private _checkForWaitingState;
    private _initUI;
    private _showContent;
    private _hideContent;
    hide(): void;
    show(): void;
    startDelayedShow(): void;
    stopDelayedShow(): void;
    get isDelayedShowScheduled(): boolean;
    destroy(): void;
}
