/** * Qdrant Adapter * * Vector database adapter for Qdrant. * https://qdrant.tech/ */ import { VectorDBType, VectorFeature, IVectorConnectionResult, IUpsertVectorsOptions, IUpsertVectorsResult, IQueryVectorsOptions, IQueryVectorsResult, IFetchVectorsOptions, IFetchVectorsResult, IUpdateVectorOptions, IUpdateVectorResult, IDeleteVectorsOptions, IDeleteVectorsResult, IListVectorsOptions, IListVectorsResult, IListNamespacesResult, IVectorIndexInfo, ICreateIndexOptions, ICreateIndexResult, IDeleteIndexOptions, IDeleteIndexResult, IVectorIndexStats } from '../types'; import { BaseVectorAdapter, IAdapterConnectionOptions } from './base.adapter'; /** * Qdrant adapter implementation */ export declare class QdrantAdapter extends BaseVectorAdapter { readonly type = VectorDBType.QDRANT; private apiKey; private baseUrl; private collectionName; private timeout; connect(options: IAdapterConnectionOptions): Promise; disconnect(): Promise; testConnection(): Promise; upsert(options: IUpsertVectorsOptions): Promise; query(options: IQueryVectorsOptions): Promise; fetch(options: IFetchVectorsOptions): Promise; update(options: IUpdateVectorOptions): Promise; delete(options: IDeleteVectorsOptions): Promise; list(options: IListVectorsOptions): Promise; listNamespaces(): Promise; deleteNamespace(namespace: string): Promise; describeIndex(): Promise; getIndexStats(): Promise; createIndex(options: ICreateIndexOptions): Promise; deleteIndex(options: IDeleteIndexOptions): Promise; listIndexes(): Promise; supportsFeature(feature: VectorFeature): boolean; /** * Make a request to Qdrant */ private request; /** * Convert Ductape filter to Qdrant format */ private convertFilter; /** * Convert single filter to Qdrant format */ private convertSingleFilter; /** * Map Qdrant distance to our enum */ private mapQdrantMetric; /** * Map our enum to Qdrant distance */ private mapToQdrantMetric; } export default QdrantAdapter;