import React, { useContext } from 'react'; import type { Vector } from '@shopify/react-native-skia'; import type { GestureStateChangeEvent, GestureUpdateEvent, PanGestureHandlerEventPayload, } from 'react-native-gesture-handler'; export type TouchableHandlerContextType = { value: Record< string, { onStart: ( touchInfo: GestureStateChangeEvent ) => void; onActive: ( touchInfo: GestureUpdateEvent ) => void; onEnd: ( touchInfo: GestureStateChangeEvent ) => void; isPointInPath: (point: Vector) => boolean; } >; }; const TouchHandlerContext = React.createContext({ value: {}, }); const useTouchHandlerContext = () => { return useContext(TouchHandlerContext); }; export { TouchHandlerContext, useTouchHandlerContext };