| declare const pTry: { | 
|     /** | 
|     Start a promise chain. | 
|   | 
|     @param fn - The function to run to start the promise chain. | 
|     @param arguments - Arguments to pass to `fn`. | 
|     @returns The value of calling `fn(...arguments)`. If the function throws an error, the returned `Promise` will be rejected with that error. | 
|   | 
|     @example | 
|     ``` | 
|     import pTry = require('p-try'); | 
|   | 
|     (async () => { | 
|         try { | 
|             const value = await pTry(() => { | 
|                 return synchronousFunctionThatMightThrow(); | 
|             }); | 
|             console.log(value); | 
|         } catch (error) { | 
|             console.error(error); | 
|         } | 
|     })(); | 
|     ``` | 
|     */ | 
|     <ValueType, ArgumentsType extends unknown[]>( | 
|         fn: (...arguments: ArgumentsType) => PromiseLike<ValueType> | ValueType, | 
|         ...arguments: ArgumentsType | 
|     ): Promise<ValueType>; | 
|   | 
|     // TODO: remove this in the next major version, refactor the whole definition to: | 
|     // declare function pTry<ValueType, ArgumentsType extends unknown[]>( | 
|     //    fn: (...arguments: ArgumentsType) => PromiseLike<ValueType> | ValueType, | 
|     //    ...arguments: ArgumentsType | 
|     // ): Promise<ValueType>; | 
|     // export = pTry; | 
|     default: typeof pTry; | 
| }; | 
|   | 
| export = pTry; |