export function noErrorCallbackToPromise()

in src/common-core/promise_utils.ts [149:163]


export function noErrorCallbackToPromise<TResult>(callBackOperation: (callback: NoErrorCallback<TResult>) => void, userCallback?: NoErrorCallback<TResult>): Promise<TResult> | void {
  if (userCallback) {
    if (!(typeof userCallback === 'function')) {
      throw new TypeError('Callback has to be a Function');
    }

    return callBackOperation(userCallback);
  }

  return new Promise<TResult>((resolve, _reject) => {
    callBackOperation((result) => {
      return resolve(result);
    });
  });
}