import { AsyncFn, SyncFn } from './internals/types'; interface Tryit {
(fn: AsyncFn
): (...args: P) => Promise<[null, R] | [Error, undefined]>;
(fn: SyncFn
): (...args: P) => [null, R] | [Error, undefined]; } /** * 包装一个函数(支持异步函数),将其转为错误优先函数。 * * @alias module:Util.tryit * @since 1.13.0 * @param {Function} fn 要包装的函数。 * @returns 如果执行成功返回 `[null, result]`,否则返回 `[Error, undefined]`。 * @example * const getGreet = async (name: string) => { * return 'hello ' + name; * } * const [err, result] = await tryit(getGreet)('jeff'); * console.log([err, result]); * // [null, 'hello jeff'] * * * const errorFn = async (name: string) => { * throw new Error('error message'); * return 'hello ' + name; * } * const [err2, result2] = await tryit(errorFn)('jeff'); * console.log([err2, result2]); * // [Error: error message, undefined] */ declare const tryit: Tryit; export default tryit;