@pplancq/eslint-config 3.0.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,541 +1,570 @@
1
- module.exports = {
2
- overrides: [
3
- {
4
- files: ['**/*.ts?(x)'],
5
- extends: ['plugin:@typescript-eslint/recommended'],
6
- parser: '@typescript-eslint/parser',
7
- settings: {
8
- 'import/resolver': {
9
- typescript: true,
10
- node: {
11
- extensions: ['.js', '.ts'],
12
- },
13
- },
14
- },
15
- rules: {
16
- // eslint-plugin-import https://github.com/import-js/eslint-plugin-import
17
-
18
- // import/extensions
19
- // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/extensions.md
20
- 'import/extensions': [
21
- 'error',
22
- 'ignorePackages',
23
- {
24
- js: 'never',
25
- ts: 'never',
26
- },
27
- ],
28
-
29
- // @typescript-eslint/eslint-plugin https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/README.md
30
- // turn off ESLint equivalents
31
-
32
- // Require that function overload signatures be consecutive.
33
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/adjacent-overload-signatures.mdx
34
- '@typescript-eslint/adjacent-overload-signatures': 'off',
35
-
36
- // Require consistently using either `T[]` or `Array<T>` for arrays.
37
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/array-type.mdx
38
- '@typescript-eslint/array-type': 'off',
39
-
40
- // Disallow awaiting a value that is not a Thenable.
41
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/await-thenable.mdx
42
- '@typescript-eslint/await-thenable': 'off',
43
-
44
- // Disallow `@ts-<directive>` comments or require descriptions after directives.
45
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/ban-ts-comment.mdx
46
- '@typescript-eslint/ban-ts-comment': 'error',
47
-
48
- // Disallow `// tslint:<rule-flag>` comments.
49
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/ban-tslint-comment.mdx
50
- '@typescript-eslint/ban-tslint-comment': 'off',
51
-
52
- // Enforce that literals on classes are exposed in a consistent style
53
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/class-literal-property-style.mdx
54
- '@typescript-eslint/class-literal-property-style': 'off',
55
-
56
- // Enforce that class methods utilize `this`.
57
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/class-methods-use-this.mdx
58
- // 'class-methods-use-this': 'off',
59
- '@typescript-eslint/class-methods-use-this': 'off',
60
-
61
- // Enforce specifying generic type arguments on type annotation or constructor name of a constructor call.
62
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-generic-constructors.mdx
63
- '@typescript-eslint/consistent-generic-constructors': 'off',
64
-
65
- // Require or disallow the `Record` type.
66
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-indexed-object-style.mdx
67
- '@typescript-eslint/consistent-indexed-object-style': 'off',
68
-
69
- // Require `return` statements to either always or never specify values.
70
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-return.mdx
71
- // 'consistent-return': 'off',
72
- '@typescript-eslint/consistent-return': 'off',
73
-
74
- // Enforce consistent usage of type assertions.
75
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-type-assertions.mdx
76
- '@typescript-eslint/consistent-type-assertions': 'warn',
77
-
78
- // Enforce type definitions to consistently use either `interface` or `type`.
79
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-type-definitions.mdx
80
- '@typescript-eslint/consistent-type-definitions': 'off',
81
-
82
- // Enforce consistent usage of type exports.
83
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-type-exports.mdx
84
- '@typescript-eslint/consistent-type-exports': 'off',
85
-
86
- // Enforce consistent usage of type imports
87
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-type-imports.mdx
88
- '@typescript-eslint/consistent-type-imports': 'off',
89
-
90
- // Enforce default parameters to be last.
91
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/default-param-last.mdx
92
- '@typescript-eslint/default-param-last': 'off',
93
-
94
- // Enforce dot notation whenever possible.
95
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/dot-notation.mdx
96
- // 'dot-notation': 'off',
97
- '@typescript-eslint/dot-notation': 'off',
98
-
99
- // Require explicit return types on functions and class methods.
100
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/explicit-function-return-type.mdx
101
- '@typescript-eslint/explicit-function-return-type': 'off',
102
-
103
- // Require explicit accessibility modifiers on class properties and methods.
104
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/explicit-member-accessibility.mdx
105
- '@typescript-eslint/explicit-member-accessibility': 'off',
106
-
107
- // Require explicit return and argument types on exported functions' and classes' public class methods.
108
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/explicit-module-boundary-types.mdx
109
- '@typescript-eslint/explicit-module-boundary-types': 'off',
110
-
111
- // Require or disallow initialization in variable declarations.
112
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/init-declarations.mdx
113
- '@typescript-eslint/init-declarations': 'off',
114
-
115
- // Enforce a maximum number of parameters in function definitions.
116
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/max-params.mdx
117
- // 'max-params': 'off',
118
- '@typescript-eslint/max-params': 'off',
119
-
120
- // Require a consistent member declaration order.
121
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/member-ordering.mdx
122
- '@typescript-eslint/member-ordering': 'off',
123
-
124
- // Enforce using a particular method signature syntax.
125
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/method-signature-style.mdx
126
- '@typescript-eslint/method-signature-style': 'off',
127
-
128
- // Enforce naming conventions for everything across a codebase.
129
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/naming-convention.mdx
130
- '@typescript-eslint/naming-convention': 'off',
131
-
132
- // Disallow generic `Array` constructors.
133
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-array-constructor.mdx
134
- // 'no-array-constructor': 'off',
135
- '@typescript-eslint/no-array-constructor': 'error',
136
-
137
- // Disallow using the `delete` operator on array values.
138
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-array-delete.mdx
139
- '@typescript-eslint/no-array-delete': 'off',
140
-
141
- // Require `.toString()` to only be called on objects which provide useful information when stringified.
142
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-base-to-string.mdx
143
- '@typescript-eslint/no-base-to-string': 'off',
144
-
145
- // Disallow non-null assertion in locations that may be confusing.
146
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-confusing-non-null-assertion.mdx
147
- '@typescript-eslint/no-confusing-non-null-assertion': 'off',
148
-
149
- // Require expressions of type void to appear in statement position.
150
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-confusing-void-expression.mdx
151
- '@typescript-eslint/no-confusing-void-expression': 'off',
152
-
153
- // Disallow using code marked as `@deprecated`.
154
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-deprecated.mdx
155
- '@typescript-eslint/no-deprecated': 'off',
156
-
157
- // Disallow duplicate class members.
158
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-dupe-class-members.mdx
159
- // 'no-dupe-class-members': 'off',
160
- '@typescript-eslint/no-dupe-class-members': 'off',
161
-
162
- // Disallow duplicate enum member values.
163
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-duplicate-enum-values.mdx
164
- '@typescript-eslint/no-duplicate-enum-values': 'error',
165
-
166
- // Disallow duplicate constituents of union or intersection types.
167
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-duplicate-type-constituents.mdx
168
- '@typescript-eslint/no-duplicate-type-constituents': 'off',
169
-
170
- // Disallow using the `delete` operator on computed key expressions.
171
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-dynamic-delete.mdx
172
- '@typescript-eslint/no-dynamic-delete': 'off',
173
-
174
- // Disallow empty functions.
175
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-empty-function.mdx
176
- // 'no-empty-function': 'off',
177
- '@typescript-eslint/no-empty-function': 'off',
178
-
179
- // Disallow accidentally using the "empty object" type.
180
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-empty-object-type.mdx
181
- '@typescript-eslint/no-empty-object-type': 'error',
182
-
183
- // Disallow the `any` type.
184
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-explicit-any.mdx
185
- '@typescript-eslint/no-explicit-any': 'error',
186
-
187
- // Disallow extra non-null assertions.
188
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-extra-non-null-assertion.mdx
189
- '@typescript-eslint/no-extra-non-null-assertion': 'error',
190
-
191
- // Disallow classes used as namespaces.
192
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-extraneous-class.mdx
193
- '@typescript-eslint/no-extraneous-class': 'off',
194
-
195
- // Require Promise-like statements to be handled appropriately.
196
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-floating-promises.mdx
197
- '@typescript-eslint/no-floating-promises': 'off',
198
-
199
- // Disallow iterating over an array with a for-in loop.
200
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-for-in-array.mdx
201
- '@typescript-eslint/no-for-in-array': 'off',
202
-
203
- // Disallow the use of `eval()`-like methods.
204
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-implied-eval.mdx
205
- // 'no-implied-eval': 'off',
206
- '@typescript-eslint/no-implied-eval': 'off',
207
-
208
- // Enforce the use of top-level import type qualifier when an import only has specifiers with inline type qualifiers.
209
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-import-type-side-effects.mdx
210
- '@typescript-eslint/no-import-type-side-effects': 'off',
211
-
212
- // Disallow explicit type declarations for variables or parameters initialized to a number, string, or boolean.
213
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-inferrable-types.mdx
214
- '@typescript-eslint/no-inferrable-types': 'off',
215
-
216
- // Disallow `this` keywords outside of classes or class-like objects.
217
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-invalid-this.mdx
218
- // 'no-invalid-this': 'off',
219
- '@typescript-eslint/no-invalid-this': 'off',
220
-
221
- // Disallow `void` type outside of generic or return types.
222
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-invalid-void-type.mdx
223
- '@typescript-eslint/no-invalid-void-type': 'off',
224
-
225
- // Disallow function declarations that contain unsafe references inside loop statements.
226
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-loop-func.mdx
227
- // 'no-loop-func': 'off',
228
- '@typescript-eslint/no-loop-func': 'off',
229
-
230
- // import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';
231
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-magic-numbers.mdx
232
- // 'no-magic-numbers': 'off',
233
- '@typescript-eslint/no-magic-numbers': 'off',
234
-
235
- // Disallow the `void` operator except when used to discard a value.
236
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-meaningless-void-operator.mdx
237
- '@typescript-eslint/no-meaningless-void-operator': 'off',
238
-
239
- // Enforce valid definition of `new` and `constructor`.
240
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-misused-new.mdx
241
- '@typescript-eslint/no-misused-new': 'error',
242
-
243
- // Disallow Promises in places not designed to handle them.
244
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-misused-promises.mdx
245
- '@typescript-eslint/no-misused-promises': 'off',
246
-
247
- // Disallow enums from having both number and string members.
248
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-mixed-enums.mdx
249
- '@typescript-eslint/no-mixed-enums': 'off',
250
-
251
- // Disallow TypeScript namespaces.
252
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-namespace.mdx
253
- '@typescript-eslint/no-namespace': 'error',
254
-
255
- // Disallow non-null assertions in the left operand of a nullish coalescing operator.
256
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.mdx
257
- '@typescript-eslint/no-non-null-asserted-nullish-coalescing': 'off',
258
-
259
- // Disallow non-null assertions after an optional chain expression.
260
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.mdx
261
- '@typescript-eslint/no-non-null-asserted-optional-chain': 'error',
262
-
263
- // Disallow non-null assertions using the `!` postfix operator.
264
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-non-null-assertion.mdx
265
- '@typescript-eslint/no-non-null-assertion': 'off',
266
-
267
- // Disallow variable redeclaration.
268
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-redeclare.mdx
269
- 'no-redeclare': 'off',
270
- '@typescript-eslint/no-redeclare': 'error',
271
-
272
- // Disallow members of unions and intersections that do nothing or override type information.
273
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-redundant-type-constituents.mdx
274
- '@typescript-eslint/no-redundant-type-constituents': 'off',
275
-
276
- // Disallow invocation of `require()`.
277
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-require-imports.mdx
278
- '@typescript-eslint/no-require-imports': 'error',
279
-
280
- // Disallow specified modules when loaded by `import`.
281
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-restricted-imports.mdx
282
- // 'no-restricted-imports': 'off',
283
- '@typescript-eslint/no-restricted-imports': 'off',
284
-
285
- // Disallow certain types.
286
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-restricted-types.mdx
287
- '@typescript-eslint/no-restricted-types': 'off',
288
-
289
- // Disallow variable declarations from shadowing variables declared in the outer scope.
290
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-shadow.mdx
291
- 'no-shadow': 'off',
292
- '@typescript-eslint/no-shadow': 'error',
293
-
294
- // Disallow aliasing `this`.
295
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-this-alias.mdx
296
- '@typescript-eslint/no-this-alias': 'error',
297
-
298
- // Disallow unnecessary equality comparisons against boolean literals.
299
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.mdx
300
- '@typescript-eslint/no-unnecessary-boolean-literal-compare': 'off',
301
-
302
- // Disallow conditionals where the type is always truthy or always falsy.
303
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-condition.mdx
304
- '@typescript-eslint/no-unnecessary-condition': 'off',
305
-
306
- // Disallow unnecessary assignment of constructor property parameter.
307
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-parameter-property-assignment.mdx
308
- '@typescript-eslint/no-unnecessary-parameter-property-assignment': 'off',
309
-
310
- // Disallow unnecessary namespace qualifiers.
311
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.mdx
312
- '@typescript-eslint/no-unnecessary-qualifier': 'off',
313
-
314
- // Disallow unnecessary template expressions.
315
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-template-expression.mdx
316
- '@typescript-eslint/no-unnecessary-template-expression': 'off',
317
-
318
- // Disallow type arguments that are equal to the default.
319
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-arguments.mdx
320
- '@typescript-eslint/no-unnecessary-type-arguments': 'off',
321
-
322
- // Disallow type assertions that do not change the type of an expression.
323
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-assertion.mdx
324
- '@typescript-eslint/no-unnecessary-type-assertion': 'off',
325
-
326
- // Disallow unnecessary constraints on generic types.
327
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-constraint.mdx
328
- '@typescript-eslint/no-unnecessary-type-constraint': 'error',
329
-
330
- // Disallow type parameters that aren't used multiple times.
331
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-parameters.mdx
332
- '@typescript-eslint/no-unnecessary-type-parameters': 'off',
333
-
334
- // Disallow calling a function with a value with type `any`.
335
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-argument.mdx
336
- '@typescript-eslint/no-unsafe-argument': 'off',
337
-
338
- // Disallow assigning a value with type `any` to variables and properties.
339
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-assignment.mdx
340
- '@typescript-eslint/no-unsafe-assignment': 'off',
341
-
342
- // Disallow calling a value with type `any`.
343
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-call.mdx
344
- '@typescript-eslint/no-unsafe-call': 'off',
345
-
346
- // Disallow unsafe declaration merging.
347
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-declaration-merging.mdx
348
- '@typescript-eslint/no-unsafe-declaration-merging': 'error',
349
-
350
- // Disallow comparing an enum value with a non-enum value.
351
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-enum-comparison.mdx
352
- '@typescript-eslint/no-unsafe-enum-comparison': 'off',
353
-
354
- // Disallow using the unsafe built-in Function type.
355
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-function-type.mdx
356
- '@typescript-eslint/no-unsafe-function-type': 'error',
357
-
358
- // Disallow member access on a value with type `any`.
359
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-member-access.mdx
360
- '@typescript-eslint/no-unsafe-member-access': 'off',
361
-
362
- // Disallow returning a value with type `any` from a function.
363
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-return.mdx
364
- '@typescript-eslint/no-unsafe-return': 'off',
365
-
366
- // Require unary negation to take a number.
367
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-unary-minus.mdx
368
- '@typescript-eslint/no-unsafe-unary-minus': 'off',
369
-
370
- // Disallow unused expressions.
371
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unused-expressions.mdx
372
- 'no-unused-expressions': 'off',
373
- '@typescript-eslint/no-unused-expressions': 'error',
374
-
375
- // Disallow unused variables.
376
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unused-vars.mdx
377
- 'no-unused-vars': 'off',
378
- '@typescript-eslint/no-unused-vars': 'error',
379
-
380
- // Disallow the use of variables before they are defined.
381
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-use-before-define.mdx
382
- 'no-use-before-define': 'off',
383
- '@typescript-eslint/no-use-before-define': 'error',
384
-
385
- // Disallow unnecessary constructors.
386
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-useless-constructor.mdx
387
- 'no-useless-constructor': 'off',
388
- '@typescript-eslint/no-useless-constructor': 'error',
389
-
390
- // Disallow empty exports that don't change anything in a module file.
391
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-useless-empty-export.mdx
392
- '@typescript-eslint/no-useless-empty-export': 'off',
393
-
394
- // Disallow using confusing built-in primitive class wrappers.
395
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-wrapper-object-types.mdx
396
- '@typescript-eslint/no-wrapper-object-types': 'error',
397
-
398
- // Enforce non-null assertions over explicit type casts.
399
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/non-nullable-type-assertion-style.mdx
400
- '@typescript-eslint/non-nullable-type-assertion-style': 'off',
401
-
402
- // Disallow throwing non-`Error` values as exceptions.
403
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/only-throw-error.mdx
404
- // 'no-throw-literal': 'off',
405
- '@typescript-eslint/only-throw-error': 'off',
406
-
407
- // Require or disallow parameter properties in class constructors.
408
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/parameter-properties.mdx
409
- '@typescript-eslint/parameter-properties': 'off',
410
-
411
- // Enforce the use of `as const` over literal type.
412
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-as-const.mdx
413
- '@typescript-eslint/prefer-as-const': 'error',
414
-
415
- // Require destructuring from arrays and/or objects.
416
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-destructuring.mdx
417
- // 'prefer-destructuring': 'off',
418
- '@typescript-eslint/prefer-destructuring': 'off',
419
-
420
- // Require each enum member value to be explicitly initialized.
421
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-enum-initializers.mdx
422
- '@typescript-eslint/prefer-enum-initializers': 'off',
423
-
424
- // Enforce the use of Array.prototype.find() over Array.prototype.filter() followed by [0] when looking for a single result.
425
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-find.mdx
426
- '@typescript-eslint/prefer-find': 'off',
427
-
428
- // Enforce the use of `for-of` loop over the standard `for` loop where possible.
429
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-for-of.mdx
430
- '@typescript-eslint/prefer-for-of': 'off',
431
-
432
- // Enforce using function types instead of interfaces with call signatures.
433
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-function-type.mdx
434
- '@typescript-eslint/prefer-function-type': 'off',
435
-
436
- // Enforce `includes` method over `indexOf` method.
437
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-includes.mdx
438
- '@typescript-eslint/prefer-includes': 'off',
439
-
440
- // Require all enum members to be literal values.
441
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-literal-enum-member.mdx
442
- '@typescript-eslint/prefer-literal-enum-member': 'off',
443
-
444
- // Require using `namespace` keyword over `module` keyword to declare custom TypeScript modules.
445
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-namespace-keyword.mdx
446
- '@typescript-eslint/prefer-namespace-keyword': 'error',
447
-
448
- // Enforce using the nullish coalescing operator instead of logical assignments or chaining.
449
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx
450
- '@typescript-eslint/prefer-nullish-coalescing': 'off',
451
-
452
- // Enforce using concise optional chain expressions instead of chained logical ands, negated logical ors, or empty objects.
453
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-optional-chain.mdx
454
- '@typescript-eslint/prefer-optional-chain': 'off',
455
-
456
- // Require using Error objects as Promise rejection reasons.
457
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-promise-reject-errors.mdx
458
- // 'prefer-promise-reject-errors': 'off',
459
- '@typescript-eslint/prefer-promise-reject-errors': 'off',
460
-
461
- // Require private members to be marked as `readonly` if they're never modified outside of the constructor.
462
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-readonly.mdx
463
- '@typescript-eslint/prefer-readonly': 'off',
464
-
465
- // Require function parameters to be typed as `readonly` to prevent accidental mutation of inputs.
466
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-readonly-parameter-types.mdx
467
- '@typescript-eslint/prefer-readonly-parameter-types': 'off',
468
-
469
- // Enforce using type parameter when calling `Array#reduce` instead of casting.
470
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-reduce-type-parameter.mdx
471
- '@typescript-eslint/prefer-reduce-type-parameter': 'off',
472
-
473
- // Enforce `RegExp#exec` over `String#match` if no global flag is provided.
474
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-regexp-exec.mdx
475
- '@typescript-eslint/prefer-regexp-exec': 'off',
476
-
477
- // Enforce that `this` is used when only `this` type is returned.
478
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-return-this-type.mdx
479
- '@typescript-eslint/prefer-return-this-type': 'off',
480
-
481
- // Enforce using `String#startsWith` and `String#endsWith` over other equivalent methods of checking substrings.
482
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-string-starts-ends-with.mdx
483
- '@typescript-eslint/prefer-string-starts-ends-with': 'off',
484
-
485
- // Require any function or method that returns a Promise to be marked async.
486
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/promise-function-async.mdx
487
- '@typescript-eslint/promise-function-async': 'off',
488
-
489
- // Require `Array#sort` and `Array#toSorted` calls to always provide a `compareFunction`.
490
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/require-array-sort-compare.mdx
491
- '@typescript-eslint/require-array-sort-compare': 'off',
492
-
493
- // Disallow async functions which do not return promises and have no `await` expression.
494
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/require-await.mdx
495
- // 'require-await': 'off',
496
- '@typescript-eslint/require-await': 'off',
497
-
498
- // Require both operands of addition to be the same type and be `bigint`, `number`, or `string`.
499
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/restrict-plus-operands.mdx
500
- '@typescript-eslint/restrict-plus-operands': 'off',
501
-
502
- // Enforce template literal expressions to be of `string` type.
503
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/restrict-template-expressions.mdx
504
- '@typescript-eslint/restrict-template-expressions': 'off',
505
-
506
- // Enforce consistent awaiting of returned promises.
507
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/return-await.mdx
508
- // 'no-return-await': 'off',
509
- '@typescript-eslint/return-await': 'off',
510
-
511
- // Disallow certain types in boolean expressions.
512
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/strict-boolean-expressions.mdx
513
- '@typescript-eslint/strict-boolean-expressions': 'off',
514
-
515
- // Require switch-case statements to be exhaustive.
516
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/switch-exhaustiveness-check.mdx
517
- '@typescript-eslint/switch-exhaustiveness-check': 'off',
518
-
519
- // Disallow certain triple slash directives in favor of ES6-style import declarations.
520
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/triple-slash-reference.mdx
521
- '@typescript-eslint/triple-slash-reference': 'error',
522
-
523
- // Require type annotations in certain places.
524
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/typedef.mdx
525
- '@typescript-eslint/typedef': 'off',
526
-
527
- // Enforce unbound methods are called with their expected scope.
528
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/unbound-method.mdx
529
- '@typescript-eslint/unbound-method': 'off',
530
-
531
- // Disallow two overloads that could be unified into one with a union or an optional/rest parameter.
532
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/unified-signatures.mdx
533
- '@typescript-eslint/unified-signatures': 'off',
534
-
535
- // Enforce typing arguments in Promise rejection callbacks as `unknown`.
536
- // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/use-unknown-in-catch-callback-variable.mdx
537
- '@typescript-eslint/use-unknown-in-catch-callback-variable': 'off',
1
+ /* eslint-disable import/no-unresolved */
2
+ const typescriptEslintPlugin = require('@typescript-eslint/eslint-plugin');
3
+ const typescriptEslintParser = require('@typescript-eslint/parser');
4
+
5
+ const typescriptRules = {
6
+ plugins: {
7
+ '@typescript-eslint': typescriptEslintPlugin,
8
+ },
9
+ languageOptions: {
10
+ ecmaVersion: 'latest',
11
+ sourceType: 'module',
12
+ parser: typescriptEslintParser,
13
+ },
14
+ settings: {
15
+ 'import/resolver': {
16
+ typescript: true,
17
+ node: {
18
+ extensions: ['.js', '.ts'],
538
19
  },
539
20
  },
540
- ],
21
+ },
22
+ rules: {
23
+ // disable eslint default rule for ts
24
+ 'constructor-super': 'off', // ts(2335) & ts(2377)
25
+ 'getter-return': 'off', // ts(2378)
26
+ 'no-class-assign': 'off', // ts(2629)
27
+ 'no-const-assign': 'off', // ts(2588)
28
+ 'no-dupe-args': 'off', // ts(2300)
29
+ 'no-dupe-class-members': 'off', // ts(2393) & ts(2300)
30
+ 'no-dupe-keys': 'off', // ts(1117)
31
+ 'no-func-assign': 'off', // ts(2630)
32
+ 'no-import-assign': 'off', // ts(2632) & ts(2540)
33
+ 'no-new-symbol': 'off', // ts(7009)
34
+ 'no-new-native-nonconstructor': 'off', // ts(7009)
35
+ 'no-obj-calls': 'off', // ts(2349)
36
+ 'no-setter-return': 'off', // ts(2408)
37
+ 'no-this-before-super': 'off', // ts(2376) & ts(17009)
38
+ 'no-undef': 'off', // ts(2304) & ts(2552)
39
+ 'no-unreachable': 'off', // ts(7027)
40
+ 'no-unsafe-negation': 'off', // ts(2365) & ts(2322) & ts(2358)
41
+ 'no-var': 'error', // ts transpiles let/const to var, so no need for vars any more
42
+
43
+ // eslint-plugin-import https://github.com/import-js/eslint-plugin-import
44
+
45
+ // import/extensions
46
+ // https://github.com/import-js/eslint-plugin-import/blob/main/docs/rules/extensions.md
47
+ 'import/extensions': [
48
+ 'error',
49
+ 'ignorePackages',
50
+ {
51
+ js: 'never',
52
+ ts: 'never',
53
+ },
54
+ ],
55
+
56
+ // @typescript-eslint/eslint-plugin https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/README.md
57
+ // turn off ESLint equivalents
58
+
59
+ // Require that function overload signatures be consecutive.
60
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/adjacent-overload-signatures.mdx
61
+ '@typescript-eslint/adjacent-overload-signatures': 'off',
62
+
63
+ // Require consistently using either `T[]` or `Array<T>` for arrays.
64
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/array-type.mdx
65
+ '@typescript-eslint/array-type': 'off',
66
+
67
+ // Disallow awaiting a value that is not a Thenable.
68
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/await-thenable.mdx
69
+ '@typescript-eslint/await-thenable': 'off',
70
+
71
+ // Disallow `@ts-<directive>` comments or require descriptions after directives.
72
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/ban-ts-comment.mdx
73
+ '@typescript-eslint/ban-ts-comment': 'error',
74
+
75
+ // Disallow `// tslint:<rule-flag>` comments.
76
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/ban-tslint-comment.mdx
77
+ '@typescript-eslint/ban-tslint-comment': 'off',
78
+
79
+ // Enforce that literals on classes are exposed in a consistent style
80
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/class-literal-property-style.mdx
81
+ '@typescript-eslint/class-literal-property-style': 'off',
82
+
83
+ // Enforce that class methods utilize `this`.
84
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/class-methods-use-this.mdx
85
+ // 'class-methods-use-this': 'off',
86
+ '@typescript-eslint/class-methods-use-this': 'off',
87
+
88
+ // Enforce specifying generic type arguments on type annotation or constructor name of a constructor call.
89
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-generic-constructors.mdx
90
+ '@typescript-eslint/consistent-generic-constructors': 'off',
91
+
92
+ // Require or disallow the `Record` type.
93
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-indexed-object-style.mdx
94
+ '@typescript-eslint/consistent-indexed-object-style': 'off',
95
+
96
+ // Require `return` statements to either always or never specify values.
97
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-return.mdx
98
+ // 'consistent-return': 'off',
99
+ '@typescript-eslint/consistent-return': 'off',
100
+
101
+ // Enforce consistent usage of type assertions.
102
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-type-assertions.mdx
103
+ '@typescript-eslint/consistent-type-assertions': 'warn',
104
+
105
+ // Enforce type definitions to consistently use either `interface` or `type`.
106
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-type-definitions.mdx
107
+ '@typescript-eslint/consistent-type-definitions': 'off',
108
+
109
+ // Enforce consistent usage of type exports.
110
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-type-exports.mdx
111
+ '@typescript-eslint/consistent-type-exports': 'off',
112
+
113
+ // Enforce consistent usage of type imports
114
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/consistent-type-imports.mdx
115
+ '@typescript-eslint/consistent-type-imports': 'off',
116
+
117
+ // Enforce default parameters to be last.
118
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/default-param-last.mdx
119
+ '@typescript-eslint/default-param-last': 'off',
120
+
121
+ // Enforce dot notation whenever possible.
122
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/dot-notation.mdx
123
+ // 'dot-notation': 'off',
124
+ '@typescript-eslint/dot-notation': 'off',
125
+
126
+ // Require explicit return types on functions and class methods.
127
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/explicit-function-return-type.mdx
128
+ '@typescript-eslint/explicit-function-return-type': 'off',
129
+
130
+ // Require explicit accessibility modifiers on class properties and methods.
131
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/explicit-member-accessibility.mdx
132
+ '@typescript-eslint/explicit-member-accessibility': 'off',
133
+
134
+ // Require explicit return and argument types on exported functions' and classes' public class methods.
135
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/explicit-module-boundary-types.mdx
136
+ '@typescript-eslint/explicit-module-boundary-types': 'off',
137
+
138
+ // Require or disallow initialization in variable declarations.
139
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/init-declarations.mdx
140
+ '@typescript-eslint/init-declarations': 'off',
141
+
142
+ // Enforce a maximum number of parameters in function definitions.
143
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/max-params.mdx
144
+ // 'max-params': 'off',
145
+ '@typescript-eslint/max-params': 'off',
146
+
147
+ // Require a consistent member declaration order.
148
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/member-ordering.mdx
149
+ '@typescript-eslint/member-ordering': 'off',
150
+
151
+ // Enforce using a particular method signature syntax.
152
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/method-signature-style.mdx
153
+ '@typescript-eslint/method-signature-style': 'off',
154
+
155
+ // Enforce naming conventions for everything across a codebase.
156
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/naming-convention.mdx
157
+ '@typescript-eslint/naming-convention': 'off',
158
+
159
+ // Disallow generic `Array` constructors.
160
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-array-constructor.mdx
161
+ // 'no-array-constructor': 'off',
162
+ '@typescript-eslint/no-array-constructor': 'error',
163
+
164
+ // Disallow using the `delete` operator on array values.
165
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-array-delete.mdx
166
+ '@typescript-eslint/no-array-delete': 'off',
167
+
168
+ // Require `.toString()` to only be called on objects which provide useful information when stringified.
169
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-base-to-string.mdx
170
+ '@typescript-eslint/no-base-to-string': 'off',
171
+
172
+ // Disallow non-null assertion in locations that may be confusing.
173
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-confusing-non-null-assertion.mdx
174
+ '@typescript-eslint/no-confusing-non-null-assertion': 'off',
175
+
176
+ // Require expressions of type void to appear in statement position.
177
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-confusing-void-expression.mdx
178
+ '@typescript-eslint/no-confusing-void-expression': 'off',
179
+
180
+ // Disallow using code marked as `@deprecated`.
181
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-deprecated.mdx
182
+ '@typescript-eslint/no-deprecated': 'off',
183
+
184
+ // Disallow duplicate class members.
185
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-dupe-class-members.mdx
186
+ // 'no-dupe-class-members': 'off',
187
+ '@typescript-eslint/no-dupe-class-members': 'off',
188
+
189
+ // Disallow duplicate enum member values.
190
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-duplicate-enum-values.mdx
191
+ '@typescript-eslint/no-duplicate-enum-values': 'error',
192
+
193
+ // Disallow duplicate constituents of union or intersection types.
194
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-duplicate-type-constituents.mdx
195
+ '@typescript-eslint/no-duplicate-type-constituents': 'off',
196
+
197
+ // Disallow using the `delete` operator on computed key expressions.
198
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-dynamic-delete.mdx
199
+ '@typescript-eslint/no-dynamic-delete': 'off',
200
+
201
+ // Disallow empty functions.
202
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-empty-function.mdx
203
+ // 'no-empty-function': 'off',
204
+ '@typescript-eslint/no-empty-function': 'off',
205
+
206
+ // Disallow accidentally using the "empty object" type.
207
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-empty-object-type.mdx
208
+ '@typescript-eslint/no-empty-object-type': 'error',
209
+
210
+ // Disallow the `any` type.
211
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-explicit-any.mdx
212
+ '@typescript-eslint/no-explicit-any': 'error',
213
+
214
+ // Disallow extra non-null assertions.
215
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-extra-non-null-assertion.mdx
216
+ '@typescript-eslint/no-extra-non-null-assertion': 'error',
217
+
218
+ // Disallow classes used as namespaces.
219
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-extraneous-class.mdx
220
+ '@typescript-eslint/no-extraneous-class': 'off',
221
+
222
+ // Require Promise-like statements to be handled appropriately.
223
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-floating-promises.mdx
224
+ '@typescript-eslint/no-floating-promises': 'off',
225
+
226
+ // Disallow iterating over an array with a for-in loop.
227
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-for-in-array.mdx
228
+ '@typescript-eslint/no-for-in-array': 'off',
229
+
230
+ // Disallow the use of `eval()`-like methods.
231
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-implied-eval.mdx
232
+ // 'no-implied-eval': 'off',
233
+ '@typescript-eslint/no-implied-eval': 'off',
234
+
235
+ // Enforce the use of top-level import type qualifier when an import only has specifiers with inline type qualifiers.
236
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-import-type-side-effects.mdx
237
+ '@typescript-eslint/no-import-type-side-effects': 'off',
238
+
239
+ // Disallow explicit type declarations for variables or parameters initialized to a number, string, or boolean.
240
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-inferrable-types.mdx
241
+ '@typescript-eslint/no-inferrable-types': 'off',
242
+
243
+ // Disallow `this` keywords outside of classes or class-like objects.
244
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-invalid-this.mdx
245
+ // 'no-invalid-this': 'off',
246
+ '@typescript-eslint/no-invalid-this': 'off',
247
+
248
+ // Disallow `void` type outside of generic or return types.
249
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-invalid-void-type.mdx
250
+ '@typescript-eslint/no-invalid-void-type': 'off',
251
+
252
+ // Disallow function declarations that contain unsafe references inside loop statements.
253
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-loop-func.mdx
254
+ // 'no-loop-func': 'off',
255
+ '@typescript-eslint/no-loop-func': 'off',
256
+
257
+ // import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';
258
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-magic-numbers.mdx
259
+ // 'no-magic-numbers': 'off',
260
+ '@typescript-eslint/no-magic-numbers': 'off',
261
+
262
+ // Disallow the `void` operator except when used to discard a value.
263
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-meaningless-void-operator.mdx
264
+ '@typescript-eslint/no-meaningless-void-operator': 'off',
265
+
266
+ // Enforce valid definition of `new` and `constructor`.
267
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-misused-new.mdx
268
+ '@typescript-eslint/no-misused-new': 'error',
269
+
270
+ // Disallow Promises in places not designed to handle them.
271
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-misused-promises.mdx
272
+ '@typescript-eslint/no-misused-promises': 'off',
273
+
274
+ // Disallow enums from having both number and string members.
275
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-mixed-enums.mdx
276
+ '@typescript-eslint/no-mixed-enums': 'off',
277
+
278
+ // Disallow TypeScript namespaces.
279
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-namespace.mdx
280
+ '@typescript-eslint/no-namespace': 'error',
281
+
282
+ // Disallow non-null assertions in the left operand of a nullish coalescing operator.
283
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-non-null-asserted-nullish-coalescing.mdx
284
+ '@typescript-eslint/no-non-null-asserted-nullish-coalescing': 'off',
285
+
286
+ // Disallow non-null assertions after an optional chain expression.
287
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-non-null-asserted-optional-chain.mdx
288
+ '@typescript-eslint/no-non-null-asserted-optional-chain': 'error',
289
+
290
+ // Disallow non-null assertions using the `!` postfix operator.
291
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-non-null-assertion.mdx
292
+ '@typescript-eslint/no-non-null-assertion': 'off',
293
+
294
+ // Disallow variable redeclaration.
295
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-redeclare.mdx
296
+ 'no-redeclare': 'off',
297
+ '@typescript-eslint/no-redeclare': 'error',
298
+
299
+ // Disallow members of unions and intersections that do nothing or override type information.
300
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-redundant-type-constituents.mdx
301
+ '@typescript-eslint/no-redundant-type-constituents': 'off',
302
+
303
+ // Disallow invocation of `require()`.
304
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-require-imports.mdx
305
+ '@typescript-eslint/no-require-imports': 'error',
306
+
307
+ // Disallow specified modules when loaded by `import`.
308
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-restricted-imports.mdx
309
+ // 'no-restricted-imports': 'off',
310
+ '@typescript-eslint/no-restricted-imports': 'off',
311
+
312
+ // Disallow certain types.
313
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-restricted-types.mdx
314
+ '@typescript-eslint/no-restricted-types': 'off',
315
+
316
+ // Disallow variable declarations from shadowing variables declared in the outer scope.
317
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-shadow.mdx
318
+ 'no-shadow': 'off',
319
+ '@typescript-eslint/no-shadow': 'error',
320
+
321
+ // Disallow aliasing `this`.
322
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-this-alias.mdx
323
+ '@typescript-eslint/no-this-alias': 'error',
324
+
325
+ // Disallow unnecessary equality comparisons against boolean literals.
326
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-boolean-literal-compare.mdx
327
+ '@typescript-eslint/no-unnecessary-boolean-literal-compare': 'off',
328
+
329
+ // Disallow conditionals where the type is always truthy or always falsy.
330
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-condition.mdx
331
+ '@typescript-eslint/no-unnecessary-condition': 'off',
332
+
333
+ // Disallow unnecessary assignment of constructor property parameter.
334
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-parameter-property-assignment.mdx
335
+ '@typescript-eslint/no-unnecessary-parameter-property-assignment': 'off',
336
+
337
+ // Disallow unnecessary namespace qualifiers.
338
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-qualifier.mdx
339
+ '@typescript-eslint/no-unnecessary-qualifier': 'off',
340
+
341
+ // Disallow unnecessary template expressions.
342
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-template-expression.mdx
343
+ '@typescript-eslint/no-unnecessary-template-expression': 'off',
344
+
345
+ // Disallow type arguments that are equal to the default.
346
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-arguments.mdx
347
+ '@typescript-eslint/no-unnecessary-type-arguments': 'off',
348
+
349
+ // Disallow type assertions that do not change the type of an expression.
350
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-assertion.mdx
351
+ '@typescript-eslint/no-unnecessary-type-assertion': 'off',
352
+
353
+ // Disallow unnecessary constraints on generic types.
354
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-constraint.mdx
355
+ '@typescript-eslint/no-unnecessary-type-constraint': 'error',
356
+
357
+ // Disallow type parameters that aren't used multiple times.
358
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unnecessary-type-parameters.mdx
359
+ '@typescript-eslint/no-unnecessary-type-parameters': 'off',
360
+
361
+ // Disallow calling a function with a value with type `any`.
362
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-argument.mdx
363
+ '@typescript-eslint/no-unsafe-argument': 'off',
364
+
365
+ // Disallow assigning a value with type `any` to variables and properties.
366
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-assignment.mdx
367
+ '@typescript-eslint/no-unsafe-assignment': 'off',
368
+
369
+ // Disallow calling a value with type `any`.
370
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-call.mdx
371
+ '@typescript-eslint/no-unsafe-call': 'off',
372
+
373
+ // Disallow unsafe declaration merging.
374
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-declaration-merging.mdx
375
+ '@typescript-eslint/no-unsafe-declaration-merging': 'error',
376
+
377
+ // Disallow comparing an enum value with a non-enum value.
378
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-enum-comparison.mdx
379
+ '@typescript-eslint/no-unsafe-enum-comparison': 'off',
380
+
381
+ // Disallow using the unsafe built-in Function type.
382
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-function-type.mdx
383
+ '@typescript-eslint/no-unsafe-function-type': 'error',
384
+
385
+ // Disallow member access on a value with type `any`.
386
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-member-access.mdx
387
+ '@typescript-eslint/no-unsafe-member-access': 'off',
388
+
389
+ // Disallow returning a value with type `any` from a function.
390
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-return.mdx
391
+ '@typescript-eslint/no-unsafe-return': 'off',
392
+
393
+ // Require unary negation to take a number.
394
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unsafe-unary-minus.mdx
395
+ '@typescript-eslint/no-unsafe-unary-minus': 'off',
396
+
397
+ // Disallow unused expressions.
398
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unused-expressions.mdx
399
+ 'no-unused-expressions': 'off',
400
+ '@typescript-eslint/no-unused-expressions': 'error',
401
+
402
+ // Disallow unused variables.
403
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-unused-vars.mdx
404
+ 'no-unused-vars': 'off',
405
+ '@typescript-eslint/no-unused-vars': 'error',
406
+
407
+ // Disallow the use of variables before they are defined.
408
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-use-before-define.mdx
409
+ 'no-use-before-define': 'off',
410
+ '@typescript-eslint/no-use-before-define': 'error',
411
+
412
+ // Disallow unnecessary constructors.
413
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-useless-constructor.mdx
414
+ 'no-useless-constructor': 'off',
415
+ '@typescript-eslint/no-useless-constructor': 'error',
416
+
417
+ // Disallow empty exports that don't change anything in a module file.
418
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-useless-empty-export.mdx
419
+ '@typescript-eslint/no-useless-empty-export': 'off',
420
+
421
+ // Disallow using confusing built-in primitive class wrappers.
422
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/no-wrapper-object-types.mdx
423
+ '@typescript-eslint/no-wrapper-object-types': 'error',
424
+
425
+ // Enforce non-null assertions over explicit type casts.
426
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/non-nullable-type-assertion-style.mdx
427
+ '@typescript-eslint/non-nullable-type-assertion-style': 'off',
428
+
429
+ // Disallow throwing non-`Error` values as exceptions.
430
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/only-throw-error.mdx
431
+ // 'no-throw-literal': 'off',
432
+ '@typescript-eslint/only-throw-error': 'off',
433
+
434
+ // Require or disallow parameter properties in class constructors.
435
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/parameter-properties.mdx
436
+ '@typescript-eslint/parameter-properties': 'off',
437
+
438
+ // Enforce the use of `as const` over literal type.
439
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-as-const.mdx
440
+ '@typescript-eslint/prefer-as-const': 'error',
441
+
442
+ // Require destructuring from arrays and/or objects.
443
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-destructuring.mdx
444
+ // 'prefer-destructuring': 'off',
445
+ '@typescript-eslint/prefer-destructuring': 'off',
446
+
447
+ // Require each enum member value to be explicitly initialized.
448
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-enum-initializers.mdx
449
+ '@typescript-eslint/prefer-enum-initializers': 'off',
450
+
451
+ // Enforce the use of Array.prototype.find() over Array.prototype.filter() followed by [0] when looking for a single result.
452
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-find.mdx
453
+ '@typescript-eslint/prefer-find': 'off',
454
+
455
+ // Enforce the use of `for-of` loop over the standard `for` loop where possible.
456
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-for-of.mdx
457
+ '@typescript-eslint/prefer-for-of': 'off',
458
+
459
+ // Enforce using function types instead of interfaces with call signatures.
460
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-function-type.mdx
461
+ '@typescript-eslint/prefer-function-type': 'off',
462
+
463
+ // Enforce `includes` method over `indexOf` method.
464
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-includes.mdx
465
+ '@typescript-eslint/prefer-includes': 'off',
466
+
467
+ // Require all enum members to be literal values.
468
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-literal-enum-member.mdx
469
+ '@typescript-eslint/prefer-literal-enum-member': 'off',
470
+
471
+ // Require using `namespace` keyword over `module` keyword to declare custom TypeScript modules.
472
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-namespace-keyword.mdx
473
+ '@typescript-eslint/prefer-namespace-keyword': 'error',
474
+
475
+ // Enforce using the nullish coalescing operator instead of logical assignments or chaining.
476
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-nullish-coalescing.mdx
477
+ '@typescript-eslint/prefer-nullish-coalescing': 'off',
478
+
479
+ // Enforce using concise optional chain expressions instead of chained logical ands, negated logical ors, or empty objects.
480
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-optional-chain.mdx
481
+ '@typescript-eslint/prefer-optional-chain': 'off',
482
+
483
+ // Require using Error objects as Promise rejection reasons.
484
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-promise-reject-errors.mdx
485
+ // 'prefer-promise-reject-errors': 'off',
486
+ '@typescript-eslint/prefer-promise-reject-errors': 'off',
487
+
488
+ // Require private members to be marked as `readonly` if they're never modified outside of the constructor.
489
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-readonly.mdx
490
+ '@typescript-eslint/prefer-readonly': 'off',
491
+
492
+ // Require function parameters to be typed as `readonly` to prevent accidental mutation of inputs.
493
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-readonly-parameter-types.mdx
494
+ '@typescript-eslint/prefer-readonly-parameter-types': 'off',
495
+
496
+ // Enforce using type parameter when calling `Array#reduce` instead of casting.
497
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-reduce-type-parameter.mdx
498
+ '@typescript-eslint/prefer-reduce-type-parameter': 'off',
499
+
500
+ // Enforce `RegExp#exec` over `String#match` if no global flag is provided.
501
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-regexp-exec.mdx
502
+ '@typescript-eslint/prefer-regexp-exec': 'off',
503
+
504
+ // Enforce that `this` is used when only `this` type is returned.
505
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-return-this-type.mdx
506
+ '@typescript-eslint/prefer-return-this-type': 'off',
507
+
508
+ // Enforce using `String#startsWith` and `String#endsWith` over other equivalent methods of checking substrings.
509
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/prefer-string-starts-ends-with.mdx
510
+ '@typescript-eslint/prefer-string-starts-ends-with': 'off',
511
+
512
+ // Require any function or method that returns a Promise to be marked async.
513
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/promise-function-async.mdx
514
+ '@typescript-eslint/promise-function-async': 'off',
515
+
516
+ // Require `Array#sort` and `Array#toSorted` calls to always provide a `compareFunction`.
517
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/require-array-sort-compare.mdx
518
+ '@typescript-eslint/require-array-sort-compare': 'off',
519
+
520
+ // Disallow async functions which do not return promises and have no `await` expression.
521
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/require-await.mdx
522
+ // 'require-await': 'off',
523
+ '@typescript-eslint/require-await': 'off',
524
+
525
+ // Require both operands of addition to be the same type and be `bigint`, `number`, or `string`.
526
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/restrict-plus-operands.mdx
527
+ '@typescript-eslint/restrict-plus-operands': 'off',
528
+
529
+ // Enforce template literal expressions to be of `string` type.
530
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/restrict-template-expressions.mdx
531
+ '@typescript-eslint/restrict-template-expressions': 'off',
532
+
533
+ // Enforce consistent awaiting of returned promises.
534
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/return-await.mdx
535
+ // 'no-return-await': 'off',
536
+ '@typescript-eslint/return-await': 'off',
537
+
538
+ // Disallow certain types in boolean expressions.
539
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/strict-boolean-expressions.mdx
540
+ '@typescript-eslint/strict-boolean-expressions': 'off',
541
+
542
+ // Require switch-case statements to be exhaustive.
543
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/switch-exhaustiveness-check.mdx
544
+ '@typescript-eslint/switch-exhaustiveness-check': 'off',
545
+
546
+ // Disallow certain triple slash directives in favor of ES6-style import declarations.
547
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/triple-slash-reference.mdx
548
+ '@typescript-eslint/triple-slash-reference': 'error',
549
+
550
+ // Require type annotations in certain places.
551
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/typedef.mdx
552
+ '@typescript-eslint/typedef': 'off',
553
+
554
+ // Enforce unbound methods are called with their expected scope.
555
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/unbound-method.mdx
556
+ '@typescript-eslint/unbound-method': 'off',
557
+
558
+ // Disallow two overloads that could be unified into one with a union or an optional/rest parameter.
559
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/unified-signatures.mdx
560
+ '@typescript-eslint/unified-signatures': 'off',
561
+
562
+ // Enforce typing arguments in Promise rejection callbacks as `unknown`.
563
+ // https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/docs/rules/use-unknown-in-catch-callback-variable.mdx
564
+ '@typescript-eslint/use-unknown-in-catch-callback-variable': 'off',
565
+ },
566
+ };
567
+
568
+ module.exports = {
569
+ typescriptRules,
541
570
  };