import { FullScreenMode, FullScreenProps } from './interface';
import { DefineComponent, ComputedRef, ComponentOptionsMixin, PublicProps, ComponentProvideOptions } from 'vue';
declare function enter(mode: FullScreenMode, force?: boolean): Promise<void>;
declare function exit(force?: boolean): Promise<void>;
declare function toggle(mode: FullScreenMode, force?: boolean): Promise<void>;
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {
            full: boolean;
            enter: typeof enter;
            exit: typeof exit;
            toggle: typeof toggle;
            mode: FullScreenMode | undefined;
            portalRoot: HTMLDivElement | undefined;
        }): any;
    };
    refs: {
        target: unknown;
        portalRootRef: HTMLDivElement;
    };
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: DefineComponent<FullScreenProps, {
    target: ComputedRef<HTMLElement | null | undefined>;
    portalRoot: ComputedRef<HTMLDivElement | undefined>;
    full: ComputedRef<boolean>;
    mode: ComputedRef<FullScreenMode | undefined>;
    enter: typeof enter;
    exit: typeof exit;
    toggle: typeof toggle;
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<FullScreenProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {
    target: unknown;
    portalRootRef: HTMLDivElement;
}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
