Optionalonrejected: null | ((reason: any) => MaybePromise<TResult>)Equivalent of Promise.finally.
Optionalonfinally: null | (() => MaybePromise<void>)Determine whether a MaybePromiseLike is a Promise.
Chained MaybePromise. Invokes the resolve function immediately if the MaybePromise is not a Promise, otherwise the same as a normal Promise.then.
Optionalresolve: null | ((input: I) => MaybePromise<O1>)Optionalreject: null | ((error: any) => MaybePromise<O2>)
Equivalent of Promise.catch.