import type { DragContainer, DragMode, IDragMode } from "./Types.js"; import { ExternalInteractorBase, type IInteractivityData, type IModes, type InteractivityParticle, type Modes } from "@tsparticles/plugin-interactivity"; import { type IDelta, type RecursivePartial } from "@tsparticles/engine"; export declare class Dragger extends ExternalInteractorBase { readonly maxDistance = 0; private _dragStartClickTime?; private _dragStartClickingFalseTime?; private _draggedParticle?; private _grabOffset?; private _lastMousePosition?; private _momentumSamples; private _mouseDownHandled; private _savedVelocity?; constructor(container: DragContainer); clear(_particle: InteractivityParticle, _delta: IDelta): void; init(): void; interact(interactivityData: IInteractivityData, _delta: IDelta): void; isEnabled(interactivityData: IInteractivityData, particle?: InteractivityParticle): boolean; loadModeOptions(options: Modes & DragMode, ...sources: RecursivePartial<(IModes & IDragMode) | undefined>[]): void; reset(_interactivityData: IInteractivityData, _particle: InteractivityParticle): void; private _findParticleUnderCursor; private _hasClickEnded; private _releaseDragged; }