import { Kind } from '../../kinds/index.js'; import * as R from '../result'; import * as IO from '../io'; import * as tFunctor from '../../typeclass/functor'; import * as tBiFunctor from '../../typeclass/bifunctor'; import * as tOf from '../../typeclass/of'; import * as tTo from '../../typeclass/to'; import * as tFlip from '../../typeclass/flip'; import * as tApplicative from '../../typeclass/applicative'; import * as tMonad from '../../typeclass/monad'; import * as tBiFlatMap from '../../typeclass/biflatmap'; import * as tFoldable from '../../typeclass/foldable'; import * as tTraversable from '../../typeclass/traversable'; import * as tSemiAlternative from '../../typeclass/semialternative'; export interface IOResult extends IO.IO> { } export interface TIOResult extends Kind.binary { return: IOResult; } export declare const err: (e: E) => IOResult; export declare const ok: (a: A) => IOResult; export declare const run: (io: IOResult) => R.Result; export declare const Of: tOf.Of; export declare const BiFunctor: tBiFunctor.BiFunctor; export declare const Functor: tFunctor.Functor; export declare const To: tTo.To; export declare const Flip: tFlip.Flip; export declare const Applicative: tApplicative.Applicative; export declare const Monad: tMonad.Monad; export declare const BiFlatMap: tBiFlatMap.BiFlatMap; export declare const Foldable: tFoldable.Foldable; export declare const SemiAlternative: tSemiAlternative.SemiAlternative; export declare const Traversable: tTraversable.Traversable; export declare const fromIO: (io: IO.IO) => IOResult; export declare const fromResult: (r: R.Result) => IOResult; export declare const of: (a: A) => IOResult; export declare const getOrElse: (f: (args_0: A2) => A1) => (fa: IOResult) => A1 | A; export declare const getOr: (args_0: A1) => (args_0: IOResult) => A1 | B1; export declare const map: (args_0: (args_0: A1) => A2) => (args_0: IOResult) => IOResult; export declare const mapCompose: (args_0: (args_0: A1) => A2) => (args_0: IOResult, B2>) => IOResult, B2>; export declare const flap: (args_0: A1) => (args_0: IOResult<(args_0: A1) => B1, B2>) => IOResult; export declare const as: (args_0: A1) => (args_0: IOResult) => IOResult; export declare const tap: (args_0: (args_0: A1) => void) => (args_0: IOResult) => IOResult; export declare const bimap: (args_0: (args_0: A1) => A2, args_1: (args_0: A3) => A4) => (args_0: IOResult) => IOResult; export declare const mapLeft: (args_0: (args_0: A1) => A2) => (args_0: IOResult) => IOResult; export declare const mapRight: (args_0: (args_0: A1) => A2) => (args_0: IOResult) => IOResult; export declare const mapErr: (args_0: (args_0: A1) => A2) => (args_0: IOResult) => IOResult; export declare const bitap: (args_0: (args_0: A1) => void, args_1: (args_0: A2) => void) => (args_0: IOResult) => IOResult; export declare const tapLeft: (args_0: (args_0: A1) => void) => (args_0: IOResult) => IOResult; export declare const tapRight: (args_0: (args_0: A1) => void) => (args_0: IOResult) => IOResult; export declare const tapErr: (args_0: (args_0: A1) => void) => (args_0: IOResult) => IOResult; export declare const flip: (args_0: IOResult) => IOResult; export declare const ap: (args_0: IOResult) => (args_0: IOResult<(args_0: A1) => B1, B2>) => IOResult; export declare const liftA2: (args_0: (args_0: A1, args_1: A2) => A3) => (args_0: IOResult) => (args_0: IOResult) => IOResult; export declare const product: (args_0: IOResult) => (args_0: IOResult) => IOResult<[A1, B1], A2 | B2>; export declare const productMany: (args_0: IOResult) => (args_0: IOResult[]) => IOResult; export declare const flatMap: (args_0: (args_0: A1) => IOResult) => (args_0: IOResult) => IOResult; export declare const andThen: (args_0: (args_0: A1) => IOResult) => (args_0: IOResult) => IOResult; export declare const chain: (args_0: (args_0: A1) => IOResult) => (args_0: IOResult) => IOResult; export declare const flatten: (args_0: IOResult, A3>) => IOResult; export declare const biFlatMap: (args_0: (args_0: A1) => IOResult, args_1: (args_0: A4) => IOResult) => (args_0: IOResult) => IOResult; export declare const orElse: (args_0: (args_0: A1) => IOResult) => (args_0: IOResult) => IOResult; export declare const reduce: (args_0: (args_0: A1, args_1: A2) => A1, args_1: A1) => (args_0: IOResult) => A1; export declare const alt: (args_0: () => IOResult) => (args_0: IOResult) => IOResult; export declare const or: (args_0: IOResult) => (args_0: IOResult) => IOResult; export declare const traverse: (F: tApplicative.Applicative) => tTraversable.Traversable.$traverse; export declare const sequence: (F: tApplicative.Applicative) => tTraversable.Traversable.$sequence; export declare const pluck: (k: K) => (args_0: IOResult) => IOResult;