import type * as P from "@principia/prelude"; import type { Async, URI, V } from "./model"; export declare const chain_: ( ma: Async, f: (a: A) => Async ) => Async; export declare const chain: ( f: (a: A) => Async ) => (ma: Async) => Async; export declare const flatten: (mma: Async>) => Async; export declare const tap_: ( ma: Async, f: (a: A) => Async ) => Async; export declare const tap: ( f: (a: A) => Async ) => (ma: Async) => Async; export declare const tapError_: ( async: Async, f: (e: E) => Async ) => Async; export declare const tapError: ( f: (e: E) => Async ) => (async: Async) => Async; export declare const Monad: P.Monad<[URI], V>; //# sourceMappingURL=monad.d.ts.map