Linter · Rules
max-classes-per-file
Enforce a maximum number of classes per file
When a file holds several classes, its name can only describe one of them, and the others are hard to find.
Class declarations and class expressions both count. The default maximum is 1.
Configure
Off by default. To turn it on:
bunfig.toml
[lint.rules]
"max-classes-per-file" = "error" # or "warn"
Every option, set to its default:
bunfig.toml
[lint.rules]
"max-classes-per-file" = ["error", {
max = 1,
ignoreExpressions = false,
}]
Examples
Reported:
class User {}
class Session {}
Not reported:
class User {}
Options
bunfig.toml
[lint.rules]
max-classes-per-file = ["error", { max = 2, ignoreExpressions = true }]
The option is either a number (the maximum) or an object:
| Option | Default | What it does |
|---|---|---|
max | 1 | The number of classes a file can have. |
ignoreExpressions | false | Don't count class expressions. |
class User {}
class Session {}
class User {}
class Session {}
class Token {}
ignoreExpressions
class User {}
const Guest = class extends User {};
class User {}
const Guest = class extends User {};