import type { EmbeddingModel } from 'ai'; import { Tool } from './tool'; import { type VectorFilterInput } from './vector-store-filter'; import { type EmbeddingProviderOptions } from '../runtime/model/model-factory'; import type { BuiltVectorStoreBackend, VectorDocument, VectorQueryResult } from '../types'; export declare class VectorStore { private readonly name; private backend?; private embeddingModelValue?; private topKValue; private descriptionValue?; constructor(name: string); store(backend: BuiltVectorStoreBackend): this; embeddingModel(model: string | EmbeddingModel, options?: string | EmbeddingProviderOptions): this; topK(k: number): this; description(text: string): this; search(query: string, opts?: { topK?: number; filter?: VectorFilterInput; }): Promise; addDocuments(docs: VectorDocument[]): Promise; deleteDocuments(ids: string[]): Promise; asTool(opts?: { name?: string; description?: string; filterableKeys?: Record; }): Tool; private ensureBuilt; private resolveFilter; }