import React from 'react';
import { NativeSyntheticEvent, ViewProps } from 'react-native';
export declare const PullToRefreshStateIdle = 0;
export declare const PullToRefreshStateComing = 1;
export declare 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>;
}
export {};
