import { Point } from './point'; export declare const GESTURE_STRATEGY_FLAG: { KEEP: number; REMOVE_IF_POINTERS_GT: number; }; export declare const RETURN_FLAG: { map(result: number | boolean): number; IDLE: number; START_EMITTED: number; REMOVE: number; REMOVE_OTHERS: number; REMOVE_AND_CONTINUE: number; COMPOSE: number; }; export interface Supports { msPointerEnabled: boolean; pointerEnabled: boolean; touchEnabled: boolean; } export declare const SUPPORTS: Supports; export declare function isMouse(evt: any, supports?: Supports): boolean; export declare function isValidMouseButton({button, which}: { button?: number | undefined; which?: number | undefined; }, allowedBtn: number[] | number): boolean; export declare function matchesSelector(element: any, selector: string): any; export interface PointerData { page: Point; client: Point; } export declare class PointerDataMap extends Map { } export interface Pointers { all: PointerDataMap; changed: PointerDataMap; } export declare class Options { pointers: number; which: number; prio: number; strategy: number; } export declare class Data { pointers: PointerData[]; } export declare function ensureProperties(target: T2, source: T2): T1 & T2;