import { type MetadataFilter } from "vectra"; import type { MemoryLayer } from "../repositories/types"; type MemoryVectorMetadata = { memoryId: string; layer: MemoryLayer; importance: number; }; type DocumentVectorMetadata = { chunkId: string; docId: string; positionStart: number; positionEnd: number; page?: number; layer?: string; }; export interface VectraAdapterOptions { dataRoot: string; memoryCollection?: string; documentCollection?: string; } export interface UpsertMemoryVectorInput { memoryId: string; vector: number[]; layer: MemoryLayer; importance: number; } export interface UpsertDocumentVectorInput { chunkId: string; docId: string; vector: number[]; positionStart: number; positionEnd: number; page?: number; layer?: string; } export interface MemoryQueryOptions { topK?: number; layer?: MemoryLayer; minImportance?: number; metadataFilter?: MetadataFilter; query?: string; useKeywordFallback?: boolean; } export interface DocumentQueryOptions { topK?: number; docId?: string; layer?: string; metadataFilter?: MetadataFilter; query?: string; useKeywordFallback?: boolean; } export interface VectorQueryResult { id: string; score: number; metadata: TMetadata; } export declare class VectraAdapter { #private; constructor(options: VectraAdapterOptions); initialize(): Promise; upsertMemoryVector(input: UpsertMemoryVectorInput): Promise; upsertDocumentVector(input: UpsertDocumentVectorInput): Promise; deleteMemoryVector(memoryId: string): Promise; deleteDocumentVector(chunkId: string): Promise; queryMemories(vector: number[], options?: MemoryQueryOptions): Promise[]>; queryDocumentChunks(vector: number[], options?: DocumentQueryOptions): Promise[]>; stats(): Promise<{ memories: number; docChunks: number; }>; healthCheck(): Promise<{ ok: boolean; memoryIndex: boolean; documentIndex: boolean; }>; } export {}; //# sourceMappingURL=vectra.d.ts.map