import { type InjectionKey, type HTMLAttributes } from 'vue'; import { type OUIAProps } from '../../helpers/ouia'; import type { MenuItemId } from './common'; export { MenuInjectionKey, MenuItemsKey, type MenuItemId, type MenuItemTrack, type MenuProvide, type MenuState, } from './common'; /** Provided by pf-drilldown-menu to mark its menu as a drilldown submenu */ export declare const DrilldownSubmenuKey: InjectionKey; interface Props extends OUIAProps, /* @vue-ignore */ Omit { /** ID of the menu. Generated when not set, it identifies the menus of a drilldown. */ id?: string; /** Single itemId for single select menus, or array of itemIds for multi select. You can also specify isSelected on the MenuItem. */ selected?: T | null; /** @beta Indicates if menu contains a flyout menu */ containsFlyout?: boolean; /** @beta Indicating that the menu should have nav flyout styling */ navFlyout?: boolean; /** Indicates if menu contains a drilldown menu */ containsDrilldown?: boolean; /** Indicates if a menu is drilled into */ menuDrilledIn?: boolean; /** @beta itemId of the currently active item. You can also specify isActive on the MenuItem. */ activeItemId?: MenuItemId; /** Indicates if the menu should be without the outer box-shadow */ plain?: boolean; /** Indicates if the menu should be scrollable */ scrollable?: boolean; /** Determines the accessible role of the menu. For a non-checkbox menu that can have one or more items selected, pass in "listbox". */ role?: string; /** Callback called when an MenuItems's action button is clicked. You can also specify it within a MenuItemAction. */ onActionClick?: (event: Event, itemId?: MenuItemId, actionId?: unknown) => void; /** Label of the group of favorite items. Defaults to the `menuFavorites` message. */ favoritesLabel?: string; } declare const _default: typeof __VLS_export; export default _default; declare const __VLS_export: (__VLS_props: NonNullable>["props"], __VLS_ctx?: __VLS_PrettifyLocal>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable>["expose"], __VLS_setup?: Promise<{ props: import("vue").PublicProps & __VLS_PrettifyLocal<(Props & { /** Ids of the drilled in menus of a drilldown */ drilledInMenus?: string[]; /** Path of the drilled in item ids of a drilldown */ drilldownItemPath?: MenuItemId[]; /** ID of the currently active menu of a drilldown, defaults to the root menu */ activeMenu?: string | undefined; }) & { onSelect?: ((event: Event, itemId: MenuItemId | null | undefined) => any) | undefined; "onUpdate:selected"?: ((value: T extends unknown[] ? T : T | null) => any) | undefined; "onUpdate:drilledInMenus"?: ((value: string[]) => any) | undefined; "onUpdate:drilldownItemPath"?: ((value: MenuItemId[]) => any) | undefined; "onUpdate:activeMenu"?: ((value: string | undefined) => any) | undefined; onSearchInputChange?: ((event: Event, value: string) => any) | undefined; onGetMenuHeight?: ((menuId: string, height: number) => any) | undefined; onDrillOut?: ((event: Event, toMenuId: string, itemId: MenuItemId | null | undefined) => any) | undefined; onDrillIn?: ((event: Event, fromMenuId: string, toMenuId: string, itemId: MenuItemId | null | undefined) => any) | undefined; }> & (typeof globalThis extends { __VLS_PROPS_FALLBACK: infer P; } ? P : {}); expose: (exposed: import("vue").ShallowUnwrapRef<{ el: Readonly>; items: import("vue").Reactive; handleKeyboard: (event: KeyboardEvent) => void; }>) => void; attrs: any; slots: { default?: (props?: Record) => any; }; emit: { (name: "searchInputChange", event: Event, value: string): void; (name: "select", event: Event, itemId: MenuItemId | null | undefined): void; (name: "update:selected", value: T extends unknown[] ? T : T | null): void; (name: "drillIn", event: Event, fromMenuId: string, toMenuId: string, itemId: MenuItemId | null | undefined): void; (name: "drillOut", event: Event, toMenuId: string, itemId: MenuItemId | null | undefined): void; (name: "getMenuHeight", menuId: string, height: number): void; } & (((event: "update:drilledInMenus", value: string[]) => void) & ((event: "update:drilldownItemPath", value: MenuItemId[]) => void) & ((event: "update:activeMenu", value: string | undefined) => void)); }>) => import("vue").VNode & { __ctx?: NonNullable>; }; type __VLS_PrettifyLocal = (T extends any ? { [K in keyof T]: T[K]; } : { [K in keyof T as K]: T[K]; }) & {}; //# sourceMappingURL=Menu.vue.d.ts.map