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>>;
