import { App } from 'vue';
import { Component } from 'vue';
import { ComponentOptionsBase } from 'vue';
import { ComponentProvideOptions } from 'vue';
import { ComponentPublicInstance } from 'vue';
import { ComputedOptions } from 'vue';
import { ComputedRef } from 'vue';
import { CSSProperties } from 'vue';
import { DebuggerEvent } from 'vue';
import { Directive } from 'vue';
import { FunctionalComponent } from 'vue';
import { LooseRequired } from '@vue/shared';
import { MethodOptions } from 'vue';
import { Ref } from 'vue';
import { ShallowRef } from 'vue';
import { Slot } from 'vue';
import { TransitionProps } from 'vue';
import { WatchCallback } from 'vue';
import { WatchOptions } from 'vue';

export declare class DnDOperations {
    static remove: (source?: any[], index?: number) => any;
    static insert: (target?: any[], index?: number, item?: any) => void;
    static move: (source?: any[], sourceIndex?: number, target?: any[], targetIndex?: number) => void;
    static swap: (source?: any[], sourceIndex?: number, target?: any[], targetIndex?: number) => void;
    static copy: (source?: any[], index?: number, target?: any[], targetIndex?: number) => void;
    static applyTransfer: (store: IDnDStore) => void;
    static applyCopy: (store: IDnDStore) => void;
    static applySwap: (store: IDnDStore) => void;
    static applyRemove: (store: IDnDStore) => void;
    static applyInsert: (store: IDnDStore, items: any[]) => void;
}

export declare const getBoundingBox: (element: HTMLElement | null) => IBoundingBox;

export declare interface IActiveContainer {
    component: Ref<Component | null>;
    ref: Ref<HTMLElement | null>;
}

export declare interface IBoundingBox {
    x: number;
    y: number;
    width: number;
    height: number;
    bottom: number;
    left: number;
    right: number;
    top: number;
}

export declare interface ICollisionDetectionResult {
    element: HTMLElement | Element | null;
    zone: HTMLElement | Element | null;
}

export declare interface IDnDPayload {
    items: IDraggingElement[];
}

export declare interface IDnDStore extends ReturnType<typeof useDnDStore> {}

export declare interface IDragElement {
    id: string | number;
    node: HTMLElement | Element | null;
    groups: string[];
    layer: Component | null;
    defaultLayer: Component | null;
    disabled: boolean;
    data: {
        source?: any[];
        index?: number;
        [key: string]: any;
    } | null;
    events: {
        onHover?: (store: IDnDStore, payload: IDnDPayload) => void;
        onLeave?: (store: IDnDStore, payload: IDnDPayload) => void;
        onEnd?: (store: IDnDStore, payload: IDnDPayload) => void;
        onStart?: (store: IDnDStore, payload: IDnDPayload) => void;
        onMove?: (store: IDnDStore, payload: IDnDPayload) => void;
    };
}

export declare interface IDraggingElement extends IDragElement {
    initialHTML: string;
    initialRect?: DOMRect;
}

export declare interface IDropZone {
    node: HTMLElement | Element | null;
    groups: string[];
    disabled: boolean;
    data?: {
        source?: any[];
        [key: string]: any;
    };
    events: {
        onHover?: (store: IDnDStore, payload: IDnDPayload) => void;
        onLeave?: (store: IDnDStore, payload: IDnDPayload) => void;
        onDrop?: (
        store: IDnDStore,
        payload: IDnDPayload
        ) => void | Promise<boolean>;
    };
}

export declare interface IPluginOptions {
    defaultOverlay?: {
        styles?: CSSProperties;
    };
    overlayPosition?: {
        target?: string | Element | HTMLElement;
        method?: 'append' | 'prepend' | 'after' | 'before';
        zIndex?: number;
        className?: string;
    };
}

export declare interface IPoint {
    x: number;
    y: number;
}

export declare interface IPointerPosition {
    start: Ref<IPoint | null>;
    current: Ref<IPoint | null>;
    offset: {
        percent: Ref<IPoint | null>;
        pixel: Ref<IPoint | null>;
    };
}

declare type ISensor = (
store: IDnDStore
) => HTMLElement | HTMLElement[] | Element | Element[] | null;

export declare interface IUseDragOptions extends IUseSensorOptions {
    id?: string | number;
    groups?: string[] | Ref<string[]>;
    disabled?: boolean | Ref<boolean>;
    events?: {
        onEnd?: (store: IDnDStore, payload: IDnDPayload) => void;
        onStart?: (store: IDnDStore, payload: IDnDPayload) => void;
        onMove?: (store: IDnDStore, payload: IDnDPayload) => void;
        onHover?: (store: IDnDStore, payload: IDnDPayload) => void;
        onLeave?: (store: IDnDStore, payload: IDnDPayload) => void;
    };
    keyboard?: {
        moveStep?: number;
    };
    data?: {
        source?: any[];
        index?: number;
        [key: string]: any;
    };
    layer?: Component | null;
    container?: Component;
    containerProps?: Record<string, any>;
    sensor?: {
        throttle?: number;
        setup?: (store: IDnDStore) => Element | Element[] | null;
    };
}

export declare interface IUseDropOptions {
    groups?: string[];
    disabled?: boolean | Ref<boolean>;
    events?: {
        onDrop?: (
        store: IDnDStore,
        payload: IDnDPayload
        ) => void | Promise<boolean>;
        onHover?: (store: IDnDStore, payload: IDnDPayload) => void;
        onLeave?: (store: IDnDStore, payload: IDnDPayload) => void;
    };
    data?: {
        source?: any[];
        [key: string]: any;
    };
}

export declare interface IUseSensorOptions {
    sensor?: {
        throttle?: number;
        setup?: ISensor;
    };
}

export declare type TLayerProps = Pick<IDragElement, 'id' | 'groups' | 'data' | 'node'>;

export declare const useDnDStore: () => {
    draggingElements: Ref<Map<HTMLElement | Element, {
    initialHTML: string;
    initialRect?: {
    height: number;
    width: number;
    x: number;
    y: number;
    readonly bottom: number;
    readonly left: number;
    readonly right: number;
    readonly top: number;
    toJSON: () => any;
    } | undefined;
    id: string | number;
    node: HTMLElement | Element | null;
    groups: string[];
    layer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    defaultLayer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    disabled: boolean;
    data: {
    [x: string]: any;
    source?: any[] | undefined;
    index?: number | undefined;
    } | null;
    events: {
    onHover?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onLeave?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onEnd?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onStart?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onMove?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    };
    }> & Omit<Map<HTMLElement | Element, IDraggingElement>, keyof Map<any, any>>, Map<HTMLElement | Element, IDraggingElement> | (Map<HTMLElement | Element, {
    initialHTML: string;
    initialRect?: {
    height: number;
    width: number;
    x: number;
    y: number;
    readonly bottom: number;
    readonly left: number;
    readonly right: number;
    readonly top: number;
    toJSON: () => any;
    } | undefined;
    id: string | number;
    node: HTMLElement | Element | null;
    groups: string[];
    layer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    defaultLayer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    disabled: boolean;
    data: {
    [x: string]: any;
    source?: any[] | undefined;
    index?: number | undefined;
    } | null;
    events: {
    onHover?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onLeave?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onEnd?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onStart?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onMove?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    };
    }> & Omit<Map<HTMLElement | Element, IDraggingElement>, keyof Map<any, any>>)>;
    isDragging: ComputedRef<boolean>;
    activeContainer: {
        component: Ref<FunctionalComponent<any, {}, any, {}> | {
        new (...args: any[]): any;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
        } | {
        [x: string]: any;
        setup?: ((this: void, props: LooseRequired<any>, ctx: {
        attrs: {
        [x: string]: unknown;
        };
        slots: Readonly<{
        [name: string]: Slot<any> | undefined;
        }>;
        emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
        expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
        }) => any) | undefined;
        name?: string | undefined;
        template?: string | object | undefined;
        render?: Function | undefined;
        components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
        directives?: Record<string, Directive<any, any, string, string>> | undefined;
        inheritAttrs?: boolean | undefined;
        emits?: any;
        slots?: {} | undefined;
        expose?: string[] | undefined;
        serverPrefetch?: (() => void | Promise<any>) | undefined;
        compilerOptions?: {
        isCustomElement?: ((tag: string) => boolean) | undefined;
        whitespace?: "preserve" | "condense" | undefined;
        comments?: boolean | undefined;
        delimiters?: [string, string] | undefined;
        } | undefined;
        call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
        __defaults?: {} | undefined;
        compatConfig?: {
        GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
        GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
        GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
        GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
        GLOBAL_SET?: boolean | "suppress-warning" | undefined;
        GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
        GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
        GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
        CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
        CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
        CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
        CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
        CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
        CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
        CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
        INSTANCE_SET?: boolean | "suppress-warning" | undefined;
        INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
        INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
        INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
        INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
        INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
        INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
        INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
        INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
        OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
        OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
        OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
        OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
        WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
        PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
        V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
        CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
        ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
        ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
        TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
        TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
        COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
        COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
        COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
        RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
        FILTERS?: boolean | "suppress-warning" | undefined;
        PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
        MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
        } | undefined;
        data?: ((this: any, vm: any) => any) | undefined;
        computed?: ComputedOptions | undefined;
        methods?: MethodOptions | undefined;
        watch?: {
        [x: string]: (string | WatchCallback<any, any> | ({
        handler: string | WatchCallback<any, any>;
        } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
        handler: string | WatchCallback<any, any>;
        } & WatchOptions<boolean>))[];
        } | undefined;
        provide?: ComponentProvideOptions | undefined;
        inject?: {} | string[] | undefined;
        filters?: Record<string, Function> | undefined;
        mixins?: any[] | undefined;
        extends?: any;
        beforeCreate?: (() => void) | undefined;
        created?: (() => void) | undefined;
        beforeMount?: (() => void) | undefined;
        mounted?: (() => void) | undefined;
        beforeUpdate?: (() => void) | undefined;
        updated?: (() => void) | undefined;
        activated?: (() => void) | undefined;
        deactivated?: (() => void) | undefined;
        beforeDestroy?: (() => void) | undefined;
        beforeUnmount?: (() => void) | undefined;
        destroyed?: (() => void) | undefined;
        unmounted?: (() => void) | undefined;
        renderTracked?: ((e: DebuggerEvent) => void) | undefined;
        renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
        errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
        delimiters?: [string, string] | undefined;
        __differentiator?: string | number | symbol | undefined;
        __isBuiltIn?: boolean | undefined;
        __file?: string | undefined;
        __name?: string | undefined;
        } | null, Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | {
        [x: string]: any;
        setup?: ((this: void, props: LooseRequired<any>, ctx: {
        attrs: {
        [x: string]: unknown;
        };
        slots: Readonly<{
        [name: string]: Slot<any> | undefined;
        }>;
        emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
        expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
        }) => any) | undefined;
        name?: string | undefined;
        template?: string | object | undefined;
        render?: Function | undefined;
        components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
        directives?: Record<string, Directive<any, any, string, string>> | undefined;
        inheritAttrs?: boolean | undefined;
        emits?: any;
        slots?: {} | undefined;
        expose?: string[] | undefined;
        serverPrefetch?: (() => void | Promise<any>) | undefined;
        compilerOptions?: {
        isCustomElement?: ((tag: string) => boolean) | undefined;
        whitespace?: "preserve" | "condense" | undefined;
        comments?: boolean | undefined;
        delimiters?: [string, string] | undefined;
        } | undefined;
        call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
        __defaults?: {} | undefined;
        compatConfig?: {
        GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
        GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
        GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
        GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
        GLOBAL_SET?: boolean | "suppress-warning" | undefined;
        GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
        GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
        GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
        CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
        CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
        CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
        CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
        CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
        CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
        CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
        INSTANCE_SET?: boolean | "suppress-warning" | undefined;
        INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
        INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
        INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
        INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
        INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
        INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
        INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
        INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
        OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
        OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
        OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
        OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
        WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
        PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
        V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
        CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
        ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
        ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
        TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
        TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
        COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
        COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
        COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
        RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
        FILTERS?: boolean | "suppress-warning" | undefined;
        PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
        MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
        } | undefined;
        data?: ((this: any, vm: any) => any) | undefined;
        computed?: ComputedOptions | undefined;
        methods?: MethodOptions | undefined;
        watch?: {
        [x: string]: (string | WatchCallback<any, any> | ({
        handler: string | WatchCallback<any, any>;
        } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
        handler: string | WatchCallback<any, any>;
        } & WatchOptions<boolean>))[];
        } | undefined;
        provide?: ComponentProvideOptions | undefined;
        inject?: {} | string[] | undefined;
        filters?: Record<string, Function> | undefined;
        mixins?: any[] | undefined;
        extends?: any;
        beforeCreate?: (() => void) | undefined;
        created?: (() => void) | undefined;
        beforeMount?: (() => void) | undefined;
        mounted?: (() => void) | undefined;
        beforeUpdate?: (() => void) | undefined;
        updated?: (() => void) | undefined;
        activated?: (() => void) | undefined;
        deactivated?: (() => void) | undefined;
        beforeDestroy?: (() => void) | undefined;
        beforeUnmount?: (() => void) | undefined;
        destroyed?: (() => void) | undefined;
        unmounted?: (() => void) | undefined;
        renderTracked?: ((e: DebuggerEvent) => void) | undefined;
        renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
        errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
        delimiters?: [string, string] | undefined;
        __differentiator?: string | number | symbol | undefined;
        __isBuiltIn?: boolean | undefined;
        __file?: string | undefined;
        __name?: string | undefined;
        } | null>;
        ref: ShallowRef<HTMLElement | null, HTMLElement | null>;
        options: ShallowRef<TransitionProps | null, TransitionProps | null>;
        props: ShallowRef<null, null> | ShallowRef<Record<string, any>, Record<string, any>>;
        animating: {
            enter: ShallowRef<boolean, boolean>;
            leave: ShallowRef<boolean, boolean>;
            appear: ShallowRef<boolean, boolean>;
        };
    };
    elementsMap: Ref<Map<HTMLElement | Element, {
    id: string | number;
    node: HTMLElement | Element | null;
    groups: string[];
    layer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    defaultLayer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    disabled: boolean;
    data: {
    [x: string]: any;
    source?: any[] | undefined;
    index?: number | undefined;
    } | null;
    events: {
    onHover?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onLeave?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onEnd?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onStart?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onMove?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    };
    }> & Omit<Map<HTMLElement | Element, IDragElement>, keyof Map<any, any>>, Map<HTMLElement | Element, IDragElement> | (Map<HTMLElement | Element, {
    id: string | number;
    node: HTMLElement | Element | null;
    groups: string[];
    layer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    defaultLayer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    disabled: boolean;
    data: {
    [x: string]: any;
    source?: any[] | undefined;
    index?: number | undefined;
    } | null;
    events: {
    onHover?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onLeave?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onEnd?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onStart?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onMove?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    };
    }> & Omit<Map<HTMLElement | Element, IDragElement>, keyof Map<any, any>>)>;
    selectedElements: Ref<Set<HTMLElement | Element> & Omit<Set<HTMLElement | Element>, keyof Set<any>>, Set<HTMLElement | Element> | (Set<HTMLElement | Element> & Omit<Set<HTMLElement | Element>, keyof Set<any>>)>;
    zonesMap: Ref<Map<HTMLElement | Element, {
    node: HTMLElement | Element | null;
    groups: string[];
    disabled: boolean;
    data?: {
    [x: string]: any;
    source?: any[] | undefined;
    } | undefined;
    events: {
    onHover?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onLeave?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onDrop?: ((store: IDnDStore, payload: IDnDPayload) => void | Promise<boolean>) | undefined;
    };
    }> & Omit<Map<HTMLElement | Element, IDropZone>, keyof Map<any, any>>, Map<HTMLElement | Element, IDropZone> | (Map<HTMLElement | Element, {
    node: HTMLElement | Element | null;
    groups: string[];
    disabled: boolean;
    data?: {
    [x: string]: any;
    source?: any[] | undefined;
    } | undefined;
    events: {
    onHover?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onLeave?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onDrop?: ((store: IDnDStore, payload: IDnDPayload) => void | Promise<boolean>) | undefined;
    };
    }> & Omit<Map<HTMLElement | Element, IDropZone>, keyof Map<any, any>>)>;
    visibleZones: ShallowRef<Set<HTMLElement | Element>, Set<HTMLElement | Element>>;
    visibleElements: ShallowRef<Set<HTMLElement | Element>, Set<HTMLElement | Element>>;
    pointerPosition: {
        start: ShallowRef<IPoint | null, IPoint | null>;
        current: ShallowRef<IPoint | null, IPoint | null>;
        offset: {
            percent: ShallowRef<IPoint | null, IPoint | null>;
            pixel: ShallowRef<IPoint | null, IPoint | null>;
        };
    };
    keyboard: {
        w: ComputedRef<boolean>;
        s: ComputedRef<boolean>;
        a: ComputedRef<boolean>;
        d: ComputedRef<boolean>;
        ctrl: ComputedRef<boolean>;
        shift: ComputedRef<boolean>;
        alt: ComputedRef<boolean>;
        meta: ComputedRef<boolean>;
    };
    hovered: {
        zone: ShallowRef<HTMLElement | Element | null, HTMLElement | Element | null>;
        element: ShallowRef<HTMLElement | Element | null, HTMLElement | Element | null>;
    };
    isPending: ShallowRef<boolean, boolean>;
    handleDragElementIntersection: (action: 'add' | 'remove', element: HTMLElement | Element) => void;
    handleDropZoneIntersection: (action: 'add' | 'remove', element: HTMLElement | Element) => void;
};

export declare const useDragContainer: (options?: Omit<TransitionProps, 'appear'>) => {
    elementRef: Ref<HTMLElement | null, HTMLElement | null>;
    draggingElements: Ref<Map<HTMLElement | Element, {
    initialHTML: string;
    initialRect?: {
    height: number;
    width: number;
    x: number;
    y: number;
    readonly bottom: number;
    readonly left: number;
    readonly right: number;
    readonly top: number;
    toJSON: () => any;
    } | undefined;
    id: string | number;
    node: HTMLElement | Element | null;
    groups: string[];
    layer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    defaultLayer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    disabled: boolean;
    data: {
    [x: string]: any;
    source?: any[] | undefined;
    index?: number | undefined;
    } | null;
    events: {
    onHover?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onLeave?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onEnd?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onStart?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onMove?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    };
    }> & Omit<Map<HTMLElement | Element, IDraggingElement>, keyof Map<any, any>>, Map<HTMLElement | Element, IDraggingElement> | (Map<HTMLElement | Element, {
    initialHTML: string;
    initialRect?: {
    height: number;
    width: number;
    x: number;
    y: number;
    readonly bottom: number;
    readonly left: number;
    readonly right: number;
    readonly top: number;
    toJSON: () => any;
    } | undefined;
    id: string | number;
    node: HTMLElement | Element | null;
    groups: string[];
    layer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    defaultLayer: FunctionalComponent<any, {}, any, {}> | {
    new (...args: any[]): any;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    } | {
    [x: string]: any;
    setup?: ((this: void, props: LooseRequired<any>, ctx: {
    attrs: {
    [x: string]: unknown;
    };
    slots: Readonly<{
    [name: string]: Slot<any> | undefined;
    }>;
    emit: ((event: unknown, ...args: any[]) => void) | ((event: string, ...args: any[]) => void);
    expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed | undefined) => void;
    }) => any) | undefined;
    name?: string | undefined;
    template?: string | object | undefined;
    render?: Function | undefined;
    components?: Record<string, Component<any, any, any, ComputedOptions, MethodOptions, {}, any>> | undefined;
    directives?: Record<string, Directive<any, any, string, string>> | undefined;
    inheritAttrs?: boolean | undefined;
    emits?: any;
    slots?: {} | undefined;
    expose?: string[] | undefined;
    serverPrefetch?: (() => void | Promise<any>) | undefined;
    compilerOptions?: {
    isCustomElement?: ((tag: string) => boolean) | undefined;
    whitespace?: "preserve" | "condense" | undefined;
    comments?: boolean | undefined;
    delimiters?: [string, string] | undefined;
    } | undefined;
    call?: ((this: unknown, ...args: unknown[]) => never) | undefined;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
    __defaults?: {} | undefined;
    compatConfig?: {
    GLOBAL_MOUNT?: boolean | "suppress-warning" | undefined;
    GLOBAL_MOUNT_CONTAINER?: boolean | "suppress-warning" | undefined;
    GLOBAL_EXTEND?: boolean | "suppress-warning" | undefined;
    GLOBAL_PROTOTYPE?: boolean | "suppress-warning" | undefined;
    GLOBAL_SET?: boolean | "suppress-warning" | undefined;
    GLOBAL_DELETE?: boolean | "suppress-warning" | undefined;
    GLOBAL_OBSERVABLE?: boolean | "suppress-warning" | undefined;
    GLOBAL_PRIVATE_UTIL?: boolean | "suppress-warning" | undefined;
    CONFIG_SILENT?: boolean | "suppress-warning" | undefined;
    CONFIG_DEVTOOLS?: boolean | "suppress-warning" | undefined;
    CONFIG_KEY_CODES?: boolean | "suppress-warning" | undefined;
    CONFIG_PRODUCTION_TIP?: boolean | "suppress-warning" | undefined;
    CONFIG_IGNORED_ELEMENTS?: boolean | "suppress-warning" | undefined;
    CONFIG_WHITESPACE?: boolean | "suppress-warning" | undefined;
    CONFIG_OPTION_MERGE_STRATS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SET?: boolean | "suppress-warning" | undefined;
    INSTANCE_DELETE?: boolean | "suppress-warning" | undefined;
    INSTANCE_DESTROY?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_EMITTER?: boolean | "suppress-warning" | undefined;
    INSTANCE_EVENT_HOOKS?: boolean | "suppress-warning" | undefined;
    INSTANCE_CHILDREN?: boolean | "suppress-warning" | undefined;
    INSTANCE_LISTENERS?: boolean | "suppress-warning" | undefined;
    INSTANCE_SCOPED_SLOTS?: boolean | "suppress-warning" | undefined;
    INSTANCE_ATTRS_CLASS_STYLE?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_FN?: boolean | "suppress-warning" | undefined;
    OPTIONS_DATA_MERGE?: boolean | "suppress-warning" | undefined;
    OPTIONS_BEFORE_DESTROY?: boolean | "suppress-warning" | undefined;
    OPTIONS_DESTROYED?: boolean | "suppress-warning" | undefined;
    WATCH_ARRAY?: boolean | "suppress-warning" | undefined;
    PROPS_DEFAULT_THIS?: boolean | "suppress-warning" | undefined;
    V_ON_KEYCODE_MODIFIER?: boolean | "suppress-warning" | undefined;
    CUSTOM_DIR?: boolean | "suppress-warning" | undefined;
    ATTR_FALSE_VALUE?: boolean | "suppress-warning" | undefined;
    ATTR_ENUMERATED_COERCION?: boolean | "suppress-warning" | undefined;
    TRANSITION_CLASSES?: boolean | "suppress-warning" | undefined;
    TRANSITION_GROUP_ROOT?: boolean | "suppress-warning" | undefined;
    COMPONENT_ASYNC?: boolean | "suppress-warning" | undefined;
    COMPONENT_FUNCTIONAL?: boolean | "suppress-warning" | undefined;
    COMPONENT_V_MODEL?: boolean | "suppress-warning" | undefined;
    RENDER_FUNCTION?: boolean | "suppress-warning" | undefined;
    FILTERS?: boolean | "suppress-warning" | undefined;
    PRIVATE_APIS?: boolean | "suppress-warning" | undefined;
    MODE?: 2 | 3 | ((comp: Component<any, any, any, ComputedOptions, MethodOptions, {}, any> | null) => 2 | 3) | undefined;
    } | undefined;
    data?: ((this: any, vm: any) => any) | undefined;
    computed?: ComputedOptions | undefined;
    methods?: MethodOptions | undefined;
    watch?: {
    [x: string]: (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>)) | (string | WatchCallback<any, any> | ({
    handler: string | WatchCallback<any, any>;
    } & WatchOptions<boolean>))[];
    } | undefined;
    provide?: ComponentProvideOptions | undefined;
    inject?: {} | string[] | undefined;
    filters?: Record<string, Function> | undefined;
    mixins?: any[] | undefined;
    extends?: any;
    beforeCreate?: (() => void) | undefined;
    created?: (() => void) | undefined;
    beforeMount?: (() => void) | undefined;
    mounted?: (() => void) | undefined;
    beforeUpdate?: (() => void) | undefined;
    updated?: (() => void) | undefined;
    activated?: (() => void) | undefined;
    deactivated?: (() => void) | undefined;
    beforeDestroy?: (() => void) | undefined;
    beforeUnmount?: (() => void) | undefined;
    destroyed?: (() => void) | undefined;
    unmounted?: (() => void) | undefined;
    renderTracked?: ((e: DebuggerEvent) => void) | undefined;
    renderTriggered?: ((e: DebuggerEvent) => void) | undefined;
    errorCaptured?: ((err: unknown, instance: ComponentPublicInstance<    {}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, info: string) => boolean | void) | undefined;
    delimiters?: [string, string] | undefined;
    __differentiator?: string | number | symbol | undefined;
    __isBuiltIn?: boolean | undefined;
    __file?: string | undefined;
    __name?: string | undefined;
    } | null;
    disabled: boolean;
    data: {
    [x: string]: any;
    source?: any[] | undefined;
    index?: number | undefined;
    } | null;
    events: {
    onHover?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onLeave?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onEnd?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onStart?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    onMove?: ((store: IDnDStore, payload: IDnDPayload) => void) | undefined;
    };
    }> & Omit<Map<HTMLElement | Element, IDraggingElement>, keyof Map<any, any>>)>;
    pointerPosition: {
        start: ShallowRef<IPoint | null, IPoint | null>;
        current: ShallowRef<IPoint | null, IPoint | null>;
        offset: {
            percent: ShallowRef<IPoint | null, IPoint | null>;
            pixel: ShallowRef<IPoint | null, IPoint | null>;
        };
    };
    isDragging: ComputedRef<boolean>;
    animating: {
        enter: ShallowRef<boolean, boolean>;
        leave: ShallowRef<boolean, boolean>;
        appear: ShallowRef<boolean, boolean>;
    };
};

export declare const useDraggable: (options?: IUseDragOptions) => {
    pointerPosition: {
        start: ShallowRef<IPoint | null, IPoint | null>;
        current: ShallowRef<IPoint | null, IPoint | null>;
        offset: {
            percent: ShallowRef<IPoint | null, IPoint | null>;
            pixel: ShallowRef<IPoint | null, IPoint | null>;
        };
    };
    elementRef: Ref<HTMLElement | null, HTMLElement | null>;
    isDragging: ComputedRef<boolean>;
    isOvered: ComputedRef<boolean>;
    isAllowed: ComputedRef<boolean>;
    isLazyAllowed: ComputedRef<boolean>;
    handleDragStart: (event: PointerEvent | KeyboardEvent) => void;
    id: ShallowRef<string | number, string | number>;
};

export declare const useDroppable: (options?: IUseDropOptions) => {
    elementRef: Ref<HTMLElement | null, HTMLElement | null>;
    isOvered: ComputedRef<boolean>;
    isAllowed: ComputedRef<boolean>;
    isLazyAllowed: ComputedRef<boolean>;
};

export declare const useSelection: (elementRef: Ref<HTMLElement | null>) => {
    handleUnselect: () => void;
    handleSelect: () => void;
    handleToggleSelect: () => void;
    isSelected: ComputedRef<boolean>;
    isParentOfSelected: ComputedRef<boolean>;
};

declare const VueDndKitPlugin: {
    install(app: App, options?: IPluginOptions): void;
};
export default VueDndKitPlugin;

export { }


declare module '@vue/runtime-core' {
    interface App {
        __VUE_DND_KIT_OVERLAY__?: {
            container: HTMLElement;
            vnode: any;
            options: IPluginOptions['defaultOverlay'];
        };
        __VUE_DND_KIT_STORE__?: ReturnType<typeof useDnDStore>;
    }
}