Conventions
No Default Export Declaration
Disallow attaching function or class declarations to export default so every exported symbol has an explicit and searchable name.
No Implicit Boolean
Require explicit boolean comparisons instead of relying on truthy/falsy coercion in conditions for unambiguous control flow intent.
Require Explicit Return
Require an explicit return statement at the end of void function bodies so every function signals its exit point for consistent flow.
Require Hash Private
Require #hash notation for private class members instead of the private keyword so privacy is enforced at the runtime language level.
Require Kebab Case Filename
Require kebab-case file names for TypeScript source files so filenames stay consistent, URL-safe, and free of case-sensitivity issues.
Require Naming Convention
Enforce context-aware naming conventions for identifiers based on their declaration type including camelCase, PascalCase, and UPPER_SNAKE.
Require Node Protocol
Require the node: protocol when importing Node.js built-in modules so built-in imports are visually distinct from third-party packages.
Require Undefined Init
Require explicit undefined initializer when declaring variables without a value so uninitialized state is always visible in the source.
Switch Case Blocks
Require every non-empty switch case to wrap its body in a block so declarations stay scoped and branches stay independent.