import React from 'react'; export declare enum PanningDirectionsEnum { UP = "up", DOWN = "down", LEFT = "left", RIGHT = "right" } export declare type PanningDirectionsUnion = 'up' | 'down' | 'left' | 'right'; export declare type PanningDirections = PanningDirectionsEnum | PanningDirectionsUnion; export interface PanLocationProps { left?: number; top?: number; } export interface PanDirectionsProps { x?: PanningDirections; y?: PanningDirections; } export interface PanAmountsProps { x?: number; y?: number; } export declare type PanAmountDirections = Pick; export declare type PanSwipe = { directions: PanDirectionsProps; velocities: PanAmountsProps; }; export declare type PanDrag = { directions: PanDirectionsProps; deltas: PanAmountsProps; }; export interface PanningContextState { dragDirections: PanDirectionsProps; dragDeltas: PanAmountsProps; swipeDirections: PanDirectionsProps; swipeVelocities: PanAmountsProps; isPanning: boolean; wasTerminated: boolean; panLocation: PanLocationProps; onPanRelease: () => void; onPanStart: () => void; onPanTerminated: () => void; /** * 拖动时触发 * directions - 方向 * deltas - 与方向相同的长度和顺序 */ onDrag: (params: PanDrag) => void; /** * 滑动时触发 * directions - 方向 * velocities - 速度 */ onSwipe: (params: PanSwipe) => void; onPanLocationChanged: (location: PanLocationProps) => void; } declare const PanningContext: React.Context; export default PanningContext;