///
export interface DraggableOptions {
prevent?: boolean;
touch?: boolean;
mouse?: boolean;
direction?: 'vertical' | 'horizontal' | 'both';
setCSS?: boolean;
maxDistance?: {
x?: {
max?: number;
min?: number;
};
y?: {
max?: number;
min?: number;
};
};
stepSize?: {
x: number;
y: number;
};
onStart?: (target: React.RefObject, position: [number, number], setPosition: (position: [number, number], transition?: string) => void) => void;
onMove?: (target: React.RefObject, position: [number, number], setPosition: (position: [number, number], transition?: string) => void) => void;
onEnd?: (target: React.RefObject, position: [number, number], setPosition: (position: [number, number], transition?: string) => void) => void;
}
declare type UseDraggable = (options?: DraggableOptions) => {
target: React.RefObject;
position: [number, number];
setPosition: (position: [number, number], transition?: string) => void;
};
export declare const useDraggable: UseDraggable;
export {};