UNPKG

@saleor/macaw-ui

Version:

Saleor's UI component library

37 lines (35 loc) 2.75 kB
import { MultiChangeHandler, Option } from '../../BaseSelect'; import { FocusEvent, ReactNode, MouseEventHandler } from 'react'; import { GetPropsCommonOptions, UseComboboxGetInputPropsOptions, UseComboboxGetToggleButtonPropsOptions, UseComboboxGetToggleButtonPropsReturnValue } from 'downshift'; export type RenderEndAdornmentType = (props: UseComboboxGetToggleButtonPropsReturnValue) => ReactNode; export declare const useMultiselect: <T extends Option, V extends string | Option>({ selectedValues, showEmptyState, options, onChange, onInputValueChange, onFocus, onBlur, }: { selectedValues: V[]; showEmptyState?: boolean | undefined; options: T[]; onChange?: MultiChangeHandler<V> | undefined; onInputValueChange?: ((value: string) => void) | undefined; onFocus?: ((e: FocusEvent<HTMLInputElement, Element>) => void) | undefined; onBlur?: ((e: FocusEvent<HTMLInputElement, Element>) => void) | undefined; }) => { active: boolean; itemsToSelect: T[]; typed: boolean; isOpen: boolean; getLabelProps: <Options>(options?: (import('downshift').UseComboboxGetLabelPropsOptions & Options) | undefined) => import('downshift').Overwrite<import("downshift").UseComboboxGetLabelPropsReturnValue, Options>; getMenuProps: <Options_1>(options?: (import('downshift').UseComboboxGetMenuPropsOptions & Options_1) | undefined, otherOptions?: GetPropsCommonOptions | undefined) => import('downshift').Overwrite<import("downshift").UseComboboxGetMenuPropsReturnValue, Options_1>; getInputProps: (options?: UseComboboxGetInputPropsOptions, otherOptions?: GetPropsCommonOptions) => import('downshift').Overwrite<import("downshift").UseComboboxGetInputPropsReturnValue, { onFocus: (e: FocusEvent<HTMLInputElement>) => void; onBlur: (e: FocusEvent<HTMLInputElement>) => void; }>; highlightedIndex: number; getItemProps: <Options_2>(options: import('downshift').UseComboboxGetItemPropsOptions<T> & Options_2) => Omit<import('downshift').Overwrite<import("downshift").UseComboboxGetItemPropsReturnValue, Options_2>, "index" | "item">; getSelectedItemProps: <Options_3>(options: import('downshift').UseMultipleSelectionGetSelectedItemPropsOptions<T> & Options_3) => Omit<import('downshift').Overwrite<import("downshift").UseMultipleSelectionGetSelectedItemReturnValue, Options_3>, "selectedItem" | "index">; removeSelectedItem: (item: T) => void; selectedItems: T[]; inputValue: string; showInput: boolean; getToggleButtonProps: (options?: UseComboboxGetToggleButtonPropsOptions) => import('downshift').Overwrite<UseComboboxGetToggleButtonPropsReturnValue, { onClick?: MouseEventHandler<HTMLButtonElement> | undefined; }>; hasItemsToSelect: boolean; };