import { Refinement } from 'fp-ts/es6/function'; import * as TE from 'fp-ts/es6/TaskEither'; import * as DE from './DecodeError'; import * as FS from './FreeSemigroup'; import * as K from './Kleisli'; import * as KD from './KleisliDecoder'; import { Literal } from './Schemable'; /** * @category model * @since 2.2.7 */ export interface KleisliTaskDecoder extends K.Kleisli { } /** * @category DecodeError * @since 2.2.7 */ export declare type DecodeError = KD.DecodeError; /** * @category DecodeError * @since 2.2.7 */ export declare const error: (actual: unknown, message: string) => DecodeError; /** * @category DecodeError * @since 2.2.7 */ export declare const success: (a: A) => TE.TaskEither; /** * @category DecodeError * @since 2.2.7 */ export declare const failure: (actual: unknown, message: string) => TE.TaskEither>, A>; /** * @category constructors * @since 2.2.7 */ export declare const fromKleisliDecoder: (decoder: KD.KleisliDecoder) => KleisliTaskDecoder; /** * @category constructors * @since 2.2.7 */ export declare const fromRefinement: (refinement: Refinement, expected: string) => KleisliTaskDecoder; /** * @category constructors * @since 2.2.7 */ export declare const literal: ]>(...values: A) => KleisliTaskDecoder; /** * @category combinators * @since 2.2.7 */ export declare const mapLeftWithInput: (f: (input: I, e: DecodeError) => DecodeError) => (decoder: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category combinators * @since 2.2.7 */ export declare const refine: (refinement: (a: A) => a is B, id: string) => (from: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category combinators * @since 2.2.7 */ export declare const parse: (parser: (a: A) => TE.TaskEither) => (from: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category combinators * @since 2.2.7 */ export declare const nullable: (or: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category combinators * @since 2.2.7 */ export declare const type:

>>(properties: P) => KleisliTaskDecoder<{ [K in keyof P]: K.InputOf<"TaskEither", P[K]>; }, { [K_1 in keyof P]: K.TypeOf<"TaskEither", P[K_1]>; }>; /** * @category combinators * @since 2.2.7 */ export declare const partial:

>>(properties: P) => KleisliTaskDecoder<{ [K in keyof P]: K.InputOf<"TaskEither", P[K]>; }, Partial<{ [K_1 in keyof P]: K.TypeOf<"TaskEither", P[K_1]>; }>>; /** * @category combinators * @since 2.2.7 */ export declare const array: (items: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category combinators * @since 2.2.7 */ export declare const record: (codomain: KleisliTaskDecoder) => KleisliTaskDecoder, Record>; /** * @category combinators * @since 2.2.7 */ export declare const tuple: []>(...components: C) => KleisliTaskDecoder<{ [K in keyof C]: K.InputOf<"TaskEither", C[K]>; }, { [K_1 in keyof C]: K.TypeOf<"TaskEither", C[K_1]>; }>; /** * @category combinators * @since 2.2.7 */ export declare const union: , ...Array>]>(...members: MS) => KleisliTaskDecoder, TypeOf>; /** * @category combinators * @since 2.2.7 */ export declare const intersect: (right: KleisliTaskDecoder) => (left: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category combinators * @since 2.2.7 */ export declare const sum: (tag: T) => >>(members: MS) => KleisliTaskDecoder, K.TypeOf<"TaskEither", MS[keyof MS]>>; /** * @category combinators * @since 2.2.7 */ export declare const lazy: (id: string, f: () => KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category combinators * @since 2.2.7 */ export declare const compose: (to: KleisliTaskDecoder) => (from: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category Functor * @since 2.2.7 */ export declare const map: (f: (a: A) => B) => (fa: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @category Alt * @since 2.2.7 */ export declare const alt: (that: () => KleisliTaskDecoder) => (me: KleisliTaskDecoder) => KleisliTaskDecoder; /** * @since 2.2.7 */ export declare type TypeOf = K.TypeOf; /** * @since 2.2.7 */ export declare type InputOf = K.InputOf;