import * as tFunctor from '../../typeclass/functor'; import * as tOf from '../../typeclass/of'; import * as tApplicative from '../../typeclass/applicative'; import * as tMonad from '../../typeclass/monad'; import type { Reader, TReader } from './reader.types'; export declare const ask: () => Reader; export declare const asks: (f: (env: Env) => A) => Reader; export declare const local: (f: (env: Env2) => Env1) => (fa: Reader) => Reader; export declare const askReader: (f: (env: Env1) => Reader) => Reader; export declare const runReader: (fa: Reader) => (env: Env) => A; export declare const Of: tOf.Of; export declare const Functor: tFunctor.Functor; export declare const Applicative: tApplicative.Applicative; export declare const Monad: tMonad.Monad; export declare const of: (a: A) => Reader; export declare const map: (args_0: (args_0: A1) => A2) => (args_0: Reader) => Reader; export declare const mapCompose: (args_0: (args_0: A1) => A2) => (args_0: Reader, B2>) => Reader, B2>; export declare const flap: (args_0: A1) => (args_0: Reader<(args_0: A1) => B1, B2>) => Reader; export declare const as: (args_0: A1) => (args_0: Reader) => Reader; export declare const tap: (args_0: (args_0: A1) => void) => (args_0: Reader) => Reader; export declare const ap: (args_0: Reader) => (args_0: Reader<(args_0: A1) => B1, B2>) => Reader; export declare const liftA2: (args_0: (args_0: A1, args_1: A2) => A3) => (args_0: Reader) => (args_0: Reader) => Reader; export declare const product: (args_0: Reader) => (args_0: Reader) => Reader<[A1, B1], A2 & B2>; export declare const productMany: (args_0: Reader) => (args_0: Reader[]) => Reader; export declare const flatMap: (args_0: (args_0: A1) => Reader) => (args_0: Reader) => Reader; export declare const andThen: (args_0: (args_0: A1) => Reader) => (args_0: Reader) => Reader; export declare const chain: (args_0: (args_0: A1) => Reader) => (args_0: Reader) => Reader; export declare const flatten: (args_0: Reader, A3>) => Reader; export declare const pluck: (k: K) => (args_0: Reader) => Reader;