UNPKG

@hippy/rmc-pull-to-refresh

Version:
64 lines (60 loc) 1.77 kB
import React from 'react'; interface Indicator { activate?: React.ReactNode; deactivate?: React.ReactNode; release?: React.ReactNode; finish?: React.ReactNode; } interface PropsType { getScrollContainer: () => React.ReactNode; direction: 'down' | 'up' | 'both' | string; refreshing?: boolean; distanceToRefresh: number; onRefresh: () => void; onFooterRefresh?: () => void; indicator: Indicator; footerIndicator?: Indicator; indicatorHeight: number; footerIndicatorHeight?: number; prefixCls?: string; className?: string; style?: React.CSSProperties; damping?: number; scale?: number; } declare class PullToRefresh extends React.Component<PropsType, any> { static defaultProps: PropsType; state: { currSt: string; dragOnEdge: boolean; }; containerRef: any; contentRef: any; _to: any; _ScreenY: any; _startScreenY: any; _startScreenX: any; _lastScreenY: any; _timer: any; _isMounted: boolean; shouldUpdateChildren: boolean; direction: string; currentMoveDirection: string; indicatorHeight: number; shouldComponentUpdate(nextProps: any): boolean; componentDidUpdate(prevProps: any): void; componentDidMount(): void; componentWillUnmount(): void; triggerPullToRefresh: () => void; init: (ele: any) => void; destroy: (ele: any) => void; onTouchStart: (_ele: any, e: any) => void; isEdge: (ele: any, direction: string) => boolean | undefined; damping: (dy: number) => number; onTouchMove: (ele: any, e: any) => void; onTouchEnd: () => void; reset: () => void; setContentStyle: (ty: number) => void; render(): JSX.Element; } export { PullToRefresh as default };