import { PropType, InjectionKey, Ref, VNodeChild } from "vue"; import { ExtractPublicPropTypes } from "../../util/extract-public-props"; import { MenuItemType } from "./MenuItem"; interface MenuOption { type?: string; extra?: string | (() => VNodeChild); label: string | (() => VNodeChild[]); key: string; children?: MenuOption[]; } export interface MenuInjection { key: Ref; toggleExpand: (item: MenuItemType) => void; } export declare const menuInjectionKey: InjectionKey; declare const menuProps: { options: { type: PropType; default: () => never[]; }; value: StringConstructor; "onUpdate:value": PropType<(key: string) => void>; onUpdateValue: PropType<(key: string) => void>; }; export declare type MenuProps = ExtractPublicPropTypes; declare const _default: import("vue").DefineComponent<{ options: { type: PropType; default: () => never[]; }; value: StringConstructor; "onUpdate:value": PropType<(key: string) => void>; onUpdateValue: PropType<(key: string) => void>; }, void, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly; default: () => never[]; }; value: StringConstructor; "onUpdate:value": PropType<(key: string) => void>; onUpdateValue: PropType<(key: string) => void>; }>>, { options: MenuOption[]; }>; export default _default;