import * as React from 'react'; import type { SimulateReactInputTargetState } from '../../lib/react'; import { type FilterFn, type SortFn } from '../../lib/select'; import { type UseChipsInputProps } from '../ChipsInput/useChipsInput'; import type { ChipOption, ChipOptionLabel, ChipOptionValue } from '../ChipsInputBase/types'; import type { OptionPreset } from './types'; export interface UseChipsSelectProps extends UseChipsInputProps { /** * Список опций в выпадающем списке. */ options?: O[] | undefined; /** * Возможность создавать чипы которых нет в списке: * - `true` – добавление по кнопке Enter; * - `<текст>` – помимо возможности добавления через Enter, в пункте меню появится кнопка с текстом. * Текст для пункта, создающего чипы при нажатии, также отвечает за то, будет ли показан этот пункт * (показывается после того как в списке не останется опций). */ creatable?: boolean | string | undefined; /** * Текст, который показывается если список опций пуст. */ emptyText?: string | undefined; /** * Показывать или скрывать уже выбранные опции. */ selectedBehavior?: 'hide' | 'highlight' | undefined; /** * Функция для фильтрации опций в списке. */ filterFn?: false | FilterFn | undefined; /** * Функция для сортировки опций в списке. */ sortFn?: false | SortFn | undefined; /** * Будет вызвано в момент скрытия выпадающего списка. */ onClose?: VoidFunction | undefined; /** * Будет вызвано в момент открытия выпадающего списка. */ onOpen?: VoidFunction | undefined; } export declare const useChipsSelect: ({ disabled, delimiter, value: valueProp, defaultValue, onChange, getOptionLabel, getOptionValue, getNewOptionData, inputValue: inputValueProp, defaultInputValue, onInputChange: onInputChangeProp, creatable, emptyText, filterFn, sortFn, selectedBehavior, options: optionsProp, onClose, onOpen, }: UseChipsSelectProps) => { value: Array; inputValue: string; onInputChange: (event: React.ChangeEvent) => void; options: Array>; opened: boolean; setOpened: (isOpened: boolean) => void; focusedOption: O | null; focusedOptionIndex: number | null; setFocusedOption: React.Dispatch>; setFocusedOptionIndex: React.Dispatch>; addOption: (newValue: string | O) => void; addOptionFromInput: (inputValue: string) => void; removeOption: (newValue: ChipOptionValue | O) => void; clearOptions: () => void; inputRef: React.RefObject<(HTMLInputElement & SimulateReactInputTargetState) | null>; clearInput: () => void; }; //# sourceMappingURL=useChipsSelect.d.ts.map