import { type RefObject } from 'react'; import { type CallbackSetter } from './shared/types'; /** * The swipe event state interface */ export interface SwipeEventState { clientX?: number; clientY?: number; direction: 'right' | 'left' | 'up' | 'down'; alphaX: number; alphaY: number; } /** * The result of the hook */ interface UseSwipeEventsReturn { onSwipeLeft: CallbackSetter; onSwipeRight: CallbackSetter; onSwipeUp: CallbackSetter; onSwipeDown: CallbackSetter; onSwipeMove: CallbackSetter; onSwipeStart: CallbackSetter; onSwipeEnd: CallbackSetter; } export interface UseSwipeEventsOpts { threshold?: number; preventDefault?: boolean; passive?: boolean; } /** * useSwipeEvents * @param ref * @param options */ declare const useSwipeEvents: (ref?: RefObject | undefined, options?: UseSwipeEventsOpts) => Readonly; export default useSwipeEvents;