/** * @angular-modernizer/plugin-angular * * Plugin for Angular-specific analysis and performance rules. * * Export Strategy: * - Plugin: The main entry point for the Kernel * - Rules: Individual analysis rules */ // Export the main plugin (primary export for the Kernel) export { AngularPlugin } from './angular-plugin.js'; // Export individual rules (for advanced usage) export { MissingOnPushRule } from './analysis-rules/angular-missing-onpush.rule.js'; export { RxJSOptimizationRule } from './analysis-rules/rxjs-optimization.rule.js'; export type { RxJSOptimizationConfig } from './analysis-rules/rxjs-optimization.rule.js'; export { BundleSizeOptimizationRule } from './analysis-rules/bundle-size-optimization.rule.js'; export type { BundleSizeOptimizationConfig } from './analysis-rules/bundle-size-optimization.rule.js'; export { DataHandlingStrategyRule } from './analysis-rules/data-handling-strategy.rule.js'; export type { DataHandlingStrategyConfig } from './analysis-rules/data-handling-strategy.rule.js'; export { InheritanceToCompositionRule } from './transform-rules/inheritance-to-composition.rule.js'; export { ServiceBagTransformRule } from './transform-rules/service-bag-transform.rule.js'; export { ServiceBagTransformOrchestrator } from './orchestrators/service-bag-transform.orchestrator.js'; export { TypeSafetyAnalysisRule } from './analysis-rules/type-safety.analysis.rule.js'; export { TypeSafetyTransformRule } from './transform-rules/type-safety.transform.rule.js'; export { TypeSafetyTransformOrchestrator } from './orchestrators/type-safety-transform.orchestrator.js'; export { AnyToInterfaceAnalysisRule } from './analysis-rules/any-to-interface.analysis.rule.js'; export { AnyToInterfaceTransformRule } from './transform-rules/any-to-interface.transform.rule.js'; export { AnyToInterfaceOrchestrator } from './orchestrators/any-to-interface.orchestrator.js'; export { UntypedDynamicComponentRule } from './analysis-rules/untyped-dynamic-component.analysis.rule.js'; export { InterfaceDuplicationAnalysisRule } from './analysis-rules/interface-duplication-analysis.rule.js'; export type { UntypedDynamicComponentConfig, UntypedDynamicComponentMetadata, } from './analysis-rules/untyped-dynamic-component.analysis.rule.js'; export { DtoObjectLiteralTransformRule } from './transform-rules/dto-object-literal.transform.rule.js'; export { DtoObjectLiteralOrchestrator } from './orchestrators/dto-object-literal.orchestrator.js'; export type { DtoTransformResult, DtoDetectionConfig, } from './orchestrators/dto-object-literal.orchestrator.js'; export { MagicStringSelectorRule } from './analysis-rules/magic-string-selector.rule.js'; export type { MagicStringSelectorConfig, MagicStringSelectorMetadata, } from './analysis-rules/magic-string-selector.rule.js'; export { StaticClassAnalysisRule } from './analysis-rules/static-class-analysis.rule.js'; export type { StaticClassMetadata } from './analysis-rules/static-class-analysis.rule.js'; export { StaticClassTransformRule } from './transform-rules/static-class-transform.rule.js'; export { StaticClassTransformOrchestrator } from './orchestrators/static-class-transform.orchestrator.js'; export type { StaticClassTransformResult } from './orchestrators/static-class-transform.orchestrator.js'; export { StaticExtractTransformRule } from './transform-rules/static-extract-transform.rule.js'; export { StaticExtractTransformOrchestrator } from './orchestrators/static-extract-transform.orchestrator.js'; export type { StaticExtractResult } from './orchestrators/static-extract-transform.orchestrator.js'; export { ComponentWrapperInstantiationRule } from './analysis-rules/component-wrapper-instantiation.rule.js'; export type { ComponentWrapperInstantiationConfig, ComponentWrapperInstantiationMetadata, } from './analysis-rules/component-wrapper-instantiation.rule.js'; export { DtoDirectInstantiationRule } from './analysis-rules/dto-direct-instantiation.rule.js'; export { InterfaceDuplicationTransformRule } from './transform-rules/interface-duplication-transform.rule.js'; export { InterfaceDuplicationTransformOrchestrator } from './orchestrators/interface-duplication-transform.orchestrator.js'; export { PromiseObservableAnalysisRule } from './analysis-rules/promise-observable.analysis.rule.js'; export { PromiseServiceTransformRule } from './transform-rules/promise-service-transform.rule.js'; export { PromiseComponentTransformRule } from './transform-rules/promise-component-transform.rule.js'; export { PromiseCleanupTransformRule } from './transform-rules/promise-cleanup-transform.rule.js'; export { PromiseServiceTransformOrchestrator } from './orchestrators/promise-service-transform.orchestrator.js'; export type { PromiseServiceTransformOptions } from './orchestrators/promise-service-transform.orchestrator.js'; export { PromiseComponentTransformOrchestrator } from './orchestrators/promise-component-transform.orchestrator.js'; export { PromiseCleanupTransformOrchestrator } from './orchestrators/promise-cleanup-transform.orchestrator.js'; export { SequentialAwaitTransformRule } from './transform-rules/sequential-await-transform.rule.js'; export { SequentialAwaitTransformOrchestrator } from './orchestrators/sequential-await-transform.orchestrator.js'; export type { DtoDirectInstantiationConfig, DtoDirectInstantiationMetadata, } from './analysis-rules/dto-direct-instantiation.rule.js'; export { PresentationalComponentViolationRule } from './analysis-rules/presentational-component-violation.rule.js'; export type { DialogDetectionConfig } from './analysis-rules/presentational-component-violation.rule.js'; export { MissingOutputTransformRule } from './transform-rules/missing-output-transform.rule.js'; export { MissingOutputTransformOrchestrator } from './orchestrators/missing-output-transform.orchestrator.js'; export { SubscriptionTransformRule } from './transform-rules/subscription-transform.rule.js'; export { SubscriptionTransformOrchestrator } from './orchestrators/subscription-transform.orchestrator.js'; export { LibraryExtractionTransformRule } from './transform-rules/library-extraction.transform.rule.js'; export { LibraryExtractionOrchestrator } from './orchestrators/library-extraction/library-extraction.orchestrator.js'; export type { LibraryExtractionOptions } from './orchestrators/library-extraction/library-extraction.orchestrator.js';