cross-gesture
Version:
Gesture lib for the modern browsers
40 lines (39 loc) • 1.41 kB
TypeScript
export interface Options {
singleTapTimeout: number;
longTapTimeout: number;
}
export declare type Point = {
x: number;
y: number;
};
export declare type GestureEventType = 'pointerdown' | 'pointerup' | 'pointermove' | 'mousedown' | 'mouseup' | 'mousemove' | 'touchstart' | 'touchmove' | 'touchend' | 'touchcancel' | 'tap' | 'singleTap' | 'longTap' | 'doubleTap' | 'pinch' | 'rotate' | 'pinchAndRotate' | 'swipe' | 'pressMove' | 'wheel';
export declare type GestureDetailRotate = {
rotateCenter: Point;
rotateDeg: number;
fromPoints: [Point, Point];
toPoints: [Point, Point];
};
export declare type GestureDetailPinch = {
zoom: number;
zoomCenter: Point;
fromPoints: [Point, Point];
toPoints: [Point, Point];
};
export declare type GestureDetailPressMove = {
point: Point;
};
export declare type GestureDetailPinchAndRotate = GestureDetailRotate & GestureDetailPinch;
export declare type GestureDetailSwipe = {
vDirection: SwipeDirection;
vSpeed: number;
hDirection: SwipeDirection;
hSpeed: number;
};
export declare type GestureDetail = GestureDetailRotate | GestureDetailPinch | GestureDetailPinchAndRotate | GestureDetailSwipe | GestureDetailPressMove;
export declare type Listener<T, K> = (evt: K, detail?: T) => void;
export declare enum SwipeDirection {
left = "left",
right = "right",
top = "top",
bottom = "bottom"
}