@linzjs/step-ag-grid
Version:
[](https://github.com/semantic-release/semantic-release) > Reusable [ag-grid](https://www.ag-grid.com/) component for LINZ / Toitū te whenua.
59 lines (58 loc) • 1.96 kB
TypeScript
import { BaseProps, ClickEvent, EventHandler, Hoverable, MenuItemTypeProp, RenderProp } from '../types';
import { withHoveringResultProps } from '../utils/withHovering';
export type MenuItemModifiers = Readonly<{
/**
* 'radio' for radio item, 'checkbox' for checkbox item, or `undefined` for other items.
*/
type?: MenuItemTypeProp;
/**
* Indicates if the menu item is disabled.
*/
disabled: boolean;
/**
* Indicates if the menu item is being hovered and has focus.
*/
hover: boolean;
/**
* Indicates if the menu item is checked when it's a radio or checkbox item.
*/
checked: boolean;
/**
* Indicates if the menu item has a URL link.
*/
anchor: boolean;
}>;
export interface MenuItemProps extends Omit<BaseProps<MenuItemModifiers>, 'onClick'>, Hoverable {
/**
* Any value provided to this prop will be available in the event object of click events.
*
* It's useful for helping identify which menu item is clicked when you
* listen on `onItemClick` event on root menu component.
*/
value?: any;
/**
* If provided, menu item renders an HTML `<a>` element with this `href` attribute.
*/
href?: string;
rel?: string;
target?: string;
/**
* Set this prop to make the item a checkbox or radio menu item.
*/
type?: MenuItemTypeProp;
/**
* Set `true` if a checkbox menu item is checked.
*
* *Please note radio menu item doesn't use this prop.*
*/
checked?: boolean;
/**
* Event fired when the menu item is clicked.
*/
onClick?: EventHandler<ClickEvent>;
/**
* Any valid React node or a render function that returns one.
*/
children?: RenderProp<MenuItemModifiers>;
}
export declare const MenuItem: import("react").ForwardRefExoticComponent<Omit<MenuItemProps & withHoveringResultProps, "ref"> & import("react").RefAttributes<any>>;