import type { Either } from "../Either"; import type { FunctionN, Lazy, Predicate, Refinement } from "../Function"; import type { IO } from "../IO"; import type { Option } from "../Option"; import type { EIO } from "./model"; export declare const foldM_: ( ma: EIO, onFailure: (e: E) => EIO, onSuccess: (a: A) => EIO ) => EIO; export declare const foldM: ( onFailure: (e: E) => EIO, onSuccess: (a: A) => EIO ) => (ma: EIO) => EIO; export declare const fold_: ( ma: EIO, onFailure: (e: E) => IO, onSuccess: (a: A) => IO ) => IO; export declare const fold: ( onLeft: (e: E) => IO, onRight: (a: A) => IO ) => (ma: EIO) => IO; export declare const orElse_: (ma: EIO, onLeft: (e: E) => EIO) => EIO; export declare const orElse: (onLeft: (e: E) => EIO) => (ma: EIO) => EIO; export declare const filterOrElse_: { (ma: EIO, refinement: Refinement, onFalse: (a: A) => E1): EIO; (ma: EIO, predicate: Predicate, onFalse: (a: A) => E1): EIO; }; export declare const filterOrElse: { (refinement: Refinement, onFalse: (a: A) => E1): (ma: EIO) => EIO; (predicate: Predicate, onFalse: (a: A) => E1): (ma: EIO) => EIO; }; export declare const fromEitherK: ( f: FunctionN> ) => (...args: A) => EIO; export declare const chainEitherK_: (ma: EIO, f: (a: A) => Either) => EIO; export declare const chainEitherK: (f: (a: A) => Either) => (ma: EIO) => EIO; export declare const fromOption_: (ma: Option, onNone: Lazy) => EIO; export declare const fromOption: (onNone: Lazy) => (ma: Option) => EIO; //# sourceMappingURL=combinators.d.ts.map