import { RefObject } from 'react'; declare type OnDropCb = (item?: any, position?: [number, number]) => void; export declare const ProvideDraggable: ({ children, ...props }: { children: any; }) => JSX.Element; export declare function useCurrentDraggable(): { item: any; position: number[]; }; declare type UseDraggableProps = { item: any; ref: RefObject; enabled: boolean; delay?: number; onDragStart?: (...args: any[]) => any; onDragEnd?: () => any; }; export declare function useDraggable({ enabled, item, ref, delay, onDragStart }: UseDraggableProps): void; declare type UseDroppableProps = { ref: RefObject; acceptsItem?: (item: any) => boolean; onDrop?: OnDropCb; }; export declare const trueFn: (_: any) => boolean; export declare function useDroppable(props: UseDroppableProps): boolean; export declare const DropOverlay: import("gloss").GlossView & Omit & Omit> & import("gloss/_/types").GlossBaseProps & { [key: string]: any; } & { isDropping?: boolean; }, import("gloss").GlossProps & Omit & Omit> & import("gloss/_/types").GlossBaseProps & { [key: string]: any; } & { isDropping?: boolean; }>>; export declare const ActiveDraggables: { items: Set; add(item: Function): void; remove(item: Function): void; cancelAll(): void; }; export {}; //# sourceMappingURL=Draggable.d.ts.map