export declare class HnswIndex { protected readonly maxLayer: number; protected readonly maxNumberOfNeighbors: number; protected readonly efConstruction: number; protected readonly efSearch: number; protected readonly nodes: Map; protected entrypointKey: string | null; constructor(maxLayer?: number, maxNumberOfNeighbors?: number, efConstruction?: number, efSearch?: number); has(key: string): boolean; getVector(key: string): number[] | null; insert(key: string, vector: number[]): void; search(query: number[], k: number): string[]; delete(key: string): boolean; private cosineSimilarity; protected assignLayer(): number; private searchLayer; private selectNeighbors; private shrinkNeighbors; private findNewEntrypoint; } export declare class Node { readonly key: string; maxLayer: number; readonly neighbors: Map; readonly vector: number[]; constructor(key: string, vector: number[], maxLayer: number); } //# sourceMappingURL=hnsw-index.d.ts.map