import type { KnowledgeStore } from '../store.js'; import type { KnowledgeNodeRecord, KnowledgeSourceRecord } from '../types.js'; import type { KnowledgeSemanticGapInput } from './types.js'; export declare function shouldPersistNoMatchGap(spaceId: string, query: string, linkedObjects: readonly KnowledgeNodeRecord[]): boolean; export declare function persistAnswerGap(store: KnowledgeStore, spaceId: string, query: string, reason: string, context?: { readonly subject?: string | undefined; readonly sources?: readonly KnowledgeSourceRecord[] | undefined; readonly linkedObjects?: readonly KnowledgeNodeRecord[] | undefined; }): Promise; export declare function persistAnswerGaps(store: KnowledgeStore, spaceId: string, query: string, gaps: readonly KnowledgeSemanticGapInput[], context?: { readonly sources?: readonly KnowledgeSourceRecord[] | undefined; readonly linkedObjects?: readonly KnowledgeNodeRecord[] | undefined; }): Promise; /** * A gap counts as repaired only when there is REAL evidence: the repair pipeline * marked it `repaired` AND it carries a concrete signal, one or more promoted * facts, or one or more accepted new sources. A node merely going `stale` * (superseded) or being marked `not_applicable` (deemed non-repairable) is NOT * repair evidence; those gaps stay open honestly instead of being auto-resolved * with an invented reason. (Invariant 4 / honesty.) */ export declare function isRepairedAnswerGap(node: KnowledgeNodeRecord): boolean; //# sourceMappingURL=answer-gaps.d.ts.map