type ReviewStatus = 'pending' | 'reviewed' | 'excluded'; type ParityStatus = 'pending' | 'verified' | 'not_applicable'; type ReferenceKind = 'import' | 'caller' | 'callee' | 'implements' | 'event' | 'test' | 'config' | 'schema'; interface ParityEvidence { status: ParityStatus; evidence: string[]; reason?: string; } interface ReviewEntry { file: string; status: ReviewStatus; safety: 'names_only' | 'normal'; baseline_checksum: string | null; reviewed_checksum: string | null; purpose: string; dependencies: string[]; follow_up_files: string[]; references: Array<{ kind: ReferenceKind; target: string; external: boolean; evidence: string; }>; interfaces: string[]; findings: Array<{ kind: string; evidence: string; location: { start_line: number; end_line: number; }; symbol: { kind: 'module' | 'class' | 'interface' | 'function' | 'method' | 'field' | 'route' | 'event' | 'schema' | 'other'; name: string; qualified_name?: string; }; classification: 'observed' | 'inferred' | 'proposed' | 'confirmed'; confidence: 'low' | 'medium' | 'high'; requires_followup: string[]; }>; exclusion_reason?: string; exclusion?: { classification: 'generated' | 'vendor' | 'build' | 'snapshot' | 'other'; reason: string; owner?: string; generator?: string; regeneration_test?: string; }; interface_parity: ParityEvidence; functional_parity: ParityEvidence; operational_parity: ParityEvidence; } interface ReviewLedger { version: 1; artifact_kind: 'ai_migration_review_ledger'; source: string; created_at: string; revision: number; events: Array<{ revision: number; timestamp: string; actor: string; tool: '@ductape/cli'; tool_version: string; operation: string; state_hash: string; previous_hash: string | null; hash: string; }>; entries: ReviewEntry[]; } interface LedgerSignature { version: 1; artifact_kind: 'ductape_review_ledger_signature'; ledger: string; ledger_checksum: string; key_id: string; algorithm: 'Ed25519'; signed_at: string; signature: string; } export declare function initializeReviewLedger(analysisPath: string, ledgerPath?: string): { ledger: ReviewLedger; path: string; }; export declare function validateReviewLedger(ledgerPath: string): { ledger: string; source: string; ready: boolean; coverage: { total: number; reviewed: number; excluded: number; pending: number; percent: number; }; blockers: { pending: string[]; stale: string[]; invalid_exclusions: string[]; invalid_generated_exclusions: string[]; missing_follow_ups: { file: string; follow_up: string; }[]; uncovered_references: { file: string; kind: ReferenceKind; target: string; }[]; missing_finding_provenance: { file: string; finding: number; }[]; missing_symbol_provenance: { file: string; finding: number; }[]; probable_moves: { from: string; candidates: string[]; }[]; invalidated_dependents: string[]; audit_errors: string[]; missing_context: string[]; incomplete_parity: { file: string; concern: string; }[]; }; }; export declare function snapshotReviewedFile(ledgerPath: string, file: string): ReviewEntry; export declare function recordReviewContext(ledgerPath: string, file: string, dataPath: string): ReviewEntry; export declare function addFollowUpFile(ledgerPath: string, fromFile: string, followUpFile: string): ReviewEntry; export declare function excludeReviewFile(ledgerPath: string, file: string, exclusion: NonNullable): ReviewEntry; export declare function setParityEvidence(ledgerPath: string, file: string, concern: 'interface' | 'functional' | 'operational', status: Exclude, evidence?: string, reason?: string): ReviewEntry; export declare function reopenReviewFile(ledgerPath: string, file: string): ReviewEntry; export declare function moveReviewedFile(ledgerPath: string, from: string, to: string): ReviewEntry; export declare function signReviewLedger(opts: { ledger: string; privateKey: string; keyId: string; output?: string; }): { path: string; signature: LedgerSignature; }; export declare function verifyReviewLedgerSignature(opts: { ledger: string; signature: string; publicKey: string; }): { ledger: string; key_id: string; valid: boolean; }; export declare function mergeReviewLedgers(opts: { base: string; current: string; incoming: string; output: string; }): { merged: boolean; conflicts: string[]; output: null; } | { merged: boolean; conflicts: never[]; output: string; }; export declare function runMigrationReviewInit(opts: { analysis: string; output?: string; json?: boolean; }): void; export declare function runMigrationReviewValidate(opts: { ledger: string; strict?: boolean; json?: boolean; }): void; export declare function runMigrationReviewSnapshot(opts: { ledger: string; file: string; json?: boolean; }): void; export declare function runMigrationReviewRecord(opts: { ledger: string; file: string; data: string; json?: boolean; }): void; export declare function runMigrationReviewFollowUp(opts: { ledger: string; file: string; followUp: string; json?: boolean; }): void; export declare function runMigrationReviewExclude(opts: { ledger: string; file: string; classification: NonNullable['classification']; reason: string; owner?: string; generator?: string; regenerationTest?: string; json?: boolean; }): void; export declare function runMigrationReviewParity(opts: { ledger: string; file: string; concern: 'interface' | 'functional' | 'operational'; status: 'verified' | 'not_applicable'; evidence?: string; reason?: string; json?: boolean; }): void; export declare function runMigrationReviewReopen(opts: { ledger: string; file: string; json?: boolean; }): void; export declare function runMigrationReviewMove(opts: { ledger: string; from: string; to: string; json?: boolean; }): void; export declare function runMigrationReviewSign(opts: { ledger: string; privateKey: string; keyId: string; output?: string; json?: boolean; }): void; export declare function runMigrationReviewVerifySignature(opts: { ledger: string; signature: string; publicKey: string; json?: boolean; }): void; export declare function runMigrationReviewMerge(opts: { base: string; current: string; incoming: string; output: string; json?: boolean; }): void; export {};