import { Dispatch, HTMLProps, SetStateAction, AriaAttributes, ReactElement } from 'react'; import { IconProps } from '../Icon'; import { ButtonProps } from '../Button'; type PopoverControlProps = { disableAutoHeight?: boolean; root?: HTMLElement | React.MutableRefObject | null; placement?: "bottom-start" | "top-start" | "bottom-end" | "top-end"; }; export declare const MenuLegacyContext: import('react').Context<{ getItemProps: (userProps?: HTMLProps) => Record; activeIndex: number | null; setActiveIndex?: Dispatch>; setHasFocusInside?: Dispatch>; isOpen: boolean; } & PopoverControlProps>; type TriggerReturnProps = { "data-open"?: boolean; "data-focus-inside"?: boolean; "aria-controls"?: AriaAttributes["aria-controls"]; "aria-expanded"?: AriaAttributes["aria-expanded"]; "aria-haspopup"?: AriaAttributes["aria-haspopup"]; id?: string; onClick?: () => void; onFocus?: () => void; onKeyDown?: () => void; onKeyUp?: () => void; onMouseDown?: () => void; onPointerDown?: () => void; ref?: ((instance: HTMLElement | null) => void) | null; }; type DefaultTriggerProps = { trigger?: never; open?: boolean; icon?: IconProps["svg"]; } & ({ label: string; } | { "aria-label": string; } | { "aria-labellbedby": string; }) & Omit & PopoverControlProps; type CustomTriggerProps = { trigger: (props: TriggerReturnProps) => ReactElement; icon?: IconProps["svg"]; label?: never; open?: boolean; } & Omit, "ref"> & PopoverControlProps; export type MenuLegacyProps = DefaultTriggerProps | CustomTriggerProps; export declare const MenuLegacyComponent: import('react').ForwardRefExoticComponent>; export declare const MenuLegacy: import('react').ForwardRefExoticComponent> & { Item: import('react').ForwardRefExoticComponent<{ icon?: IconProps["svg"]; label: import('react').ReactNode; disabled?: boolean; } & Omit, HTMLButtonElement>, "ref"> & import('react').ButtonHTMLAttributes & import('react').RefAttributes>; }; export {};