A long parameter list can indicate that a new structure should be created to wrap the numerous parameters or that the function is doing too many things.

Noncompliant Code Example

With a maximum number of 4 parameters:

function doSomething(param1: number, param2: number, param3: number, param4: number, param5: number) {
...
}

Compliant Solution

function doSomething(param1: number, param2: number, param3: number, param4: number) {
...
}

Exceptions

Parameter properties are ignored.

class A {
  constructor(public p1: number, public p2: number, public p3: number, public p4: number, public p5: number) {
  }
}