/**
 *
 * @author Alex Goldring
 * @copyright Company Named Limited (c) 2026
 */
export class DraggableAspect {
    /**
     *
     * @param {EventTarget} el
     * @param {function} [dragStart=noop]
     * @param {(position:Vector2,origin:Vector2)=>*} [drag=noop]
     * @param {function} [dragEnd=noop]
     * @param {boolean} [stopPropagation=true] prevent propagation of pointer events up the DOM tree
     */
    constructor({ el, dragStart, drag, dragEnd, stopPropagation }: EventTarget);
    /**
     *
     * @type {PointerDevice}
     * @readonly
     * @private
     */
    private readonly pointerLocal;
    private readonly pointerGlobal;
    /**
     *
     * @returns {PointerDevice}
     */
    getPointer(): PointerDevice;
    start(): void;
    stop(): void;
}
import { PointerDevice } from "../input/devices/PointerDevice.js";
//# sourceMappingURL=DraggableAspect.d.ts.map