import * as sqlite3 from 'sqlite3'; import { VssLoader } from './vss-loader'; import { VectorDatabase } from './vector-database-interface'; /** * VSS-based vector database implementation. * Uses SQLite VSS Extension for optimized vector similarity search. * Only available on macOS and Linux (Windows not supported). */ export declare class VssVectorDatabase implements VectorDatabase { private db; private vssLoader; private vssAvailable; private readonly embeddingDimensions; constructor(db: sqlite3.Database, vssLoader: VssLoader); /** * Checks if VSS extension is available. */ isAvailable(): boolean; /** * Initializes VSS Virtual Table. * Must be called after VSS extension is loaded. * * @returns Promise that resolves when VSS is initialized */ initialize(): Promise; /** * Checks if the VSS virtual table exists. */ private checkVirtualTableExists; /** * Creates the VSS virtual table. */ private createVirtualTable; /** * Gets the rowid for an embedding ID. */ private getRowidFromEmbeddingId; /** * Gets the embedding ID from a rowid. */ getEmbeddingIdFromRowid(rowid: number): Promise; /** * Checks if a row exists in the VSS virtual table. */ private checkRowExists; /** * Inserts an embedding into the VSS virtual table. */ private insertEmbedding; /** * Deletes an embedding from the VSS virtual table. */ private deleteEmbedding; /** * Upserts an embedding into the VSS virtual table. */ upsertEmbedding(embeddingId: string, embeddingVector: Float32Array | number[]): Promise; /** * Searches for similar embeddings using VSS. */ search(queryEmbedding: Float32Array | number[], limit?: number, dimension?: 'X' | 'Y' | 'Z' | 'W' | 'T', pluginId?: string): Promise>; /** * Alternative search method (fallback if MATCH syntax doesn't work). */ private tryAlternativeSearch; } //# sourceMappingURL=vss-vector-database.d.ts.map