import { RenderingContext } from "../../ui/RenderingContext"; import { HtmlElement, HtmlElementConfig, HtmlElementInstance } from "../HtmlElement"; import { MenuItem } from "./MenuItem"; import { MenuSpacer } from "./MenuSpacer"; export interface MenuConfig extends HtmlElementConfig { /** Set to `true` for horizontal menus. */ horizontal?: boolean; /** * Controls size of menu items. Supported values are `xsmall`, `small`, `medium`, `large` or `xlarge`. * For horizontal menus default size is `small` and for vertical it's `medium`. */ itemPadding?: string; defaultVerticalItemPadding?: string; defaultHorizontalItemPadding?: string; /** Set to true to put overflow items into a submenu on the right. */ overflow?: boolean; /** Icon to be used for the overflow menu. */ overflowIcon?: string; /** Base CSS class to be applied to the element. No class is applied by default. */ baseClass?: string; /** Show only overflow items. Used internally for overflow menus. */ showOnlyOverflowItems?: boolean; /** Auto focus first menu item. */ autoFocus?: boolean; /** Set to `true` to enable icons in menu items. */ icons?: boolean; } export declare class Menu extends HtmlElement { baseClass: string; horizontal: boolean; itemPadding: string | boolean; defaultHorizontalItemPadding: string; defaultVerticalItemPadding: string; overflow: boolean; overflowIcon: string; tag: string; showOnlyOverflowItems?: boolean; autoFocus?: boolean; static Item: typeof MenuItem; static Spacer: typeof MenuSpacer; constructor(config?: MenuConfig); init(): void; prepareData(context: RenderingContext, instance: MenuInstance): void; explore(context: RenderingContext, instance: MenuInstance): void; exploreCleanup(context: RenderingContext, instance: MenuInstance): void; render(context: RenderingContext, instance: MenuInstance, key: string): import("react/jsx-runtime").JSX.Element; add(item: any): void; } export declare class MenuInstance extends HtmlElementInstance { nonOverflownItemCount?: number; } //# sourceMappingURL=Menu.d.ts.map