import Group from './menu-group';
import Item from './menu-item';
import Submenu from './submenu';
declare const BkMenu: {
    new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins<Readonly<import("vue").ExtractPropTypes<{
        activeKey: StringConstructor;
        collapse: BooleanConstructor;
        openedKeys: {
            type: import("vue").PropType<string[]>;
        };
        mode: {
            type: import("vue").PropType<import("./utils").MenuMode>;
            default: string;
        };
        uniqueOpen: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>> & Readonly<{
        onClick?: (...args: any[]) => any;
        "onUpdate:activeKey"?: (...args: any[]) => any;
        "onUpdate:openKeys"?: (...args: any[]) => any;
        onOpenChange?: (...args: any[]) => any;
    }>, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("click" | "update:activeKey" | "update:openKeys" | "openChange")[], import("vue").PublicProps, {
        mode: "vertical";
        collapse: boolean;
        uniqueOpen: boolean;
    }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import("vue").ExtractPropTypes<{
        activeKey: StringConstructor;
        collapse: BooleanConstructor;
        openedKeys: {
            type: import("vue").PropType<string[]>;
        };
        mode: {
            type: import("vue").PropType<import("./utils").MenuMode>;
            default: string;
        };
        uniqueOpen: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>> & Readonly<{
        onClick?: (...args: any[]) => any;
        "onUpdate:activeKey"?: (...args: any[]) => any;
        "onUpdate:openKeys"?: (...args: any[]) => any;
        onOpenChange?: (...args: any[]) => any;
    }>, () => JSX.Element, {}, {}, {}, {
        mode: "vertical";
        collapse: boolean;
        uniqueOpen: boolean;
    }>;
    __isFragment?: never;
    __isTeleport?: never;
    __isSuspense?: never;
} & import("vue").ComponentOptionsBase<Readonly<import("vue").ExtractPropTypes<{
    activeKey: StringConstructor;
    collapse: BooleanConstructor;
    openedKeys: {
        type: import("vue").PropType<string[]>;
    };
    mode: {
        type: import("vue").PropType<import("./utils").MenuMode>;
        default: string;
    };
    uniqueOpen: {
        type: BooleanConstructor;
        default: boolean;
    };
}>> & Readonly<{
    onClick?: (...args: any[]) => any;
    "onUpdate:activeKey"?: (...args: any[]) => any;
    "onUpdate:openKeys"?: (...args: any[]) => any;
    onOpenChange?: (...args: any[]) => any;
}>, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("click" | "update:activeKey" | "update:openKeys" | "openChange")[], "click" | "update:activeKey" | "update:openKeys" | "openChange", {
    mode: "vertical";
    collapse: boolean;
    uniqueOpen: boolean;
}, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (import("vue").Plugin & Readonly<{
    Item: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        needIcon: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        needIcon: {
            type: BooleanConstructor;
            default: boolean;
        };
        disabled: {
            type: BooleanConstructor;
            default: boolean;
        };
    }>> & Readonly<{
        onClick?: (...args: any[]) => any;
    }>, {
        disabled: boolean;
        needIcon: boolean;
    }, import("vue").SlotsType<{
        default?: () => HTMLElement;
        icon?: () => HTMLElement;
    }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
    Submenu: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        title: {
            type: StringConstructor;
            default: string;
        };
    }>, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "collapse"[], "collapse", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        title: {
            type: StringConstructor;
            default: string;
        };
    }>> & Readonly<{
        onCollapse?: (...args: any[]) => any;
    }>, {
        title: string;
    }, import("vue").SlotsType<{
        default?: () => HTMLElement;
        icon?: () => HTMLElement;
        title?: () => HTMLElement;
    }>, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
    Group: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
        name: {
            type: StringConstructor;
            default: string;
        };
        foldName: {
            type: StringConstructor;
            default: any;
        };
    }>, () => JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
        name: {
            type: StringConstructor;
            default: string;
        };
        foldName: {
            type: StringConstructor;
            default: any;
        };
    }>> & Readonly<{}>, {
        name: string;
        foldName: string;
    }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}>);
export default BkMenu;
export { BkMenu, Item as BkMenuItem, Submenu as BkSubmenu, Group as BkMenuGroup };
