import * as sqlite3 from 'sqlite3'; import { VectorDatabase } from './vector-database-interface'; /** * ChromaDB-based vector database implementation for Windows. * Uses ChromaDB as an external vector database via HTTP API. * * Note: ChromaDB must be running as a local server or embedded instance. * For embedded mode, ChromaDB requires Python, but we can use the HTTP client. */ export declare class ChromaDbVectorDatabase implements VectorDatabase { private db; private workspaceRoot; private chromaClient; private collection; private available; private readonly embeddingDimensions; private readonly collectionName; constructor(db: sqlite3.Database, workspaceRoot: string); /** * Checks if ChromaDB is available. */ isAvailable(): boolean; /** * Initializes ChromaDB connection and collection. */ initialize(): Promise; /** * Upserts an embedding into ChromaDB. */ upsertEmbedding(embeddingId: string, embeddingVector: Float32Array | number[]): Promise; /** * Searches for similar embeddings using ChromaDB. */ search(queryEmbedding: Float32Array | number[], limit: number, dimension?: 'X' | 'Y' | 'Z' | 'W' | 'T', pluginId?: string): Promise>; /** * Gets the embedding ID from a rowid. */ getEmbeddingIdFromRowid(rowid: number): Promise; /** * Gets the rowid for an embedding ID. */ private getRowidFromEmbeddingId; /** * Gets an embedding by ID (helper method). */ private getEmbeddingById; } //# sourceMappingURL=chromadb-vector-database.d.ts.map