import { Dispatch, MutableRefObject, SetStateAction } from 'react'; import { Placement } from '@floating-ui/react'; export declare enum KEYS { Enter = "Enter", Space = "Space", ArrowDown = "ArrowDown", ArrowUp = "ArrowUp", Down = "Down", Up = "Up", Tab = "Tab", Esc = "Esc", Escape = "Escape", Home = "Home", End = "End", PageUp = "PageUp", PageDown = "PageDown" } export interface UseDropdownProps { isFocused: string | null; visible: boolean; itemRefs: MutableRefObject<{ [key: string]: HTMLElement | null; }>; triggerRef: MutableRefObject; menuRef: MutableRefObject; triggerProps: Record; menuProps: Record; itemProps: Record; setVisible: Dispatch>; openOnSpace?: boolean; openDropdown: () => void; closeDropdown: () => void; } declare const useDropdown: (placement: Placement | undefined, extraTriggerKeyDownHandler?: (event: React.KeyboardEvent) => void, isTriggerHovered?: boolean, focusOnVisible?: boolean, openOnSpace?: boolean, focusOnMouseEnter?: boolean) => UseDropdownProps; export default useDropdown;