vira
Version:
A simple and highly versatile design system using element-vir.
39 lines (38 loc) • 1.39 kB
TypeScript
import { type PartialWithUndefined } from '@augment-vir/common';
import { NavController } from 'device-navigation';
import { type MenuItem } from './pop-up-menu-item.js';
/**
* Test ids for {@link ViraMenu}.
*
* @category Internal
*/
export declare const viraMenuTestIds: {
item: string;
};
/**
* A wrapper for menu items. This can be used for dropdown items or menu bar dropdowns. To detect
* when items are selected or unselected, pass in a `NavController` instance and hook into its
* events.
*
* @category PopUp
* @category Elements
*/
export declare const ViraMenu: import("element-vir").DeclarativeElementDefinition<"vira-menu", Readonly<{
/**
* The parent nav controller for this menu. If none is provided, an internal nav
* controller is created (which means it can't be hooked into by external elements).
*
* It is recommended to not leave this `undefined`.
*/
navController: NavController | undefined;
/** All menu items to show to the user. */
items: ReadonlyArray<Readonly<MenuItem>>;
} & PartialWithUndefined<{
/** The ids of the currently selected menu items. */
selected: ReadonlyArray<PropertyKey>;
isMultiSelect: boolean;
/** Hide menu item check mark icons. */
hideCheckIcons: boolean;
}>>, {
internalNavController: NavController;
}, {}, "vira-menu-multiselect", "vira-menu-", readonly []>;