ReadonlycategoryRule category for grouping.
ReadonlydescriptionRule description explaining what it checks.
ReadonlyidUnique rule identifier (scoped to plugin). Format: "plugin-name:rule-name" (e.g., "angular-standalone:component-not-standalone")
ReadonlynameHuman-readable rule name.
ReadonlyseverityRule severity level.
ReadonlytagsTags for filtering and search.
Analyze a source file and return findings.
Analysis context with file, project, and API access
Promise resolving to array of analysis results
Service DIP Violation Rule (
solid:service-dip-violation) - detects concrete@Injectableconstructor injection.Reports a constructor parameter of an
@Injectableclass whose type resolves (via the type checker, across files) to another@Injectableclass, instead of an abstraction (interface). Provides a suggested interface name (I+ injected class name) and a suggested fix. With ServiceDipViolationConfig.crossLayerOnly, only injections between different path-based layers are reported. Declaration files are skipped.Sibling of DIPViolationRule, which detects
new MyService(). ServiceDipViolationTransformRule applies the fix.Example