@daysnap/utils
Version:
30 lines (28 loc) • 990 B
TypeScript
type SwipeDirection = 'left' | 'right' | 'up' | 'down' | 'none';
type SwipeHandlerEvent = TouchEvent | MouseEvent;
interface SwipeListenerEvent {
sx: number;
sy: number;
ex: number;
ey: number;
dx: number;
dy: number;
absX: number;
absY: number;
direction: SwipeDirection;
}
interface SwipeListener {
(event: SwipeListenerEvent): void;
}
interface SwipeOptions {
threshold?: number;
}
interface SwipeHandlers {
handleStart: (event: SwipeHandlerEvent) => void;
handleMove: (event: SwipeHandlerEvent) => void;
handleEnd: (event?: SwipeHandlerEvent) => void;
handleCancel: () => void;
}
declare function createSwipeHandlers(listener: SwipeListener, options?: SwipeOptions): SwipeHandlers;
declare const createSwipeHandler: typeof createSwipeHandlers;
export { type SwipeDirection, type SwipeHandlerEvent, type SwipeHandlers, type SwipeListener, type SwipeListenerEvent, type SwipeOptions, createSwipeHandler, createSwipeHandlers };