export interface RetryOptions { /** * The maximum amount of times to retry the operation. Default is 10. */ retries?: number; /** * The exponential factor to use. Default is 2. */ factor?: number; /** * Initial delay in milliseconds between retries. Default is 1000. */ minTimeout?: number; /** * Maximum delay in milliseconds between retries. Default is 30000. */ maxTimeout?: number; /** * Custom delay callback returning delay in milliseconds for attempt N. */ delay?: (attempt: number) => number; } export declare function retry(fn: (retryCount: number, attempt: number) => Promise, options?: RetryOptions): Promise; export interface TimeEndFunction { /** * @returns Elapsed milliseconds. */ (): number; /** * @returns Elapsed milliseconds rounded. */ rounded(): number; /** * @returns Elapsed seconds. */ seconds(): number; /** * @returns Elapsed nanoseconds. */ nanoseconds(): bigint; } /** * Returns a function that can be used to measure the time elapsed * since the function was called. */ export declare function timeSpan(): TimeEndFunction;