/** * @module @nhtio/adk/batteries/vector/mariadb * * MariaDB adapter (native VECTOR type, 11.7+). Vectors live in a `VECTOR(N)` column written * with `VEC_FromText('[...]')` and read with `VEC_ToText(vec)`; KNN uses * `VEC_DISTANCE_COSINE` / `VEC_DISTANCE_EUCLIDEAN` ordered ascending. Metadata is a `JSON` * column. The neutral filter tree is evaluated with the JS reference evaluator for exact * cross-adapter parity. Each collection is a table. * * Driver: `mariadb` (pure JS, pooled). */ import { BaseVectorStore } from "../contract"; import type { SearchPlan, UpsertPlan, DeletePlan, CollectionSpec } from "../plan"; import type { VectorMatch, VectorStoreCapabilities, BaseVectorStoreOptions } from "../types"; export interface MariaDBVectorStoreOptions extends BaseVectorStoreOptions { /** Connection and authentication parameters for the backend. */ connection?: { host?: string; port?: number; user?: string; password?: string; database?: string; connectionLimit?: number; }; } export declare class MariaDBVectorStore extends BaseVectorStore { #private; readonly capabilities: VectorStoreCapabilities; /** Static availability probe: whether this adapter's runtime driver can load in the current environment. */ static isAvailable(): boolean; isAvailable(): boolean; connect(): Promise; close(): Promise; createCollection(spec: CollectionSpec, ifNotExists: boolean): Promise; dropCollection(collection: string, ifExists: boolean): Promise; hasCollection(collection: string): Promise; renameCollection(from: string, to: string): Promise; executeUpsert(plan: UpsertPlan): Promise; executeSearch(plan: SearchPlan): Promise; executeDelete(plan: DeletePlan): Promise; }