import '../../assert/js/assert.js';
import '../../globals.js';
/**
 * A Scenery input listener that is able to find the closest in a list of items to a "down" event and trigger an action
 * (usually a drag) on that item. Usually this will be a drag listener start/press (e.g. SimpleDragHandler/DragListener),
 * but could accommodate other uses. It's similar in use to DragListener.createForwardingListener.
 *
 * Handles items of the form:
 * {
 *   startDrag: function( event ),
 *   computeDistance: function( globalPoint ) : number
 * }
 *
 * @author Jonathan Olson (PhET Interactive Simulations)
 */
import Vector2 from '../../dot/js/Vector2.js';
import { PressListenerEvent } from '../../scenery/js/imports.js';
type DraggableItem = {
    startDrag: (event: PressListenerEvent) => void;
    computeDistance: (globalPoint: Vector2) => number;
};
export default class ClosestDragForwardingListener {
    private readonly touchThreshold;
    private readonly mouseThreshold;
    private readonly items;
    constructor(touchThreshold: number, mouseThreshold: number);
    /**
     * Adds an item that can be dragged.
     */
    addDraggableItem(item: DraggableItem): void;
    /**
     * Removes a previously-added item.
     */
    removeDraggableItem(item: DraggableItem): void;
    /**
     * Called on pointer down.
     */
    down(event: PressListenerEvent): void;
}
export {};
//# sourceMappingURL=ClosestDragForwardingListener.d.ts.map