For example, using this (with the updated options) prevents the pesky situation where an abstract class defines some abstract methods which do NOT necessarily use this, but which need to be class methods due to the abstract class definition.
Note by maintainer:
typescript-eslint is doing their best to avoid type information being required where it's not required, but in this case saying that any class implementing an interface no longer needs any method to use this is just a wide net. I'm more amenable to ignoring methods with override.
Migrated from upstream issue.
There is a new @typescript-eslint/class-methods-use-this rule which makes it possible to disable the rule in the case of overrides and interface.
For example, using this (with the updated options) prevents the pesky situation where an abstract class defines some abstract methods which do NOT necessarily use this, but which need to be class methods due to the abstract class definition.
Note by maintainer:
typescript-eslint
is doing their best to avoid type information being required where it's not required, but in this case saying that any class implementing an interface no longer needs any method to use this is just a wide net. I'm more amenable to ignoring methods withoverride
.