import { MouseEventHandler, RefObject } from "react"; import { orientationType } from "../../responsive"; export declare type dragStrategy = "drop-indicator" | "natural-movement"; export declare type Direction = "fwd" | "bwd"; export declare const FWD: Direction; export declare const BWD: Direction; export declare type Rect = { height: number; left: number; top: number; width: number; }; export declare type DragHookResult = { draggable: JSX.Element | null; dropIndicator: JSX.Element | null; draggedItemIndex?: number; isDragging: boolean; onMouseDown?: MouseEventHandler; revealOverflowedItems: boolean; }; export declare type DragDropHook = (props: { allowDragDrop?: boolean | dragStrategy; extendedDropZone?: boolean; onDrop: (fromIndex: number, toIndex: number) => void; orientation: orientationType; containerRef: RefObject; itemQuery?: string; }) => DragHookResult;