import { MaybeNullableRef, MaybeRef, PointerType } from '../typings/internal'; export interface UseDragOptions { /** * Only start the dragging when click on the element directly * * @default false */ exact?: MaybeRef; /** * Prevent events defaults * * @default false */ preventDefault?: MaybeRef; /** * Element to attach `pointermove` and `pointerup` events to. * * @default window */ draggingElement?: MaybeRef; /** * Pointer types that listen to. * * @default ['mouse', 'touch', 'pen'] */ pointerTypes?: PointerType[]; /** * Callback when the dragging starts. Return `false` to prevent dragging. */ onStart?: (event: PointerEvent) => void | false; /** * Callback during dragging. */ onMove?: (event: PointerEvent) => void; /** * Callback when dragging end. */ onEnd?: (event: PointerEvent) => void; } /** * Make elements draggable. * * @param target * @param options */ export declare function useDrag(target: MaybeNullableRef, options?: UseDragOptions): () => void;