///
import type { OptionData, CreatableValidator } from './types';
import type { SelectInstance } from 'react-select';
interface UseSelectPropsParams {
selectRef: React.RefObject | null>;
containerRef: React.RefObject;
servar: any;
selectVal: OptionData[];
options: OptionData[];
required: boolean;
disabled: boolean;
isMenuOpen: boolean;
loadingDynamicOptions: boolean;
selectStyles: any;
selectComponentsOverride: any;
collapseSelected: boolean;
visibleCount: number;
collapsedCount: number;
isMeasuring: boolean;
shouldHideInput: boolean;
handleChange: (selected: any, actionMeta: any) => void;
setFocused: (focused: boolean) => void;
handleSelectKeyDown: (event: React.KeyboardEvent) => void;
handleMenuOpen: () => void;
handleMenuClose: () => void;
handleCollapsedChipPress?: (event: React.SyntheticEvent) => void;
handleControlPress?: (event: React.SyntheticEvent, options: {
isTouch: boolean;
}) => boolean;
extendCloseSuppression: () => void;
noOptionsMessage?: () => string;
create: boolean;
formatCreateLabel?: (inputValue: string) => string;
isValidNewOption?: CreatableValidator;
onInputChange?: (newValue: string) => void;
filterOption?: (() => true) | undefined;
ariaLabel?: string;
}
/**
* Organizes all props for the SelectComponent into a clean configuration object.
* Groups props by concern: core identity, styling, behavior, collapse features, etc.
*/
export default function useSelectProps({ selectRef, containerRef, servar, selectVal, options, required, disabled, isMenuOpen, loadingDynamicOptions, selectStyles, selectComponentsOverride, collapseSelected, visibleCount, collapsedCount, isMeasuring, shouldHideInput, handleChange, setFocused, handleSelectKeyDown, handleMenuOpen, handleMenuClose, handleCollapsedChipPress, handleControlPress, extendCloseSuppression, noOptionsMessage, create, formatCreateLabel, isValidNewOption, onInputChange, filterOption, ariaLabel }: UseSelectPropsParams): {
'aria-label': string | undefined;
isValidNewOption?: CreatableValidator | undefined;
formatCreateLabel?: ((inputValue: string) => string) | undefined;
containerRef: import("react").RefObject;
visibleCount: number;
collapsedCount: number;
isMeasuring: boolean;
collapseSelected: boolean;
inputHidden: boolean;
onCollapsedChipPress: ((event: import("react").SyntheticEvent) => void) | undefined;
onControlPress: ((event: import("react").SyntheticEvent, options: {
isTouch: boolean;
}) => boolean) | undefined;
onMultiValueRemovePointer: () => void;
ref: import("react").RefObject>>;
inputId: any;
isMulti: true;
value: OptionData[];
options: OptionData[];
required: boolean;
isDisabled: boolean;
menuIsOpen: boolean;
styles: any;
components: any;
placeholder: string;
openMenuOnClick: boolean;
closeMenuOnSelect: boolean;
tabSelectsValue: boolean;
blurInputOnSelect: boolean;
filterOption: (() => true) | undefined;
onChange: (selected: any, actionMeta: any) => void;
onFocus: () => void;
onBlur: () => void;
onKeyDown: (event: import("react").KeyboardEvent) => void;
onMenuOpen: () => void;
onMenuClose: () => void;
onInputChange: ((newValue: string) => void) | undefined;
isOptionDisabled: (option: OptionData) => any;
noOptionsMessage: (() => string) | (() => null) | undefined;
} | {
'aria-label': string | undefined;
isValidNewOption?: CreatableValidator | undefined;
formatCreateLabel?: ((inputValue: string) => string) | undefined;
containerRef: import("react").RefObject;
visibleCount: number;
collapsedCount: number;
isMeasuring: boolean;
collapseSelected: boolean;
ref: import("react").RefObject>>;
inputId: any;
isMulti: true;
value: OptionData[];
options: OptionData[];
required: boolean;
isDisabled: boolean;
menuIsOpen: boolean;
styles: any;
components: any;
placeholder: string;
openMenuOnClick: boolean;
closeMenuOnSelect: boolean;
tabSelectsValue: boolean;
blurInputOnSelect: boolean;
filterOption: (() => true) | undefined;
onChange: (selected: any, actionMeta: any) => void;
onFocus: () => void;
onBlur: () => void;
onKeyDown: (event: import("react").KeyboardEvent) => void;
onMenuOpen: () => void;
onMenuClose: () => void;
onInputChange: ((newValue: string) => void) | undefined;
isOptionDisabled: (option: OptionData) => any;
noOptionsMessage: (() => string) | (() => null) | undefined;
};
export {};
//# sourceMappingURL=useSelectProps.d.ts.map