daniel-pull-to-refresh
Version:
A react-native PullToRefresh component.
45 lines (36 loc) • 1.37 kB
text/typescript
import React from 'react'
import { NativeSyntheticEvent, ViewProps } from 'react-native'
export const PullToRefreshStateIdle = 0
export const PullToRefreshStateComing = 1
export const PullToRefreshStateRefreshing = 2
export type PullToRefreshStateIdle = typeof PullToRefreshStateIdle
export type PullToRefreshStateComing = typeof PullToRefreshStateComing
export type PullToRefreshStateRefreshing = typeof PullToRefreshStateRefreshing
export type PullToRefreshState = PullToRefreshStateIdle | PullToRefreshStateComing | PullToRefreshStateRefreshing
interface StateChangedEventData {
state: PullToRefreshState
}
interface OffsetChangedEventData {
offset: number
}
export type PullToRefreshStateChangedEvent = NativeSyntheticEvent<StateChangedEventData>
export type PullToRefreshOffsetChangedEvent = NativeSyntheticEvent<OffsetChangedEventData>
export interface PullToRefreshHeaderProps {
onRefresh?: () => void
refreshing: boolean
}
export interface PullToRefreshFooterProps {
onRefresh?: () => void
refreshing: boolean
noMoreData?: boolean
manual?: boolean
}
export interface PullToRefreshProps extends ViewProps {
onRefresh?: () => void
refreshing?: boolean
onLoadMore?: () => void
loadingMore?: boolean
noMoreData?: boolean
header?: React.ReactElement<PullToRefreshHeaderProps>
footer?: React.ReactElement<PullToRefreshFooterProps>
}