/** * @angular-modernizer/plugin-angular - Subscription Transform Rule * * Thin rule wrapper: delegates all logic to SubscriptionTransformOrchestrator. * Activated via transformationType: 'subscription-transform' in plugin config. */ import type { TransformRule, TransformContext, TransformResult } from '@angular-modernizer/plugin-system'; import type { PublicApi } from '@angular-modernizer/api'; /** * Transform Rule: Subscription in Lifecycle Hook * * Converts raw `.subscribe()` calls in lifecycle hooks to properly managed * subscriptions using `takeUntilDestroyed()` operator from * `@angular/core/rxjs-interop`. * * This fixes the `subscription-in-lifecycle` violation type detected by * `PresentationalComponentViolationRule`. * * @example * ```typescript * // BEFORE: raw subscription in lifecycle hook * ngOnInit() { * this.dataService.getData().subscribe(data => this.data = data); * } * * // AFTER: takeUntilDestroyed ensures cleanup * private readonly destroyRef = inject(DestroyRef); * * ngOnInit() { * this.dataService.getData() * .pipe(takeUntilDestroyed(this.destroyRef)) * .subscribe(data => this.data = data); * } * ``` * * @see SubscriptionTransformOrchestrator * @see PresentationalComponentViolationRule */ export declare class SubscriptionTransformRule implements TransformRule { readonly id = "angular:subscription-transform"; readonly name = "Subscription Transform"; readonly category = "angular-architecture"; readonly description = "Add takeUntilDestroyed() to raw .subscribe() calls in lifecycle hooks"; private readonly orchestrator; transform(context: TransformContext): Promise; } //# sourceMappingURL=subscription-transform.rule.d.ts.map