Typescript since v3 has a feature to skip assigning constructor parameter to a same named property.
SonarLint (and SonarCloud) treats this like an unused parameter of constructor function.
Code example:
class Test {
constructor(
public readonly x: number,
) {
// No body necessary
}
}
const a = new Test(1);
console.log(a.x); // 1
Will cause “Remove the unused function parameter “x” or rename it to “_x” to make intention explicit.sonarlint(typescript:S1172)”