export type RemediationMode = 'dry_run' | 'confirm'; export type RemediationStatus = 'would_change' | 'changed' | 'no_op' | 'refused' | 'error'; export interface RemediationAction { action: string; targetId: string; previousState?: string; nextState?: string; reason: string; /** * Legacy command-specific fields are retained during PRI-105 migration so * existing operator consumers do not lose detail while the shared contract * becomes the canonical top-level shape. */ taskId?: string; type?: string; severity?: 'error' | 'warning'; previousStatus?: string; newStatus?: string; recommendedAction?: string; successorTaskId?: string; } export interface RemediationResult { mode: RemediationMode; status: RemediationStatus; safeToConfirm: boolean; repairedCount: number; skippedCount: number; actions: RemediationAction[]; warnings: string[]; generatedAt?: string; dryRun?: boolean; } export interface CreateRemediationResultInput { mode: RemediationMode; repairedCount?: number; skippedCount?: number; actions?: RemediationAction[]; warnings?: string[]; status?: RemediationStatus; safeToConfirm?: boolean; generatedAt?: string; includeLegacyDryRun?: boolean; } export declare function createRemediationResult(input: CreateRemediationResultInput): RemediationResult; export declare function remediationAction(input: RemediationAction): RemediationAction; //# sourceMappingURL=remediation-contract.d.ts.map