import { TgdEventPriority } from "../event";
import { TgdInputPointerEventMove, TgdInputPointerEventFinger, TgdInputPointerEventTap, TgdInputPointerEventZoom, TgdInputPointerEventTapMultiple } from "../types";
export declare class TgdInputPointer {
    private readonly canvas?;
    readonly eventTap: TgdEventPriority<Readonly<TgdInputPointerEventTap>>;
    readonly eventTapMultiple: TgdEventPriority<Readonly<TgdInputPointerEventTapMultiple>>;
    readonly eventMoveStart: TgdEventPriority<Readonly<TgdInputPointerEventMove>>;
    readonly eventMove: TgdEventPriority<Readonly<TgdInputPointerEventMove>>;
    readonly eventHover: TgdEventPriority<Readonly<TgdInputPointerEventMove>>;
    readonly eventMoveEnd: TgdEventPriority<Readonly<TgdInputPointerEventMove>>;
    readonly eventZoom: TgdEventPriority<Readonly<TgdInputPointerEventZoom>>;
    /**
     * This is a tap only of the pointer touched for less that
     * `tapDelay` milliseconds.
     */
    tapDelay: number;
    private moves;
    private controlKeys;
    private start;
    private current;
    private previous;
    /**
     * To manage multi taps.
     */
    private lastTap;
    private tapsCount;
    /**
     * If not null, the pointer is touching.
     */
    private pointerEvent;
    constructor(canvas?: HTMLCanvasElement | undefined);
    get x(): number;
    get y(): number;
    get speedX(): number;
    get speedY(): number;
    isTouching(hitTest?: (event: Readonly<TgdInputPointerEventFinger>) => boolean): boolean;
    detach(): void;
    private readonly handleContextMenu;
    private readonly handleCanvasWheel;
    private readonly handlePointerDown;
    private readonly handlePointerMove;
    private readonly handlePointerUp;
    private isMultiTap;
    private getPoint;
}
export declare function resolvePointerButtons({ buttons }: {
    buttons: number;
}): {
    buttons: number;
    buttonLeft: boolean;
    buttonRight: boolean;
    buttonMiddle: boolean;
    buttonBack: boolean;
    buttonForward: boolean;
};
//# sourceMappingURL=pointer.d.ts.map