import { Cata } from '../../../Basics'; import * as _ from './Error'; export interface Error { cata(pattern: Pattern): R; stringify(indent: number): string; } export declare namespace Error { type Pattern = Cata<{ OneOf(errors: Array): R; Field(name: string, error: Error): R; Index(position: number, error: Error): R; Failure(message: string, source: unknown): R; }>; const OneOf: (errors: Error[]) => Error; const Field: (name: string, error: Error) => Error; const Index: (position: number, error: Error) => Error; const Failure: (message: string, source: unknown) => _.Failure; } export declare type Pattern = Error.Pattern; export declare const OneOf: (errors: Error[]) => Error; export declare const Field: (name: string, error: Error) => Error; export declare const Index: (position: number, error: Error) => Error; export declare const Failure: (message: string, source: unknown) => _.Failure; export default Error;