@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.
- package/package.json +2 -1
- package/rules/base.mjs +165 -144
- package/rules/import.mjs +18 -18
- package/rules/node.mjs +4 -4
- package/rules/promise.mjs +16 -16
- package/rules/react-a11y.mjs +31 -31
- package/rules/react.mjs +51 -51
- package/rules/typescript.mjs +100 -100
- package/rules/vitest.mjs +63 -63
package/rules/typescript.mjs
CHANGED
|
@@ -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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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://
|
|
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
|
};
|