import type { ComponentInternalInstance, TransitionProps, Component, ComputedOptions, MethodOptions, DefineComponent, VNode, RendererNode, RendererElement, ComponentOptionsMixin, VNodeProps, AllowedComponentProps, ComponentCustomProps, ExtractPropTypes, PropType, VNodeChild, Ref, Slot, ComponentPublicInstance, ComponentOptionsBase, DebuggerEvent, nextTick, WatchOptions, WatchStopHandle, ShallowUnwrapRef, ComponentCustomProperties } from 'vue';
import type { OverlaySlots } from '../overlay/overlay';
export declare const Menu: {
    new (...args: any[]): {
        $: ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            modelValue: boolean;
            transition: NonNullable<string | false | (TransitionProps & {
                component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
            })> | {
                readonly component: DefineComponent<{
                    group: BooleanConstructor;
                    hideOnLeave: BooleanConstructor;
                    leaveAbsolute: BooleanConstructor;
                    mode: {
                        type: StringConstructor;
                        default: string | undefined;
                    };
                    origin: {
                        type: StringConstructor;
                        default: string;
                    };
                    onBeforeEnter: FunctionConstructor;
                    onLeave: FunctionConstructor;
                    onAfterLeave: FunctionConstructor;
                }, () => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                    group: BooleanConstructor;
                    hideOnLeave: BooleanConstructor;
                    leaveAbsolute: BooleanConstructor;
                    mode: {
                        type: StringConstructor;
                        default: string | undefined;
                    };
                    origin: {
                        type: StringConstructor;
                        default: string;
                    };
                    onBeforeEnter: FunctionConstructor;
                    onLeave: FunctionConstructor;
                    onAfterLeave: FunctionConstructor;
                }>>, {
                    group: boolean;
                    mode: string;
                    hideOnLeave: boolean;
                    leaveAbsolute: boolean;
                    origin: string;
                }>;
            };
        }> & Omit<Readonly<ExtractPropTypes<{
            transition: Omit<{
                type: PropType<string | false | (TransitionProps & {
                    component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
                })>;
                default: string;
                validator: (val: unknown) => boolean;
            }, "default" | "type"> & {
                type: PropType<NonNullable<string | false | (TransitionProps & {
                    component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
                })> | {
                    readonly component: DefineComponent<{
                        group: BooleanConstructor;
                        hideOnLeave: BooleanConstructor;
                        leaveAbsolute: BooleanConstructor;
                        mode: {
                            type: StringConstructor;
                            default: string | undefined;
                        };
                        origin: {
                            type: StringConstructor;
                            default: string;
                        };
                        onBeforeEnter: FunctionConstructor;
                        onLeave: FunctionConstructor;
                        onAfterLeave: FunctionConstructor;
                    }, () => VNode<RendererNode, RendererElement, {
                        [key: string]: any;
                    }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                        group: BooleanConstructor;
                        hideOnLeave: BooleanConstructor;
                        leaveAbsolute: BooleanConstructor;
                        mode: {
                            type: StringConstructor;
                            default: string | undefined;
                        };
                        origin: {
                            type: StringConstructor;
                            default: string;
                        };
                        onBeforeEnter: FunctionConstructor;
                        onLeave: FunctionConstructor;
                        onAfterLeave: FunctionConstructor;
                    }>>, {
                        group: boolean;
                        mode: string;
                        hideOnLeave: boolean;
                        leaveAbsolute: boolean;
                        origin: string;
                    }>;
                }>;
                default: NonNullable<string | false | (TransitionProps & {
                    component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
                })> | {
                    readonly component: DefineComponent<{
                        group: BooleanConstructor;
                        hideOnLeave: BooleanConstructor;
                        leaveAbsolute: BooleanConstructor;
                        mode: {
                            type: StringConstructor;
                            default: string | undefined;
                        };
                        origin: {
                            type: StringConstructor;
                            default: string;
                        };
                        onBeforeEnter: FunctionConstructor;
                        onLeave: FunctionConstructor;
                        onAfterLeave: FunctionConstructor;
                    }, () => VNode<RendererNode, RendererElement, {
                        [key: string]: any;
                    }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                        group: BooleanConstructor;
                        hideOnLeave: BooleanConstructor;
                        leaveAbsolute: BooleanConstructor;
                        mode: {
                            type: StringConstructor;
                            default: string | undefined;
                        };
                        origin: {
                            type: StringConstructor;
                            default: string;
                        };
                        onBeforeEnter: FunctionConstructor;
                        onLeave: FunctionConstructor;
                        onAfterLeave: FunctionConstructor;
                    }>>, {
                        group: boolean;
                        mode: string;
                        hideOnLeave: boolean;
                        leaveAbsolute: boolean;
                        origin: string;
                    }>;
                };
            };
            modelValue: BooleanConstructor;
            id: StringConstructor;
        } & {
            $children: () => VNodeChild | ((args_0: {
                close: () => void;
                isActive: Ref<boolean>;
            }) => VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>[]) | {
                default?: VNodeChild | ((args_0: {
                    close: () => void;
                    isActive: Ref<boolean>;
                }) => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>[]);
                activator?: VNodeChild | ((args_0: {
                    close: () => void;
                    isActive: boolean;
                    props: Record<string, any>;
                    on: Record<string, any>;
                }) => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>[]);
            };
            'v-slots': new () => {
                default?: false | ((args_0: {
                    close: () => void;
                    isActive: Ref<boolean>;
                }) => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>[]) | undefined;
                activator?: false | ((args_0: {
                    close: () => void;
                    isActive: boolean;
                    props: Record<string, any>;
                    on: Record<string, any>;
                }) => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>[]) | undefined;
            };
        }>> & {
            "onUpdate:modelValue"?: ((_modelValue: boolean) => any) | undefined;
        } & VNodeProps & AllowedComponentProps & ComponentCustomProps, "modelValue" | "transition">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: Slot | undefined;
        }>;
        $root: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
        $parent: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null;
        $emit: (event: "update:modelValue", _modelValue: boolean) => void;
        $el: any;
        $options: ComponentOptionsBase<Readonly<ExtractPropTypes<{
            transition: Omit<{
                type: PropType<string | false | (TransitionProps & {
                    component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
                })>;
                default: string;
                validator: (val: unknown) => boolean;
            }, "default" | "type"> & {
                type: PropType<NonNullable<string | false | (TransitionProps & {
                    component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
                })> | {
                    readonly component: DefineComponent<{
                        group: BooleanConstructor;
                        hideOnLeave: BooleanConstructor;
                        leaveAbsolute: BooleanConstructor;
                        mode: {
                            type: StringConstructor;
                            default: string | undefined;
                        };
                        origin: {
                            type: StringConstructor;
                            default: string;
                        };
                        onBeforeEnter: FunctionConstructor;
                        onLeave: FunctionConstructor;
                        onAfterLeave: FunctionConstructor;
                    }, () => VNode<RendererNode, RendererElement, {
                        [key: string]: any;
                    }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                        group: BooleanConstructor;
                        hideOnLeave: BooleanConstructor;
                        leaveAbsolute: BooleanConstructor;
                        mode: {
                            type: StringConstructor;
                            default: string | undefined;
                        };
                        origin: {
                            type: StringConstructor;
                            default: string;
                        };
                        onBeforeEnter: FunctionConstructor;
                        onLeave: FunctionConstructor;
                        onAfterLeave: FunctionConstructor;
                    }>>, {
                        group: boolean;
                        mode: string;
                        hideOnLeave: boolean;
                        leaveAbsolute: boolean;
                        origin: string;
                    }>;
                }>;
                default: NonNullable<string | false | (TransitionProps & {
                    component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
                })> | {
                    readonly component: DefineComponent<{
                        group: BooleanConstructor;
                        hideOnLeave: BooleanConstructor;
                        leaveAbsolute: BooleanConstructor;
                        mode: {
                            type: StringConstructor;
                            default: string | undefined;
                        };
                        origin: {
                            type: StringConstructor;
                            default: string;
                        };
                        onBeforeEnter: FunctionConstructor;
                        onLeave: FunctionConstructor;
                        onAfterLeave: FunctionConstructor;
                    }, () => VNode<RendererNode, RendererElement, {
                        [key: string]: any;
                    }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                        group: BooleanConstructor;
                        hideOnLeave: BooleanConstructor;
                        leaveAbsolute: BooleanConstructor;
                        mode: {
                            type: StringConstructor;
                            default: string | undefined;
                        };
                        origin: {
                            type: StringConstructor;
                            default: string;
                        };
                        onBeforeEnter: FunctionConstructor;
                        onLeave: FunctionConstructor;
                        onAfterLeave: FunctionConstructor;
                    }>>, {
                        group: boolean;
                        mode: string;
                        hideOnLeave: boolean;
                        leaveAbsolute: boolean;
                        origin: string;
                    }>;
                };
            };
            modelValue: BooleanConstructor;
            id: StringConstructor;
        } & {
            $children: () => VNodeChild | ((args_0: {
                close: () => void;
                isActive: Ref<boolean>;
            }) => VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>[]) | {
                default?: VNodeChild | ((args_0: {
                    close: () => void;
                    isActive: Ref<boolean>;
                }) => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>[]);
                activator?: VNodeChild | ((args_0: {
                    close: () => void;
                    isActive: boolean;
                    props: Record<string, any>;
                    on: Record<string, any>;
                }) => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>[]);
            };
            'v-slots': new () => {
                default?: false | ((args_0: {
                    close: () => void;
                    isActive: Ref<boolean>;
                }) => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>[]) | undefined;
                activator?: false | ((args_0: {
                    close: () => void;
                    isActive: boolean;
                    props: Record<string, any>;
                    on: Record<string, any>;
                }) => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }> | VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>[]) | undefined;
            };
        }>> & {
            "onUpdate:modelValue"?: ((_modelValue: boolean) => any) | undefined;
        }, {
            overlayRef: Ref<any>;
        }, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
            'update:modelValue': (_modelValue: boolean) => boolean;
        }, string, {
            modelValue: boolean;
            transition: NonNullable<string | false | (TransitionProps & {
                component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
            })> | {
                readonly component: DefineComponent<{
                    group: BooleanConstructor;
                    hideOnLeave: BooleanConstructor;
                    leaveAbsolute: BooleanConstructor;
                    mode: {
                        type: StringConstructor;
                        default: string | undefined;
                    };
                    origin: {
                        type: StringConstructor;
                        default: string;
                    };
                    onBeforeEnter: FunctionConstructor;
                    onLeave: FunctionConstructor;
                    onAfterLeave: FunctionConstructor;
                }, () => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                    group: BooleanConstructor;
                    hideOnLeave: BooleanConstructor;
                    leaveAbsolute: BooleanConstructor;
                    mode: {
                        type: StringConstructor;
                        default: string | undefined;
                    };
                    origin: {
                        type: StringConstructor;
                        default: string;
                    };
                    onBeforeEnter: FunctionConstructor;
                    onLeave: FunctionConstructor;
                    onAfterLeave: FunctionConstructor;
                }>>, {
                    group: boolean;
                    mode: string;
                    hideOnLeave: boolean;
                    leaveAbsolute: boolean;
                    origin: string;
                }>;
            };
        }, {}, string> & {
            beforeCreate?: ((() => void) | (() => void)[]) | undefined;
            created?: ((() => void) | (() => void)[]) | undefined;
            beforeMount?: ((() => void) | (() => void)[]) | undefined;
            mounted?: ((() => void) | (() => void)[]) | undefined;
            beforeUpdate?: ((() => void) | (() => void)[]) | undefined;
            updated?: ((() => void) | (() => void)[]) | undefined;
            activated?: ((() => void) | (() => void)[]) | undefined;
            deactivated?: ((() => void) | (() => void)[]) | undefined;
            beforeDestroy?: ((() => void) | (() => void)[]) | undefined;
            beforeUnmount?: ((() => void) | (() => void)[]) | undefined;
            destroyed?: ((() => void) | (() => void)[]) | undefined;
            unmounted?: ((() => void) | (() => void)[]) | undefined;
            renderTracked?: (((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[]) | undefined;
            renderTriggered?: (((e: DebuggerEvent) => void) | ((e: DebuggerEvent) => void)[]) | undefined;
            errorCaptured?: (((err: unknown, instance: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void) | ((err: unknown, instance: ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string>, {}> | null, info: string) => boolean | void)[]) | undefined;
        };
        $forceUpdate: () => void;
        $nextTick: typeof nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (args_0: R, args_1: R) => any : (...args: any) => any, options?: WatchOptions<boolean> | undefined): WatchStopHandle;
    } & Readonly<ExtractPropTypes<{
        transition: Omit<{
            type: PropType<string | false | (TransitionProps & {
                component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
            })>;
            default: string;
            validator: (val: unknown) => boolean;
        }, "default" | "type"> & {
            type: PropType<NonNullable<string | false | (TransitionProps & {
                component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
            })> | {
                readonly component: DefineComponent<{
                    group: BooleanConstructor;
                    hideOnLeave: BooleanConstructor;
                    leaveAbsolute: BooleanConstructor;
                    mode: {
                        type: StringConstructor;
                        default: string | undefined;
                    };
                    origin: {
                        type: StringConstructor;
                        default: string;
                    };
                    onBeforeEnter: FunctionConstructor;
                    onLeave: FunctionConstructor;
                    onAfterLeave: FunctionConstructor;
                }, () => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                    group: BooleanConstructor;
                    hideOnLeave: BooleanConstructor;
                    leaveAbsolute: BooleanConstructor;
                    mode: {
                        type: StringConstructor;
                        default: string | undefined;
                    };
                    origin: {
                        type: StringConstructor;
                        default: string;
                    };
                    onBeforeEnter: FunctionConstructor;
                    onLeave: FunctionConstructor;
                    onAfterLeave: FunctionConstructor;
                }>>, {
                    group: boolean;
                    mode: string;
                    hideOnLeave: boolean;
                    leaveAbsolute: boolean;
                    origin: string;
                }>;
            }>;
            default: NonNullable<string | false | (TransitionProps & {
                component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
            })> | {
                readonly component: DefineComponent<{
                    group: BooleanConstructor;
                    hideOnLeave: BooleanConstructor;
                    leaveAbsolute: BooleanConstructor;
                    mode: {
                        type: StringConstructor;
                        default: string | undefined;
                    };
                    origin: {
                        type: StringConstructor;
                        default: string;
                    };
                    onBeforeEnter: FunctionConstructor;
                    onLeave: FunctionConstructor;
                    onAfterLeave: FunctionConstructor;
                }, () => VNode<RendererNode, RendererElement, {
                    [key: string]: any;
                }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                    group: BooleanConstructor;
                    hideOnLeave: BooleanConstructor;
                    leaveAbsolute: BooleanConstructor;
                    mode: {
                        type: StringConstructor;
                        default: string | undefined;
                    };
                    origin: {
                        type: StringConstructor;
                        default: string;
                    };
                    onBeforeEnter: FunctionConstructor;
                    onLeave: FunctionConstructor;
                    onAfterLeave: FunctionConstructor;
                }>>, {
                    group: boolean;
                    mode: string;
                    hideOnLeave: boolean;
                    leaveAbsolute: boolean;
                    origin: string;
                }>;
            };
        };
        modelValue: BooleanConstructor;
        id: StringConstructor;
    } & {
        $children: () => VNodeChild | ((args_0: {
            close: () => void;
            isActive: Ref<boolean>;
        }) => VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }> | VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }>[]) | {
            default?: VNodeChild | ((args_0: {
                close: () => void;
                isActive: Ref<boolean>;
            }) => VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>[]);
            activator?: VNodeChild | ((args_0: {
                close: () => void;
                isActive: boolean;
                props: Record<string, any>;
                on: Record<string, any>;
            }) => VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>[]);
        };
        'v-slots': new () => {
            default?: false | ((args_0: {
                close: () => void;
                isActive: Ref<boolean>;
            }) => VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>[]) | undefined;
            activator?: false | ((args_0: {
                close: () => void;
                isActive: boolean;
                props: Record<string, any>;
                on: Record<string, any>;
            }) => VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }> | VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>[]) | undefined;
        };
    }>> & {
        "onUpdate:modelValue"?: ((_modelValue: boolean) => any) | undefined;
    } & ShallowUnwrapRef<{
        overlayRef: Ref<any>;
    }> & {} & ComponentCustomProperties & {};
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & ComponentOptionsBase<Readonly<ExtractPropTypes<{
    transition: Omit<{
        type: PropType<string | false | (TransitionProps & {
            component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
        })>;
        default: string;
        validator: (val: unknown) => boolean;
    }, "default" | "type"> & {
        type: PropType<NonNullable<string | false | (TransitionProps & {
            component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
        })> | {
            readonly component: DefineComponent<{
                group: BooleanConstructor;
                hideOnLeave: BooleanConstructor;
                leaveAbsolute: BooleanConstructor;
                mode: {
                    type: StringConstructor;
                    default: string | undefined;
                };
                origin: {
                    type: StringConstructor;
                    default: string;
                };
                onBeforeEnter: FunctionConstructor;
                onLeave: FunctionConstructor;
                onAfterLeave: FunctionConstructor;
            }, () => VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                group: BooleanConstructor;
                hideOnLeave: BooleanConstructor;
                leaveAbsolute: BooleanConstructor;
                mode: {
                    type: StringConstructor;
                    default: string | undefined;
                };
                origin: {
                    type: StringConstructor;
                    default: string;
                };
                onBeforeEnter: FunctionConstructor;
                onLeave: FunctionConstructor;
                onAfterLeave: FunctionConstructor;
            }>>, {
                group: boolean;
                mode: string;
                hideOnLeave: boolean;
                leaveAbsolute: boolean;
                origin: string;
            }>;
        }>;
        default: NonNullable<string | false | (TransitionProps & {
            component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
        })> | {
            readonly component: DefineComponent<{
                group: BooleanConstructor;
                hideOnLeave: BooleanConstructor;
                leaveAbsolute: BooleanConstructor;
                mode: {
                    type: StringConstructor;
                    default: string | undefined;
                };
                origin: {
                    type: StringConstructor;
                    default: string;
                };
                onBeforeEnter: FunctionConstructor;
                onLeave: FunctionConstructor;
                onAfterLeave: FunctionConstructor;
            }, () => VNode<RendererNode, RendererElement, {
                [key: string]: any;
            }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
                group: BooleanConstructor;
                hideOnLeave: BooleanConstructor;
                leaveAbsolute: BooleanConstructor;
                mode: {
                    type: StringConstructor;
                    default: string | undefined;
                };
                origin: {
                    type: StringConstructor;
                    default: string;
                };
                onBeforeEnter: FunctionConstructor;
                onLeave: FunctionConstructor;
                onAfterLeave: FunctionConstructor;
            }>>, {
                group: boolean;
                mode: string;
                hideOnLeave: boolean;
                leaveAbsolute: boolean;
                origin: string;
            }>;
        };
    };
    modelValue: BooleanConstructor;
    id: StringConstructor;
} & {
    $children: () => VNodeChild | ((args_0: {
        close: () => void;
        isActive: Ref<boolean>;
    }) => VNode<RendererNode, RendererElement, {
        [key: string]: any;
    }> | VNode<RendererNode, RendererElement, {
        [key: string]: any;
    }>[]) | {
        default?: VNodeChild | ((args_0: {
            close: () => void;
            isActive: Ref<boolean>;
        }) => VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }> | VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }>[]);
        activator?: VNodeChild | ((args_0: {
            close: () => void;
            isActive: boolean;
            props: Record<string, any>;
            on: Record<string, any>;
        }) => VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }> | VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }>[]);
    };
    'v-slots': new () => {
        default?: false | ((args_0: {
            close: () => void;
            isActive: Ref<boolean>;
        }) => VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }> | VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }>[]) | undefined;
        activator?: false | ((args_0: {
            close: () => void;
            isActive: boolean;
            props: Record<string, any>;
            on: Record<string, any>;
        }) => VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }> | VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }>[]) | undefined;
    };
}>> & {
    "onUpdate:modelValue"?: ((_modelValue: boolean) => any) | undefined;
}, {
    overlayRef: Ref<any>;
}, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    'update:modelValue': (_modelValue: boolean) => boolean;
}, string, {
    modelValue: boolean;
    transition: NonNullable<string | false | (TransitionProps & {
        component?: Component<any, any, any, ComputedOptions, MethodOptions> | undefined;
    })> | {
        readonly component: DefineComponent<{
            group: BooleanConstructor;
            hideOnLeave: BooleanConstructor;
            leaveAbsolute: BooleanConstructor;
            mode: {
                type: StringConstructor;
                default: string | undefined;
            };
            origin: {
                type: StringConstructor;
                default: string;
            };
            onBeforeEnter: FunctionConstructor;
            onLeave: FunctionConstructor;
            onAfterLeave: FunctionConstructor;
        }, () => VNode<RendererNode, RendererElement, {
            [key: string]: any;
        }>, unknown, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, VNodeProps & AllowedComponentProps & ComponentCustomProps, Readonly<ExtractPropTypes<{
            group: BooleanConstructor;
            hideOnLeave: BooleanConstructor;
            leaveAbsolute: BooleanConstructor;
            mode: {
                type: StringConstructor;
                default: string | undefined;
            };
            origin: {
                type: StringConstructor;
                default: string;
            };
            onBeforeEnter: FunctionConstructor;
            onLeave: FunctionConstructor;
            onAfterLeave: FunctionConstructor;
        }>>, {
            group: boolean;
            mode: string;
            hideOnLeave: boolean;
            leaveAbsolute: boolean;
            origin: string;
        }>;
    };
}, {}, string> & VNodeProps & AllowedComponentProps & ComponentCustomProps & (new () => {
    $slots: OverlaySlots;
});
export declare type Menu = InstanceType<typeof Menu>;
//# sourceMappingURL=menu.d.ts.map