typescript-monads
Version:
Write cleaner TypeScript
10 lines (8 loc) • 317 B
text/typescript
import { IMaybe } from '../maybe.interface'
export function maybeToPromise<TResolve, TReject>(catchResponse?: TReject) {
return function maybeToPromise(maybe: IMaybe<TResolve>): Promise<TResolve> {
return maybe.isSome()
? Promise.resolve(maybe.valueOrThrow())
: Promise.reject(catchResponse)
}
}