Merge pull request #26104 from Nysosis/promise-retry-generics

Adding in generic arguments into promise-retry
This commit is contained in:
Benjamin Lichtman
2018-05-31 09:18:28 -07:00
committed by GitHub
+3 -3
View File
@@ -14,7 +14,7 @@ import { WrapOptions } from "retry";
* @param attempt The number of the attempt.
* @returns A Promise for anything (eg. a HTTP response).
*/
type RetryableFn = ((retry: (error: any) => never, attempt: number) => Promise<any>);
type RetryableFn<ResolutionType> = ((retry: (error: any) => never, attempt: number) => Promise<ResolutionType>);
/**
* Wrap all functions of the object with retry. The params can be entered in either order, just like in the original library.
*
@@ -22,6 +22,6 @@ type RetryableFn = ((retry: (error: any) => never, attempt: number) => Promise<a
* @param options The options for how long/often to retry the function for.
* @returns The Promise resolved by the input retryableFn, or rejected (if not retried) from its catch block.
*/
declare function promiseRetry(retryableFn: RetryableFn, options?: WrapOptions): Promise<any>;
declare function promiseRetry(options: WrapOptions, retryableFn: RetryableFn): Promise<any>;
declare function promiseRetry<ResolutionType>(retryableFn: RetryableFn<ResolutionType>, options?: WrapOptions): Promise<ResolutionType>;
declare function promiseRetry<ResolutionType>(options: WrapOptions, retryableFn: RetryableFn<ResolutionType>): Promise<ResolutionType>;
export = promiseRetry;