import { PortalProps } from '../portal/interface';
export type FullScreenMode = 'browser' | 'window';
export type FullScreenProps = {
    /**
     * 容器元素标签名
     */
    wrapperElementName?: string;
    /**
     * 全屏状态下的css zIndex 默认为2^31 - 1
     */
    zIndex?: number;
} & Partial<Pick<PortalProps, 'to'>>;
export type FullScreenExpose = {
    /**
     * 全屏的目标元素
     */
    target: HTMLElement;
    /**
     * 目标元素内用于渲染全局组件的容器
     */
    portalRoot: HTMLDivElement;
    /**
     * 当前是否全屏
     */
    full: boolean;
    /**
     * 当前的全屏模式
     */
    mode: FullScreenMode;
    /**
     * 进入全屏
     * @param mode 全屏模式 窗口全屏/浏览器全屏
     * @param force
     * @returns
     */
    enter: (mode: FullScreenMode, force?: boolean) => Promise<void>;
    /**
     * 退出全屏
     * @param force
     * @returns
     */
    exit: (force?: boolean) => Promise<void>;
    /**
     * 切换全屏状态
     * @param mode 全屏模式
     * @param force
     * @returns
     */
    toggle: (mode: FullScreenMode, force?: boolean) => Promise<void>;
};
