import React, { Ref } from 'react'; import { Props } from '../../types.js'; import { PropsForFeatures } from '../../utils/render.js'; interface MenuRenderPropArg { open: boolean; close: () => void; } interface ButtonRenderPropArg { open: boolean; } declare type ButtonPropsWeControl = 'type' | 'aria-haspopup' | 'aria-controls' | 'aria-expanded' | 'onKeyDown' | 'onClick'; interface ItemsRenderPropArg { open: boolean; } declare type ItemsPropsWeControl = 'aria-activedescendant' | 'aria-labelledby' | 'onKeyDown' | 'role' | 'tabIndex'; declare let ItemsRenderFeatures: number; interface ItemRenderPropArg { active: boolean; disabled: boolean; close: () => void; } declare type MenuItemPropsWeControl = 'role' | 'tabIndex' | 'aria-disabled' | 'onPointerLeave' | 'onPointerMove' | 'onMouseLeave' | 'onMouseMove' | 'onFocus'; export declare let Menu: ( = React.ExoticComponent<{ children?: React.ReactNode; }>>(props: Props, ref: Ref) => JSX.Element) & { displayName: string; } & { Button: ( = "button">(props: Props, ref: Ref) => React.ReactElement> | null) & { displayName: string; }; Items: ( = "div">(props: Props & (({ static?: undefined; } & { unmount?: boolean | undefined; }) | ({ unmount?: undefined; } & { static?: boolean | undefined; })), ref: Ref) => React.ReactElement> | null) & { displayName: string; }; Item: ( = React.ExoticComponent<{ children?: React.ReactNode; }>>(props: Props & { disabled?: boolean | undefined; }, ref: Ref) => React.ReactElement> | null) & { displayName: string; }; }; export {};