import type { Schema } from "../schema/schema"; import type { ErrorDetail } from "../utils/details"; import { Resolver, type DynamicScopeFrame } from "./resolver"; type TKeywordFn = (schema: object, value: unknown, opts: Omit) => ValidationResult; export declare const keywords: Record; export type EvaluatedLocations = { properties: Map>; items: Map>; }; export type ValidationOptions = { keywordPath?: string[]; instancePath?: string[]; coerce?: boolean; errors?: ErrorDetail[]; shortCircuit?: boolean; ignoreUnsupported?: boolean; resolver?: Resolver; depth?: number; skipClone?: boolean; evaluatingRefs?: Set; dynamicScopes?: DynamicScopeFrame[]; evaluated?: EvaluatedLocations; localEvaluatedBase?: EvaluatedLocations; assertFormat?: boolean; disableValidationVocab?: boolean; }; export type ValidationResult = { valid: boolean; errors: ErrorDetail[]; }; export declare function validate(s: Schema, _value: unknown, opts?: ValidationOptions): ValidationResult; export declare function withDynamicScope(schema: Schema, resolver: Resolver, dynamicScopes?: DynamicScopeFrame[]): DynamicScopeFrame[]; export declare function createEvaluatedLocations(): EvaluatedLocations; export declare function cloneEvaluated(evaluated?: EvaluatedLocations): EvaluatedLocations; export declare function mergeEvaluated(target: EvaluatedLocations, source: EvaluatedLocations): void; export declare function markEvaluatedProperty(opts: ValidationOptions, property: string): void; export declare function markEvaluatedItem(opts: ValidationOptions, index: number): void; export declare function evaluatedProperties(opts: ValidationOptions): Set; export declare function evaluatedItems(opts: ValidationOptions): Set; export declare function instanceKey(opts: ValidationOptions): string; export {};