@codai/memorai-core
Version:
Simplified advanced memory engine - no tiers, just powerful semantic search with persistence
67 lines • 2.47 kB
TypeScript
import type { MemoryMetadata, MemoryQuery, MemoryResult } from '../types/index.js';
export interface VectorPoint {
id: string;
vector: number[];
payload: Record<string, unknown>;
}
export interface SearchResult {
id: string;
score: number;
payload: Record<string, unknown>;
}
export interface VectorStore {
initialize(): Promise<void>;
upsert(points: VectorPoint[]): Promise<void>;
search(vector: number[], query: MemoryQuery): Promise<SearchResult[]>;
delete(ids: string[]): Promise<void>;
count(tenantId: string): Promise<number>;
healthCheck(): Promise<boolean>;
close?(): Promise<void>;
}
export declare class QdrantVectorStore implements VectorStore {
private client;
private collection;
private dimension;
constructor(url: string, collection: string, dimension: number, apiKey?: string);
initialize(): Promise<void>;
private convertToUuidFormat;
upsert(points: VectorPoint[]): Promise<void>;
search(vector: number[], query: MemoryQuery): Promise<SearchResult[]>;
delete(ids: string[]): Promise<void>;
count(tenantId: string): Promise<number>;
healthCheck(): Promise<boolean>;
}
export declare class MemoryVectorStore {
private store;
private isInitialized;
constructor(store: VectorStore);
initialize(): Promise<void>;
storeMemory(memory: MemoryMetadata, embedding: number[]): Promise<void>;
storeMemories(memories: MemoryMetadata[], embeddings: number[][]): Promise<void>;
searchMemories(queryEmbedding: number[], query: MemoryQuery): Promise<MemoryResult[]>;
deleteMemories(ids: string[]): Promise<void>;
getMemoryCount(tenantId: string): Promise<number>;
healthCheck(): Promise<boolean>;
close(): Promise<void>;
getHealth(): Promise<{
status: string;
error?: string;
}>;
private ensureInitialized;
private generateRelevanceReason;
}
/**
* Simple in-memory vector store for BASIC tier - no external dependencies
*/
export declare class InMemoryVectorStore implements VectorStore {
private vectors;
initialize(): Promise<void>;
upsert(points: VectorPoint[]): Promise<void>;
search(vector: number[], query: MemoryQuery): Promise<SearchResult[]>;
delete(ids: string[]): Promise<void>;
count(tenantId: string): Promise<number>;
healthCheck(): Promise<boolean>;
close(): Promise<void>;
private cosineSimilarity;
}
//# sourceMappingURL=VectorStore.d.ts.map