Skip to content

☂️ typescript-eslint #2180

Open
Open
@Boshen

Description

@Boshen

Warning

This comment is maintained by CI. Do not edit this comment directly.
To update comment template, see https://github.com/oxc-project/oxc/tree/main/tasks/lint_rules

This is tracking issue for @typescript-eslint/eslint-plugin.

There are 65(+ 7 deprecated) rules.

  • 4/40 recommended rules are remaining as TODO
  • 11/25 not recommended rules are remaining as TODO

To get started, run the following command:

just new-typescript-rule <RULE_NAME>

Then register the rule in crates/oxc_linter/src/rules.rs and also declare_all_lint_rules at the bottom.

Recommended rules

✨: 36, 🚫: 0 / total: 40
Status Name Docs
typescript/adjacent-overload-signatures https://typescript-eslint.io/rules/adjacent-overload-signatures
typescript/array-type https://typescript-eslint.io/rules/array-type
typescript/ban-tslint-comment https://typescript-eslint.io/rules/ban-tslint-comment
typescript/class-literal-property-style https://typescript-eslint.io/rules/class-literal-property-style
typescript/consistent-generic-constructors https://typescript-eslint.io/rules/consistent-generic-constructors
typescript/consistent-indexed-object-style https://typescript-eslint.io/rules/consistent-indexed-object-style
typescript/consistent-type-assertions https://typescript-eslint.io/rules/consistent-type-assertions
typescript/consistent-type-definitions https://typescript-eslint.io/rules/consistent-type-definitions
typescript/no-array-constructor https://typescript-eslint.io/rules/no-array-constructor
typescript/no-confusing-non-null-assertion https://typescript-eslint.io/rules/no-confusing-non-null-assertion
typescript/no-duplicate-enum-values https://typescript-eslint.io/rules/no-duplicate-enum-values
typescript/no-dynamic-delete https://typescript-eslint.io/rules/no-dynamic-delete
typescript/no-empty-function https://typescript-eslint.io/rules/no-empty-function
typescript/no-empty-object-type https://typescript-eslint.io/rules/no-empty-object-type
typescript/no-explicit-any https://typescript-eslint.io/rules/no-explicit-any
typescript/no-extra-non-null-assertion https://typescript-eslint.io/rules/no-extra-non-null-assertion
typescript/no-extraneous-class https://typescript-eslint.io/rules/no-extraneous-class
typescript/no-inferrable-types https://typescript-eslint.io/rules/no-inferrable-types
typescript/no-invalid-void-type https://typescript-eslint.io/rules/no-invalid-void-type
typescript/no-misused-new https://typescript-eslint.io/rules/no-misused-new
typescript/no-namespace https://typescript-eslint.io/rules/no-namespace
typescript/no-non-null-asserted-nullish-coalescing https://typescript-eslint.io/rules/no-non-null-asserted-nullish-coalescing
typescript/no-non-null-asserted-optional-chain https://typescript-eslint.io/rules/no-non-null-asserted-optional-chain
typescript/no-non-null-assertion https://typescript-eslint.io/rules/no-non-null-assertion
typescript/no-require-imports https://typescript-eslint.io/rules/no-require-imports
typescript/no-this-alias https://typescript-eslint.io/rules/no-this-alias
typescript/no-unnecessary-type-constraint https://typescript-eslint.io/rules/no-unnecessary-type-constraint
typescript/no-unsafe-declaration-merging https://typescript-eslint.io/rules/no-unsafe-declaration-merging
typescript/no-unsafe-function-type https://typescript-eslint.io/rules/no-unsafe-function-type
typescript/no-unused-expressions https://typescript-eslint.io/rules/no-unused-expressions
typescript/no-unused-vars https://typescript-eslint.io/rules/no-unused-vars
typescript/no-useless-constructor https://typescript-eslint.io/rules/no-useless-constructor
typescript/no-wrapper-object-types https://typescript-eslint.io/rules/no-wrapper-object-types
typescript/prefer-as-const https://typescript-eslint.io/rules/prefer-as-const
typescript/prefer-for-of https://typescript-eslint.io/rules/prefer-for-of
typescript/prefer-function-type https://typescript-eslint.io/rules/prefer-function-type
typescript/prefer-literal-enum-member https://typescript-eslint.io/rules/prefer-literal-enum-member
typescript/prefer-namespace-keyword https://typescript-eslint.io/rules/prefer-namespace-keyword
typescript/triple-slash-reference https://typescript-eslint.io/rules/triple-slash-reference
typescript/unified-signatures https://typescript-eslint.io/rules/unified-signatures

✨ = Implemented, 🚫 = No need to implement

Not recommended rules

✨: 14, 🚫: 0 / total: 25
Status Name Docs
typescript/ban-ts-comment https://typescript-eslint.io/rules/ban-ts-comment
typescript/class-methods-use-this https://typescript-eslint.io/rules/class-methods-use-this
typescript/consistent-type-imports https://typescript-eslint.io/rules/consistent-type-imports
typescript/default-param-last https://typescript-eslint.io/rules/default-param-last
typescript/explicit-function-return-type https://typescript-eslint.io/rules/explicit-function-return-type
typescript/explicit-member-accessibility https://typescript-eslint.io/rules/explicit-member-accessibility
typescript/explicit-module-boundary-types https://typescript-eslint.io/rules/explicit-module-boundary-types
typescript/init-declarations https://typescript-eslint.io/rules/init-declarations
typescript/max-params https://typescript-eslint.io/rules/max-params
typescript/member-ordering https://typescript-eslint.io/rules/member-ordering
typescript/method-signature-style https://typescript-eslint.io/rules/method-signature-style
typescript/no-dupe-class-members https://typescript-eslint.io/rules/no-dupe-class-members
typescript/no-import-type-side-effects https://typescript-eslint.io/rules/no-import-type-side-effects
typescript/no-invalid-this https://typescript-eslint.io/rules/no-invalid-this
typescript/no-loop-func https://typescript-eslint.io/rules/no-loop-func
typescript/no-magic-numbers https://typescript-eslint.io/rules/no-magic-numbers
typescript/no-redeclare https://typescript-eslint.io/rules/no-redeclare
typescript/no-restricted-imports https://typescript-eslint.io/rules/no-restricted-imports
typescript/no-restricted-types https://typescript-eslint.io/rules/no-restricted-types
typescript/no-shadow https://typescript-eslint.io/rules/no-shadow
typescript/no-unnecessary-parameter-property-assignment https://typescript-eslint.io/rules/no-unnecessary-parameter-property-assignment
typescript/no-use-before-define https://typescript-eslint.io/rules/no-use-before-define
typescript/no-useless-empty-export https://typescript-eslint.io/rules/no-useless-empty-export
typescript/parameter-properties https://typescript-eslint.io/rules/parameter-properties
typescript/prefer-enum-initializers https://typescript-eslint.io/rules/prefer-enum-initializers

✨ = Implemented, 🚫 = No need to implement

Deprecated rules

✨: 4, 🚫: 0 / total: 7
Status Name Docs
typescript/no-empty-interface https://typescript-eslint.io/rules/no-empty-interface
typescript/no-loss-of-precision https://typescript-eslint.io/rules/no-loss-of-precision
typescript/no-type-alias https://typescript-eslint.io/rules/no-type-alias
typescript/no-var-requires https://typescript-eslint.io/rules/no-var-requires
typescript/prefer-ts-expect-error https://typescript-eslint.io/rules/prefer-ts-expect-error
typescript/sort-type-constituents https://typescript-eslint.io/rules/sort-type-constituents
typescript/typedef https://typescript-eslint.io/rules/typedef

✨ = Implemented, 🚫 = No need to implement

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions