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