import type { IntentModel, ConstructionContext } from "./intent-model.js"; import type { RefinementSession, RefinementQuestion } from "./refinement-layer.js"; export type RefinementReportChange = { kind: "assumption_removed" | "forbidden_added" | "allowed_added" | "evidence_linked" | "objective_clarified" | "unknown_resolved"; description: string; before?: string; after?: string; }; export type RefinementReportEntry = { question: RefinementQuestion; answer: string; change?: RefinementReportChange; }; export type RefinementReportRecommendation = "approve_for_alignment" | "clarification_required" | "reject_intent" | "supersede_intent"; export type RefinementReport = { id: string; sessionId: string; intentModelId: string; createdAt: number; reviewer: { kind: string; id: string; }; initialConfidence: number; finalConfidence: number; entries: RefinementReportEntry[]; assumptionsRemoved: string[]; forbiddenInterpretationsAdded: string[]; allowedInterpretationsAdded: string[]; evidenceLinked: string[]; openQuestions: string[]; recommendation: RefinementReportRecommendation; reason: string; }; /** Build a Refinement Report from a completed session and its resulting model. */ export declare function createRefinementReport(session: RefinementSession, initialModel: IntentModel, finalModel: IntentModel, reviewer: { kind: string; id: string; }, recommendation: RefinementReportRecommendation, reason: string, additionalEntries?: RefinementReportEntry[], ctx?: ConstructionContext): RefinementReport; export type RefinementReportValidationResult = { valid: boolean; errors: string[]; }; export declare function validateRefinementReport(report: unknown): RefinementReportValidationResult;