import { ConfigProvider } from '../config';
import { InteractionApi } from './interactionApi';
import { InteractionHandler } from './interactionHandler';
export declare class TapInteractionHandler implements InteractionHandler {
    protected downEvent: 'mousedown' | 'pointerdown';
    protected upEvent: 'mouseup' | 'pointerup';
    protected moveEvent: 'mousemove' | 'pointermove';
    private getConfig;
    private element?;
    private interactionApi?;
    private pointerDownPosition?;
    private firstPointerDownPosition?;
    private secondPointerDownPosition?;
    private doubleTapTimer?;
    private longPressTimer?;
    private interactionTimer?;
    private buttons?;
    constructor(downEvent: 'mousedown' | 'pointerdown', upEvent: 'mouseup' | 'pointerup', moveEvent: 'mousemove' | 'pointermove', getConfig: ConfigProvider);
    dispose(): void;
    initialize(element: HTMLElement, api: InteractionApi): void;
    private handleTouchStart;
    private handleTouchMove;
    private handleTouchEnd;
    private handleDown;
    private handleMove;
    private handleUp;
    private handlePointerMove;
    private handlePointerEnd;
    private emit;
    private getCanvasPosition;
    private clearPositions;
    private clearDoubleTapTimer;
    private restartDoubleTapTimer;
    private clearLongPressTimer;
    private restartLongPressTimer;
    private restartInteractionTimer;
    private clearInteractionTimer;
    private setPointerPositions;
    private isTouch;
}
