import { ReactElement, ReactNode } from 'react'; import { SortableStateType } from './sortableReducer'; import { SortableItem, SortableItemProps } from './components/SortableItem'; type SortableContextType = { clearDraggingSource: () => void; clearDraggingTarget: () => void; dragEnd: () => void; dragStart: (index: number) => void; drop: (index: number) => void; moveToPosition: (index: number) => void; reset: () => void; setClone: (node: Element) => void; setDraggingSource: (index: number) => void; setDraggingTarget: (index: number) => void; }; type SortableItems = ReactElement[]; interface Props { renderItems: SortableItems; dataItems: T[]; scrollable?: boolean; hideNumbers?: boolean; onSort?: (items: T[]) => void; children?: ReactNode; } export declare function SortableProvider({ renderItems, dataItems, scrollable, hideNumbers, onSort }: Props): import("react").JSX.Element; export declare function useSortable(): SortableContextType & SortableStateType; export {};