import { Opt } from "@effect-ts-app/core/Option"; import type { Schema, SchemaAny } from "./_schema.js"; import type * as T from "./These.js"; import * as Th from "./These.js"; export interface ParserEnv { cache?: { getOrSet: (i: I, parser: Parser) => T.These; getOrSetParser: (parser: Parser) => (i: I) => Th.These; getOrSetParsers: >>(parsers: Parsers) => { [k in keyof Parsers]: (u: unknown) => Th.These; }; }; lax?: boolean; } /** * @tsplus type ets/Schema/Parser */ export type Parser = { (u: I, env?: ParserEnv): T.These; }; export declare const interpreters: ((schema: SchemaAny) => Opt<() => Parser>)[]; declare function parserFor(schema: Schema): Parser; export { parserFor as for }; //# sourceMappingURL=_parser.d.ts.map