import { PanningDirections, PanningDirectionsEnum, PanningDismissThreshold } from './panningUtil'; import type { HiddenLocation } from '../../hooks/useHiddenLocation'; export type PanViewDirections = PanningDirections; export declare const PanViewDirectionsEnum: typeof PanningDirectionsEnum; export type PanViewDismissThreshold = PanningDismissThreshold; export declare const DEFAULT_DIRECTIONS: PanningDirectionsEnum[]; export interface PanGestureProps { /** * The directions of the allowed pan (default is all) * Types: UP, DOWN, LEFT and RIGHT (using PanView.directions.###) */ directions?: PanViewDirections[]; /** * Dismiss the view if over the threshold (translation or velocity). */ dismissible?: boolean; /** * Animate to start if not dismissed. */ animateToOrigin?: boolean; /** * Callback to the dismiss animation end */ onDismiss?: () => void; /** * Should the direction of dragging be locked once a drag has started. */ directionLock?: boolean; /** * Object to adjust the dismiss threshold limits (eg {x, y, velocity}). */ threshold?: PanViewDismissThreshold; hiddenLocation: HiddenLocation; } export declare const DEFAULT_ANIMATION_CONFIG: { velocity: number; damping: number; stiffness: number; mass: number; }; declare const usePanGesture: (props: PanGestureProps) => { translation: { x: import("react-native-reanimated").SharedValue; y: import("react-native-reanimated").SharedValue; }; gesture: import("react-native-gesture-handler/lib/typescript/handlers/gestures/panGesture").PanGesture; reset: () => void; }; export default usePanGesture;