import * as Sy from "../../../Sync"; import type { Cause } from "./model"; export declare const chainSafe_: (fa: Cause, f: (e: E) => Cause) => Sy.Sync>; /** * ```haskell * chain_ :: Monad m => (m a, (a -> m b)) -> m b * ``` * * Composes computations in sequence, using the return value of one computation as input for the next * * @category Monad * @since 1.0.0 */ export declare const chain_: (fa: Cause, f: (e: E) => Cause) => Cause; /** * ```haskell * chain :: Monad m => (a -> m b) -> m a -> m b * ``` * * Composes computations in sequence, using the return value of one computation as input for the next * * @category Monad * @since 1.0.0 */ export declare const chain: (f: (e: E) => Cause) => (fa: Cause) => Cause; /** * ```haskell * flatten :: Monad m => m m a -> m a * ``` * * Removes one level of nesting from a nested `Cuase` * * @category Monad * @since 1.0.0 */ export declare const flatten: (ffa: Cause>) => Cause; //# sourceMappingURL=monad.d.ts.map