import Menu from './Menu.vue';
export declare const GmMenu: import("../../../../utils").SFCWithInstall<{
    new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
        mode: {
            readonly type: import("vue").PropType<"horizontal" | "vertical">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "vertical";
        };
        defaultActive: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "";
        };
        defaultOpeneds: {
            readonly type: import("vue").PropType<string[]>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => [];
        };
        uniqueOpened: BooleanConstructor;
        router: BooleanConstructor;
        menuTrigger: {
            readonly type: import("vue").PropType<"click" | "hover">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "hover";
        };
        collapse: BooleanConstructor;
        backgroundColor: StringConstructor;
        textColor: StringConstructor;
        activeTextColor: StringConstructor;
        closeOnClickOutside: BooleanConstructor;
        collapseTransition: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        ellipsis: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        popperOffset: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 6;
        };
        ellipsisIcon: {
            readonly type: import("vue").PropType<string | import("vue").Component>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => any;
        };
        popperEffect: {
            readonly type: import("vue").PropType<import("element-plus").PopperEffect>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "dark";
        };
        popperClass: StringConstructor;
        popperStyle: {
            readonly type: import("vue").PropType<string | import("vue").CSSProperties>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        showTimeout: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 300;
        };
        hideTimeout: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 300;
        };
        persistent: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
    }>> & {
        onClose?: ((index: string, indexPath: string[]) => any) | undefined;
        onOpen?: ((index: string, indexPath: string[]) => any) | undefined;
        onSelect?: ((index: string, indexPath: string[], item: import("element-plus").MenuItemClicked, routerResult?: Promise<void | import("vue-router/dist/router-BbqN7H95.mjs").NavigationFailure> | undefined) => any) | undefined;
    }, {
        open: (index: string) => void;
        close: (index: string) => void;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        open: (index: string, indexPath: string[]) => void;
        select: (index: string, indexPath: string[], item: import("element-plus").MenuItemClicked, routerResult?: Promise<void | import("vue-router/dist/router-BbqN7H95.mjs").NavigationFailure> | undefined) => void;
        close: (index: string, indexPath: string[]) => void;
    }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
        mode: {
            readonly type: import("vue").PropType<"horizontal" | "vertical">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "vertical";
        };
        defaultActive: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "";
        };
        defaultOpeneds: {
            readonly type: import("vue").PropType<string[]>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => [];
        };
        uniqueOpened: BooleanConstructor;
        router: BooleanConstructor;
        menuTrigger: {
            readonly type: import("vue").PropType<"click" | "hover">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "hover";
        };
        collapse: BooleanConstructor;
        backgroundColor: StringConstructor;
        textColor: StringConstructor;
        activeTextColor: StringConstructor;
        closeOnClickOutside: BooleanConstructor;
        collapseTransition: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        ellipsis: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        popperOffset: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 6;
        };
        ellipsisIcon: {
            readonly type: import("vue").PropType<string | import("vue").Component>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => any;
        };
        popperEffect: {
            readonly type: import("vue").PropType<import("element-plus").PopperEffect>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "dark";
        };
        popperClass: StringConstructor;
        popperStyle: {
            readonly type: import("vue").PropType<string | import("vue").CSSProperties>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        showTimeout: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 300;
        };
        hideTimeout: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 300;
        };
        persistent: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
    }>> & {
        onClose?: ((index: string, indexPath: string[]) => any) | undefined;
        onOpen?: ((index: string, indexPath: string[]) => any) | undefined;
        onSelect?: ((index: string, indexPath: string[], item: import("element-plus").MenuItemClicked, routerResult?: Promise<void | import("vue-router/dist/router-BbqN7H95.mjs").NavigationFailure> | undefined) => any) | undefined;
    }, {
        router: boolean;
        mode: "horizontal" | "vertical";
        collapse: boolean;
        ellipsis: boolean;
        persistent: boolean;
        showTimeout: number;
        hideTimeout: number;
        popperOffset: number;
        defaultActive: string;
        defaultOpeneds: string[];
        uniqueOpened: boolean;
        menuTrigger: "click" | "hover";
        closeOnClickOutside: boolean;
        collapseTransition: boolean;
        ellipsisIcon: string | import("vue").Component;
        popperEffect: import("element-plus").PopperEffect;
    }, true, {}, {}, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        mode: {
            readonly type: import("vue").PropType<"horizontal" | "vertical">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "vertical";
        };
        defaultActive: {
            readonly type: import("vue").PropType<string>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "";
        };
        defaultOpeneds: {
            readonly type: import("vue").PropType<string[]>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => [];
        };
        uniqueOpened: BooleanConstructor;
        router: BooleanConstructor;
        menuTrigger: {
            readonly type: import("vue").PropType<"click" | "hover">;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "hover";
        };
        collapse: BooleanConstructor;
        backgroundColor: StringConstructor;
        textColor: StringConstructor;
        activeTextColor: StringConstructor;
        closeOnClickOutside: BooleanConstructor;
        collapseTransition: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        ellipsis: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
        popperOffset: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 6;
        };
        ellipsisIcon: {
            readonly type: import("vue").PropType<string | import("vue").Component>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: () => any;
        };
        popperEffect: {
            readonly type: import("vue").PropType<import("element-plus").PopperEffect>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: "dark";
        };
        popperClass: StringConstructor;
        popperStyle: {
            readonly type: import("vue").PropType<string | import("vue").CSSProperties>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        showTimeout: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 300;
        };
        hideTimeout: {
            readonly type: import("vue").PropType<number>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: 300;
        };
        persistent: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: true;
        };
    }>> & {
        onClose?: ((index: string, indexPath: string[]) => any) | undefined;
        onOpen?: ((index: string, indexPath: string[]) => any) | undefined;
        onSelect?: ((index: string, indexPath: string[], item: import("element-plus").MenuItemClicked, routerResult?: Promise<void | import("vue-router/dist/router-BbqN7H95.mjs").NavigationFailure> | undefined) => any) | undefined;
    }, {
        open: (index: string) => void;
        close: (index: string) => void;
    }, {}, {}, {}, {
        router: boolean;
        mode: "horizontal" | "vertical";
        collapse: boolean;
        ellipsis: boolean;
        persistent: boolean;
        showTimeout: number;
        hideTimeout: number;
        popperOffset: number;
        defaultActive: string;
        defaultOpeneds: string[];
        uniqueOpened: boolean;
        menuTrigger: "click" | "hover";
        closeOnClickOutside: boolean;
        collapseTransition: boolean;
        ellipsisIcon: string | import("vue").Component;
        popperEffect: import("element-plus").PopperEffect;
    }>;
    __isFragment?: undefined;
    __isTeleport?: undefined;
    __isSuspense?: undefined;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    mode: {
        readonly type: import("vue").PropType<"horizontal" | "vertical">;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "vertical";
    };
    defaultActive: {
        readonly type: import("vue").PropType<string>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "";
    };
    defaultOpeneds: {
        readonly type: import("vue").PropType<string[]>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => [];
    };
    uniqueOpened: BooleanConstructor;
    router: BooleanConstructor;
    menuTrigger: {
        readonly type: import("vue").PropType<"click" | "hover">;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "hover";
    };
    collapse: BooleanConstructor;
    backgroundColor: StringConstructor;
    textColor: StringConstructor;
    activeTextColor: StringConstructor;
    closeOnClickOutside: BooleanConstructor;
    collapseTransition: {
        readonly type: import("vue").PropType<boolean>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: true;
    };
    ellipsis: {
        readonly type: import("vue").PropType<boolean>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: true;
    };
    popperOffset: {
        readonly type: import("vue").PropType<number>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: 6;
    };
    ellipsisIcon: {
        readonly type: import("vue").PropType<string | import("vue").Component>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: () => any;
    };
    popperEffect: {
        readonly type: import("vue").PropType<import("element-plus").PopperEffect>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: "dark";
    };
    popperClass: StringConstructor;
    popperStyle: {
        readonly type: import("vue").PropType<string | import("vue").CSSProperties>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    };
    showTimeout: {
        readonly type: import("vue").PropType<number>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: 300;
    };
    hideTimeout: {
        readonly type: import("vue").PropType<number>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: 300;
    };
    persistent: {
        readonly type: import("vue").PropType<boolean>;
        readonly required: false;
        readonly validator: ((val: unknown) => boolean) | undefined;
        __epPropKey: true;
    } & {
        readonly default: true;
    };
}>> & {
    onClose?: ((index: string, indexPath: string[]) => any) | undefined;
    onOpen?: ((index: string, indexPath: string[]) => any) | undefined;
    onSelect?: ((index: string, indexPath: string[], item: import("element-plus").MenuItemClicked, routerResult?: Promise<void | import("vue-router/dist/router-BbqN7H95.mjs").NavigationFailure> | undefined) => any) | undefined;
}, {
    open: (index: string) => void;
    close: (index: string) => void;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    open: (index: string, indexPath: string[]) => void;
    select: (index: string, indexPath: string[], item: import("element-plus").MenuItemClicked, routerResult?: Promise<void | import("vue-router/dist/router-BbqN7H95.mjs").NavigationFailure> | undefined) => void;
    close: (index: string, indexPath: string[]) => void;
}, string, {
    router: boolean;
    mode: "horizontal" | "vertical";
    collapse: boolean;
    ellipsis: boolean;
    persistent: boolean;
    showTimeout: number;
    hideTimeout: number;
    popperOffset: number;
    defaultActive: string;
    defaultOpeneds: string[];
    uniqueOpened: boolean;
    menuTrigger: "click" | "hover";
    closeOnClickOutside: boolean;
    collapseTransition: boolean;
    ellipsisIcon: string | import("vue").Component;
    popperEffect: import("element-plus").PopperEffect;
}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
    $slots: {
        default?: ((props: {}) => any) | undefined;
    };
})> & {
    MenuItem: {
        new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
            index: {
                readonly type: import("vue").PropType<string | null>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            } & {
                readonly default: null;
            };
            route: {
                readonly type: import("vue").PropType<string | import("vue-router/dist/router-BbqN7H95.mjs").RouteLocationAsRelativeGeneric | import("vue-router/dist/router-BbqN7H95.mjs").RouteLocationAsPathGeneric>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            disabled: BooleanConstructor;
        }>> & {
            onClick?: ((item: import("element-plus").MenuItemRegistered) => any) | undefined;
        }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
            click: (item: import("element-plus").MenuItemRegistered) => void;
        }, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
            index: {
                readonly type: import("vue").PropType<string | null>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            } & {
                readonly default: null;
            };
            route: {
                readonly type: import("vue").PropType<string | import("vue-router/dist/router-BbqN7H95.mjs").RouteLocationAsRelativeGeneric | import("vue-router/dist/router-BbqN7H95.mjs").RouteLocationAsPathGeneric>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            disabled: BooleanConstructor;
        }>> & {
            onClick?: ((item: import("element-plus").MenuItemRegistered) => any) | undefined;
        }, {
            disabled: boolean;
            index: string | null;
        }, true, {}, {}, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import("vue").ExtractPropTypes<{
            index: {
                readonly type: import("vue").PropType<string | null>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            } & {
                readonly default: null;
            };
            route: {
                readonly type: import("vue").PropType<string | import("vue-router/dist/router-BbqN7H95.mjs").RouteLocationAsRelativeGeneric | import("vue-router/dist/router-BbqN7H95.mjs").RouteLocationAsPathGeneric>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            disabled: BooleanConstructor;
        }>> & {
            onClick?: ((item: import("element-plus").MenuItemRegistered) => any) | undefined;
        }, {}, {}, {}, {}, {
            disabled: boolean;
            index: string | null;
        }>;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
    } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
        index: {
            readonly type: import("vue").PropType<string | null>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: null;
        };
        route: {
            readonly type: import("vue").PropType<string | import("vue-router/dist/router-BbqN7H95.mjs").RouteLocationAsRelativeGeneric | import("vue-router/dist/router-BbqN7H95.mjs").RouteLocationAsPathGeneric>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        disabled: BooleanConstructor;
    }>> & {
        onClick?: ((item: import("element-plus").MenuItemRegistered) => any) | undefined;
    }, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        click: (item: import("element-plus").MenuItemRegistered) => void;
    }, string, {
        disabled: boolean;
        index: string | null;
    }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
        $slots: {
            default?: ((props: {}) => any) | undefined;
        } & {
            title?: ((props: {}) => any) | undefined;
        };
    });
    MenuItemGroup: {
        new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
            title: StringConstructor;
        }>>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
            title: StringConstructor;
        }>>, {}, true, {}, {}, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import("vue").ExtractPropTypes<{
            title: StringConstructor;
        }>>, {}, {}, {}, {}, {}>;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
    } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
        title: StringConstructor;
    }>>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {}, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
        $slots: {
            default?: ((props: {}) => any) | undefined;
        } & {
            title?: ((props: {}) => any) | undefined;
        };
    });
    SubMenu: {
        new (...args: any[]): import("vue").CreateComponentPublicInstance<Readonly<import("vue").ExtractPropTypes<{
            index: {
                readonly type: import("vue").PropType<string>;
                readonly required: true;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            showTimeout: NumberConstructor;
            hideTimeout: NumberConstructor;
            popperClass: StringConstructor;
            popperStyle: {
                readonly type: import("vue").PropType<string | import("vue").CSSProperties>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            disabled: BooleanConstructor;
            teleported: {
                readonly type: import("vue").PropType<boolean>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            } & {
                readonly default: undefined;
            };
            popperOffset: NumberConstructor;
            expandCloseIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            expandOpenIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            collapseCloseIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            collapseOpenIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
        }>>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & Readonly<import("vue").ExtractPropTypes<{
            index: {
                readonly type: import("vue").PropType<string>;
                readonly required: true;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            showTimeout: NumberConstructor;
            hideTimeout: NumberConstructor;
            popperClass: StringConstructor;
            popperStyle: {
                readonly type: import("vue").PropType<string | import("vue").CSSProperties>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            disabled: BooleanConstructor;
            teleported: {
                readonly type: import("vue").PropType<boolean>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            } & {
                readonly default: undefined;
            };
            popperOffset: NumberConstructor;
            expandCloseIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            expandOpenIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            collapseCloseIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            collapseOpenIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
        }>>, {
            disabled: boolean;
            teleported: boolean;
        }, true, {}, {}, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import("vue").ExtractPropTypes<{
            index: {
                readonly type: import("vue").PropType<string>;
                readonly required: true;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            showTimeout: NumberConstructor;
            hideTimeout: NumberConstructor;
            popperClass: StringConstructor;
            popperStyle: {
                readonly type: import("vue").PropType<string | import("vue").CSSProperties>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            disabled: BooleanConstructor;
            teleported: {
                readonly type: import("vue").PropType<boolean>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            } & {
                readonly default: undefined;
            };
            popperOffset: NumberConstructor;
            expandCloseIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            expandOpenIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            collapseCloseIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
            collapseOpenIcon: {
                readonly type: import("vue").PropType<string | import("vue").Component>;
                readonly required: false;
                readonly validator: ((val: unknown) => boolean) | undefined;
                __epPropKey: true;
            };
        }>>, {}, {}, {}, {}, {
            disabled: boolean;
            teleported: boolean;
        }>;
        __isFragment?: undefined;
        __isTeleport?: undefined;
        __isSuspense?: undefined;
    } & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
        index: {
            readonly type: import("vue").PropType<string>;
            readonly required: true;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        showTimeout: NumberConstructor;
        hideTimeout: NumberConstructor;
        popperClass: StringConstructor;
        popperStyle: {
            readonly type: import("vue").PropType<string | import("vue").CSSProperties>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        disabled: BooleanConstructor;
        teleported: {
            readonly type: import("vue").PropType<boolean>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        } & {
            readonly default: undefined;
        };
        popperOffset: NumberConstructor;
        expandCloseIcon: {
            readonly type: import("vue").PropType<string | import("vue").Component>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        expandOpenIcon: {
            readonly type: import("vue").PropType<string | import("vue").Component>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        collapseCloseIcon: {
            readonly type: import("vue").PropType<string | import("vue").Component>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
        collapseOpenIcon: {
            readonly type: import("vue").PropType<string | import("vue").Component>;
            readonly required: false;
            readonly validator: ((val: unknown) => boolean) | undefined;
            __epPropKey: true;
        };
    }>>, unknown, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, {
        disabled: boolean;
        teleported: boolean;
    }, {}, string, {}> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => {
        $slots: {
            default?: ((props: {}) => any) | undefined;
        } & {
            title?: ((props: {}) => any) | undefined;
        };
    });
};
export type MenuInstance = InstanceType<typeof Menu>;
export * from './menu';
export default GmMenu;
