type MigrationMode = 'in-place' | 'new-codebase'; type Language = 'typescript' | 'go' | 'java' | 'dotnet'; interface MigrationPlan { version: 2; artifact_kind: 'ai_review_bootstrap'; authority: 'advisory_only'; execution_provenance?: { mcp_client?: { name: string; version: string; source: 'mcp_initialize_handshake'; trust: 'protocol_asserted_unverified'; }; ai_model: { status: 'unavailable'; reason: 'MCP does not provide a server-verifiable model identity'; }; }; source: string; mode: MigrationMode; destination: string; product: { tag: string; name: string; exists?: boolean; created?: boolean; }; target_database: string; languages: Language[]; frameworks: string[]; workspace_boundaries: Array<{ system: 'bazel' | 'buck' | 'pants' | 'nx' | 'turborepo' | 'maven' | 'gradle' | 'dotnet'; evidence: string[]; requires_ai_review: true; }>; workspace_units: Array<{ manifest: string; kind: 'node' | 'go' | 'maven' | 'gradle' | 'dotnet' | 'nx'; nearest_boundary?: string; ownership_status: 'contextual_review_required'; }>; generated_source_hints: Array<{ file: string; evidence: string; confidence: 'low'; requires_ai_review: true; }>; scan_safety: { symlinks_followed: false; symlinks_skipped: string[]; git_submodules: Array<{ name: string; path: string; url?: string; }>; }; scan_policy: { max_file_bytes: number; binary_files: 'exclude'; include_patterns: string[]; exclude_patterns: string[]; exclusions: Array<{ file: string; reason: string; }>; }; environments: string[]; secrets: Array<{ key: string; source: string; environment: string; value: '[REDACTED]'; }>; secret_references: Array<{ key: string; source: string; system: 'docker' | 'kubernetes' | 'github' | 'gitlab' | 'jenkins' | 'circleci' | 'azure_devops' | 'spring' | 'dotnet' | 'terraform' | 'aws' | 'gcp' | 'azure'; environment: string; value: '[NOT_READ]'; requires_ai_review: true; }>; potential_secret_exposures: Array<{ source: string; line: number; kind: 'password' | 'token' | 'secret' | 'private_key' | 'connection_string'; fingerprint: string; value: '[NOT_RETURNED]'; confidence: 'low'; requires_human_security_review: true; }>; deterministic_hints: { databases: Array<{ evidence: string; kind: string; confidence: 'low'; requires_ai_review: true; }>; third_party_apis: Array<{ host: string; occurrences: number; methods: string[]; paths: string[]; recommended_app_tag: string; confidence: 'low'; requires_ai_review: true; }>; }; existing_migrations: string[]; existing_schemas: string[]; migration_imports: Array<{ source: string; checksum: string; order: number; status: 'manual_review_required'; reason: string; }>; conversion_warnings: string[]; review_queue: Array<{ file: string; review_status: 'pending'; inspect_for: string[]; safety: 'names_only' | 'normal'; }>; evidence_ledger_template: { file: string; purpose: string; dependencies: string[]; interfaces: string[]; functional_parity_requirements: string[]; operational_parity_requirements: 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[]; }>; decision: 'pending'; }; ai_working_standards: { global: string[]; languages: Record; feature_classification: { definition: string; categories: Record<'FEATURE' | 'FEATURE_STEP' | 'DOMAIN_SERVICE' | 'UTILITY' | 'INFRASTRUCTURE_ADAPTER', string>; discovery: string[]; required_output_fields: string[]; grouping_rule: string; }; }; output_paths: { plan: string; migration_evidence: string; review_ledger_template: string; guide: string; }; next_steps: string[]; } export declare function writeMigrationGuidance(plan: MigrationPlan): void; export declare function inspectMigrationCodebase(opts: { source: string; mode?: MigrationMode; destination?: string; product?: string; name?: string; database?: string; maxFileBytes?: number; include?: string[]; exclude?: string[]; }): MigrationPlan; export declare function runMigrateCodebase(opts: { source?: string; e2eBaseline: string; mode?: MigrationMode; destination?: string; product?: string; name?: string; database?: string; maxFileBytes?: number; include?: string[]; exclude?: string[]; ensureProduct?: boolean; write?: boolean; json?: boolean; mcpClientName?: string; mcpClientVersion?: string; }): Promise; export {};