import { Component } from 'react'; import { LayoutChangeEvent, PanResponderGestureState, GestureResponderEvent, PanResponderInstance } from 'react-native'; interface Props { children: any; buttons: Array; disableSwipe?: boolean; autoClose?: boolean; } interface ButtonItem { text?: string; backgroundColor?: string; color?: string; onPress?: () => void; } interface State { currentLeft: any; } export default class SwipeAction extends Component { _panResponder: PanResponderInstance; _previousLeft: number | null; maxLeft: number; static defaultProps: Partial; constructor(props: Props); componentDidUpdate(prevProps: Props): void; onPress: () => void; close: () => void; _onLayout: (event: LayoutChangeEvent) => void; /** * 处理滑动事件 */ _handlePanResponderMove(_event: GestureResponderEvent, gestureState: PanResponderGestureState): void; _handleMoveShouldSetPanResponderCapture(): boolean; /** * 结束事件的时候回调,如果当前位置小于按钮宽度的一半,则关闭按钮,否则,展开按钮 */ _handlePanResponderEnd(_event: GestureResponderEvent, _gestureState: PanResponderGestureState): void; _animateTo(toValue: number): void; render(): JSX.Element; } export {};