UNPKG

azure-devops-ui

Version:

React components for building web UI in Azure DevOps

56 lines (55 loc) 2.12 kB
import "../../CommonImports"; import "../../Core/core.css"; import "./Menu.css"; import "./MenuButton.css"; import * as React from "react"; import { ObservableValue } from '../../Core/Observable'; import { IContextualMenuProps, IMenu, IMenuGroup, IMenuItem, IMenuItemProps, IMenuProps } from "./Menu.Props"; export interface IMenuState { expandedIndex: ObservableValue<number>; } /** * Arrange the items into groups and put separators between them and headings above them as needed. * * @param items Menu items with optional order and groupKey properties * @param groupInfo Optional list of menu groups */ export declare function groupMenuItems(items: IMenuItem[], groupInfo?: IMenuGroup[]): IMenuItem[]; export declare class Menu extends React.Component<IMenuProps, IMenuState> implements IMenu { private containerElement; private itemProvider; constructor(props: Readonly<IMenuProps>); render(): JSX.Element; expandItem: (menuItem: IMenuItem | null, expanded: boolean) => void; focus: () => void; getParent: () => IMenu; onActivate: (menuItem: IMenuItem, event?: React.MouseEvent<HTMLElement> | React.KeyboardEvent<HTMLElement>) => void; private renderList; private renderMenuItem; } export declare function MenuDivider(index: number, menuItem: IMenuItem): JSX.Element; export declare function MenuHeader(index: number, menuItem: IMenuItem): JSX.Element; export declare class MenuItem extends React.Component<IMenuItemProps> { private localKeyStroke; private expanded; private element; render(): JSX.Element; private handleClick; private onClick; private onDismissSubMenu; private onExpandedChange; private onFocus; private onKeyDown; private onKeyUp; private onMouseDown; private onMouseEnter; private onMouseLeave; } export declare class ContextualMenu extends React.Component<IContextualMenuProps> { private calloutRef; render(): JSX.Element; private onDismiss; private onKeyDown; private onActivate; private preprocessKeyStroke; }