eslint-config-decent 4.2.2 → 4.2.3

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/dist/oxlint.cjs CHANGED
@@ -108,37 +108,25 @@ const eslintCompatRules = {
108
108
  "eslint-compat/no-undef-init": "error",
109
109
  "eslint-compat/no-unreachable-loop": ["error", { ignore: [] }]
110
110
  };
111
- const typescriptExplicitRules = {
111
+ const typescriptRules = {
112
112
  // Disable base ESLint rules that TS extends
113
113
  "eslint/no-loss-of-precision": "off",
114
114
  "eslint/no-unused-expressions": "off",
115
115
  "typescript/array-type": ["error", { default: "array" }],
116
- "typescript/consistent-type-imports": ["error", { prefer: "type-imports", fixStyle: "inline-type-imports" }],
116
+ "typescript/await-thenable": "error",
117
117
  "typescript/ban-ts-comment": ["error", { minimumDescriptionLength: 10, "ts-expect-error": { descriptionFormat: "^ - [^ ].*$" } }],
118
+ "typescript/ban-tslint-comment": "error",
119
+ "typescript/class-literal-property-style": "error",
120
+ "typescript/consistent-generic-constructors": "error",
121
+ "typescript/consistent-indexed-object-style": "error",
122
+ "typescript/consistent-type-assertions": "error",
123
+ "typescript/consistent-type-definitions": "error",
124
+ "typescript/consistent-type-imports": ["error", { prefer: "type-imports", fixStyle: "inline-type-imports" }],
118
125
  "typescript/default-param-last": "error",
126
+ "typescript/dot-notation": "error",
119
127
  "typescript/explicit-function-return-type": "off",
120
- "typescript/no-dupe-class-members": "error",
121
- "typescript/no-loop-func": "error",
122
- "typescript/no-redeclare": "error",
123
- "typescript/only-throw-error": "error",
124
- "typescript/no-empty-interface": "error",
125
- "typescript/no-shadow": "error",
126
- "typescript/no-unnecessary-boolean-literal-compare": "error",
127
- "typescript/parameter-properties": ["error", { allow: ["readonly"] }],
128
- "typescript/restrict-template-expressions": ["error", { allowNumber: true }],
129
- "typescript/return-await": "error",
130
- "typescript/use-unknown-in-catch-callback-variable": "off"
131
- };
132
- const typescriptCompatRules = {
133
- "typescript-compat/naming-convention": [
134
- "error",
135
- {
136
- selector: "enumMember",
137
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
138
- trailingUnderscore: "forbid"
139
- }
140
- ],
141
- "typescript-compat/member-ordering": [
128
+ "typescript/explicit-member-accessibility": "error",
129
+ "typescript/member-ordering": [
142
130
  "error",
143
131
  {
144
132
  default: [
@@ -155,25 +143,24 @@ const typescriptCompatRules = {
155
143
  ]
156
144
  }
157
145
  ],
158
- "typescript-compat/explicit-member-accessibility": "error"
159
- };
160
- const typescriptInheritedRules = {
161
- "typescript/await-thenable": "error",
162
- "typescript/ban-tslint-comment": "error",
163
- "typescript/class-literal-property-style": "error",
164
- "typescript/consistent-generic-constructors": "error",
165
- "typescript/consistent-indexed-object-style": "error",
166
- "typescript/consistent-type-assertions": "error",
167
- "typescript/consistent-type-definitions": "error",
168
- "typescript/dot-notation": "error",
146
+ "typescript/naming-convention": [
147
+ "error",
148
+ {
149
+ selector: "enumMember",
150
+ format: ["camelCase", "PascalCase", "UPPER_CASE"],
151
+ trailingUnderscore: "forbid"
152
+ }
153
+ ],
169
154
  "typescript/no-array-delete": "error",
170
155
  "typescript/no-base-to-string": "error",
171
156
  "typescript/no-confusing-non-null-assertion": "error",
172
157
  "typescript/no-confusing-void-expression": "error",
173
158
  "typescript/no-deprecated": "error",
159
+ "typescript/no-dupe-class-members": "error",
174
160
  "typescript/no-duplicate-enum-values": "error",
175
161
  "typescript/no-duplicate-type-constituents": "error",
176
162
  "typescript/no-dynamic-delete": "error",
163
+ "typescript/no-empty-interface": "error",
177
164
  "typescript/no-empty-object-type": "error",
178
165
  "typescript/no-explicit-any": "error",
179
166
  "typescript/no-extra-non-null-assertion": "error",
@@ -183,6 +170,7 @@ const typescriptInheritedRules = {
183
170
  "typescript/no-implied-eval": "error",
184
171
  "typescript/no-inferrable-types": "error",
185
172
  "typescript/no-invalid-void-type": "error",
173
+ "typescript/no-loop-func": "error",
186
174
  "typescript/no-meaningless-void-operator": "error",
187
175
  "typescript/no-misused-new": "error",
188
176
  "typescript/no-misused-promises": "error",
@@ -191,9 +179,12 @@ const typescriptInheritedRules = {
191
179
  "typescript/no-non-null-asserted-nullish-coalescing": "error",
192
180
  "typescript/no-non-null-asserted-optional-chain": "error",
193
181
  "typescript/no-non-null-assertion": "error",
182
+ "typescript/no-redeclare": "error",
194
183
  "typescript/no-redundant-type-constituents": "error",
195
184
  "typescript/no-require-imports": "error",
185
+ "typescript/no-shadow": "error",
196
186
  "typescript/no-this-alias": "error",
187
+ "typescript/no-unnecessary-boolean-literal-compare": "error",
197
188
  "typescript/no-unnecessary-condition": "error",
198
189
  "typescript/no-unnecessary-template-expression": "error",
199
190
  "typescript/no-unnecessary-type-arguments": "error",
@@ -212,6 +203,8 @@ const typescriptInheritedRules = {
212
203
  "typescript/no-useless-empty-export": "error",
213
204
  "typescript/no-wrapper-object-types": "error",
214
205
  "typescript/non-nullable-type-assertion-style": "error",
206
+ "typescript/only-throw-error": "error",
207
+ "typescript/parameter-properties": ["error", { allow: ["readonly"] }],
215
208
  "typescript/prefer-as-const": "error",
216
209
  "typescript/prefer-find": "error",
217
210
  "typescript/prefer-for-of": "error",
@@ -229,10 +222,13 @@ const typescriptInheritedRules = {
229
222
  "typescript/prefer-ts-expect-error": "error",
230
223
  "typescript/require-await": "error",
231
224
  "typescript/restrict-plus-operands": "error",
225
+ "typescript/restrict-template-expressions": ["error", { allowNumber: true }],
226
+ "typescript/return-await": "error",
232
227
  "typescript/switch-exhaustiveness-check": "error",
233
228
  "typescript/triple-slash-reference": "error",
234
229
  "typescript/unbound-method": "error",
235
- "typescript/unified-signatures": "error"
230
+ "typescript/unified-signatures": "error",
231
+ "typescript/use-unknown-in-catch-callback-variable": "off"
236
232
  };
237
233
  const importRules = {
238
234
  "import/consistent-type-specifier-style": ["error", "prefer-inline"],
@@ -549,7 +545,6 @@ function oxlintConfig(options) {
549
545
  "eslint-plugin-security",
550
546
  // -compat JS plugins for gap rules in partially-supported native plugins
551
547
  { name: "eslint-compat", specifier: "oxlint-plugin-eslint" },
552
- { name: "typescript-compat", specifier: "@typescript-eslint/eslint-plugin" },
553
548
  { name: "import-compat", specifier: "eslint-plugin-import-x" },
554
549
  { name: "unicorn-compat", specifier: "eslint-plugin-unicorn" },
555
550
  { name: "jsdoc-compat", specifier: "eslint-plugin-jsdoc" },
@@ -566,9 +561,7 @@ function oxlintConfig(options) {
566
561
  ...eslintBaseRules,
567
562
  ...eslintCjsEsmRules,
568
563
  ...eslintCompatRules,
569
- ...typescriptExplicitRules,
570
- ...typescriptCompatRules,
571
- ...typescriptInheritedRules,
564
+ ...typescriptRules,
572
565
  ...importRules,
573
566
  ...importCompatRules,
574
567
  ...unicornRules,
package/dist/oxlint.mjs CHANGED
@@ -106,37 +106,25 @@ const eslintCompatRules = {
106
106
  "eslint-compat/no-undef-init": "error",
107
107
  "eslint-compat/no-unreachable-loop": ["error", { ignore: [] }]
108
108
  };
109
- const typescriptExplicitRules = {
109
+ const typescriptRules = {
110
110
  // Disable base ESLint rules that TS extends
111
111
  "eslint/no-loss-of-precision": "off",
112
112
  "eslint/no-unused-expressions": "off",
113
113
  "typescript/array-type": ["error", { default: "array" }],
114
- "typescript/consistent-type-imports": ["error", { prefer: "type-imports", fixStyle: "inline-type-imports" }],
114
+ "typescript/await-thenable": "error",
115
115
  "typescript/ban-ts-comment": ["error", { minimumDescriptionLength: 10, "ts-expect-error": { descriptionFormat: "^ - [^ ].*$" } }],
116
+ "typescript/ban-tslint-comment": "error",
117
+ "typescript/class-literal-property-style": "error",
118
+ "typescript/consistent-generic-constructors": "error",
119
+ "typescript/consistent-indexed-object-style": "error",
120
+ "typescript/consistent-type-assertions": "error",
121
+ "typescript/consistent-type-definitions": "error",
122
+ "typescript/consistent-type-imports": ["error", { prefer: "type-imports", fixStyle: "inline-type-imports" }],
116
123
  "typescript/default-param-last": "error",
124
+ "typescript/dot-notation": "error",
117
125
  "typescript/explicit-function-return-type": "off",
118
- "typescript/no-dupe-class-members": "error",
119
- "typescript/no-loop-func": "error",
120
- "typescript/no-redeclare": "error",
121
- "typescript/only-throw-error": "error",
122
- "typescript/no-empty-interface": "error",
123
- "typescript/no-shadow": "error",
124
- "typescript/no-unnecessary-boolean-literal-compare": "error",
125
- "typescript/parameter-properties": ["error", { allow: ["readonly"] }],
126
- "typescript/restrict-template-expressions": ["error", { allowNumber: true }],
127
- "typescript/return-await": "error",
128
- "typescript/use-unknown-in-catch-callback-variable": "off"
129
- };
130
- const typescriptCompatRules = {
131
- "typescript-compat/naming-convention": [
132
- "error",
133
- {
134
- selector: "enumMember",
135
- format: ["camelCase", "PascalCase", "UPPER_CASE"],
136
- trailingUnderscore: "forbid"
137
- }
138
- ],
139
- "typescript-compat/member-ordering": [
126
+ "typescript/explicit-member-accessibility": "error",
127
+ "typescript/member-ordering": [
140
128
  "error",
141
129
  {
142
130
  default: [
@@ -153,25 +141,24 @@ const typescriptCompatRules = {
153
141
  ]
154
142
  }
155
143
  ],
156
- "typescript-compat/explicit-member-accessibility": "error"
157
- };
158
- const typescriptInheritedRules = {
159
- "typescript/await-thenable": "error",
160
- "typescript/ban-tslint-comment": "error",
161
- "typescript/class-literal-property-style": "error",
162
- "typescript/consistent-generic-constructors": "error",
163
- "typescript/consistent-indexed-object-style": "error",
164
- "typescript/consistent-type-assertions": "error",
165
- "typescript/consistent-type-definitions": "error",
166
- "typescript/dot-notation": "error",
144
+ "typescript/naming-convention": [
145
+ "error",
146
+ {
147
+ selector: "enumMember",
148
+ format: ["camelCase", "PascalCase", "UPPER_CASE"],
149
+ trailingUnderscore: "forbid"
150
+ }
151
+ ],
167
152
  "typescript/no-array-delete": "error",
168
153
  "typescript/no-base-to-string": "error",
169
154
  "typescript/no-confusing-non-null-assertion": "error",
170
155
  "typescript/no-confusing-void-expression": "error",
171
156
  "typescript/no-deprecated": "error",
157
+ "typescript/no-dupe-class-members": "error",
172
158
  "typescript/no-duplicate-enum-values": "error",
173
159
  "typescript/no-duplicate-type-constituents": "error",
174
160
  "typescript/no-dynamic-delete": "error",
161
+ "typescript/no-empty-interface": "error",
175
162
  "typescript/no-empty-object-type": "error",
176
163
  "typescript/no-explicit-any": "error",
177
164
  "typescript/no-extra-non-null-assertion": "error",
@@ -181,6 +168,7 @@ const typescriptInheritedRules = {
181
168
  "typescript/no-implied-eval": "error",
182
169
  "typescript/no-inferrable-types": "error",
183
170
  "typescript/no-invalid-void-type": "error",
171
+ "typescript/no-loop-func": "error",
184
172
  "typescript/no-meaningless-void-operator": "error",
185
173
  "typescript/no-misused-new": "error",
186
174
  "typescript/no-misused-promises": "error",
@@ -189,9 +177,12 @@ const typescriptInheritedRules = {
189
177
  "typescript/no-non-null-asserted-nullish-coalescing": "error",
190
178
  "typescript/no-non-null-asserted-optional-chain": "error",
191
179
  "typescript/no-non-null-assertion": "error",
180
+ "typescript/no-redeclare": "error",
192
181
  "typescript/no-redundant-type-constituents": "error",
193
182
  "typescript/no-require-imports": "error",
183
+ "typescript/no-shadow": "error",
194
184
  "typescript/no-this-alias": "error",
185
+ "typescript/no-unnecessary-boolean-literal-compare": "error",
195
186
  "typescript/no-unnecessary-condition": "error",
196
187
  "typescript/no-unnecessary-template-expression": "error",
197
188
  "typescript/no-unnecessary-type-arguments": "error",
@@ -210,6 +201,8 @@ const typescriptInheritedRules = {
210
201
  "typescript/no-useless-empty-export": "error",
211
202
  "typescript/no-wrapper-object-types": "error",
212
203
  "typescript/non-nullable-type-assertion-style": "error",
204
+ "typescript/only-throw-error": "error",
205
+ "typescript/parameter-properties": ["error", { allow: ["readonly"] }],
213
206
  "typescript/prefer-as-const": "error",
214
207
  "typescript/prefer-find": "error",
215
208
  "typescript/prefer-for-of": "error",
@@ -227,10 +220,13 @@ const typescriptInheritedRules = {
227
220
  "typescript/prefer-ts-expect-error": "error",
228
221
  "typescript/require-await": "error",
229
222
  "typescript/restrict-plus-operands": "error",
223
+ "typescript/restrict-template-expressions": ["error", { allowNumber: true }],
224
+ "typescript/return-await": "error",
230
225
  "typescript/switch-exhaustiveness-check": "error",
231
226
  "typescript/triple-slash-reference": "error",
232
227
  "typescript/unbound-method": "error",
233
- "typescript/unified-signatures": "error"
228
+ "typescript/unified-signatures": "error",
229
+ "typescript/use-unknown-in-catch-callback-variable": "off"
234
230
  };
235
231
  const importRules = {
236
232
  "import/consistent-type-specifier-style": ["error", "prefer-inline"],
@@ -547,7 +543,6 @@ function oxlintConfig(options) {
547
543
  "eslint-plugin-security",
548
544
  // -compat JS plugins for gap rules in partially-supported native plugins
549
545
  { name: "eslint-compat", specifier: "oxlint-plugin-eslint" },
550
- { name: "typescript-compat", specifier: "@typescript-eslint/eslint-plugin" },
551
546
  { name: "import-compat", specifier: "eslint-plugin-import-x" },
552
547
  { name: "unicorn-compat", specifier: "eslint-plugin-unicorn" },
553
548
  { name: "jsdoc-compat", specifier: "eslint-plugin-jsdoc" },
@@ -564,9 +559,7 @@ function oxlintConfig(options) {
564
559
  ...eslintBaseRules,
565
560
  ...eslintCjsEsmRules,
566
561
  ...eslintCompatRules,
567
- ...typescriptExplicitRules,
568
- ...typescriptCompatRules,
569
- ...typescriptInheritedRules,
562
+ ...typescriptRules,
570
563
  ...importRules,
571
564
  ...importCompatRules,
572
565
  ...unicornRules,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eslint-config-decent",
3
- "version": "4.2.2",
3
+ "version": "4.2.3",
4
4
  "description": "A decent ESLint configuration",
5
5
  "main": "./dist/index.cjs",
6
6
  "module": "./dist/index.mjs",
package/src/oxlint.ts CHANGED
@@ -161,40 +161,26 @@ const eslintCompatRules: Record<string, RuleEntry> = {
161
161
  };
162
162
 
163
163
  // ─── TypeScript rules (src/typescriptEslint.ts) ────────────────────────────
164
- const typescriptExplicitRules: Record<string, RuleEntry> = {
164
+ const typescriptRules: Record<string, RuleEntry> = {
165
165
  // Disable base ESLint rules that TS extends
166
166
  'eslint/no-loss-of-precision': 'off',
167
167
  'eslint/no-unused-expressions': 'off',
168
168
 
169
169
  'typescript/array-type': ['error', { default: 'array' }],
170
- 'typescript/consistent-type-imports': ['error', { prefer: 'type-imports', fixStyle: 'inline-type-imports' }],
170
+ 'typescript/await-thenable': 'error',
171
171
  'typescript/ban-ts-comment': ['error', { minimumDescriptionLength: 10, 'ts-expect-error': { descriptionFormat: '^ - [^ ].*$' } }],
172
+ 'typescript/ban-tslint-comment': 'error',
173
+ 'typescript/class-literal-property-style': 'error',
174
+ 'typescript/consistent-generic-constructors': 'error',
175
+ 'typescript/consistent-indexed-object-style': 'error',
176
+ 'typescript/consistent-type-assertions': 'error',
177
+ 'typescript/consistent-type-definitions': 'error',
178
+ 'typescript/consistent-type-imports': ['error', { prefer: 'type-imports', fixStyle: 'inline-type-imports' }],
172
179
  'typescript/default-param-last': 'error',
180
+ 'typescript/dot-notation': 'error',
173
181
  'typescript/explicit-function-return-type': 'off',
174
- 'typescript/no-dupe-class-members': 'error',
175
- 'typescript/no-loop-func': 'error',
176
- 'typescript/no-redeclare': 'error',
177
- 'typescript/only-throw-error': 'error',
178
- 'typescript/no-empty-interface': 'error',
179
- 'typescript/no-shadow': 'error',
180
- 'typescript/no-unnecessary-boolean-literal-compare': 'error',
181
- 'typescript/parameter-properties': ['error', { allow: ['readonly'] }],
182
- 'typescript/restrict-template-expressions': ['error', { allowNumber: true }],
183
- 'typescript/return-await': 'error',
184
- 'typescript/use-unknown-in-catch-callback-variable': 'off',
185
- };
186
-
187
- // Gap rules not yet natively supported — covered via typescript-compat JS plugin
188
- const typescriptCompatRules: Record<string, RuleEntry> = {
189
- 'typescript-compat/naming-convention': [
190
- 'error',
191
- {
192
- selector: 'enumMember',
193
- format: ['camelCase', 'PascalCase', 'UPPER_CASE'],
194
- trailingUnderscore: 'forbid',
195
- },
196
- ],
197
- 'typescript-compat/member-ordering': [
182
+ 'typescript/explicit-member-accessibility': 'error',
183
+ 'typescript/member-ordering': [
198
184
  'error',
199
185
  {
200
186
  default: [
@@ -211,27 +197,24 @@ const typescriptCompatRules: Record<string, RuleEntry> = {
211
197
  ],
212
198
  },
213
199
  ],
214
- 'typescript-compat/explicit-member-accessibility': 'error',
215
- };
216
-
217
- // Inherited from strictTypeChecked + stylisticTypeChecked
218
- const typescriptInheritedRules: Record<string, RuleEntry> = {
219
- 'typescript/await-thenable': 'error',
220
- 'typescript/ban-tslint-comment': 'error',
221
- 'typescript/class-literal-property-style': 'error',
222
- 'typescript/consistent-generic-constructors': 'error',
223
- 'typescript/consistent-indexed-object-style': 'error',
224
- 'typescript/consistent-type-assertions': 'error',
225
- 'typescript/consistent-type-definitions': 'error',
226
- 'typescript/dot-notation': 'error',
200
+ 'typescript/naming-convention': [
201
+ 'error',
202
+ {
203
+ selector: 'enumMember',
204
+ format: ['camelCase', 'PascalCase', 'UPPER_CASE'],
205
+ trailingUnderscore: 'forbid',
206
+ },
207
+ ],
227
208
  'typescript/no-array-delete': 'error',
228
209
  'typescript/no-base-to-string': 'error',
229
210
  'typescript/no-confusing-non-null-assertion': 'error',
230
211
  'typescript/no-confusing-void-expression': 'error',
231
212
  'typescript/no-deprecated': 'error',
213
+ 'typescript/no-dupe-class-members': 'error',
232
214
  'typescript/no-duplicate-enum-values': 'error',
233
215
  'typescript/no-duplicate-type-constituents': 'error',
234
216
  'typescript/no-dynamic-delete': 'error',
217
+ 'typescript/no-empty-interface': 'error',
235
218
  'typescript/no-empty-object-type': 'error',
236
219
  'typescript/no-explicit-any': 'error',
237
220
  'typescript/no-extra-non-null-assertion': 'error',
@@ -241,6 +224,7 @@ const typescriptInheritedRules: Record<string, RuleEntry> = {
241
224
  'typescript/no-implied-eval': 'error',
242
225
  'typescript/no-inferrable-types': 'error',
243
226
  'typescript/no-invalid-void-type': 'error',
227
+ 'typescript/no-loop-func': 'error',
244
228
  'typescript/no-meaningless-void-operator': 'error',
245
229
  'typescript/no-misused-new': 'error',
246
230
  'typescript/no-misused-promises': 'error',
@@ -249,9 +233,12 @@ const typescriptInheritedRules: Record<string, RuleEntry> = {
249
233
  'typescript/no-non-null-asserted-nullish-coalescing': 'error',
250
234
  'typescript/no-non-null-asserted-optional-chain': 'error',
251
235
  'typescript/no-non-null-assertion': 'error',
236
+ 'typescript/no-redeclare': 'error',
252
237
  'typescript/no-redundant-type-constituents': 'error',
253
238
  'typescript/no-require-imports': 'error',
239
+ 'typescript/no-shadow': 'error',
254
240
  'typescript/no-this-alias': 'error',
241
+ 'typescript/no-unnecessary-boolean-literal-compare': 'error',
255
242
  'typescript/no-unnecessary-condition': 'error',
256
243
  'typescript/no-unnecessary-template-expression': 'error',
257
244
  'typescript/no-unnecessary-type-arguments': 'error',
@@ -270,6 +257,8 @@ const typescriptInheritedRules: Record<string, RuleEntry> = {
270
257
  'typescript/no-useless-empty-export': 'error',
271
258
  'typescript/no-wrapper-object-types': 'error',
272
259
  'typescript/non-nullable-type-assertion-style': 'error',
260
+ 'typescript/only-throw-error': 'error',
261
+ 'typescript/parameter-properties': ['error', { allow: ['readonly'] }],
273
262
  'typescript/prefer-as-const': 'error',
274
263
  'typescript/prefer-find': 'error',
275
264
  'typescript/prefer-for-of': 'error',
@@ -287,10 +276,13 @@ const typescriptInheritedRules: Record<string, RuleEntry> = {
287
276
  'typescript/prefer-ts-expect-error': 'error',
288
277
  'typescript/require-await': 'error',
289
278
  'typescript/restrict-plus-operands': 'error',
279
+ 'typescript/restrict-template-expressions': ['error', { allowNumber: true }],
280
+ 'typescript/return-await': 'error',
290
281
  'typescript/switch-exhaustiveness-check': 'error',
291
282
  'typescript/triple-slash-reference': 'error',
292
283
  'typescript/unbound-method': 'error',
293
284
  'typescript/unified-signatures': 'error',
285
+ 'typescript/use-unknown-in-catch-callback-variable': 'off',
294
286
  };
295
287
 
296
288
  // ─── Import rules (src/import.ts) ──────────────────────────────────────────
@@ -650,7 +642,6 @@ export function oxlintConfig(options?: OxlintConfigOptions): OxlintConfig {
650
642
  'eslint-plugin-security',
651
643
  // -compat JS plugins for gap rules in partially-supported native plugins
652
644
  { name: 'eslint-compat', specifier: 'oxlint-plugin-eslint' },
653
- { name: 'typescript-compat', specifier: '@typescript-eslint/eslint-plugin' },
654
645
  { name: 'import-compat', specifier: 'eslint-plugin-import-x' },
655
646
  { name: 'unicorn-compat', specifier: 'eslint-plugin-unicorn' },
656
647
  { name: 'jsdoc-compat', specifier: 'eslint-plugin-jsdoc' },
@@ -669,9 +660,7 @@ export function oxlintConfig(options?: OxlintConfigOptions): OxlintConfig {
669
660
  ...eslintBaseRules,
670
661
  ...eslintCjsEsmRules,
671
662
  ...eslintCompatRules,
672
- ...typescriptExplicitRules,
673
- ...typescriptCompatRules,
674
- ...typescriptInheritedRules,
663
+ ...typescriptRules,
675
664
  ...importRules,
676
665
  ...importCompatRules,
677
666
  ...unicornRules,