// @flow import { $Exact } from '../../../types' // lightweight type-only Result (Success(T) | Error) monad export type Result = $Exact<{ value: T }> | $Exact<{ error: Error }> export type ResultCallback = (r: Result) => void export function toPromise(withCallback: (r: ResultCallback) => void): Promise export function fromPromise(promise: Promise, callback: ResultCallback): void export function mapValue(mapper: (_: T) => U, result: Result): Result