/** Actual local receipt facts, not an imported worker verdict. No case PASS or cleanup authority is issued here. */ export declare function sameShaClientFacts(projectRoot: string, approvalRef: string, phase: "prepared" | "updated" | "no-op"): { manifestHash: string; clientId: string; approvalRef: string; ref: string; head: string; expected: string | null; candidateId: string; attemptId: string; push: { error: string | null; status: number | null; stdout: string; } | null; writesClosed: boolean; heads: { lkg: string | null; receipts: { [k: string]: string; }; }; }; /** Called only by the fixed read-only worker role. Rejected recovery must fail before any verdict/counter change. */ export declare function verifyRejectedRestart(projectRoot: string, approvalRef: string, attemptId: string): { before: { manifestHash: string; clientId: string; approvalRef: string; ref: string; head: string; expected: string | null; candidateId: string; attemptId: string; push: { error: string | null; status: number | null; stdout: string; } | null; writesClosed: boolean; heads: { lkg: string | null; receipts: { [k: string]: string; }; }; }; after: { manifestHash: string; clientId: string; approvalRef: string; ref: string; head: string; expected: string | null; candidateId: string; attemptId: string; push: { error: string | null; status: number | null; stdout: string; } | null; writesClosed: boolean; heads: { lkg: string | null; receipts: { [k: string]: string; }; }; }; result: "rejected-unchanged"; }; //# sourceMappingURL=same_sha.d.ts.map