import { Dispatch, SetStateAction } from 'react'; import { DataSourceListProps, DataSourceState, PickerBaseProps } from '@epam/uui-core'; type UsePickerProps = Pick, 'dataSource' | 'getName' | 'getRowOptions' | 'emptyValue' | 'value' | 'onValueChange' | 'getValueChangeAnalyticsEvent' | 'valueType' | 'entityName' | 'entityPluralName' | 'selectionMode' | 'getSearchFields' | 'isFoldedByDefault' | 'sortBy' | 'cascadeSelection'> & { /** * Enables/disables selected rows only in Picker. */ showSelectedOnly?: boolean; dataSourceState: DataSourceState; setDataSourceState: Dispatch>; }; export declare function usePickerApi(props: UsePickerProps): { dataSourceState: DataSourceState; getName: (i: (TItem & { name?: string; }) | void) => string; getPluralName: () => string; getEntityName: (countSelected?: number) => string; isSingleSelect: () => boolean; getSelectedIdsArray: (selected: TId | TId[] | null | undefined) => TId[]; getSelectedRows: (itemsToTake: number) => import("@epam/uui-core").DataRowProps[]; getRowOptions: () => { isSelectable: boolean; checkbox?: undefined; } | { checkbox: { isVisible: boolean; }; isSelectable?: undefined; }; clearSelection: () => void; hasSelection: () => boolean; view: import("@epam/uui-core").IDataSourceView; getListProps: () => DataSourceListProps; handleDataSourceValueChange: (newDataSourceState: React.SetStateAction>) => void; handleSelectionValueChange: (newValue: any) => void; }; export {}; //# sourceMappingURL=usePickerApi.d.ts.map