import type { KnowledgeStore } from '../storage/knowledge-store.js'; import type { KnowledgeEntry } from '../types/index.js'; import type { MergeCandidate, MergedEntry, MergeHistory, MergeReversal } from './knowledge-merge-types.js'; export interface KnowledgeMergerOptions { store: KnowledgeStore; now?: () => Date; idGenerator?: () => string; similarityThreshold?: number; } export declare class KnowledgeMerger { private readonly store; private readonly now; private readonly idGenerator; private readonly mergeHistory; private readonly reversalHistory; private readonly snapshots; private readonly similarityThreshold; constructor(options: KnowledgeMergerOptions); findMergeCandidates(entries: KnowledgeEntry[], options?: { similarityThreshold?: number; }): MergeCandidate[]; merge(candidate: MergeCandidate): Promise; revert(mergedEntryId: string): Promise; getMergeHistory(): MergeHistory; private loadCandidateEntries; private buildMergedEntry; private toSourceRef; private filterComplementaryEntries; private areEntriesComplementary; private computeGroupSimilarity; private computeSimilarity; private isContradictory; private detectPolarity; private normalizeTopic; private normalizeText; private tokenOverlap; private cloneMergedEntry; } //# sourceMappingURL=knowledge-merger.d.ts.map