import type { MemoryRegistry } from '../state/index.js';
import type { KnowledgeStore } from './store.js';
import type { KnowledgeConsolidationCandidateRecord, KnowledgeConsolidationReportRecord } from './types.js';
export interface KnowledgeConsolidationContext {
    readonly store: KnowledgeStore;
    readonly memoryRegistry: Pick<MemoryRegistry, 'add' | 'getStore'>;
    readonly syncReviewedMemory: () => Promise<void>;
}
export declare function decideKnowledgeConsolidationCandidate(context: KnowledgeConsolidationContext, id: string, decision: 'accept' | 'reject' | 'supersede', input?: {
    readonly decidedBy?: string | undefined;
    readonly memoryClass?: string | undefined;
    readonly scope?: string | undefined;
    readonly detail?: string | undefined;
}): Promise<KnowledgeConsolidationCandidateRecord>;
export declare function refreshKnowledgeConsolidationCandidates(context: KnowledgeConsolidationContext, limit?: number): Promise<KnowledgeConsolidationCandidateRecord[]>;
export declare function runKnowledgeConsolidation(context: KnowledgeConsolidationContext, kind: Extract<KnowledgeConsolidationReportRecord['kind'], 'light-consolidation' | 'deep-consolidation'>, input: {
    readonly limit?: number | undefined;
    readonly autoPromote: boolean;
}): Promise<KnowledgeConsolidationReportRecord>;
export declare function syncReviewedKnowledgeMemory(context: {
    readonly syncReviewedMemory: () => Promise<void>;
}): Promise<void>;
//# sourceMappingURL=consolidation.d.ts.map