import { Plugin } from 'vue';
import Suspend from './views/Suspend.vue';
import useSuspend, { type SuspendProps, type SuspendCallbackOption } from './views/suspend';
declare module 'vue' {
    interface GlobalComponents {
        Suspend: typeof Suspend;
    }
}
declare const SuspendPlugin: {
    new (...args: any[]): {
        $: import("vue").ComponentInternalInstance;
        $data: {};
        $props: {
            contentMove?: boolean | undefined;
            readonly zIndex?: number | undefined;
            style?: unknown;
            readonly model?: "window" | "default" | undefined;
            readonly delay?: number | undefined;
            readonly move?: Partial<{
                x: boolean;
                y: boolean;
            }> | undefined;
            readonly adsorption?: Partial<{
                x: boolean;
                y: boolean;
            }> | undefined;
            readonly defaultSite?: Partial<{
                x: string | number;
                y: string | number;
                top: string | number;
                left: string | number;
            }> | undefined;
            onMoveStart?: (() => any) | undefined;
            onClick?: ((args_0: Event) => any) | undefined;
            onMoveEnd?: (() => any) | undefined;
            key?: string | number | symbol | undefined;
            ref?: import("vue").VNodeRef | undefined;
            ref_for?: boolean | undefined;
            ref_key?: string | undefined;
            onVnodeBeforeMount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[] | undefined;
            onVnodeMounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[] | undefined;
            onVnodeBeforeUpdate?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[] | undefined;
            onVnodeUpdated?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>, oldVNode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[] | undefined;
            onVnodeBeforeUnmount?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[] | undefined;
            onVnodeUnmounted?: ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void) | ((vnode: import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
                [key: string]: any;
            }>) => void)[] | undefined;
            class?: unknown;
        };
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import("vue").Slot<any> | undefined;
        }>;
        $root: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
        $parent: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null;
        $emit: ((event: "moveStart") => void) & ((event: "click", args_0: Event) => void) & ((event: "moveEnd") => void);
        $el: any;
        $options: import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
            zIndex: {
                type: import("vue").PropType<number>;
            };
            model: {
                type: import("vue").PropType<"window" | "default">;
            };
            delay: {
                type: import("vue").PropType<number>;
            };
            contentMove: {
                type: import("vue").PropType<boolean>;
                default: boolean;
            };
            move: {
                type: import("vue").PropType<Partial<{
                    x: boolean;
                    y: boolean;
                }>>;
            };
            adsorption: {
                type: import("vue").PropType<Partial<{
                    x: boolean;
                    y: boolean;
                }>>;
            };
            defaultSite: {
                type: import("vue").PropType<Partial<{
                    x: string | number;
                    y: string | number;
                    top: string | number;
                    left: string | number;
                }>>;
            };
        }>> & {
            onMoveStart?: (() => any) | undefined;
            onClick?: ((args_0: Event) => any) | undefined;
            onMoveEnd?: (() => any) | undefined;
        }, {
            reset: () => void;
        }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
            click: (args_0: Event) => void;
            moveStart: () => void;
            moveEnd: () => void;
        }, string, {
            contentMove: boolean;
        }, {}, string, {}> & {
            beforeCreate?: ((() => void) | (() => void)[]) | undefined;
            created?: ((() => void) | (() => void)[]) | undefined;
            beforeMount?: ((() => void) | (() => void)[]) | undefined;
            mounted?: ((() => void) | (() => void)[]) | undefined;
            beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
            updated?: ((() => void) | (() => void)[]) | undefined;
            activated?: ((() => void) | (() => void)[]) | undefined;
            deactivated?: ((() => void) | (() => void)[]) | undefined;
            beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
            beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
            destroyed?: ((() => void) | (() => void)[]) | undefined;
            unmounted?: ((() => void) | (() => void)[]) | undefined;
            renderTracked?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            renderTriggered?: (((e: import("vue").DebuggerEvent) => void) | ((e: import("vue").DebuggerEvent) => void)[]) | undefined;
            errorCaptured?: (((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: import("vue").ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, import("vue").ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}>, {}, {}> | null, info: string) => boolean | void)[]) | undefined;
        };
        $forceUpdate: () => void;
        $nextTick: typeof import("vue").nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: import("vue").WatchOptions<boolean> | undefined): import("vue").WatchStopHandle;
    } & Readonly<import("vue").ExtractPropTypes<{
        zIndex: {
            type: import("vue").PropType<number>;
        };
        model: {
            type: import("vue").PropType<"window" | "default">;
        };
        delay: {
            type: import("vue").PropType<number>;
        };
        contentMove: {
            type: import("vue").PropType<boolean>;
            default: boolean;
        };
        move: {
            type: import("vue").PropType<Partial<{
                x: boolean;
                y: boolean;
            }>>;
        };
        adsorption: {
            type: import("vue").PropType<Partial<{
                x: boolean;
                y: boolean;
            }>>;
        };
        defaultSite: {
            type: import("vue").PropType<Partial<{
                x: string | number;
                y: string | number;
                top: string | number;
                left: string | number;
            }>>;
        };
    }>> & {
        onMoveStart?: (() => any) | undefined;
        onClick?: ((args_0: Event) => any) | undefined;
        onMoveEnd?: (() => any) | undefined;
    } & import("vue").ShallowUnwrapRef<{
        reset: () => void;
    }> & {} & import("vue").ComponentCustomProperties & {};
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    zIndex: {
        type: import("vue").PropType<number>;
    };
    model: {
        type: import("vue").PropType<"window" | "default">;
    };
    delay: {
        type: import("vue").PropType<number>;
    };
    contentMove: {
        type: import("vue").PropType<boolean>;
        default: boolean;
    };
    move: {
        type: import("vue").PropType<Partial<{
            x: boolean;
            y: boolean;
        }>>;
    };
    adsorption: {
        type: import("vue").PropType<Partial<{
            x: boolean;
            y: boolean;
        }>>;
    };
    defaultSite: {
        type: import("vue").PropType<Partial<{
            x: string | number;
            y: string | number;
            top: string | number;
            left: string | number;
        }>>;
    };
}>> & {
    onMoveStart?: (() => any) | undefined;
    onClick?: ((args_0: Event) => any) | undefined;
    onMoveEnd?: (() => any) | undefined;
}, {
    reset: () => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    click: (args_0: Event) => void;
    moveStart: () => void;
    moveEnd: () => void;
}, string, {
    contentMove: boolean;
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
    $slots: {
        default?(_: {}): any;
    };
}) & Plugin<any[]>;
export default SuspendPlugin;
export { Suspend, useSuspend, SuspendProps, SuspendCallbackOption };
