///
import type { ActionMeta, OnChangeValue, SelectInstance } from 'react-select';
import type { OptionData } from './types';
interface UseDropdownInteractionsParams {
selectRef: React.RefObject | null>;
containerRef: React.RefObject;
disabled: boolean;
isMenuOpen: boolean;
setIsMenuOpen: (open: boolean) => void;
openCollapseMenu: () => void;
closeCollapseMenu: () => void;
forceCloseCollapseMenu: (options?: {
skipBlur?: boolean;
}) => void;
focusOnMouseDown: (event: React.MouseEvent) => void;
focusOnTouchStart: (event: React.TouchEvent) => void;
selectVal: OptionData[];
options: OptionData[];
isCreatableInputValid?: (inputValue: string) => boolean;
create: boolean;
disableAllOptions: boolean;
onChange: (selected: any, actionMeta: any) => void;
}
interface UseDropdownInteractionsReturn {
handleWrapperMouseDown: (event: React.MouseEvent) => void;
handleWrapperTouchStart: (event: React.TouchEvent) => void;
handleKeyDownCapture: (event: React.KeyboardEvent) => void;
handleChange: (selected: OnChangeValue, actionMeta: ActionMeta) => void;
handleSelectKeyDown: (event: React.KeyboardEvent) => void;
handleMenuOpen: () => void;
handleMenuClose: () => void;
handleControlPress: (event: React.SyntheticEvent, options: {
isTouch: boolean;
}) => boolean;
handleCollapsedChipPress: (event: React.SyntheticEvent) => void;
extendCloseSuppression: () => void;
}
/**
* Manages all user interactions for the dropdown: keyboard, mouse, touch, and menu.
*
* Handles Enter key validation, collapse menu interactions, selection changes,
* and outside click detection. Prevents form submission when appropriate and
* coordinates menu state across collapsed and expanded modes.
*/
export default function useDropdownInteractions({ selectRef, containerRef, disabled, isMenuOpen, setIsMenuOpen, openCollapseMenu, closeCollapseMenu, forceCloseCollapseMenu, focusOnMouseDown, focusOnTouchStart, selectVal, options, isCreatableInputValid, create, disableAllOptions, onChange }: UseDropdownInteractionsParams): UseDropdownInteractionsReturn;
export {};
//# sourceMappingURL=useDropdownInteractions.d.ts.map