export interface VectorMetadata {
    /** Source URL (used as primary identity by the legacy index). */
    url: string;
    contentHash: string;
    modelId: string;
    extra?: Record<string, unknown>;
}
export interface VectorRecord {
    /** Stable identifier; the legacy adapter treats this as the URL key. */
    id: string;
    vector: Float32Array;
    metadata: VectorMetadata;
}
export interface VectorSearchResult {
    id: string;
    score: number;
    metadata: VectorMetadata;
}
export interface VectorStore {
    upsert(records: VectorRecord[]): Promise<void>;
    search(queryVector: Float32Array, limit: number, filter?: Partial<VectorMetadata>): Promise<VectorSearchResult[]>;
    delete(ids: string[]): Promise<void>;
    size(): Promise<number>;
}
export declare function getVectorStore(): Promise<VectorStore>;
export declare function _resetVectorStoreForTest(): void;
//# sourceMappingURL=vector-store.d.ts.map