import type { JsonAstNode, JsonResolvedValue, ParserError } from '../skillet/parser/json-parser'; import type { FromJsonAstCache, FromJsonAstInput, FromJsonAstOutput, HashbrownType } from './base'; export declare const emptyCache: FromJsonAstCache; export declare function ensureCache(cache?: FromJsonAstCache): FromJsonAstCache; export declare function getNode(nodes: JsonAstNode[], id: number | null): JsonAstNode | null; export declare function readCacheValue(cache: FromJsonAstCache, nodeId: number, schemaId: number, useSchemaId: boolean): JsonResolvedValue; export declare function writeCacheValue(cache: FromJsonAstCache, nodeId: number, schemaId: number, useSchemaId: boolean, value: JsonResolvedValue): FromJsonAstCache; export declare function reuseCachedArray(cached: JsonResolvedValue | undefined, nextValues: JsonResolvedValue[]): JsonResolvedValue[] | undefined; export declare function reuseCachedObject(cached: JsonResolvedValue | undefined, nextValues: Record): Record | undefined; export declare function createSchemaIdGetter(): (schema: HashbrownType) => number; export declare const getSchemaId: (schema: HashbrownType) => number; export declare function resolveSchemaAtNode(schema: T, input: FromJsonAstInput, cache: FromJsonAstCache, nodeId: number | null): FromJsonAstOutput; export declare function unwrapPrimitiveWrapper(nodes: JsonAstNode[], rootId: number | null, schemaType: string, primitiveWrapperField: string): number | null; export declare function fromJsonAst(schema: T, state: { nodes: JsonAstNode[]; rootId: number | null; error: ParserError | null; }, cache?: FromJsonAstCache): FromJsonAstOutput; //# sourceMappingURL=from-json-ast.d.ts.map