/** * Author: Srilal S. Siriwardhane * Email: SrilalS@99x.io **/ import { AbstractVectorStoreEngine } from './AbstractVectorStoreEngine.js'; import { Response } from '../types/Response.js'; import { Document } from '../types/Document.js'; import { OnBrowserEmbeddingEngine } from '../embeddings/OnBrowserEmbeddingEngine.js'; /** * ClientVectorStore class to handle the VectorStore operations. * This class extends the VectorStoreFactory to enforce the methods. */ export declare class ClientVectorStoreEngine extends AbstractVectorStoreEngine { /** * Currently we are using the gt-small model for the embedding. * This can be changed to any other model supported by the TransformersJS library. * The gte-small model is small and fast, as well as efficient for the client side. */ embedder: OnBrowserEmbeddingEngine; /** * constructor * This constructor sets the allowRemoteModels to true and allowLocalModels to false. * to prevent the usage of local models thus interfering with the client side operations. */ constructor(embedder: OnBrowserEmbeddingEngine); static init(): Promise; searchVectorStore(query: string, dbName: string, topK: number): Promise; createVectorStore(dbName: string, documents: Document[]): Promise; }