@wistia/oxlint-config 0.5.1 → 0.6.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.
@@ -29,52 +29,52 @@ export const typescriptRules = {
29
29
  'eslint/require-await': 'off',
30
30
 
31
31
  // Require that function overload signatures be consecutive
32
- // https://typescript-eslint.io/rules/adjacent-overload-signatures
32
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/adjacent-overload-signatures.html
33
33
  'typescript/adjacent-overload-signatures': 'error',
34
34
 
35
35
  // Require consistently using either T[] or Array<T> for arrays
36
- // https://typescript-eslint.io/rules/array-type
36
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/array-type.html
37
37
  'typescript/array-type': 'error',
38
38
 
39
39
  // Disallow awaiting a value that is not a Thenable
40
- // https://typescript-eslint.io/rules/await-thenable
40
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/await-thenable.html
41
41
  'typescript/await-thenable': 'error',
42
42
 
43
43
  // Disallow @ts-<directive> comments or require descriptions after directives
44
- // https://typescript-eslint.io/rules/ban-ts-comment
44
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/ban-ts-comment.html
45
45
  'typescript/ban-ts-comment': 'error',
46
46
 
47
47
  // Disallow // tslint:<rule-flag> comments
48
- // https://typescript-eslint.io/rules/ban-tslint-comment
48
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/ban-tslint-comment.html
49
49
  'typescript/ban-tslint-comment': 'error',
50
50
 
51
51
  // Enforce that literals on classes are exposed in a consistent style
52
- // https://typescript-eslint.io/rules/class-literal-property-style
52
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/class-literal-property-style.html
53
53
  'typescript/class-literal-property-style': 'error',
54
54
 
55
55
  // Enforce specifying generic type arguments on type annotation or constructor name of a constructor call
56
- // https://typescript-eslint.io/rules/consistent-generic-constructors
56
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/consistent-generic-constructors.html
57
57
  'typescript/consistent-generic-constructors': 'error',
58
58
 
59
59
  // Require or disallow the Record type
60
- // https://typescript-eslint.io/rules/consistent-indexed-object-style
60
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/consistent-indexed-object-style.html
61
61
  'typescript/consistent-indexed-object-style': 'error',
62
62
 
63
63
  // Enforce consistent usage of type assertions
64
- // https://typescript-eslint.io/rules/consistent-type-assertions
64
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/consistent-type-assertions.html
65
65
  'typescript/consistent-type-assertions': 'error',
66
66
 
67
67
  // Enforce type definitions to consistently use either interface or type
68
- // https://typescript-eslint.io/rules/consistent-type-definitions
68
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/consistent-type-definitions.html
69
69
  // decision: prefer type to interface for consistency
70
70
  'typescript/consistent-type-definitions': ['error', 'type'],
71
71
 
72
72
  // Enforce consistent usage of type exports
73
- // https://typescript-eslint.io/rules/consistent-type-exports
73
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/consistent-type-exports.html
74
74
  'typescript/consistent-type-exports': 'error',
75
75
 
76
76
  // Enforce consistent usage of type imports
77
- // https://typescript-eslint.io/rules/consistent-type-imports
77
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/consistent-type-imports.html
78
78
  'typescript/consistent-type-imports': [
79
79
  'error',
80
80
  {
@@ -85,357 +85,357 @@ export const typescriptRules = {
85
85
  ],
86
86
 
87
87
  // Enforce dot notation whenever possible
88
- // https://typescript-eslint.io/rules/dot-notation
88
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/dot-notation.html
89
89
  'typescript/dot-notation': 'error',
90
90
 
91
91
  // Require explicit accessibility modifiers on class properties and methods
92
- // https://typescript-eslint.io/rules/explicit-module-boundary-types
92
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/explicit-module-boundary-types.html
93
93
  'typescript/explicit-module-boundary-types': 'error',
94
94
 
95
95
  // Disallow using the delete operator on array values
96
- // https://typescript-eslint.io/rules/no-array-delete
96
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-array-delete.html
97
97
  'typescript/no-array-delete': 'error',
98
98
 
99
99
  // Require .toString() to only be called on objects which provide useful information
100
- // https://typescript-eslint.io/rules/no-base-to-string
100
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-base-to-string.html
101
101
  'typescript/no-base-to-string': 'error',
102
102
 
103
103
  // Disallow non-null assertion in locations that may be confusing
104
- // https://typescript-eslint.io/rules/no-confusing-non-null-assertion
104
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-confusing-non-null-assertion.html
105
105
  'typescript/no-confusing-non-null-assertion': 'error',
106
106
 
107
107
  // Require expressions of type void to appear in statement position
108
- // https://typescript-eslint.io/rules/no-confusing-void-expression
108
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-confusing-void-expression.html
109
109
  'typescript/no-confusing-void-expression': ['error', { ignoreArrowShorthand: true }],
110
110
 
111
111
  // Disallow using code marked as @deprecated
112
- // https://typescript-eslint.io/rules/no-deprecated
112
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-deprecated.html
113
113
  'typescript/no-deprecated': 'error',
114
114
 
115
115
  // Disallow duplicate enum member values
116
- // https://typescript-eslint.io/rules/no-duplicate-enum-values
116
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-duplicate-enum-values.html
117
117
  'typescript/no-duplicate-enum-values': 'error',
118
118
 
119
119
  // Disallow duplicate constituents of union or intersection types
120
- // https://typescript-eslint.io/rules/no-duplicate-type-constituents
120
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-duplicate-type-constituents.html
121
121
  'typescript/no-duplicate-type-constituents': 'error',
122
122
 
123
123
  // Disallow using the delete operator on computed key expressions
124
- // https://typescript-eslint.io/rules/no-dynamic-delete
124
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-dynamic-delete.html
125
125
  'typescript/no-dynamic-delete': 'error',
126
126
 
127
127
  // Disallow accidentally using the "empty object" type
128
- // https://typescript-eslint.io/rules/no-empty-object-type
128
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-empty-object-type.html
129
129
  'typescript/no-empty-object-type': 'error',
130
130
 
131
131
  // Disallow the any type
132
- // https://typescript-eslint.io/rules/no-explicit-any
132
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-explicit-any.html
133
133
  'typescript/no-explicit-any': 'error',
134
134
 
135
135
  // Disallow extra non-null assertions
136
- // https://typescript-eslint.io/rules/no-extra-non-null-assertion
136
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-extra-non-null-assertion.html
137
137
  'typescript/no-extra-non-null-assertion': 'error',
138
138
 
139
139
  // Disallow classes used as namespaces
140
- // https://typescript-eslint.io/rules/no-extraneous-class
140
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-extraneous-class.html
141
141
  'typescript/no-extraneous-class': 'error',
142
142
 
143
143
  // Require Promise-like statements to be handled appropriately
144
- // https://typescript-eslint.io/rules/no-floating-promises
144
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-floating-promises.html
145
145
  'typescript/no-floating-promises': 'error',
146
146
 
147
147
  // Disallow iterating over an array with a for-in loop
148
- // https://typescript-eslint.io/rules/no-for-in-array
148
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-for-in-array.html
149
149
  'typescript/no-for-in-array': 'error',
150
150
 
151
151
  // Disallow the use of eval()-like methods
152
- // https://typescript-eslint.io/rules/no-implied-eval
152
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-implied-eval.html
153
153
  'typescript/no-implied-eval': 'error',
154
154
 
155
155
  // Enforce the use of top-level import type qualifier when an import only has specifiers with inline type qualifiers
156
- // https://typescript-eslint.io/rules/no-import-type-side-effects
156
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-import-type-side-effects.html
157
157
  'typescript/no-import-type-side-effects': 'error',
158
158
 
159
159
  // Disallow explicit type declarations for variables or parameters initialized to a number, string, or boolean
160
- // https://typescript-eslint.io/rules/no-inferrable-types
160
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-inferrable-types.html
161
161
  'typescript/no-inferrable-types': 'error',
162
162
 
163
163
  // Disallow void type outside of generic or return types
164
- // https://typescript-eslint.io/rules/no-invalid-void-type
164
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-invalid-void-type.html
165
165
  'typescript/no-invalid-void-type': 'error',
166
166
 
167
167
  // Disallow the void operator except when used to discard a value
168
- // https://typescript-eslint.io/rules/no-meaningless-void-operator
168
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-meaningless-void-operator.html
169
169
  'typescript/no-meaningless-void-operator': 'error',
170
170
 
171
171
  // Enforce valid definition of new and constructor
172
- // https://typescript-eslint.io/rules/no-misused-new
172
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-misused-new.html
173
173
  'typescript/no-misused-new': 'error',
174
174
 
175
175
  // Disallow Promises in places not designed to handle them
176
- // https://typescript-eslint.io/rules/no-misused-promises
176
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-misused-promises.html
177
177
  'typescript/no-misused-promises': 'error',
178
178
 
179
179
  // Disallow using the spread operator when it might cause unexpected behavior
180
- // https://typescript-eslint.io/rules/no-misused-spread
180
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-misused-spread.html
181
181
  'typescript/no-misused-spread': 'error',
182
182
 
183
183
  // Disallow enums from having both number and string members
184
- // https://typescript-eslint.io/rules/no-mixed-enums
184
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-mixed-enums.html
185
185
  'typescript/no-mixed-enums': 'error',
186
186
 
187
187
  // Disallow TypeScript namespaces
188
- // https://typescript-eslint.io/rules/no-namespace
188
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-namespace.html
189
189
  'typescript/no-namespace': 'error',
190
190
 
191
191
  // Disallow non-null assertions in the left operand of a nullish coalescing operator
192
- // https://typescript-eslint.io/rules/no-non-null-asserted-nullish-coalescing
192
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-non-null-asserted-nullish-coalescing.html
193
193
  'typescript/no-non-null-asserted-nullish-coalescing': 'error',
194
194
 
195
195
  // Disallow non-null assertions after an optional chain expression
196
- // https://typescript-eslint.io/rules/no-non-null-asserted-optional-chain
196
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-non-null-asserted-optional-chain.html
197
197
  'typescript/no-non-null-asserted-optional-chain': 'error',
198
198
 
199
199
  // Disallow non-null assertions using the ! postfix operator
200
- // https://typescript-eslint.io/rules/no-non-null-assertion
200
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-non-null-assertion.html
201
201
  'typescript/no-non-null-assertion': 'error',
202
202
 
203
203
  // Disallow members of unions and intersections that do nothing or override type information
204
- // https://typescript-eslint.io/rules/no-redundant-type-constituents
204
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-redundant-type-constituents.html
205
205
  'typescript/no-redundant-type-constituents': 'error',
206
206
 
207
207
  // Disallow invocation of require()
208
- // https://typescript-eslint.io/rules/no-require-imports
208
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-require-imports.html
209
209
  'typescript/no-require-imports': 'error',
210
210
 
211
211
  // Disallow certain types
212
- // https://typescript-eslint.io/rules/no-restricted-types
212
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-restricted-types.html
213
213
  'typescript/no-restricted-types': 'error',
214
214
 
215
215
  // Disallow aliasing this
216
- // https://typescript-eslint.io/rules/no-this-alias
216
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-this-alias.html
217
217
  'typescript/no-this-alias': 'error',
218
218
 
219
219
  // Disallow unnecessary equality comparisons against boolean literals
220
- // https://typescript-eslint.io/rules/no-unnecessary-boolean-literal-compare
220
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-boolean-literal-compare.html
221
221
  'typescript/no-unnecessary-boolean-literal-compare': 'error',
222
222
 
223
223
  // Disallow conditionals where the type is always truthy or always falsy
224
- // https://typescript-eslint.io/rules/no-unnecessary-condition
224
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-condition.html
225
225
  'typescript/no-unnecessary-condition': 'error',
226
226
 
227
227
  // Disallow unnecessary assignment of constructor property parameter
228
- // https://typescript-eslint.io/rules/no-unnecessary-parameter-property-assignment
228
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-parameter-property-assignment.html
229
229
  'typescript/no-unnecessary-parameter-property-assignment': 'error',
230
230
 
231
231
  // Disallow unnecessary namespace qualifiers
232
- // https://typescript-eslint.io/rules/no-unnecessary-qualifier
232
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-qualifier.html
233
233
  'typescript/no-unnecessary-qualifier': 'error',
234
234
 
235
235
  // Disallow unnecessary template expressions
236
- // https://typescript-eslint.io/rules/no-unnecessary-template-expression
236
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-template-expression.html
237
237
  'typescript/no-unnecessary-template-expression': 'error',
238
238
 
239
239
  // Disallow type arguments that are equal to the default
240
- // https://typescript-eslint.io/rules/no-unnecessary-type-arguments
240
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-type-arguments.html
241
241
  'typescript/no-unnecessary-type-arguments': 'error',
242
242
 
243
243
  // Disallow type assertions that do not change the type of an expression
244
- // https://typescript-eslint.io/rules/no-unnecessary-type-assertion
244
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-type-assertion.html
245
245
  'typescript/no-unnecessary-type-assertion': 'error',
246
246
 
247
247
  // Disallow unnecessary constraints on generic types
248
- // https://typescript-eslint.io/rules/no-unnecessary-type-constraint
248
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-type-constraint.html
249
249
  'typescript/no-unnecessary-type-constraint': 'error',
250
250
 
251
251
  // Disallow conversion idioms when they do not change the type or value of the expression
252
- // https://typescript-eslint.io/rules/no-unnecessary-type-conversion
252
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-type-conversion.html
253
253
  'typescript/no-unnecessary-type-conversion': 'error',
254
254
 
255
255
  // Disallow type parameters that only appear once
256
- // https://typescript-eslint.io/rules/no-unnecessary-type-parameters
256
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unnecessary-type-parameters.html
257
257
  'typescript/no-unnecessary-type-parameters': 'error',
258
258
 
259
259
  // Disallow calling a function with a value with type any
260
- // https://typescript-eslint.io/rules/no-unsafe-argument
260
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-argument.html
261
261
  'typescript/no-unsafe-argument': 'error',
262
262
 
263
263
  // Disallow assigning a value with type any to variables and properties
264
- // https://typescript-eslint.io/rules/no-unsafe-assignment
264
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-assignment.html
265
265
  'typescript/no-unsafe-assignment': 'error',
266
266
 
267
267
  // Disallow calling a value with type any
268
- // https://typescript-eslint.io/rules/no-unsafe-call
268
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-call.html
269
269
  'typescript/no-unsafe-call': 'error',
270
270
 
271
271
  // Disallow unsafe declaration merging
272
- // https://typescript-eslint.io/rules/no-unsafe-declaration-merging
272
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-declaration-merging.html
273
273
  'typescript/no-unsafe-declaration-merging': 'error',
274
274
 
275
275
  // Disallow comparing an enum value with a non-enum value
276
- // https://typescript-eslint.io/rules/no-unsafe-enum-comparison
276
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-enum-comparison.html
277
277
  'typescript/no-unsafe-enum-comparison': 'error',
278
278
 
279
279
  // Disallow using the unsafe built-in Function type
280
- // https://typescript-eslint.io/rules/no-unsafe-function-type
280
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-function-type.html
281
281
  'typescript/no-unsafe-function-type': 'error',
282
282
 
283
283
  // Disallow member access on a value with type any
284
- // https://typescript-eslint.io/rules/no-unsafe-member-access
284
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-member-access.html
285
285
  'typescript/no-unsafe-member-access': 'error',
286
286
 
287
287
  // Disallow returning a value with type any from a function
288
- // https://typescript-eslint.io/rules/no-unsafe-return
288
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-return.html
289
289
  'typescript/no-unsafe-return': 'error',
290
290
 
291
291
  // Disallow type assertions that narrow a type
292
- // https://typescript-eslint.io/rules/no-unsafe-type-assertion
292
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-type-assertion.html
293
293
  'typescript/no-unsafe-type-assertion': 'error',
294
294
 
295
295
  // Require unary negation to take a number
296
- // https://typescript-eslint.io/rules/no-unsafe-unary-minus
296
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-unsafe-unary-minus.html
297
297
  'typescript/no-unsafe-unary-minus': 'error',
298
298
 
299
299
  // Disallow useless default assignments in parameter destructuring
300
- // https://typescript-eslint.io/rules/no-useless-default-assignment
300
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-useless-default-assignment.html
301
301
  'typescript/no-useless-default-assignment': 'error',
302
302
 
303
303
  // Disallow empty exports that don't change anything in a module file
304
- // https://typescript-eslint.io/rules/no-useless-empty-export
304
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-useless-empty-export.html
305
305
  'typescript/no-useless-empty-export': 'error',
306
306
 
307
307
  // Disallow using confusing built-in primitive class wrappers
308
- // https://typescript-eslint.io/rules/no-wrapper-object-types
308
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/no-wrapper-object-types.html
309
309
  'typescript/no-wrapper-object-types': 'error',
310
310
 
311
311
  // Enforce non-null assertions over explicit type casts
312
- // https://typescript-eslint.io/rules/non-nullable-type-assertion-style
312
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/non-nullable-type-assertion-style.html
313
313
  // decision: disabled because it conflicts with `no-non-null-assertion` — this rule's autofix
314
314
  // rewrites `value as T` to `value!`, which `no-non-null-assertion` then rejects
315
315
  'typescript/non-nullable-type-assertion-style': 'off',
316
316
 
317
317
  // Disallow throwing non-Error values as exceptions
318
- // https://typescript-eslint.io/rules/only-throw-error
318
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/only-throw-error.html
319
319
  'typescript/only-throw-error': 'error',
320
320
 
321
321
  // Require or disallow parameter properties in class constructors
322
- // https://typescript-eslint.io/rules/parameter-properties
322
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/parameter-properties.html
323
323
  'typescript/parameter-properties': 'error',
324
324
 
325
325
  // Enforce the use of as const over literal type
326
- // https://typescript-eslint.io/rules/prefer-as-const
326
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-as-const.html
327
327
  'typescript/prefer-as-const': 'error',
328
328
 
329
329
  // Require each enum member value to be explicitly initialized
330
- // https://typescript-eslint.io/rules/prefer-enum-initializers
330
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-enum-initializers.html
331
331
  'typescript/prefer-enum-initializers': 'error',
332
332
 
333
333
  // Enforce the use of Array.prototype.find() over Array.prototype.filter() followed by [0]
334
- // https://typescript-eslint.io/rules/prefer-find
334
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-find.html
335
335
  'typescript/prefer-find': 'error',
336
336
 
337
337
  // Enforce the use of for-of loop over the standard for loop where possible
338
- // https://typescript-eslint.io/rules/prefer-for-of
338
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-for-of.html
339
339
  'typescript/prefer-for-of': 'error',
340
340
 
341
341
  // Enforce using function types instead of interfaces with call signatures
342
- // https://typescript-eslint.io/rules/prefer-function-type
342
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-function-type.html
343
343
  'typescript/prefer-function-type': 'error',
344
344
 
345
345
  // Enforce includes method over indexOf method
346
- // https://typescript-eslint.io/rules/prefer-includes
346
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-includes.html
347
347
  'typescript/prefer-includes': 'error',
348
348
 
349
349
  // Require all enum members to be literal values
350
- // https://typescript-eslint.io/rules/prefer-literal-enum-member
350
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-literal-enum-member.html
351
351
  'typescript/prefer-literal-enum-member': 'error',
352
352
 
353
353
  // Require using namespace keyword over module keyword to declare custom TypeScript modules
354
- // https://typescript-eslint.io/rules/prefer-namespace-keyword
354
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-namespace-keyword.html
355
355
  'typescript/prefer-namespace-keyword': 'error',
356
356
 
357
357
  // Enforce using the nullish coalescing operator instead of logical assignments or chaining
358
- // https://typescript-eslint.io/rules/prefer-nullish-coalescing
358
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-nullish-coalescing.html
359
359
  'typescript/prefer-nullish-coalescing': 'error',
360
360
 
361
361
  // Enforce using concise optional chain expressions
362
- // https://typescript-eslint.io/rules/prefer-optional-chain
362
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-optional-chain.html
363
363
  'typescript/prefer-optional-chain': 'error',
364
364
 
365
365
  // Require using Error objects as Promise rejection reasons
366
- // https://typescript-eslint.io/rules/prefer-promise-reject-errors
366
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-promise-reject-errors.html
367
367
  'typescript/prefer-promise-reject-errors': 'error',
368
368
 
369
369
  // Require private members to be marked as readonly if they're never modified outside of the constructor
370
- // https://typescript-eslint.io/rules/prefer-readonly
370
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-readonly.html
371
371
  'typescript/prefer-readonly': 'error',
372
372
 
373
373
  // Enforce using type parameter when calling Array#reduce instead of casting
374
- // https://typescript-eslint.io/rules/prefer-reduce-type-parameter
374
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-reduce-type-parameter.html
375
375
  'typescript/prefer-reduce-type-parameter': 'error',
376
376
 
377
377
  // Enforce RegExp#exec over String#match if no global flag is provided
378
- // https://typescript-eslint.io/rules/prefer-regexp-exec
378
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-regexp-exec.html
379
379
  'typescript/prefer-regexp-exec': 'error',
380
380
 
381
381
  // Enforce that this is used when only this type is returned
382
- // https://typescript-eslint.io/rules/prefer-return-this-type
382
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-return-this-type.html
383
383
  'typescript/prefer-return-this-type': 'error',
384
384
 
385
385
  // Enforce using String#startsWith and String#endsWith over other equivalent methods
386
- // https://typescript-eslint.io/rules/prefer-string-starts-ends-with
386
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/prefer-string-starts-ends-with.html
387
387
  'typescript/prefer-string-starts-ends-with': 'error',
388
388
 
389
389
  // Require any function or method that returns a Promise to be marked async
390
- // https://typescript-eslint.io/rules/promise-function-async
390
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/promise-function-async.html
391
391
  'typescript/promise-function-async': 'error',
392
392
 
393
393
  // Enforce that get() types should be assignable to their equivalent set() type
394
- // https://typescript-eslint.io/rules/related-getter-setter-pairs
394
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/related-getter-setter-pairs.html
395
395
  'typescript/related-getter-setter-pairs': 'error',
396
396
 
397
397
  // Require Array#sort and Array#toSorted calls to always provide a compareFunction
398
- // https://typescript-eslint.io/rules/require-array-sort-compare
398
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/require-array-sort-compare.html
399
399
  'typescript/require-array-sort-compare': 'error',
400
400
 
401
401
  // Disallow async functions which do not return promises and have no await expression
402
- // https://typescript-eslint.io/rules/require-await
402
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/require-await.html
403
403
  'typescript/require-await': 'error',
404
404
 
405
405
  // Require both operands of addition to be the same type
406
- // https://typescript-eslint.io/rules/restrict-plus-operands
406
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/restrict-plus-operands.html
407
407
  'typescript/restrict-plus-operands': 'error',
408
408
 
409
409
  // Enforce template literal expressions to be of string type
410
- // https://typescript-eslint.io/rules/restrict-template-expressions
410
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/restrict-template-expressions.html
411
411
  'typescript/restrict-template-expressions': 'error',
412
412
 
413
413
  // Enforce consistent awaiting of returned promises
414
- // https://typescript-eslint.io/rules/return-await
414
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/return-await.html
415
415
  'typescript/return-await': 'error',
416
416
 
417
417
  // Disallow certain types in boolean expressions
418
- // https://typescript-eslint.io/rules/strict-boolean-expressions
418
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/strict-boolean-expressions.html
419
419
  'typescript/strict-boolean-expressions': ['error', { allowNullableBoolean: true }],
420
420
 
421
421
  // Require switch-case statements to be exhaustive
422
- // https://typescript-eslint.io/rules/switch-exhaustiveness-check
422
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/switch-exhaustiveness-check.html
423
423
  'typescript/switch-exhaustiveness-check': 'error',
424
424
 
425
425
  // Disallow certain triple slash directives in favor of ES6-style import declarations
426
- // https://typescript-eslint.io/rules/triple-slash-reference
426
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/triple-slash-reference.html
427
427
  'typescript/triple-slash-reference': 'error',
428
428
 
429
429
  // Enforce unbound methods are called with their expected scope
430
- // https://typescript-eslint.io/rules/unbound-method
430
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/unbound-method.html
431
431
  'typescript/unbound-method': 'error',
432
432
 
433
433
  // Disallow two overloads that could be unified into one
434
- // https://typescript-eslint.io/rules/unified-signatures
434
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/unified-signatures.html
435
435
  'typescript/unified-signatures': 'error',
436
436
 
437
437
  // Enforce typing arguments in .catch() callbacks as unknown
438
- // https://typescript-eslint.io/rules/use-unknown-in-catch-callback-variable
438
+ // https://oxc.rs/docs/guide/usage/linter/rules/typescript/use-unknown-in-catch-callback-variable.html
439
439
  'typescript/use-unknown-in-catch-callback-variable': 'error',
440
440
  },
441
441
  };