import { ReadonlyNonEmptyArray } from 'fp-ts/ReadonlyNonEmptyArray'; import { Semigroup } from 'fp-ts/Semigroup'; /** * @category Model * @since 0.9.4 */ export interface Leaf { readonly _tag: 'Leaf'; readonly actual: unknown; readonly error: string; } /** * @category Model * @since 0.9.4 */ export interface Key { readonly _tag: 'Key'; readonly key: string; readonly errors: DecodeErrors; } /** * @category Model * @since 0.9.4 */ export interface MissingKeys { readonly _tag: 'MissingKeys'; readonly keys: readonly [string, ...string[]]; } /** * @category Model * @since 0.9.4 */ export interface UnexpectedKeys { readonly _tag: 'UnexpectedKeys'; readonly keys: readonly [string, ...string[]]; } /** * @category Model * @since 0.9.4 */ export interface Index { readonly _tag: 'Index'; readonly index: number; readonly errors: DecodeErrors; } /** * @category Model * @since 0.9.4 */ export interface MissingIndexes { readonly _tag: 'MissingIndexes'; readonly indexes: readonly [number, ...number[]]; } /** * @category Model * @since 0.9.4 */ export interface UnexpectedIndexes { readonly _tag: 'UnexpectedIndexes'; readonly indexes: readonly [number, ...number[]]; } /** * @category Model * @since 0.9.4 */ export interface Member { readonly _tag: 'Member'; readonly index: number; readonly errors: DecodeErrors; } /** * @category Model * @since 0.9.4 */ export interface Lazy { readonly _tag: 'Lazy'; readonly id: string; readonly errors: DecodeErrors; } /** * @category Model * @since 2.2.9 */ export interface Wrap { readonly _tag: 'Wrap'; readonly error: string; readonly errors: DecodeErrors; } /** * @category Model * @since 0.9.4 */ export declare type DecodeError = Leaf | Key | MissingKeys | UnexpectedKeys | Index | MissingIndexes | UnexpectedIndexes | Member | Lazy | Wrap; /** * @since 0.9.4 * @categeory Model */ export declare type DecodeErrors = ReadonlyNonEmptyArray; /** * @category constructors * @since 0.9.4 */ export declare const leaf: (actual: unknown, error: string) => DecodeError; /** * @category constructors * @since 0.9.4 */ export declare const key: (key: string, errors: DecodeErrors) => DecodeError; /** * @category constructors * @since 0.9.4 */ export declare const missingKeys: (keys: readonly [string, ...string[]]) => DecodeError; /** * @category constructors * @since 0.9.4 */ export declare const unexpectedKeys: (keys: readonly [string, ...string[]]) => DecodeError; /** * @category constructors * @since 0.9.4 */ export declare const index: (index: number, errors: DecodeErrors) => DecodeError; /** * @category constructors * @since 0.9.4 */ export declare const missingIndexes: (indexes: readonly [number, ...number[]]) => DecodeError; /** * @category constructors * @since 0.9.4 */ export declare const unexpectedIndexes: (indexes: readonly [number, ...number[]]) => DecodeError; /** * @category constructors * @since 0.9.4 */ export declare const member: (index: number, errors: DecodeErrors) => DecodeError; /** * @category constructors * @since 0.9.4 */ export declare const lazy: (id: string, errors: DecodeErrors) => DecodeError; /** * @category constructors * @since 2.2.9 */ export declare const wrap: (error: string, errors: DecodeErrors) => DecodeError; /** * @category destructors * @since 0.9.4 */ export declare const match: (patterns: { Leaf: (input: unknown, error: string) => R; Key: (key: string, errors: DecodeErrors) => R; MissingKeys: (keys: readonly [string, ...string[]]) => R; UnexpectedKeys: (keys: readonly [string, ...string[]]) => R; Index: (index: number, errors: DecodeErrors) => R; MissingIndexes: (indexes: readonly [number, ...number[]]) => R; UnexpectedIndexes: (keys: readonly [number, ...number[]]) => R; Member: (index: number, errors: DecodeErrors) => R; Lazy: (id: string, errors: DecodeErrors) => R; Wrap: (error: string, errors: DecodeErrors) => R; }) => (e: DecodeError) => R; /** * @category Typeclass Constructor * @since 0.9.4 */ export declare function getSemigroup(): Semigroup; /** * @category Deconstructor * @since 0.9.4 */ export declare const drawError: (error: DecodeError) => string; /** * @category Deconstructor * @since 0.9.4 */ export declare const drawErrors: (fa: readonly DecodeError[]) => string; //# sourceMappingURL=DecodeError.d.ts.map