/** Lens — compose one internal validation instruction, never a user turn.
 * The committed carrier is replayable; its quoted draft is not evidence. */
import type { StagedRefsMatch } from '../stagedRefs.js';
import type { EvidenceRecoveryInstruction, PendingEvidenceRecovery, UnsupportedValue } from './types.js';
export declare const MAX_EVIDENCE_RECOVERY_GUIDANCE_CHARS = 4000;
/** Ceiling for the complete serialized carrier, including the rejected draft. */
export declare const MAX_EVIDENCE_RECOVERY_CHARS = 1000000;
export declare function validateRecoveryInstruction(value: unknown): void;
/** Freeze copies before calling host code; its advice can never mutate the finding. */
export declare function buildEvidenceRecovery(input: {
    readonly iteration: number;
    readonly originalRequest: string;
    readonly rejectedDraft: string;
    readonly unsupported: readonly UnsupportedValue[];
    /** No tool can be called on the revision (an enforcing answer validation). */
    readonly toolsOff?: true;
}, extra?: EvidenceRecoveryInstruction, staged?: StagedRefsMatch, 
/** The figures dial's late line (`figures.ts` · `figuresConclusionLine`,
 *  composed by Route, which loaded the module): rides the request LAST. */
conclusion?: string, 
/** Under `code: 'match'`: the script clause (`scripts/recovery.ts` ·
 *  `scriptRecoveryClause`, composed by Route) — after "Recovery action:
 *  replace the rejected draft". Absent or `''` → the bytes it always was. */
scriptClause?: string): PendingEvidenceRecovery;
/** The late line, on the iteration its instruction is served — `callLLM` and `servedView` alike. */
export declare function evidenceConclusionLine(pending: PendingEvidenceRecovery | undefined, used: boolean | undefined, iteration: number): string | undefined;
/** Shared by live request assembly and servedAt's independent reconstruction. */
export declare function evidenceRecoveryPiece(pending: PendingEvidenceRecovery | undefined, used: boolean | undefined, iteration: number): {
    rawContent: string;
    slot: 'system-prompt';
    source: 'evidence-recovery';
} | undefined;
