export default SimpleDragHandler;
/**
 * @deprecated - please use DragListener for new code
 */
declare class SimpleDragHandler extends PhetioObject {
    /**
     * Creates an input listener that forwards events to the specified input listener
     * @public
     *
     * See https://github.com/phetsims/scenery/issues/639
     *
     * @param {function(SceneryEvent)} down - down function to be added to the input listener
     * @param {Object} [options]
     * @returns {Object} a scenery input listener
     */
    public static createForwardingListener(down: (arg0: SceneryEvent) => any, options?: Object | undefined): Object;
    /**
     * @param {Object} [options]
     */
    constructor(options?: Object | undefined);
    options: Object;
    isDraggingProperty: BooleanProperty;
    pointer: any;
    trail: any;
    transform: any;
    node: any;
    lastDragPoint: any;
    startTransformMatrix: any;
    mouseButton: any;
    interrupted: boolean;
    lastInterruptedTouchLikePointer: any;
    _attach: any;
    dragStartAction: PhetioAction<[point?: T[0] | undefined, event?: T[1] | undefined]>;
    dragAction: PhetioAction<[point?: T[0] | undefined, event?: T[1] | undefined]>;
    dragEndAction: PhetioAction<[point?: T[0] | undefined, event?: T[1] | undefined]>;
    transformListener: {
        transform: (args: any) => void;
    };
    dragListener: {
        up: (event: any) => void;
        cancel: (event: any) => void;
        move: (event: any) => void;
        interrupt: () => void;
    };
    set dragging(d: boolean);
    get dragging(): boolean;
    /**
     * @public
     *
     * @param {SceneryEvent} event
     */
    public startDrag(event: SceneryEvent): void;
    /**
     * @public
     *
     * @param {SceneryEvent} event
     */
    public endDrag(event: SceneryEvent): void;
    /**
     * Called when input is interrupted on this listener, see https://github.com/phetsims/scenery/issues/218
     * @public
     */
    public interrupt(): void;
    /**
     * @public
     *
     * @param {SceneryEvent} event
     */
    public tryToSnag(event: SceneryEvent): void;
    /**
     * @public
     *
     * @param {SceneryEvent} event
     */
    public tryTouchToSnag(event: SceneryEvent): void;
    /**
     * Event listener method - mouse/touch down on this node
     * @public (scenery-internal)
     *
     * @param {SceneryEvent} event
     */
    public down(event: SceneryEvent): void;
    /**
     * Event listener method - touch enters this node
     * @public (scenery-internal)
     *
     * @param {SceneryEvent} event
     */
    public touchenter(event: SceneryEvent): void;
    /**
     * Event listener method - touch moves over this node
     * @public (scenery-internal)
     *
     * @param {SceneryEvent} event
     */
    public touchmove(event: SceneryEvent): void;
}
import PhetioObject from '../../../tandem/js/PhetioObject.js';
import BooleanProperty from '../../../axon/js/BooleanProperty.js';
import PhetioAction from '../../../tandem/js/PhetioAction.js';
import { SceneryEvent } from '../imports.js';
//# sourceMappingURL=SimpleDragHandler.d.ts.map