/** * @angular-modernizer/plugin-angular - Interface Duplication Transform Rule * * Thin wrapper (≤50 lines) following the "Thin Rule, Thick Orchestrator" pattern. * All business logic is in InterfaceDuplicationTransformOrchestrator. * * Transformation: * - Groups of 3+ interfaces sharing a suffix and common properties are consolidated * into a base interface + branded type aliases using unique symbols. * - All cross-references (imports, type annotations, generics, re-exports) are * updated automatically across the project. * * Guarantees: Idempotent, Atomic, Reversible. * * @example * ```typescript * const rule = new InterfaceDuplicationTransformRule(); * const result = await rule.transform(context); * if (result.modified) console.info('Interfaces consolidated'); * ``` */ import type { TransformRule, TransformContext, TransformResult } from '@angular-modernizer/plugin-system'; import type { PublicApi } from '@angular-modernizer/api'; export declare class InterfaceDuplicationTransformRule implements TransformRule { readonly id = "angular:interface-duplication-transform"; readonly name = "Interface Duplication Transform"; readonly description = "Consolidates duplicate interface families into a base interface + branded type aliases"; readonly category = "modernization"; readonly tags: string[]; private readonly orchestrator; transform(context: TransformContext): Promise; } //# sourceMappingURL=interface-duplication-transform.rule.d.ts.map