/** * @since 0.1.0 */ import { Applicative2 } from 'fp-ts/lib/Applicative' import { Apply2 } from 'fp-ts/lib/Apply' import { Functor2 } from 'fp-ts/lib/Functor' import * as I from 'fp-ts/lib/IO' import { Monad2 } from 'fp-ts/lib/Monad' import { Reader } from 'fp-ts/lib/Reader' import IO = I.IO /** * @category model * @since 0.1.0 */ export interface ReaderIO { (r: R): IO } /** * @category constructors * @since 0.1.0 */ export declare const fromIO: (ma: IO) => ReaderIO /** * @category constructors * @since 0.1.10 */ export declare const fromIOK: , B>(f: (...a: A) => IO) => (...a: A) => ReaderIO /** * @category constructors * @since 0.1.0 */ export declare const fromReader: (ma: Reader) => ReaderIO /** * @category constructors * @since 0.1.0 */ export declare const ask: () => ReaderIO /** * @category constructors * @since 0.1.0 */ export declare const asks: (f: (r: R) => A) => ReaderIO /** * @category combinators * @since 0.1.0 */ export declare const local: (f: (f: Q) => R) => (ma: ReaderIO) => ReaderIO /** * Less strict version of [`asksReaderIO`](#asksreaderio). * * @category combinators * @since 0.1.27 */ export declare const asksReaderIOW: (f: (r1: R1) => ReaderIO) => ReaderIO /** * Effectfully accesses the environment. * * @category combinators * @since 0.1.27 */ export declare const asksReaderIO: (f: (r: R) => ReaderIO) => ReaderIO /** * @category Functor * @since 0.1.18 */ export declare const map: (f: (a: A) => B) => (fa: ReaderIO) => ReaderIO /** * @category Apply * @since 0.1.18 */ export declare const ap: (fa: ReaderIO) => (fab: ReaderIO B>) => ReaderIO /** * Less strict version of [`ap`](#ap). * * @category Apply * @since 0.1.28 */ export declare const apW: ( fa: ReaderIO ) => (fab: ReaderIO B>) => ReaderIO /** * @category Apply * @since 0.1.18 */ export declare const apFirst: (fb: ReaderIO) => (fa: ReaderIO) => ReaderIO /** * @category Apply * @since 0.1.18 */ export declare const apSecond: (fb: ReaderIO) => (fa: ReaderIO) => ReaderIO /** * @category Applicative * @since 0.1.18 */ export declare const of: (a: A) => ReaderIO /** * @category Monad * @since 0.1.18 */ export declare const chain: (f: (a: A) => ReaderIO) => (ma: ReaderIO) => ReaderIO /** * Less strict version of [`chain`](#chain). * * @category Monad * @since 0.1.28 */ export declare const chainW: ( f: (a: A) => ReaderIO ) => (ma: ReaderIO) => ReaderIO /** * @category Monad * @since 0.1.18 */ export declare const chainFirst: (f: (a: A) => ReaderIO) => (ma: ReaderIO) => ReaderIO /** * Less strict version of [`chainFirst`](#chainfirst). * * Derivable from `Chain`. * * @category combinators * @since 0.1.28 */ export declare const chainFirstW: ( f: (a: A) => ReaderIO ) => (ma: ReaderIO) => ReaderIO /** * @category Monad * @since 0.1.10 */ export declare const chainIOK: (f: (a: A) => I.IO) => (ma: ReaderIO) => ReaderIO /** * Less strict version of [`flatten`](#flatten). * * @category Monad * @since 0.1.28 */ export declare const flattenW: (mma: ReaderIO>) => ReaderIO /** * @category Monad * @since 0.1.18 */ export declare const flatten: (mma: ReaderIO>) => ReaderIO /** * @category instances * @since 0.1.0 */ export declare const URI = 'ReaderIO' /** * @category instances * @since 0.1.0 */ export declare type URI = typeof URI declare module 'fp-ts/lib/HKT' { interface URItoKind2 { ReaderIO: ReaderIO } } /** * @category instances * @since 0.1.18 */ export declare const Functor: Functor2 /** * @category instances * @since 0.1.18 */ export declare const Applicative: Applicative2 /** * @category instances * @since 0.1.18 */ export declare const Apply: Apply2 /** * @category instances * @since 0.1.18 */ export declare const Monad: Monad2 /** * @category instances * @since 0.1.0 */ export declare const readerIO: Monad2 /** * @since 0.1.0 */ export declare const run: (ma: ReaderIO, r: R) => A