UNPKG

@procore/core-react

Version:
51 lines (47 loc) 3.61 kB
import React from 'react'; import type { CheckboxProps } from '../Checkbox'; import type { PolymorphicAs } from '../_utils/polymorphic'; import type { ControlNavigationProps, ControlNavigationReturn, DroppableProps, FooterProps, GroupProps, HeaderProps, ItemProps, ItemWithDraggingProps, MenuContext as IMenuContext, MenuItemDefaultElement, MenuItemProps, MenuProps, MenuRef, MenuSearchProps, OptionsProps } from './MenuImperative.types'; export declare const MenuContext: React.Context<IMenuContext>; export declare function useMenuContext(): IMenuContext; /** * Usefully if navigation is controlled by search input or another input. * * @param ref MenuImperative ref * @param enable True by default. Setting to false will change all props * to undefined (except id in menuProps), so navigation controlled by menu itself is restored. * @param options.menuId provide id otherwise it will be generated * @since 11.5.0 */ export declare const useMenuImperativeControlNavigation: (ref: React.RefObject<MenuRef>, enable?: boolean, options?: ControlNavigationProps) => ControlNavigationReturn; export declare const Group: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & GroupProps & React.RefAttributes<HTMLDivElement>>; export declare function Droppable({ id, children, ...props }: DroppableProps): React.JSX.Element; export declare namespace Droppable { var displayName: string; } export declare const Item: PolymorphicAs.ComponentWithForwardedRef<MenuItemProps, MenuItemDefaultElement>; export declare const CheckboxItem: React.ForwardRefExoticComponent<(React.HTMLAttributes<HTMLDivElement> & (ItemProps | ItemWithDraggingProps) & Omit<CheckboxProps, "checked">) & React.RefAttributes<HTMLDivElement>>; export declare const Options: React.ForwardRefExoticComponent<OptionsProps & React.RefAttributes<HTMLDivElement>>; export declare const Search: { ({ className, i18nScope, placeholder, onChange: _onChange, value: valueProp, ...props }: MenuSearchProps): React.JSX.Element; displayName: string; }; export declare const Header: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & HeaderProps & React.RefAttributes<HTMLDivElement>>; export declare const Footer: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & FooterProps & React.RefAttributes<HTMLDivElement>>; /** @since 10.19.0 @see [Storybook](https://stories.core.procore.com/?path=/story/core-react_demos-menu-imperative--demo) */ export declare const MenuImperative: React.ForwardRefExoticComponent<MenuProps & React.RefAttributes<MenuRef>> & { CheckboxItem: React.ForwardRefExoticComponent<(React.HTMLAttributes<HTMLDivElement> & (ItemProps | ItemWithDraggingProps) & Omit<CheckboxProps, "checked">) & React.RefAttributes<HTMLDivElement>>; Droppable: typeof Droppable; Footer: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & FooterProps & React.RefAttributes<HTMLDivElement>>; Group: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & GroupProps & React.RefAttributes<HTMLDivElement>>; Header: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & HeaderProps & React.RefAttributes<HTMLDivElement>>; Item: PolymorphicAs.ComponentWithForwardedRef<MenuItemProps, MenuItemDefaultElement>; Options: React.ForwardRefExoticComponent<OptionsProps & React.RefAttributes<HTMLDivElement>>; Search: { ({ className, i18nScope, placeholder, onChange: _onChange, value: valueProp, ...props }: MenuSearchProps): React.JSX.Element; displayName: string; }; };