noEmptyTypeParameters
Este conteúdo não está disponível em sua língua ainda.
Diagnostic Category: lint/complexity/noEmptyTypeParameters
Since: v1.5.0
Description
Section titled DescriptionDisallow empty type parameters in type aliases and interfaces.
TypeScript permits the use of empty type parameter lists in type alias and interface declarations; however, this practice is generally discouraged. Allowing empty type parameter lists can lead to unclear or ambiguous code, where the intention of the generic type is not self-evident. This rule disallows empty type parameter lists in type alias and interface declarations.
Examples
Section titled ExamplesInvalid
Section titled Invalidinterface Foo<> {}code-block.ts:1:14 lint/complexity/noEmptyTypeParameters ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Using an empty type parameter list is confusing.
  
  > 1 │ interface Foo<> {}
      │              ^^
    2 │ 
  
  ℹ Remove the empty type parameter list or add a type parameter.
  
type Bar<> = {};code-block.ts:1:9 lint/complexity/noEmptyTypeParameters ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  ✖ Using an empty type parameter list is confusing.
  
  > 1 │ type Bar<> = {};
      │         ^^
    2 │ 
  
  ℹ Remove the empty type parameter list or add a type parameter.
  
Valid
Section titled Validinterface Foo {}type Foo<T> = { bar: T;}How to configure
Section titled How to configure{  "linter": {    "rules": {      "complexity": {        "noEmptyTypeParameters": "error"      }    }  }}