/** * Pass #72: dependency-fan-out * * Flags modules that import an excessive number of other modules (≥20). * High fan-out is a coupling smell that makes modules hard to test and modify * independently. * * Category: architecture | Severity: low | Level: note | CWE: none */ import type { AnalysisPass, PassContext } from '../../graph/analysis-pass.js'; /** * Per-pass options for DependencyFanOutPass. * Pass via `AnalyzerOptions.passOptions.dependencyFanOut`. */ export interface DependencyFanOutOptions { /** * Maximum number of imports before flagging. Default: 20. */ threshold?: number; } export interface DependencyFanOutResult { importCount: number; exceeded: boolean; } export declare class DependencyFanOutPass implements AnalysisPass { readonly name = "dependency-fan-out"; readonly category: "architecture"; private readonly threshold; constructor(options?: DependencyFanOutOptions); run(ctx: PassContext): DependencyFanOutResult; } //# sourceMappingURL=dependency-fan-out-pass.d.ts.map