/** * @angular-modernizer/plugin-angular - DTO Object Literal Transform Rule * * Rewrites direct `new X()` DTO instantiation followed by sequential property * assignments into typed object literals, making property mapping explicit and * type-safe. * * This transformation follows the "Thin Rule, Thick Orchestrator" pattern: * - Rule: Thin wrapper (≤50 lines) delegating to orchestrator * - Orchestrator: Contains all business logic for transformation * * Guarantees: * - Idempotent: Safe to run multiple times (no NewExpression remains after rewrite) * - Atomic: All or nothing per source file * - Reversible: Can be undone via git reset */ import type { TransformRule, TransformContext, TransformResult } from '@angular-modernizer/plugin-system'; import type { PublicApi } from '@angular-modernizer/api'; import { type DtoDetectionConfig } from '../orchestrators/dto-object-literal.orchestrator.js'; /** * DTO Object Literal Transform Rule — rewrites direct DTO instantiation to object literals. * * @example * ```typescript * // Before * const r = new UserResponse(); * r.id = 1; * r.name = 'Alice'; * * // After * const r = { id: 1, name: 'Alice' }; * ``` */ export declare class DtoObjectLiteralTransformRule implements TransformRule { readonly id = "angular:dto-object-literal-transform"; readonly name = "DTO Object Literal Transform"; readonly description = "Rewrites direct new X() DTO instantiation with sequential property assignments into typed object literals"; readonly category = "modernization"; readonly tags: string[]; private readonly orchestrator; private readonly config; constructor(config?: Partial); transform(context: TransformContext): Promise; } //# sourceMappingURL=dto-object-literal.transform.rule.d.ts.map