import View from './screen.view';
import { IEventEmitter } from '../../event-emitter/types';
import { IFullScreenManager } from '../../full-screen-manager/types';
import { IPlaybackEngine } from '../../playback-engine/types';
import { IInteractionIndicator } from '../interaction-indicator/types';
import { IPlayerConfig } from '../../../core/config';
import { IRootContainer } from '../../root-container/types';
import { IScreenAPI, IScreen, VideoViewMode } from './types';
declare class Screen implements IScreen {
    static moduleName: string;
    static View: typeof View;
    static dependencies: string[];
    private _eventEmitter;
    private _engine;
    private _fullScreenManager;
    private _interactionIndicator;
    private _delayedToggleVideoPlaybackTimeout;
    private _isClickProcessingDisabled;
    private _unbindEvents;
    view: View;
    isHidden: boolean;
    constructor({ config, eventEmitter, engine, fullScreenManager, interactionIndicator, rootContainer, }: {
        config: IPlayerConfig;
        eventEmitter: IEventEmitter;
        engine: IPlaybackEngine;
        fullScreenManager: IFullScreenManager;
        interactionIndicator: IInteractionIndicator;
        rootContainer: IRootContainer;
    });
    getElement(): HTMLElement;
    private _bindCallbacks;
    private _initUI;
    private _bindEvents;
    private _updateSizes;
    showCursor(): void;
    hideCursor(): void;
    private _processClick;
    private _processDblClick;
    private _showPlaybackChangeIndicator;
    private _hideDelayedPlaybackChangeIndicator;
    private _setDelayedPlaybackToggle;
    private _clearDelayedPlaybackToggle;
    private get _isDelayedPlaybackToggleExist();
    private _toggleVideoPlayback;
    private _toggleFullScreen;
    hide(): void;
    show(): void;
    /**
     * Method for setting video view mode.
     * @param viewMode Possible values are "REGULAR", "FILL", "BLUR".
     * With "REGULAR" video tag would try to be fully shown.
     * With "FILL" video tag would fill all space, removing black lines on sides.
     * With "BLUR" black lines would be filled with blured pixels from video.
     * @example
     * player.setVideoViewMode("BLUR");
     */
    setVideoViewMode(viewMode: VideoViewMode): void;
    destroy(): void;
}
export { IScreenAPI };
export default Screen;
