interface DocumentWithFullscreen extends HTMLDocument {
    msFullscreenElement?: Element;
    msFullscreenEnabled?: boolean;
    msExitFullscreen?: () => Promise<void>;
    mozFullScreenElement?: Element;
    mozFullscreenEnabled?: boolean;
    mozCancelFullScreen?: () => Promise<void>;
    webkitFullscreenElement?: Element;
    webkitFullscreenEnabled?: boolean;
    webkitExitFullscreen?: () => Promise<void>;
}
interface DocumentElementWithFullscreen extends HTMLElement {
    msRequestFullscreen?: () => Promise<void>;
    mozRequestFullScreen?: () => Promise<void>;
    webkitRequestFullscreen?: () => Promise<void>;
}
export declare const requestFullscreen: (element: DocumentElementWithFullscreen) => Promise<void>;
export declare const exitFullscreen: (doc: DocumentWithFullscreen) => Promise<void>;
export declare const isSupported: (doc: DocumentWithFullscreen, isIOS?: boolean) => boolean;
export declare const exitIosSafariVideoElementFullscreen: (videoElement: HTMLVideoElement) => void;
export declare const getDocumentFullscreenElement: () => Element | undefined;
export declare const checkIsFullscreen: () => boolean;
export declare const registerFullscreenChangeEvent: (callback: () => void) => void;
export declare const removeFullscreenChangeEvent: (callback: () => void) => void;
export declare const requestLockScreenOrientation: (videoSize?: {
    width: number;
    height: number;
}) => Promise<void>;
export {};
