/** * Runtime validation schemas and throwing wrappers for the vector battery. * * @module @nhtio/adk/batteries/vector/validation */ import { vectorFilterSchema } from "./filters"; import type { VectorRecord } from "./types"; /** Validator schema for {@link @nhtio/adk/batteries/vector!BaseVectorStoreOptions}; allows adapter-specific extra keys. */ export declare const baseVectorStoreOptionsSchema: import("@nhtio/validation").ObjectSchema; /** Validator schema for a single {@link @nhtio/adk/batteries/vector!VectorRecord}; rejects unknown keys. */ export declare const vectorRecordSchema: import("@nhtio/validation").ObjectSchema; export { vectorFilterSchema }; /** * Validate a {@link @nhtio/adk/batteries/vector!CreateVectorStoreConfig} shape (client + options). * * @param input - The raw config to validate. * @throws {@link @nhtio/adk/batteries/vector!E_INVALID_VECTOR_STORE_CONFIG} when the shape is invalid. */ export declare const validateCreateConfig: (input: unknown) => void; /** * Resolve the `client` (class | sync resolver | async resolver) down to the adapter constructor, * then validate the resolved value is a BaseVectorStore subclass — throwing the same * E_INVALID_VECTOR_STORE_CONFIG if a resolver hands back something that isn't one. */ export declare const resolveClientCtor: (client: unknown) => Promise any>; /** * Validate a batch of {@link @nhtio/adk/batteries/vector!VectorRecord}s, including that vectors contain only finite numbers. * * @param records - The records to validate. * @throws {@link @nhtio/adk/batteries/vector!E_INVALID_VECTOR_RECORD} (carrying the offending index) on the first invalid record. */ export declare const validateRecords: (records: VectorRecord[]) => void;