interface RetryOptions {
    count?: number;
    interval: number;
}
interface Resolvable<T> {
    promise: Promise<T>;
    resolve: (value: T) => void;
    reject: (reason: any) => void;
}
export interface Retry<T> {
    resolvable: Resolvable<T>;
    cancel: () => void;
}
export default function retry<T>(supplier: () => Promise<T>, options: RetryOptions): Retry<T>;
export {};
