oxlint 1.69.0 → 1.70.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/dist/index.d.ts CHANGED
@@ -1,3 +1,9 @@
1
+ /**
2
+ * What to enforce for `/// <reference path="..." />` references.
3
+ */
4
+ /**
5
+ * What to enforce for `/// <reference types="..." />` references.
6
+ */
1
7
  //#region src-js/package/config.generated.d.ts
2
8
  type AllowWarnDeny = ("allow" | "off" | "warn" | "error" | "deny") | number;
3
9
  type GlobalValue = "readonly" | "writable" | "off";
@@ -37,10 +43,10 @@ type ExternalPluginEntry = string | {
37
43
  type GlobSet = string[];
38
44
  type LintPluginOptionsSchema = "eslint" | "react" | "unicorn" | "typescript" | "oxc" | "import" | "jsdoc" | "jest" | "vitest" | "jsx-a11y" | "nextjs" | "react-perf" | "promise" | "node" | "vue";
39
45
  type LintPlugins = LintPluginOptionsSchema[];
40
- type Mode2 = "as-needed" | "always" | "never";
41
46
  type RuleNoConfig = AllowWarnDeny | [AllowWarnDeny];
47
+ type Mode2 = "as-needed" | "always" | "never";
42
48
  type AlwaysNever = "always" | "never";
43
- type OptionsJsonDoc = CommentConfigJson | {
49
+ type OptionsJsonEnum = CommentConfigJson | {
44
50
  block?: CommentConfigJson;
45
51
  line?: CommentConfigJson;
46
52
  };
@@ -68,6 +74,10 @@ type MaxDependenciesConfigJson = number | MaxDependenciesConfig;
68
74
  type Target = "single" | "any";
69
75
  type TestCaseName = "it" | "test";
70
76
  type JestFnType = "hook" | "describe" | "test" | "expect" | "jest" | "unknown";
77
+ type SnapshotHintMode = "always" | "multi";
78
+ type AltTextElements = "img" | "object" | "area" | 'input[type="image"]';
79
+ type Assert = "htmlFor" | "nesting" | "both" | "either";
80
+ type DistractingElement = "marquee" | "blink";
71
81
  type CountThis = "always" | "never" | "except-void";
72
82
  type NoCondAssignConfig = "except-parens" | "always";
73
83
  type CheckLoopsConfig = boolean | CheckLoops;
@@ -93,6 +103,8 @@ type ArgsOption = "after-used" | "all" | "none";
93
103
  type IgnorePatternFor_String = null | string;
94
104
  type CaughtErrorsJson = "all" | "none";
95
105
  type NoUnusedVarsFixMode = "off" | "suggestion" | "fix" | "safe-fix";
106
+ type NoUseBeforeDefineConfigJson = Nofunc | NoUseBeforeDefineConfig;
107
+ type Nofunc = "nofunc";
96
108
  type Location = "start" | "anywhere";
97
109
  /**
98
110
  * The rule takes a single string option: the name of the error parameter.
@@ -108,7 +120,10 @@ type Location = "start" | "anywhere";
108
120
  type HandleCallbackErrConfig = string;
109
121
  type ShorthandType = "always" | "methods" | "properties" | "consistent" | "consistent-as-needed" | "never";
110
122
  type Destructuring = "any" | "all";
123
+ type TerminationMethod = string | string[];
111
124
  type RadixType = "always" | "as-needed";
125
+ type NativeAllowList = AllKeyword | string[];
126
+ type AllKeyword = "all";
112
127
  /**
113
128
  * A forbidden prop, either as a plain prop name string or with options.
114
129
  */
@@ -131,18 +146,34 @@ type ForbidItem2 = string | {
131
146
  message?: string;
132
147
  };
133
148
  type EnforceBooleanAttribute = "always" | "never";
149
+ type JsxCurlyBracePresenceConfig = JsxCurlyBracePresenceMode | JsxCurlyBracePresence;
150
+ type JsxCurlyBracePresenceMode = "always" | "never" | "ignore";
151
+ type JsxFilenameExtensionAllowMode = "always" | "as-needed";
134
152
  type FragmentMode = "syntax" | "element";
135
- type NoDidMountSetStateConfig = "allowed" | "disallow-in-func";
136
- type NoWillUpdateSetStateConfig = "allowed" | "disallow-in-func";
153
+ type EnforceDynamicLinksEnum = "always" | "never";
154
+ type IgnoreEnforceOption = "ignore" | "enforce";
155
+ type AllowedOrDisallowInFunc = "allowed" | "disallow-in-func";
137
156
  type RequireFlag = "u" | "v";
138
157
  type ImportKind = "none" | "all" | "multiple" | "single";
139
158
  /**
140
159
  * Sorting order for keys. Accepts "asc" for ascending or "desc" for descending.
141
160
  */
142
161
  type SortOrder = "desc" | "asc";
162
+ type ArrayOption = "array" | "array-simple" | "generic";
163
+ type ReadonlyArrayOption = "array" | "array-simple" | "generic";
164
+ type DirectiveConfigSchema = boolean | RequireDescription | {
165
+ descriptionFormat?: string;
166
+ };
167
+ type RequireDescription = "allow-with-description";
143
168
  type ClassLiteralPropertyStyleOption = "fields" | "getters";
169
+ type PreferGenericType = "constructor" | "type-annotation";
144
170
  type ConsistentIndexedObjectStyleConfig = "record" | "index-signature";
171
+ type ArrayLiteralTypeAssertions = "allow" | "allow-as-parameter" | "never";
172
+ type AssertionStyle = "as" | "angle-bracket" | "never";
173
+ type ObjectLiteralTypeAssertions = "allow" | "allow-as-parameter" | "never";
145
174
  type ConsistentTypeDefinitionsConfig = "interface" | "type";
175
+ type FixStyle = "separate-type-imports" | "inline-type-imports";
176
+ type Prefer = "type-imports" | "no-type-imports";
146
177
  type AccessibilityLevel = "explicit" | "no-public" | "off";
147
178
  type MethodSignatureStyleConfig = "property" | "method";
148
179
  /**
@@ -182,14 +213,103 @@ type FileFrom = "file";
182
213
  type NameSpecifier = string | string[];
183
214
  type LibFrom = "lib";
184
215
  type PackageFrom = "package";
216
+ type AllowInterfaces = "never" | "always" | "with-single-extends";
217
+ type AllowObjectTypes = "never" | "always";
218
+ type AllowInGenericTypeArguments = boolean | string[];
219
+ type ChecksVoidReturn = boolean | ChecksVoidReturnOptions;
220
+ /**
221
+ * Represents the different ways a ban config can be specified in JSON.
222
+ * Can be:
223
+ * - `true` - ban with default message
224
+ * - A string - ban with custom message
225
+ * - An object with `message` and optional `fixWith` and `suggest`
226
+ */
227
+ type BanConfigValue = True | string | {
228
+ /**
229
+ * Replacement type for automatic fixing. Applied directly with `--fix`.
230
+ */
231
+ fixWith?: string;
232
+ /**
233
+ * Custom message explaining why the type is banned.
234
+ */
235
+ message?: string;
236
+ /**
237
+ * Suggested replacement types for manual review. Shown as editor suggestions.
238
+ */
239
+ suggest?: string[];
240
+ };
241
+ type True = true;
242
+ /**
243
+ * Represents the different ways `allowConstantLoopConditions` can be specified in JSON.
244
+ * Can be:
245
+ * - `true` or `false`
246
+ * - A string enum (`"never"`, `"always"`, `"only-allowed-literals"`)
247
+ */
248
+ type AllowConstantLoopConditions = boolean | AllowConstantLoopConditionsMode;
249
+ type AllowConstantLoopConditionsMode = "never" | "always" | "only-allowed-literals";
250
+ type Modifier = "private" | "private readonly" | "protected" | "protected readonly" | "public" | "public readonly" | "readonly";
251
+ type Prefer2 = "class-property" | "parameter-property";
252
+ /**
253
+ * Represents the different ways `ignorePrimitives` can be specified in JSON.
254
+ * Can be:
255
+ * - `true` - ignore all primitive types
256
+ * - An object specifying which primitives to ignore
257
+ */
258
+ type IgnorePrimitives = boolean | IgnorePrimitivesOptions;
259
+ type AllowSingleElementEquality = "always" | "never";
185
260
  type ReturnAwaitOption = "in-try-catch" | "always" | "error-handling-correctness-only" | "never";
261
+ type PathOption = "always" | "never";
262
+ type TypesOption = "always" | "never" | "prefer-import";
186
263
  type BomOptionType = "always" | "never";
264
+ type NonZero = "greater-than" | "not-equal";
265
+ type ModuleStylesOverride = false | {
266
+ /**
267
+ * Whether default imports or whole-module `require()` assignments are allowed for this module.
268
+ *
269
+ * With `{ "styles": { "chalk": { "default": true } } }`, this is valid:
270
+ * ```js
271
+ * import chalk from "chalk";
272
+ * ```
273
+ */
274
+ default?: boolean;
275
+ /**
276
+ * Whether named imports or destructured `require()` calls are allowed for this module.
277
+ *
278
+ * With `{ "styles": { "node:util": { "named": true } } }`, this is valid:
279
+ * ```js
280
+ * import {promisify} from "node:util";
281
+ * ```
282
+ */
283
+ named?: boolean;
284
+ /**
285
+ * Whether namespace imports or whole-module `require()` assignments are allowed for this module.
286
+ *
287
+ * With `{ "styles": { "node:fs": { "namespace": true } } }`, this is valid:
288
+ * ```js
289
+ * import * as fs from "node:fs";
290
+ * ```
291
+ */
292
+ namespace?: boolean;
293
+ /**
294
+ * Whether side-effect imports or unassigned dynamic imports/requires are allowed for this module.
295
+ *
296
+ * With `{ "styles": { "polyfill": { "unassigned": true } } }`, this is valid:
297
+ * ```js
298
+ * import "polyfill";
299
+ * ```
300
+ */
301
+ unassigned?: boolean;
302
+ };
303
+ type NoInstanceofBuiltinsStrategy = "strict" | "loose";
187
304
  type PreferTernaryOption = "always" | "only-single-line";
188
305
  type RelativeUrlStyleConfig = "never" | "always";
189
306
  type SwitchCaseBracesConfig = "always" | "avoid";
307
+ type MemberNames = "for" | "each";
308
+ type VitestFnName = "vi" | "vitest";
190
309
  type CaseType = "PascalCase" | "kebab-case";
191
310
  type DeclarationStyle = "type-based" | "type-literal" | "runtime";
192
311
  type DeclarationStyle2 = "type-based" | "runtime";
312
+ type Destructure = "only-when-assigned" | "always" | "never";
193
313
  type NextTickOption = "promise" | "callback";
194
314
  type CaseType2 = "camelCase" | "snake_case";
195
315
  type AllowYoda = "never" | "always";
@@ -646,86 +766,86 @@ interface OxlintOverride {
646
766
  * See [Oxlint Rules](https://oxc.rs/docs/guide/usage/linter/rules.html)
647
767
  */
648
768
  interface DummyRuleMap {
649
- "accessor-pairs"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AccessorPairsConfig];
650
- "array-callback-return"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ArrayCallbackReturn];
651
- "arrow-body-style"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, Mode2] | [AllowWarnDeny, Mode2, ArrowBodyStyleConfig];
769
+ "accessor-pairs"?: RuleNoConfig | [AllowWarnDeny, AccessorPairsConfig];
770
+ "array-callback-return"?: RuleNoConfig | [AllowWarnDeny, ArrayCallbackReturn];
771
+ "arrow-body-style"?: RuleNoConfig | [AllowWarnDeny, Mode2] | [AllowWarnDeny, Mode2, ArrowBodyStyleConfig];
652
772
  "block-scoped-var"?: RuleNoConfig;
653
- "capitalized-comments"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AlwaysNever] | [AllowWarnDeny, AlwaysNever, OptionsJsonDoc];
654
- "class-methods-use-this"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ClassMethodsUseThisConfig];
655
- complexity?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, number | ComplexityConfig];
773
+ "capitalized-comments"?: RuleNoConfig | [AllowWarnDeny, AlwaysNever] | [AllowWarnDeny, AlwaysNever, OptionsJsonEnum];
774
+ "class-methods-use-this"?: RuleNoConfig | [AllowWarnDeny, ClassMethodsUseThisConfig];
775
+ complexity?: RuleNoConfig | [AllowWarnDeny, number | ComplexityConfig];
656
776
  "constructor-super"?: RuleNoConfig;
657
- curly?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, CurlyType] | [AllowWarnDeny, CurlyType, CurlyConsistent];
658
- "default-case"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, DefaultCaseConfig];
777
+ curly?: RuleNoConfig | [AllowWarnDeny, CurlyType] | [AllowWarnDeny, CurlyType, CurlyConsistent];
778
+ "default-case"?: RuleNoConfig | [AllowWarnDeny, DefaultCaseConfig];
659
779
  "default-case-last"?: RuleNoConfig;
660
780
  "default-param-last"?: RuleNoConfig;
661
- eqeqeq?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, CompareType] | [AllowWarnDeny, CompareType, EqeqeqOptions];
781
+ eqeqeq?: RuleNoConfig | [AllowWarnDeny, CompareType] | [AllowWarnDeny, CompareType, EqeqeqOptions];
662
782
  "for-direction"?: RuleNoConfig;
663
783
  "func-name-matching"?: DummyRule;
664
- "func-names"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, FuncNamesConfigType] | [AllowWarnDeny, FuncNamesConfigType, FuncNamesGeneratorsConfig];
665
- "func-style"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, Style] | [AllowWarnDeny, Style, FuncStyleConfig];
666
- "getter-return"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, GetterReturn];
667
- "grouped-accessor-pairs"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PairOrder] | [AllowWarnDeny, PairOrder, GroupedAccessorPairsConfig];
784
+ "func-names"?: RuleNoConfig | [AllowWarnDeny, FuncNamesConfigType] | [AllowWarnDeny, FuncNamesConfigType, FuncNamesGeneratorsConfig];
785
+ "func-style"?: RuleNoConfig | [AllowWarnDeny, Style] | [AllowWarnDeny, Style, FuncStyleConfig];
786
+ "getter-return"?: RuleNoConfig | [AllowWarnDeny, GetterReturn];
787
+ "grouped-accessor-pairs"?: RuleNoConfig | [AllowWarnDeny, PairOrder] | [AllowWarnDeny, PairOrder, GroupedAccessorPairsConfig];
668
788
  "guard-for-in"?: RuleNoConfig;
669
- "id-length"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, IdLengthConfig];
670
- "id-match"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, string] | [AllowWarnDeny, string, IdMatchOptions];
671
- "import/consistent-type-specifier-style"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, Mode];
789
+ "id-length"?: RuleNoConfig | [AllowWarnDeny, IdLengthConfig];
790
+ "id-match"?: RuleNoConfig | [AllowWarnDeny, string] | [AllowWarnDeny, string, IdMatchOptions];
791
+ "import/consistent-type-specifier-style"?: RuleNoConfig | [AllowWarnDeny, Mode];
672
792
  "import/default"?: RuleNoConfig;
673
793
  "import/export"?: RuleNoConfig;
674
794
  "import/exports-last"?: RuleNoConfig;
675
795
  "import/extensions"?: DummyRule;
676
- "import/first"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AbsoluteFirst];
796
+ "import/first"?: RuleNoConfig | [AllowWarnDeny, AbsoluteFirst];
677
797
  "import/group-exports"?: RuleNoConfig;
678
- "import/max-dependencies"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, MaxDependenciesConfigJson];
798
+ "import/max-dependencies"?: RuleNoConfig | [AllowWarnDeny, MaxDependenciesConfigJson];
679
799
  "import/named"?: RuleNoConfig;
680
- "import/namespace"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, Namespace];
681
- "import/newline-after-import"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NewlineAfterImport];
682
- "import/no-absolute-path"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoAbsolutePath];
800
+ "import/namespace"?: RuleNoConfig | [AllowWarnDeny, Namespace];
801
+ "import/newline-after-import"?: RuleNoConfig | [AllowWarnDeny, NewlineAfterImport];
802
+ "import/no-absolute-path"?: RuleNoConfig | [AllowWarnDeny, NoAbsolutePath];
683
803
  "import/no-amd"?: RuleNoConfig;
684
- "import/no-anonymous-default-export"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoAnonymousDefaultExport];
685
- "import/no-commonjs"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoCommonjs];
686
- "import/no-cycle"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoCycle];
804
+ "import/no-anonymous-default-export"?: RuleNoConfig | [AllowWarnDeny, NoAnonymousDefaultExport];
805
+ "import/no-commonjs"?: RuleNoConfig | [AllowWarnDeny, NoCommonjs];
806
+ "import/no-cycle"?: RuleNoConfig | [AllowWarnDeny, NoCycle];
687
807
  "import/no-default-export"?: RuleNoConfig;
688
- "import/no-duplicates"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoDuplicates];
689
- "import/no-dynamic-require"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoDynamicRequire];
808
+ "import/no-duplicates"?: RuleNoConfig | [AllowWarnDeny, NoDuplicates];
809
+ "import/no-dynamic-require"?: RuleNoConfig | [AllowWarnDeny, NoDynamicRequire];
690
810
  "import/no-empty-named-blocks"?: RuleNoConfig;
691
811
  "import/no-mutable-exports"?: RuleNoConfig;
692
812
  "import/no-named-as-default"?: RuleNoConfig;
693
813
  "import/no-named-as-default-member"?: RuleNoConfig;
694
814
  "import/no-named-default"?: RuleNoConfig;
695
815
  "import/no-named-export"?: RuleNoConfig;
696
- "import/no-namespace"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoNamespaceConfig];
697
- "import/no-nodejs-modules"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoNodejsModulesConfig];
816
+ "import/no-namespace"?: RuleNoConfig | [AllowWarnDeny, NoNamespaceConfig];
817
+ "import/no-nodejs-modules"?: RuleNoConfig | [AllowWarnDeny, NoNodejsModulesConfig];
698
818
  "import/no-relative-parent-imports"?: RuleNoConfig;
699
819
  "import/no-self-import"?: RuleNoConfig;
700
- "import/no-unassigned-import"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnassignedImportConfig];
820
+ "import/no-unassigned-import"?: RuleNoConfig | [AllowWarnDeny, NoUnassignedImportConfig];
701
821
  "import/no-webpack-loader-syntax"?: RuleNoConfig;
702
- "import/prefer-default-export"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferDefaultExport];
822
+ "import/prefer-default-export"?: RuleNoConfig | [AllowWarnDeny, PreferDefaultExport];
703
823
  "import/unambiguous"?: RuleNoConfig;
704
- "init-declarations"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AlwaysNever] | [AllowWarnDeny, AlwaysNever, InitDeclarationsConfig];
705
- "jest/consistent-test-it"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ConsistentTestItConfig];
706
- "jest/expect-expect"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ExpectExpectConfig];
707
- "jest/max-expects"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, MaxExpectsConfig];
708
- "jest/max-nested-describe"?: DummyRule;
824
+ "init-declarations"?: RuleNoConfig | [AllowWarnDeny, AlwaysNever] | [AllowWarnDeny, AlwaysNever, InitDeclarationsConfig];
825
+ "jest/consistent-test-it"?: RuleNoConfig | [AllowWarnDeny, ConsistentTestItConfig];
826
+ "jest/expect-expect"?: RuleNoConfig | [AllowWarnDeny, ExpectExpectConfig];
827
+ "jest/max-expects"?: RuleNoConfig | [AllowWarnDeny, MaxExpectsConfig];
828
+ "jest/max-nested-describe"?: RuleNoConfig | [AllowWarnDeny, MaxNestedDescribeConfig];
709
829
  "jest/no-alias-methods"?: RuleNoConfig;
710
830
  "jest/no-commented-out-tests"?: RuleNoConfig;
711
831
  "jest/no-conditional-expect"?: RuleNoConfig;
712
832
  "jest/no-conditional-in-test"?: RuleNoConfig;
713
833
  "jest/no-confusing-set-timeout"?: RuleNoConfig;
714
- "jest/no-deprecated-functions"?: DummyRule;
834
+ "jest/no-deprecated-functions"?: RuleNoConfig | [AllowWarnDeny, NoDeprecatedFunctionsConfig];
715
835
  "jest/no-disabled-tests"?: RuleNoConfig;
716
836
  "jest/no-done-callback"?: RuleNoConfig;
717
837
  "jest/no-duplicate-hooks"?: RuleNoConfig;
718
838
  "jest/no-export"?: RuleNoConfig;
719
839
  "jest/no-focused-tests"?: RuleNoConfig;
720
- "jest/no-hooks"?: DummyRule;
840
+ "jest/no-hooks"?: RuleNoConfig | [AllowWarnDeny, NoHooksConfig];
721
841
  "jest/no-identical-title"?: RuleNoConfig;
722
842
  "jest/no-interpolation-in-snapshots"?: RuleNoConfig;
723
843
  "jest/no-jasmine-globals"?: RuleNoConfig;
724
- "jest/no-large-snapshots"?: DummyRule;
844
+ "jest/no-large-snapshots"?: RuleNoConfig | [AllowWarnDeny, NoLargeSnapshotsConfig];
725
845
  "jest/no-mocks-import"?: RuleNoConfig;
726
- "jest/no-restricted-jest-methods"?: DummyRule;
727
- "jest/no-restricted-matchers"?: DummyRule;
728
- "jest/no-standalone-expect"?: DummyRule;
846
+ "jest/no-restricted-jest-methods"?: RuleNoConfig | [AllowWarnDeny, NoRestrictedTestMethodsConfig];
847
+ "jest/no-restricted-matchers"?: RuleNoConfig | [AllowWarnDeny, NoRestrictedMatchersConfig];
848
+ "jest/no-standalone-expect"?: RuleNoConfig | [AllowWarnDeny, NoStandaloneExpectConfig];
729
849
  "jest/no-test-prefixes"?: RuleNoConfig;
730
850
  "jest/no-test-return-statement"?: RuleNoConfig;
731
851
  "jest/no-unneeded-async-expect-function"?: RuleNoConfig;
@@ -735,18 +855,18 @@ interface DummyRuleMap {
735
855
  "jest/prefer-called-with"?: RuleNoConfig;
736
856
  "jest/prefer-comparison-matcher"?: RuleNoConfig;
737
857
  "jest/prefer-each"?: RuleNoConfig;
738
- "jest/prefer-ending-with-an-expect"?: DummyRule;
858
+ "jest/prefer-ending-with-an-expect"?: RuleNoConfig | [AllowWarnDeny, PreferEndingWithAnExpectConfig];
739
859
  "jest/prefer-equality-matcher"?: RuleNoConfig;
740
- "jest/prefer-expect-assertions"?: DummyRule;
860
+ "jest/prefer-expect-assertions"?: RuleNoConfig | [AllowWarnDeny, PreferExpectAssertionsConfig];
741
861
  "jest/prefer-expect-resolves"?: RuleNoConfig;
742
862
  "jest/prefer-hooks-in-order"?: RuleNoConfig;
743
863
  "jest/prefer-hooks-on-top"?: RuleNoConfig;
744
- "jest/prefer-importing-jest-globals"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferImportingJestGlobalsConfig];
864
+ "jest/prefer-importing-jest-globals"?: RuleNoConfig | [AllowWarnDeny, PreferImportingJestGlobalsConfig];
745
865
  "jest/prefer-jest-mocked"?: RuleNoConfig;
746
866
  "jest/prefer-lowercase-title"?: DummyRule;
747
867
  "jest/prefer-mock-promise-shorthand"?: RuleNoConfig;
748
868
  "jest/prefer-mock-return-shorthand"?: RuleNoConfig;
749
- "jest/prefer-snapshot-hint"?: DummyRule;
869
+ "jest/prefer-snapshot-hint"?: RuleNoConfig | [AllowWarnDeny, SnapshotHintMode];
750
870
  "jest/prefer-spy-on"?: RuleNoConfig;
751
871
  "jest/prefer-strict-equal"?: RuleNoConfig;
752
872
  "jest/prefer-to-be"?: RuleNoConfig;
@@ -755,19 +875,19 @@ interface DummyRuleMap {
755
875
  "jest/prefer-to-have-been-called-times"?: RuleNoConfig;
756
876
  "jest/prefer-to-have-length"?: RuleNoConfig;
757
877
  "jest/prefer-todo"?: RuleNoConfig;
758
- "jest/require-hook"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RequireHookConfig];
878
+ "jest/require-hook"?: RuleNoConfig | [AllowWarnDeny, RequireHookConfig];
759
879
  "jest/require-to-throw-message"?: RuleNoConfig;
760
- "jest/require-top-level-describe"?: DummyRule;
880
+ "jest/require-top-level-describe"?: RuleNoConfig | [AllowWarnDeny, RequireTopLevelDescribeConfig];
761
881
  "jest/valid-describe-callback"?: RuleNoConfig;
762
- "jest/valid-expect"?: DummyRule;
882
+ "jest/valid-expect"?: RuleNoConfig | [AllowWarnDeny, ValidExpectConfig];
763
883
  "jest/valid-expect-in-promise"?: RuleNoConfig;
764
884
  "jest/valid-title"?: DummyRule;
765
885
  "jsdoc/check-access"?: RuleNoConfig;
766
886
  "jsdoc/check-property-names"?: RuleNoConfig;
767
- "jsdoc/check-tag-names"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, CheckTagNamesConfig];
768
- "jsdoc/empty-tags"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, EmptyTagsConfig];
887
+ "jsdoc/check-tag-names"?: RuleNoConfig | [AllowWarnDeny, CheckTagNamesConfig];
888
+ "jsdoc/empty-tags"?: RuleNoConfig | [AllowWarnDeny, EmptyTagsConfig];
769
889
  "jsdoc/implements-on-classes"?: RuleNoConfig;
770
- "jsdoc/no-defaults"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoDefaultsConfig];
890
+ "jsdoc/no-defaults"?: RuleNoConfig | [AllowWarnDeny, NoDefaultsConfig];
771
891
  "jsdoc/require-param"?: DummyRule;
772
892
  "jsdoc/require-param-description"?: RuleNoConfig;
773
893
  "jsdoc/require-param-name"?: RuleNoConfig;
@@ -776,59 +896,59 @@ interface DummyRuleMap {
776
896
  "jsdoc/require-property-description"?: RuleNoConfig;
777
897
  "jsdoc/require-property-name"?: RuleNoConfig;
778
898
  "jsdoc/require-property-type"?: RuleNoConfig;
779
- "jsdoc/require-returns"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RequireReturnsConfig];
899
+ "jsdoc/require-returns"?: RuleNoConfig | [AllowWarnDeny, RequireReturnsConfig];
780
900
  "jsdoc/require-returns-description"?: RuleNoConfig;
781
901
  "jsdoc/require-returns-type"?: RuleNoConfig;
782
902
  "jsdoc/require-throws-description"?: RuleNoConfig;
783
903
  "jsdoc/require-throws-type"?: RuleNoConfig;
784
- "jsdoc/require-yields"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RequireYieldsConfig];
904
+ "jsdoc/require-yields"?: RuleNoConfig | [AllowWarnDeny, RequireYieldsConfig];
785
905
  "jsdoc/require-yields-description"?: RuleNoConfig;
786
906
  "jsdoc/require-yields-type"?: RuleNoConfig;
787
- "jsx-a11y/alt-text"?: DummyRule;
788
- "jsx-a11y/anchor-ambiguous-text"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AnchorAmbiguousTextConfig];
907
+ "jsx-a11y/alt-text"?: RuleNoConfig | [AllowWarnDeny, AltTextConfigSchema];
908
+ "jsx-a11y/anchor-ambiguous-text"?: RuleNoConfig | [AllowWarnDeny, AnchorAmbiguousTextConfig];
789
909
  "jsx-a11y/anchor-has-content"?: RuleNoConfig;
790
910
  "jsx-a11y/anchor-is-valid"?: DummyRule;
791
911
  "jsx-a11y/aria-activedescendant-has-tabindex"?: RuleNoConfig;
792
912
  "jsx-a11y/aria-props"?: RuleNoConfig;
793
913
  "jsx-a11y/aria-proptypes"?: RuleNoConfig;
794
- "jsx-a11y/aria-role"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AriaRoleConfig];
914
+ "jsx-a11y/aria-role"?: RuleNoConfig | [AllowWarnDeny, AriaRoleConfig];
795
915
  "jsx-a11y/aria-unsupported-elements"?: RuleNoConfig;
796
- "jsx-a11y/autocomplete-valid"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AutocompleteValidConfig];
916
+ "jsx-a11y/autocomplete-valid"?: RuleNoConfig | [AllowWarnDeny, AutocompleteValidConfig];
797
917
  "jsx-a11y/click-events-have-key-events"?: RuleNoConfig;
798
- "jsx-a11y/control-has-associated-label"?: DummyRule;
799
- "jsx-a11y/heading-has-content"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, HeadingHasContentConfig];
918
+ "jsx-a11y/control-has-associated-label"?: RuleNoConfig | [AllowWarnDeny, ControlHasAssociatedLabelConfig];
919
+ "jsx-a11y/heading-has-content"?: RuleNoConfig | [AllowWarnDeny, HeadingHasContentConfig];
800
920
  "jsx-a11y/html-has-lang"?: RuleNoConfig;
801
921
  "jsx-a11y/iframe-has-title"?: RuleNoConfig;
802
- "jsx-a11y/img-redundant-alt"?: DummyRule;
803
- "jsx-a11y/interactive-supports-focus"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, InteractiveSupportsFocusConfig];
804
- "jsx-a11y/label-has-associated-control"?: DummyRule;
922
+ "jsx-a11y/img-redundant-alt"?: RuleNoConfig | [AllowWarnDeny, ImgRedundantAltConfig];
923
+ "jsx-a11y/interactive-supports-focus"?: RuleNoConfig | [AllowWarnDeny, InteractiveSupportsFocusConfig];
924
+ "jsx-a11y/label-has-associated-control"?: RuleNoConfig | [AllowWarnDeny, LabelHasAssociatedControlConfig];
805
925
  "jsx-a11y/lang"?: RuleNoConfig;
806
- "jsx-a11y/media-has-caption"?: DummyRule;
807
- "jsx-a11y/mouse-events-have-key-events"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, MouseEventsHaveKeyEventsConfig];
926
+ "jsx-a11y/media-has-caption"?: RuleNoConfig | [AllowWarnDeny, MediaHasCaptionConfig];
927
+ "jsx-a11y/mouse-events-have-key-events"?: RuleNoConfig | [AllowWarnDeny, MouseEventsHaveKeyEventsConfig];
808
928
  "jsx-a11y/no-access-key"?: RuleNoConfig;
809
929
  "jsx-a11y/no-aria-hidden-on-focusable"?: RuleNoConfig;
810
- "jsx-a11y/no-autofocus"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoAutofocus];
811
- "jsx-a11y/no-distracting-elements"?: DummyRule;
812
- "jsx-a11y/no-interactive-element-to-noninteractive-role"?: DummyRule;
930
+ "jsx-a11y/no-autofocus"?: RuleNoConfig | [AllowWarnDeny, NoAutofocus];
931
+ "jsx-a11y/no-distracting-elements"?: RuleNoConfig | [AllowWarnDeny, NoDistractingElementsConfig];
932
+ "jsx-a11y/no-interactive-element-to-noninteractive-role"?: RuleNoConfig | [AllowWarnDeny, NoInteractiveElementToNoninteractiveRoleConfig];
813
933
  "jsx-a11y/no-noninteractive-element-interactions"?: DummyRule;
814
- "jsx-a11y/no-noninteractive-element-to-interactive-role"?: DummyRule;
815
- "jsx-a11y/no-noninteractive-tabindex"?: DummyRule;
816
- "jsx-a11y/no-redundant-roles"?: RuleNoConfig;
817
- "jsx-a11y/no-static-element-interactions"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoStaticElementInteractionsConfig];
934
+ "jsx-a11y/no-noninteractive-element-to-interactive-role"?: RuleNoConfig | [AllowWarnDeny, NoNoninteractiveElementToInteractiveRoleConfig];
935
+ "jsx-a11y/no-noninteractive-tabindex"?: RuleNoConfig | [AllowWarnDeny, NoNoninteractiveTabindexConfig];
936
+ "jsx-a11y/no-redundant-roles"?: RuleNoConfig | [AllowWarnDeny, NoRedundantRolesConfig];
937
+ "jsx-a11y/no-static-element-interactions"?: RuleNoConfig | [AllowWarnDeny, NoStaticElementInteractionsConfig];
818
938
  "jsx-a11y/prefer-tag-over-role"?: RuleNoConfig;
819
939
  "jsx-a11y/role-has-required-aria-props"?: RuleNoConfig;
820
940
  "jsx-a11y/role-supports-aria-props"?: RuleNoConfig;
821
941
  "jsx-a11y/scope"?: RuleNoConfig;
822
942
  "jsx-a11y/tabindex-no-positive"?: RuleNoConfig;
823
- "logical-assignment-operators"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AlwaysNever] | [AllowWarnDeny, AlwaysNever, LogicalAssignmentOperatorsConfig];
824
- "max-classes-per-file"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, number | MaxClassesPerFileConfig];
825
- "max-depth"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, number | MaxDepth];
826
- "max-lines"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, number | MaxLinesConfig];
827
- "max-lines-per-function"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, number | MaxLinesPerFunctionConfig];
828
- "max-nested-callbacks"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, number | MaxNestedCallbacks];
829
- "max-params"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, number | MaxParamsConfig];
830
- "max-statements"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, number | MaxStatementsConfig];
831
- "new-cap"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NewCapConfig];
943
+ "logical-assignment-operators"?: RuleNoConfig | [AllowWarnDeny, AlwaysNever] | [AllowWarnDeny, AlwaysNever, LogicalAssignmentOperatorsConfig];
944
+ "max-classes-per-file"?: RuleNoConfig | [AllowWarnDeny, number | MaxClassesPerFileConfig];
945
+ "max-depth"?: RuleNoConfig | [AllowWarnDeny, number | MaxDepth];
946
+ "max-lines"?: RuleNoConfig | [AllowWarnDeny, number | MaxLinesConfig];
947
+ "max-lines-per-function"?: RuleNoConfig | [AllowWarnDeny, number | MaxLinesPerFunctionConfig];
948
+ "max-nested-callbacks"?: RuleNoConfig | [AllowWarnDeny, number | MaxNestedCallbacks];
949
+ "max-params"?: RuleNoConfig | [AllowWarnDeny, number | MaxParamsConfig];
950
+ "max-statements"?: RuleNoConfig | [AllowWarnDeny, number | MaxStatementsConfig];
951
+ "new-cap"?: RuleNoConfig | [AllowWarnDeny, NewCapConfig];
832
952
  "nextjs/google-font-display"?: RuleNoConfig;
833
953
  "nextjs/google-font-preconnect"?: RuleNoConfig;
834
954
  "nextjs/inline-script-id"?: RuleNoConfig;
@@ -854,16 +974,16 @@ interface DummyRuleMap {
854
974
  "no-array-constructor"?: RuleNoConfig;
855
975
  "no-async-promise-executor"?: RuleNoConfig;
856
976
  "no-await-in-loop"?: RuleNoConfig;
857
- "no-bitwise"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoBitwiseConfig];
977
+ "no-bitwise"?: RuleNoConfig | [AllowWarnDeny, NoBitwiseConfig];
858
978
  "no-caller"?: RuleNoConfig;
859
979
  "no-case-declarations"?: RuleNoConfig;
860
980
  "no-class-assign"?: RuleNoConfig;
861
981
  "no-compare-neg-zero"?: RuleNoConfig;
862
- "no-cond-assign"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoCondAssignConfig];
863
- "no-console"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoConsoleConfig];
982
+ "no-cond-assign"?: RuleNoConfig | [AllowWarnDeny, NoCondAssignConfig];
983
+ "no-console"?: RuleNoConfig | [AllowWarnDeny, NoConsoleConfig];
864
984
  "no-const-assign"?: RuleNoConfig;
865
985
  "no-constant-binary-expression"?: RuleNoConfig;
866
- "no-constant-condition"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoConstantCondition];
986
+ "no-constant-condition"?: RuleNoConfig | [AllowWarnDeny, NoConstantCondition];
867
987
  "no-constructor-return"?: RuleNoConfig;
868
988
  "no-continue"?: RuleNoConfig;
869
989
  "no-control-regex"?: RuleNoConfig;
@@ -874,41 +994,41 @@ interface DummyRuleMap {
874
994
  "no-dupe-else-if"?: RuleNoConfig;
875
995
  "no-dupe-keys"?: RuleNoConfig;
876
996
  "no-duplicate-case"?: RuleNoConfig;
877
- "no-duplicate-imports"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoDuplicateImports];
878
- "no-else-return"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoElseReturn];
879
- "no-empty"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoEmpty];
997
+ "no-duplicate-imports"?: RuleNoConfig | [AllowWarnDeny, NoDuplicateImports];
998
+ "no-else-return"?: RuleNoConfig | [AllowWarnDeny, NoElseReturn];
999
+ "no-empty"?: RuleNoConfig | [AllowWarnDeny, NoEmpty];
880
1000
  "no-empty-character-class"?: RuleNoConfig;
881
- "no-empty-function"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoEmptyFunctionConfig];
882
- "no-empty-pattern"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoEmptyPattern];
1001
+ "no-empty-function"?: RuleNoConfig | [AllowWarnDeny, NoEmptyFunctionConfig];
1002
+ "no-empty-pattern"?: RuleNoConfig | [AllowWarnDeny, NoEmptyPattern];
883
1003
  "no-empty-static-block"?: RuleNoConfig;
884
1004
  "no-eq-null"?: RuleNoConfig;
885
- "no-eval"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoEval];
1005
+ "no-eval"?: RuleNoConfig | [AllowWarnDeny, NoEval];
886
1006
  "no-ex-assign"?: RuleNoConfig;
887
- "no-extend-native"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoExtendNativeConfig];
1007
+ "no-extend-native"?: RuleNoConfig | [AllowWarnDeny, NoExtendNativeConfig];
888
1008
  "no-extra-bind"?: RuleNoConfig;
889
- "no-extra-boolean-cast"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoExtraBooleanCast];
1009
+ "no-extra-boolean-cast"?: RuleNoConfig | [AllowWarnDeny, NoExtraBooleanCast];
890
1010
  "no-extra-label"?: RuleNoConfig;
891
- "no-fallthrough"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoFallthroughConfig];
1011
+ "no-fallthrough"?: RuleNoConfig | [AllowWarnDeny, NoFallthroughConfig];
892
1012
  "no-func-assign"?: RuleNoConfig;
893
- "no-global-assign"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoGlobalAssignConfig];
894
- "no-implicit-coercion"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoImplicitCoercionConfig];
895
- "no-implicit-globals"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoImplicitGlobalsConfig];
1013
+ "no-global-assign"?: RuleNoConfig | [AllowWarnDeny, NoGlobalAssignConfig];
1014
+ "no-implicit-coercion"?: RuleNoConfig | [AllowWarnDeny, NoImplicitCoercionConfig];
1015
+ "no-implicit-globals"?: RuleNoConfig | [AllowWarnDeny, NoImplicitGlobalsConfig];
896
1016
  "no-implied-eval"?: RuleNoConfig;
897
1017
  "no-import-assign"?: RuleNoConfig;
898
- "no-inline-comments"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoInlineCommentsConfig];
899
- "no-inner-declarations"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoInnerDeclarationsConfig] | [AllowWarnDeny, NoInnerDeclarationsConfig, NoInnerDeclarationsOptions];
900
- "no-invalid-regexp"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoInvalidRegexpConfig];
901
- "no-irregular-whitespace"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoIrregularWhitespaceConfig];
1018
+ "no-inline-comments"?: RuleNoConfig | [AllowWarnDeny, NoInlineCommentsConfig];
1019
+ "no-inner-declarations"?: RuleNoConfig | [AllowWarnDeny, NoInnerDeclarationsConfig] | [AllowWarnDeny, NoInnerDeclarationsConfig, NoInnerDeclarationsOptions];
1020
+ "no-invalid-regexp"?: RuleNoConfig | [AllowWarnDeny, NoInvalidRegexpConfig];
1021
+ "no-irregular-whitespace"?: RuleNoConfig | [AllowWarnDeny, NoIrregularWhitespaceConfig];
902
1022
  "no-iterator"?: RuleNoConfig;
903
1023
  "no-label-var"?: RuleNoConfig;
904
- "no-labels"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoLabels];
1024
+ "no-labels"?: RuleNoConfig | [AllowWarnDeny, NoLabels];
905
1025
  "no-lone-blocks"?: RuleNoConfig;
906
1026
  "no-lonely-if"?: RuleNoConfig;
907
1027
  "no-loop-func"?: RuleNoConfig;
908
1028
  "no-loss-of-precision"?: RuleNoConfig;
909
- "no-magic-numbers"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoMagicNumbersConfig];
910
- "no-misleading-character-class"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoMisleadingCharacterClass];
911
- "no-multi-assign"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoMultiAssign];
1029
+ "no-magic-numbers"?: RuleNoConfig | [AllowWarnDeny, NoMagicNumbersConfig];
1030
+ "no-misleading-character-class"?: RuleNoConfig | [AllowWarnDeny, NoMisleadingCharacterClass];
1031
+ "no-multi-assign"?: RuleNoConfig | [AllowWarnDeny, NoMultiAssign];
912
1032
  "no-multi-str"?: RuleNoConfig;
913
1033
  "no-negated-condition"?: RuleNoConfig;
914
1034
  "no-nested-ternary"?: RuleNoConfig;
@@ -919,69 +1039,69 @@ interface DummyRuleMap {
919
1039
  "no-nonoctal-decimal-escape"?: RuleNoConfig;
920
1040
  "no-obj-calls"?: RuleNoConfig;
921
1041
  "no-object-constructor"?: RuleNoConfig;
922
- "no-param-reassign"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoParamReassignConfig];
923
- "no-plusplus"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoPlusplus];
924
- "no-promise-executor-return"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoPromiseExecutorReturnConfig];
1042
+ "no-param-reassign"?: RuleNoConfig | [AllowWarnDeny, NoParamReassignConfig];
1043
+ "no-plusplus"?: RuleNoConfig | [AllowWarnDeny, NoPlusplus];
1044
+ "no-promise-executor-return"?: RuleNoConfig | [AllowWarnDeny, NoPromiseExecutorReturnConfig];
925
1045
  "no-proto"?: RuleNoConfig;
926
1046
  "no-prototype-builtins"?: RuleNoConfig;
927
- "no-redeclare"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoRedeclare];
1047
+ "no-redeclare"?: RuleNoConfig | [AllowWarnDeny, NoRedeclare];
928
1048
  "no-regex-spaces"?: RuleNoConfig;
929
- "no-restricted-exports"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoRestrictedExportsConfig];
1049
+ "no-restricted-exports"?: RuleNoConfig | [AllowWarnDeny, NoRestrictedExportsConfig];
930
1050
  "no-restricted-globals"?: DummyRule;
931
1051
  "no-restricted-imports"?: DummyRule;
932
1052
  "no-restricted-properties"?: DummyRule;
933
- "no-return-assign"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoReturnAssignMode];
1053
+ "no-return-assign"?: RuleNoConfig | [AllowWarnDeny, NoReturnAssignMode];
934
1054
  "no-script-url"?: RuleNoConfig;
935
- "no-self-assign"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoSelfAssign];
1055
+ "no-self-assign"?: RuleNoConfig | [AllowWarnDeny, NoSelfAssign];
936
1056
  "no-self-compare"?: RuleNoConfig;
937
- "no-sequences"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoSequences];
1057
+ "no-sequences"?: RuleNoConfig | [AllowWarnDeny, NoSequences];
938
1058
  "no-setter-return"?: RuleNoConfig;
939
- "no-shadow"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoShadowConfig];
940
- "no-shadow-restricted-names"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoShadowRestrictedNamesConfig];
1059
+ "no-shadow"?: RuleNoConfig | [AllowWarnDeny, NoShadowConfig];
1060
+ "no-shadow-restricted-names"?: RuleNoConfig | [AllowWarnDeny, NoShadowRestrictedNamesConfig];
941
1061
  "no-sparse-arrays"?: RuleNoConfig;
942
1062
  "no-template-curly-in-string"?: RuleNoConfig;
943
1063
  "no-ternary"?: RuleNoConfig;
944
1064
  "no-this-before-super"?: RuleNoConfig;
945
1065
  "no-throw-literal"?: RuleNoConfig;
946
1066
  "no-unassigned-vars"?: RuleNoConfig;
947
- "no-undef"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUndef];
1067
+ "no-undef"?: RuleNoConfig | [AllowWarnDeny, NoUndef];
948
1068
  "no-undefined"?: RuleNoConfig;
949
- "no-underscore-dangle"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnderscoreDangleConfig];
1069
+ "no-underscore-dangle"?: RuleNoConfig | [AllowWarnDeny, NoUnderscoreDangleConfig];
950
1070
  "no-unexpected-multiline"?: RuleNoConfig;
951
1071
  "no-unmodified-loop-condition"?: RuleNoConfig;
952
- "no-unneeded-ternary"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnneededTernary];
1072
+ "no-unneeded-ternary"?: RuleNoConfig | [AllowWarnDeny, NoUnneededTernary];
953
1073
  "no-unreachable"?: RuleNoConfig;
954
1074
  "no-unsafe-finally"?: RuleNoConfig;
955
- "no-unsafe-negation"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnsafeNegation];
956
- "no-unsafe-optional-chaining"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnsafeOptionalChaining];
957
- "no-unused-expressions"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnusedExpressionsConfig];
1075
+ "no-unsafe-negation"?: RuleNoConfig | [AllowWarnDeny, NoUnsafeNegation];
1076
+ "no-unsafe-optional-chaining"?: RuleNoConfig | [AllowWarnDeny, NoUnsafeOptionalChaining];
1077
+ "no-unused-expressions"?: RuleNoConfig | [AllowWarnDeny, NoUnusedExpressionsConfig];
958
1078
  "no-unused-labels"?: RuleNoConfig;
959
1079
  "no-unused-private-class-members"?: RuleNoConfig;
960
- "no-unused-vars"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnusedVarsConfig];
961
- "no-use-before-define"?: DummyRule;
1080
+ "no-unused-vars"?: RuleNoConfig | [AllowWarnDeny, NoUnusedVarsConfig];
1081
+ "no-use-before-define"?: RuleNoConfig | [AllowWarnDeny, NoUseBeforeDefineConfigJson];
962
1082
  "no-useless-assignment"?: RuleNoConfig;
963
1083
  "no-useless-backreference"?: RuleNoConfig;
964
1084
  "no-useless-call"?: RuleNoConfig;
965
1085
  "no-useless-catch"?: RuleNoConfig;
966
- "no-useless-computed-key"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUselessComputedKey];
1086
+ "no-useless-computed-key"?: RuleNoConfig | [AllowWarnDeny, NoUselessComputedKey];
967
1087
  "no-useless-concat"?: RuleNoConfig;
968
1088
  "no-useless-constructor"?: RuleNoConfig;
969
- "no-useless-escape"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUselessEscapeConfig];
970
- "no-useless-rename"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUselessRenameConfig];
1089
+ "no-useless-escape"?: RuleNoConfig | [AllowWarnDeny, NoUselessEscapeConfig];
1090
+ "no-useless-rename"?: RuleNoConfig | [AllowWarnDeny, NoUselessRenameConfig];
971
1091
  "no-useless-return"?: RuleNoConfig;
972
1092
  "no-var"?: RuleNoConfig;
973
- "no-void"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoVoid];
974
- "no-warning-comments"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoWarningCommentsConfigJson];
1093
+ "no-void"?: RuleNoConfig | [AllowWarnDeny, NoVoid];
1094
+ "no-warning-comments"?: RuleNoConfig | [AllowWarnDeny, NoWarningCommentsConfigJson];
975
1095
  "no-with"?: RuleNoConfig;
976
1096
  "node/callback-return"?: DummyRule;
977
1097
  "node/global-require"?: RuleNoConfig;
978
- "node/handle-callback-err"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, HandleCallbackErrConfig];
1098
+ "node/handle-callback-err"?: RuleNoConfig | [AllowWarnDeny, HandleCallbackErrConfig];
979
1099
  "node/no-exports-assign"?: RuleNoConfig;
980
1100
  "node/no-new-require"?: RuleNoConfig;
981
1101
  "node/no-path-concat"?: RuleNoConfig;
982
- "node/no-process-env"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoProcessEnvConfig];
983
- "object-shorthand"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ShorthandType] | [AllowWarnDeny, ShorthandType, ObjectShorthandOptions];
984
- "operator-assignment"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AlwaysNever];
1102
+ "node/no-process-env"?: RuleNoConfig | [AllowWarnDeny, NoProcessEnvConfig];
1103
+ "object-shorthand"?: RuleNoConfig | [AllowWarnDeny, ShorthandType] | [AllowWarnDeny, ShorthandType, ObjectShorthandOptions];
1104
+ "operator-assignment"?: RuleNoConfig | [AllowWarnDeny, AlwaysNever];
985
1105
  "oxc/approx-constant"?: RuleNoConfig;
986
1106
  "oxc/bad-array-method-on-arguments"?: RuleNoConfig;
987
1107
  "oxc/bad-bitwise-operator"?: RuleNoConfig;
@@ -998,177 +1118,179 @@ interface DummyRuleMap {
998
1118
  "oxc/missing-throw"?: RuleNoConfig;
999
1119
  "oxc/no-accumulating-spread"?: RuleNoConfig;
1000
1120
  "oxc/no-async-await"?: RuleNoConfig;
1001
- "oxc/no-async-endpoint-handlers"?: DummyRule;
1002
- "oxc/no-barrel-file"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoBarrelFile];
1121
+ "oxc/no-async-endpoint-handlers"?: RuleNoConfig | [AllowWarnDeny, NoAsyncEndpointHandlersConfig];
1122
+ "oxc/no-barrel-file"?: RuleNoConfig | [AllowWarnDeny, NoBarrelFile];
1003
1123
  "oxc/no-const-enum"?: RuleNoConfig;
1004
- "oxc/no-map-spread"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoMapSpreadConfig];
1005
- "oxc/no-optional-chaining"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoOptionalChainingConfig];
1006
- "oxc/no-rest-spread-properties"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoRestSpreadPropertiesOptions];
1124
+ "oxc/no-map-spread"?: RuleNoConfig | [AllowWarnDeny, NoMapSpreadConfig];
1125
+ "oxc/no-optional-chaining"?: RuleNoConfig | [AllowWarnDeny, NoOptionalChainingConfig];
1126
+ "oxc/no-rest-spread-properties"?: RuleNoConfig | [AllowWarnDeny, NoRestSpreadPropertiesOptions];
1007
1127
  "oxc/no-this-in-exported-function"?: RuleNoConfig;
1008
1128
  "oxc/number-arg-out-of-range"?: RuleNoConfig;
1009
1129
  "oxc/only-used-in-recursion"?: RuleNoConfig;
1010
1130
  "oxc/uninvoked-array-callback"?: RuleNoConfig;
1011
- "prefer-arrow-callback"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferArrowCallbackConfig];
1012
- "prefer-const"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferConstConfig];
1131
+ "prefer-arrow-callback"?: RuleNoConfig | [AllowWarnDeny, PreferArrowCallbackConfig];
1132
+ "prefer-const"?: RuleNoConfig | [AllowWarnDeny, PreferConstConfig];
1013
1133
  "prefer-destructuring"?: DummyRule;
1014
1134
  "prefer-exponentiation-operator"?: RuleNoConfig;
1015
1135
  "prefer-named-capture-group"?: RuleNoConfig;
1016
1136
  "prefer-numeric-literals"?: RuleNoConfig;
1017
1137
  "prefer-object-has-own"?: RuleNoConfig;
1018
1138
  "prefer-object-spread"?: RuleNoConfig;
1019
- "prefer-promise-reject-errors"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferPromiseRejectErrors];
1020
- "prefer-regex-literals"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferRegexLiteralsConfig];
1139
+ "prefer-promise-reject-errors"?: RuleNoConfig | [AllowWarnDeny, PreferPromiseRejectErrors];
1140
+ "prefer-regex-literals"?: RuleNoConfig | [AllowWarnDeny, PreferRegexLiteralsConfig];
1021
1141
  "prefer-rest-params"?: RuleNoConfig;
1022
1142
  "prefer-spread"?: RuleNoConfig;
1023
1143
  "prefer-template"?: RuleNoConfig;
1024
- "preserve-caught-error"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreserveCaughtErrorOptions];
1025
- "promise/always-return"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AlwaysReturnConfig];
1144
+ "preserve-caught-error"?: RuleNoConfig | [AllowWarnDeny, PreserveCaughtErrorOptions];
1145
+ "promise/always-return"?: RuleNoConfig | [AllowWarnDeny, AlwaysReturnConfig];
1026
1146
  "promise/avoid-new"?: RuleNoConfig;
1027
- "promise/catch-or-return"?: DummyRule;
1028
- "promise/no-callback-in-promise"?: DummyRule;
1147
+ "promise/catch-or-return"?: RuleNoConfig | [AllowWarnDeny, CatchOrReturnConfig];
1148
+ "promise/no-callback-in-promise"?: RuleNoConfig | [AllowWarnDeny, NoCallbackInPromiseConfig];
1029
1149
  "promise/no-multiple-resolved"?: RuleNoConfig;
1030
1150
  "promise/no-nesting"?: RuleNoConfig;
1031
1151
  "promise/no-new-statics"?: RuleNoConfig;
1032
- "promise/no-promise-in-callback"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoPromiseInCallbackConfig];
1152
+ "promise/no-promise-in-callback"?: RuleNoConfig | [AllowWarnDeny, NoPromiseInCallbackConfig];
1033
1153
  "promise/no-return-in-finally"?: RuleNoConfig;
1034
- "promise/no-return-wrap"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoReturnWrap];
1035
- "promise/param-names"?: DummyRule;
1154
+ "promise/no-return-wrap"?: RuleNoConfig | [AllowWarnDeny, NoReturnWrap];
1155
+ "promise/param-names"?: RuleNoConfig | [AllowWarnDeny, ParamNamesConfig];
1036
1156
  "promise/prefer-await-to-callbacks"?: RuleNoConfig;
1037
- "promise/prefer-await-to-then"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferAwaitToThenConfig];
1157
+ "promise/prefer-await-to-then"?: RuleNoConfig | [AllowWarnDeny, PreferAwaitToThenConfig];
1038
1158
  "promise/prefer-catch"?: RuleNoConfig;
1039
- "promise/spec-only"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, SpecOnlyConfig];
1159
+ "promise/spec-only"?: RuleNoConfig | [AllowWarnDeny, SpecOnlyConfig];
1040
1160
  "promise/valid-params"?: RuleNoConfig;
1041
- radix?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RadixType];
1042
- "react-perf/jsx-no-jsx-as-prop"?: RuleNoConfig;
1043
- "react-perf/jsx-no-new-array-as-prop"?: RuleNoConfig;
1044
- "react-perf/jsx-no-new-function-as-prop"?: RuleNoConfig;
1045
- "react-perf/jsx-no-new-object-as-prop"?: DummyRule;
1046
- "react/button-has-type"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ButtonHasType];
1047
- "react/checked-requires-onchange-or-readonly"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, CheckedRequiresOnchangeOrReadonly];
1048
- "react/display-name"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, DisplayNameConfig];
1049
- "react/exhaustive-deps"?: DummyRule;
1050
- "react/forbid-component-props"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ForbidComponentPropsConfig];
1051
- "react/forbid-dom-props"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ForbidDomPropsConfig];
1052
- "react/forbid-elements"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ForbidElementsConfig];
1161
+ radix?: RuleNoConfig | [AllowWarnDeny, RadixType];
1162
+ "react-perf/jsx-no-jsx-as-prop"?: RuleNoConfig | [AllowWarnDeny, ReactPerfConfig];
1163
+ "react-perf/jsx-no-new-array-as-prop"?: RuleNoConfig | [AllowWarnDeny, ReactPerfConfig];
1164
+ "react-perf/jsx-no-new-function-as-prop"?: RuleNoConfig | [AllowWarnDeny, ReactPerfConfig];
1165
+ "react-perf/jsx-no-new-object-as-prop"?: RuleNoConfig | [AllowWarnDeny, ReactPerfConfig];
1166
+ "react/button-has-type"?: RuleNoConfig | [AllowWarnDeny, ButtonHasType];
1167
+ "react/checked-requires-onchange-or-readonly"?: RuleNoConfig | [AllowWarnDeny, CheckedRequiresOnchangeOrReadonly];
1168
+ "react/display-name"?: RuleNoConfig | [AllowWarnDeny, DisplayNameConfig];
1169
+ "react/exhaustive-deps"?: RuleNoConfig | [AllowWarnDeny, ExhaustiveDepsConfig];
1170
+ "react/forbid-component-props"?: RuleNoConfig | [AllowWarnDeny, ForbidComponentPropsConfig];
1171
+ "react/forbid-dom-props"?: RuleNoConfig | [AllowWarnDeny, ForbidDomPropsConfig];
1172
+ "react/forbid-elements"?: RuleNoConfig | [AllowWarnDeny, ForbidElementsConfig];
1053
1173
  "react/forward-ref-uses-ref"?: RuleNoConfig;
1054
- "react/hook-use-state"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, HookUseStateConfig];
1174
+ "react/hook-use-state"?: RuleNoConfig | [AllowWarnDeny, HookUseStateConfig];
1055
1175
  "react/iframe-missing-sandbox"?: RuleNoConfig;
1056
- "react/jsx-boolean-value"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, EnforceBooleanAttribute] | [AllowWarnDeny, EnforceBooleanAttribute, JsxBooleanValueOptions];
1057
- "react/jsx-curly-brace-presence"?: DummyRule;
1058
- "react/jsx-filename-extension"?: DummyRule;
1059
- "react/jsx-fragments"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, FragmentMode];
1060
- "react/jsx-handler-names"?: DummyRule;
1061
- "react/jsx-key"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, JsxKeyConfig];
1062
- "react/jsx-max-depth"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, JsxMaxDepthConfig];
1176
+ "react/jsx-boolean-value"?: RuleNoConfig | [AllowWarnDeny, EnforceBooleanAttribute] | [AllowWarnDeny, EnforceBooleanAttribute, JsxBooleanValueOptions];
1177
+ "react/jsx-curly-brace-presence"?: RuleNoConfig | [AllowWarnDeny, JsxCurlyBracePresenceConfig];
1178
+ "react/jsx-filename-extension"?: RuleNoConfig | [AllowWarnDeny, JsxFilenameExtensionConfig];
1179
+ "react/jsx-fragments"?: RuleNoConfig | [AllowWarnDeny, FragmentMode];
1180
+ "react/jsx-handler-names"?: RuleNoConfig | [AllowWarnDeny, JsxHandlerNamesConfig];
1181
+ "react/jsx-key"?: RuleNoConfig | [AllowWarnDeny, JsxKeyConfig];
1182
+ "react/jsx-max-depth"?: RuleNoConfig | [AllowWarnDeny, JsxMaxDepthConfig];
1063
1183
  "react/jsx-no-comment-textnodes"?: RuleNoConfig;
1064
1184
  "react/jsx-no-constructed-context-values"?: RuleNoConfig;
1065
1185
  "react/jsx-no-duplicate-props"?: RuleNoConfig;
1186
+ "react/jsx-no-literals"?: RuleNoConfig | [AllowWarnDeny, JsxNoLiteralsConfig];
1066
1187
  "react/jsx-no-script-url"?: DummyRule;
1067
- "react/jsx-no-target-blank"?: DummyRule;
1188
+ "react/jsx-no-target-blank"?: RuleNoConfig | [AllowWarnDeny, JsxNoTargetBlank];
1068
1189
  "react/jsx-no-undef"?: RuleNoConfig;
1069
- "react/jsx-no-useless-fragment"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, JsxNoUselessFragment];
1070
- "react/jsx-pascal-case"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, JsxPascalCaseConfig];
1190
+ "react/jsx-no-useless-fragment"?: RuleNoConfig | [AllowWarnDeny, JsxNoUselessFragment];
1191
+ "react/jsx-pascal-case"?: RuleNoConfig | [AllowWarnDeny, JsxPascalCaseConfig];
1071
1192
  "react/jsx-props-no-spread-multi"?: RuleNoConfig;
1072
- "react/jsx-props-no-spreading"?: DummyRule;
1193
+ "react/jsx-props-no-spreading"?: RuleNoConfig | [AllowWarnDeny, JsxPropsNoSpreadingConfig];
1073
1194
  "react/no-array-index-key"?: RuleNoConfig;
1074
1195
  "react/no-children-prop"?: RuleNoConfig;
1075
1196
  "react/no-clone-element"?: RuleNoConfig;
1076
1197
  "react/no-danger"?: RuleNoConfig;
1077
1198
  "react/no-danger-with-children"?: RuleNoConfig;
1078
- "react/no-did-mount-set-state"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoDidMountSetStateConfig];
1079
- "react/no-did-update-set-state"?: DummyRule;
1199
+ "react/no-did-mount-set-state"?: RuleNoConfig | [AllowWarnDeny, AllowedOrDisallowInFunc];
1200
+ "react/no-did-update-set-state"?: RuleNoConfig | [AllowWarnDeny, AllowedOrDisallowInFunc];
1080
1201
  "react/no-direct-mutation-state"?: RuleNoConfig;
1081
1202
  "react/no-find-dom-node"?: RuleNoConfig;
1082
1203
  "react/no-is-mounted"?: RuleNoConfig;
1083
- "react/no-multi-comp"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoMultiCompConfig];
1204
+ "react/no-multi-comp"?: RuleNoConfig | [AllowWarnDeny, NoMultiCompConfig];
1084
1205
  "react/no-namespace"?: RuleNoConfig;
1085
- "react/no-object-type-as-default-prop"?: DummyRule;
1206
+ "react/no-object-type-as-default-prop"?: RuleNoConfig;
1086
1207
  "react/no-react-children"?: RuleNoConfig;
1087
1208
  "react/no-redundant-should-component-update"?: RuleNoConfig;
1088
1209
  "react/no-render-return-value"?: RuleNoConfig;
1089
1210
  "react/no-set-state"?: RuleNoConfig;
1090
- "react/no-string-refs"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoStringRefs];
1211
+ "react/no-string-refs"?: RuleNoConfig | [AllowWarnDeny, NoStringRefs];
1091
1212
  "react/no-this-in-sfc"?: RuleNoConfig;
1092
1213
  "react/no-unescaped-entities"?: RuleNoConfig;
1093
- "react/no-unknown-property"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnknownPropertyConfig];
1094
- "react/no-unsafe"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnsafeConfig];
1095
- "react/no-unstable-nested-components"?: DummyRule;
1096
- "react/no-will-update-set-state"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoWillUpdateSetStateConfig];
1097
- "react/only-export-components"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, OnlyExportComponentsConfig];
1098
- "react/prefer-es6-class"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AlwaysNever];
1099
- "react/prefer-function-component"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferFunctionComponent];
1214
+ "react/no-unknown-property"?: RuleNoConfig | [AllowWarnDeny, NoUnknownPropertyConfig];
1215
+ "react/no-unsafe"?: RuleNoConfig | [AllowWarnDeny, NoUnsafeConfig];
1216
+ "react/no-unstable-nested-components"?: RuleNoConfig | [AllowWarnDeny, NoUnstableNestedComponentsConfig];
1217
+ "react/no-will-update-set-state"?: RuleNoConfig | [AllowWarnDeny, AllowedOrDisallowInFunc];
1218
+ "react/only-export-components"?: RuleNoConfig | [AllowWarnDeny, OnlyExportComponentsConfig];
1219
+ "react/prefer-es6-class"?: RuleNoConfig | [AllowWarnDeny, AlwaysNever];
1220
+ "react/prefer-function-component"?: RuleNoConfig | [AllowWarnDeny, PreferFunctionComponent];
1221
+ "react/react-compiler"?: RuleNoConfig | [AllowWarnDeny, ReactCompilerConfig];
1100
1222
  "react/react-in-jsx-scope"?: RuleNoConfig;
1101
1223
  "react/require-render-return"?: RuleNoConfig;
1102
1224
  "react/rules-of-hooks"?: RuleNoConfig;
1103
- "react/self-closing-comp"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, SelfClosingComp];
1104
- "react/state-in-constructor"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AlwaysNever];
1105
- "react/style-prop-object"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, StylePropObjectConfig];
1225
+ "react/self-closing-comp"?: RuleNoConfig | [AllowWarnDeny, SelfClosingComp];
1226
+ "react/state-in-constructor"?: RuleNoConfig | [AllowWarnDeny, AlwaysNever];
1227
+ "react/style-prop-object"?: RuleNoConfig | [AllowWarnDeny, StylePropObjectConfig];
1106
1228
  "react/void-dom-elements-no-children"?: RuleNoConfig;
1107
1229
  "require-await"?: RuleNoConfig;
1108
- "require-unicode-regexp"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RequireUnicodeRegexpConfig];
1230
+ "require-unicode-regexp"?: RuleNoConfig | [AllowWarnDeny, RequireUnicodeRegexpConfig];
1109
1231
  "require-yield"?: RuleNoConfig;
1110
- "sort-imports"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, SortImportsOptions];
1111
- "sort-keys"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, SortOrder] | [AllowWarnDeny, SortOrder, SortKeysOptions];
1112
- "sort-vars"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, SortVars];
1232
+ "sort-imports"?: RuleNoConfig | [AllowWarnDeny, SortImportsOptions];
1233
+ "sort-keys"?: RuleNoConfig | [AllowWarnDeny, SortOrder] | [AllowWarnDeny, SortOrder, SortKeysOptions];
1234
+ "sort-vars"?: RuleNoConfig | [AllowWarnDeny, SortVars];
1113
1235
  "symbol-description"?: RuleNoConfig;
1114
1236
  "typescript/adjacent-overload-signatures"?: RuleNoConfig;
1115
- "typescript/array-type"?: DummyRule;
1237
+ "typescript/array-type"?: RuleNoConfig | [AllowWarnDeny, ArrayTypeConfig];
1116
1238
  "typescript/await-thenable"?: RuleNoConfig;
1117
- "typescript/ban-ts-comment"?: DummyRule;
1239
+ "typescript/ban-ts-comment"?: RuleNoConfig | [AllowWarnDeny, BanTsCommentConfig];
1118
1240
  "typescript/ban-tslint-comment"?: RuleNoConfig;
1119
1241
  "typescript/ban-types"?: RuleNoConfig;
1120
- "typescript/class-literal-property-style"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ClassLiteralPropertyStyleOption];
1121
- "typescript/consistent-generic-constructors"?: DummyRule;
1122
- "typescript/consistent-indexed-object-style"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ConsistentIndexedObjectStyleConfig];
1123
- "typescript/consistent-return"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ConsistentReturnConfig];
1124
- "typescript/consistent-type-assertions"?: DummyRule;
1125
- "typescript/consistent-type-definitions"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ConsistentTypeDefinitionsConfig];
1126
- "typescript/consistent-type-exports"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ConsistentTypeExportsConfig];
1127
- "typescript/consistent-type-imports"?: DummyRule;
1128
- "typescript/dot-notation"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, DotNotationConfig];
1129
- "typescript/explicit-function-return-type"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ExplicitFunctionReturnTypeConfig];
1130
- "typescript/explicit-member-accessibility"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ExplicitMemberAccessibilityConfig];
1131
- "typescript/explicit-module-boundary-types"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ExplicitModuleBoundaryTypesConfig];
1132
- "typescript/method-signature-style"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, MethodSignatureStyleConfig];
1242
+ "typescript/class-literal-property-style"?: RuleNoConfig | [AllowWarnDeny, ClassLiteralPropertyStyleOption];
1243
+ "typescript/consistent-generic-constructors"?: RuleNoConfig | [AllowWarnDeny, PreferGenericType];
1244
+ "typescript/consistent-indexed-object-style"?: RuleNoConfig | [AllowWarnDeny, ConsistentIndexedObjectStyleConfig];
1245
+ "typescript/consistent-return"?: RuleNoConfig | [AllowWarnDeny, ConsistentReturnConfig];
1246
+ "typescript/consistent-type-assertions"?: RuleNoConfig | [AllowWarnDeny, ConsistentTypeAssertionsConfig];
1247
+ "typescript/consistent-type-definitions"?: RuleNoConfig | [AllowWarnDeny, ConsistentTypeDefinitionsConfig];
1248
+ "typescript/consistent-type-exports"?: RuleNoConfig | [AllowWarnDeny, ConsistentTypeExportsConfig];
1249
+ "typescript/consistent-type-imports"?: RuleNoConfig | [AllowWarnDeny, ConsistentTypeImportsConfig];
1250
+ "typescript/dot-notation"?: RuleNoConfig | [AllowWarnDeny, DotNotationConfig];
1251
+ "typescript/explicit-function-return-type"?: RuleNoConfig | [AllowWarnDeny, ExplicitFunctionReturnTypeConfig];
1252
+ "typescript/explicit-member-accessibility"?: RuleNoConfig | [AllowWarnDeny, ExplicitMemberAccessibilityConfig];
1253
+ "typescript/explicit-module-boundary-types"?: RuleNoConfig | [AllowWarnDeny, ExplicitModuleBoundaryTypesConfig];
1254
+ "typescript/method-signature-style"?: RuleNoConfig | [AllowWarnDeny, MethodSignatureStyleConfig];
1133
1255
  "typescript/no-array-delete"?: RuleNoConfig;
1134
- "typescript/no-base-to-string"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoBaseToStringConfig];
1256
+ "typescript/no-base-to-string"?: RuleNoConfig | [AllowWarnDeny, NoBaseToStringConfig];
1135
1257
  "typescript/no-confusing-non-null-assertion"?: RuleNoConfig;
1136
- "typescript/no-confusing-void-expression"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoConfusingVoidExpressionConfig];
1137
- "typescript/no-deprecated"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoDeprecatedConfig];
1258
+ "typescript/no-confusing-void-expression"?: RuleNoConfig | [AllowWarnDeny, NoConfusingVoidExpressionConfig];
1259
+ "typescript/no-deprecated"?: RuleNoConfig | [AllowWarnDeny, NoDeprecatedConfig];
1138
1260
  "typescript/no-duplicate-enum-values"?: RuleNoConfig;
1139
- "typescript/no-duplicate-type-constituents"?: DummyRule;
1261
+ "typescript/no-duplicate-type-constituents"?: RuleNoConfig | [AllowWarnDeny, NoDuplicateTypeConstituentsConfig];
1140
1262
  "typescript/no-dynamic-delete"?: RuleNoConfig;
1141
- "typescript/no-empty-interface"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoEmptyInterface];
1142
- "typescript/no-empty-object-type"?: DummyRule;
1143
- "typescript/no-explicit-any"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoExplicitAny];
1263
+ "typescript/no-empty-interface"?: RuleNoConfig | [AllowWarnDeny, NoEmptyInterface];
1264
+ "typescript/no-empty-object-type"?: RuleNoConfig | [AllowWarnDeny, NoEmptyObjectTypeConfig];
1265
+ "typescript/no-explicit-any"?: RuleNoConfig | [AllowWarnDeny, NoExplicitAny];
1144
1266
  "typescript/no-extra-non-null-assertion"?: RuleNoConfig;
1145
- "typescript/no-extraneous-class"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoExtraneousClass];
1146
- "typescript/no-floating-promises"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoFloatingPromisesConfig];
1267
+ "typescript/no-extraneous-class"?: RuleNoConfig | [AllowWarnDeny, NoExtraneousClass];
1268
+ "typescript/no-floating-promises"?: RuleNoConfig | [AllowWarnDeny, NoFloatingPromisesConfig];
1147
1269
  "typescript/no-for-in-array"?: RuleNoConfig;
1148
1270
  "typescript/no-implied-eval"?: RuleNoConfig;
1149
1271
  "typescript/no-import-type-side-effects"?: RuleNoConfig;
1150
- "typescript/no-inferrable-types"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoInferrableTypes];
1151
- "typescript/no-invalid-void-type"?: DummyRule;
1152
- "typescript/no-meaningless-void-operator"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoMeaninglessVoidOperatorConfig];
1272
+ "typescript/no-inferrable-types"?: RuleNoConfig | [AllowWarnDeny, NoInferrableTypes];
1273
+ "typescript/no-invalid-void-type"?: RuleNoConfig | [AllowWarnDeny, NoInvalidVoidTypeConfig];
1274
+ "typescript/no-meaningless-void-operator"?: RuleNoConfig | [AllowWarnDeny, NoMeaninglessVoidOperatorConfig];
1153
1275
  "typescript/no-misused-new"?: RuleNoConfig;
1154
- "typescript/no-misused-promises"?: DummyRule;
1155
- "typescript/no-misused-spread"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoMisusedSpreadConfig];
1276
+ "typescript/no-misused-promises"?: RuleNoConfig | [AllowWarnDeny, NoMisusedPromisesConfig];
1277
+ "typescript/no-misused-spread"?: RuleNoConfig | [AllowWarnDeny, NoMisusedSpreadConfig];
1156
1278
  "typescript/no-mixed-enums"?: RuleNoConfig;
1157
- "typescript/no-namespace"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoNamespace];
1279
+ "typescript/no-namespace"?: RuleNoConfig | [AllowWarnDeny, NoNamespace];
1158
1280
  "typescript/no-non-null-asserted-nullish-coalescing"?: RuleNoConfig;
1159
1281
  "typescript/no-non-null-asserted-optional-chain"?: RuleNoConfig;
1160
1282
  "typescript/no-non-null-assertion"?: RuleNoConfig;
1161
1283
  "typescript/no-redundant-type-constituents"?: RuleNoConfig;
1162
- "typescript/no-require-imports"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoRequireImportsConfig];
1163
- "typescript/no-restricted-types"?: DummyRule;
1164
- "typescript/no-this-alias"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoThisAliasConfig];
1165
- "typescript/no-unnecessary-boolean-literal-compare"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnnecessaryBooleanLiteralCompareConfig];
1166
- "typescript/no-unnecessary-condition"?: DummyRule;
1284
+ "typescript/no-require-imports"?: RuleNoConfig | [AllowWarnDeny, NoRequireImportsConfig];
1285
+ "typescript/no-restricted-types"?: RuleNoConfig | [AllowWarnDeny, NoRestrictedTypesConfig];
1286
+ "typescript/no-this-alias"?: RuleNoConfig | [AllowWarnDeny, NoThisAliasConfig];
1287
+ "typescript/no-unnecessary-boolean-literal-compare"?: RuleNoConfig | [AllowWarnDeny, NoUnnecessaryBooleanLiteralCompareConfig];
1288
+ "typescript/no-unnecessary-condition"?: RuleNoConfig | [AllowWarnDeny, NoUnnecessaryConditionConfig];
1167
1289
  "typescript/no-unnecessary-parameter-property-assignment"?: RuleNoConfig;
1168
1290
  "typescript/no-unnecessary-qualifier"?: RuleNoConfig;
1169
1291
  "typescript/no-unnecessary-template-expression"?: RuleNoConfig;
1170
1292
  "typescript/no-unnecessary-type-arguments"?: RuleNoConfig;
1171
- "typescript/no-unnecessary-type-assertion"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnnecessaryTypeAssertionConfig];
1293
+ "typescript/no-unnecessary-type-assertion"?: RuleNoConfig | [AllowWarnDeny, NoUnnecessaryTypeAssertionConfig];
1172
1294
  "typescript/no-unnecessary-type-constraint"?: RuleNoConfig;
1173
1295
  "typescript/no-unnecessary-type-conversion"?: RuleNoConfig;
1174
1296
  "typescript/no-unnecessary-type-parameters"?: RuleNoConfig;
@@ -1178,7 +1300,7 @@ interface DummyRuleMap {
1178
1300
  "typescript/no-unsafe-declaration-merging"?: RuleNoConfig;
1179
1301
  "typescript/no-unsafe-enum-comparison"?: RuleNoConfig;
1180
1302
  "typescript/no-unsafe-function-type"?: RuleNoConfig;
1181
- "typescript/no-unsafe-member-access"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUnsafeMemberAccessConfig];
1303
+ "typescript/no-unsafe-member-access"?: RuleNoConfig | [AllowWarnDeny, NoUnsafeMemberAccessConfig];
1182
1304
  "typescript/no-unsafe-return"?: RuleNoConfig;
1183
1305
  "typescript/no-unsafe-type-assertion"?: RuleNoConfig;
1184
1306
  "typescript/no-unsafe-unary-minus"?: RuleNoConfig;
@@ -1187,65 +1309,66 @@ interface DummyRuleMap {
1187
1309
  "typescript/no-var-requires"?: RuleNoConfig;
1188
1310
  "typescript/no-wrapper-object-types"?: RuleNoConfig;
1189
1311
  "typescript/non-nullable-type-assertion-style"?: RuleNoConfig;
1190
- "typescript/only-throw-error"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, OnlyThrowErrorConfig];
1191
- "typescript/parameter-properties"?: DummyRule;
1312
+ "typescript/only-throw-error"?: RuleNoConfig | [AllowWarnDeny, OnlyThrowErrorConfig];
1313
+ "typescript/parameter-properties"?: RuleNoConfig | [AllowWarnDeny, ParameterPropertiesConfig];
1192
1314
  "typescript/prefer-as-const"?: RuleNoConfig;
1193
1315
  "typescript/prefer-enum-initializers"?: RuleNoConfig;
1194
1316
  "typescript/prefer-find"?: RuleNoConfig;
1195
1317
  "typescript/prefer-for-of"?: RuleNoConfig;
1196
1318
  "typescript/prefer-function-type"?: RuleNoConfig;
1197
1319
  "typescript/prefer-includes"?: RuleNoConfig;
1198
- "typescript/prefer-literal-enum-member"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferLiteralEnumMember];
1320
+ "typescript/prefer-literal-enum-member"?: RuleNoConfig | [AllowWarnDeny, PreferLiteralEnumMember];
1199
1321
  "typescript/prefer-namespace-keyword"?: RuleNoConfig;
1200
- "typescript/prefer-nullish-coalescing"?: DummyRule;
1201
- "typescript/prefer-optional-chain"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferOptionalChainConfig];
1202
- "typescript/prefer-promise-reject-errors"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferPromiseRejectErrorsConfig];
1203
- "typescript/prefer-readonly"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferReadonlyConfig];
1204
- "typescript/prefer-readonly-parameter-types"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferReadonlyParameterTypesConfig];
1322
+ "typescript/prefer-nullish-coalescing"?: RuleNoConfig | [AllowWarnDeny, PreferNullishCoalescingConfig];
1323
+ "typescript/prefer-optional-chain"?: RuleNoConfig | [AllowWarnDeny, PreferOptionalChainConfig];
1324
+ "typescript/prefer-promise-reject-errors"?: RuleNoConfig | [AllowWarnDeny, PreferPromiseRejectErrorsConfig];
1325
+ "typescript/prefer-readonly"?: RuleNoConfig | [AllowWarnDeny, PreferReadonlyConfig];
1326
+ "typescript/prefer-readonly-parameter-types"?: RuleNoConfig | [AllowWarnDeny, PreferReadonlyParameterTypesConfig];
1205
1327
  "typescript/prefer-reduce-type-parameter"?: RuleNoConfig;
1206
1328
  "typescript/prefer-regexp-exec"?: RuleNoConfig;
1207
1329
  "typescript/prefer-return-this-type"?: RuleNoConfig;
1208
- "typescript/prefer-string-starts-ends-with"?: DummyRule;
1330
+ "typescript/prefer-string-starts-ends-with"?: RuleNoConfig | [AllowWarnDeny, PreferStringStartsEndsWithConfig];
1209
1331
  "typescript/prefer-ts-expect-error"?: RuleNoConfig;
1210
- "typescript/promise-function-async"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PromiseFunctionAsyncConfig];
1332
+ "typescript/promise-function-async"?: RuleNoConfig | [AllowWarnDeny, PromiseFunctionAsyncConfig];
1211
1333
  "typescript/related-getter-setter-pairs"?: RuleNoConfig;
1212
- "typescript/require-array-sort-compare"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RequireArraySortCompareConfig];
1334
+ "typescript/require-array-sort-compare"?: RuleNoConfig | [AllowWarnDeny, RequireArraySortCompareConfig];
1213
1335
  "typescript/require-await"?: RuleNoConfig;
1214
- "typescript/restrict-plus-operands"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RestrictPlusOperandsConfig];
1215
- "typescript/restrict-template-expressions"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RestrictTemplateExpressionsConfig];
1216
- "typescript/return-await"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ReturnAwaitOption];
1217
- "typescript/strict-boolean-expressions"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, StrictBooleanExpressionsConfig];
1218
- "typescript/strict-void-return"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, StrictVoidReturnConfig];
1219
- "typescript/switch-exhaustiveness-check"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, SwitchExhaustivenessCheckConfig];
1220
- "typescript/triple-slash-reference"?: DummyRule;
1221
- "typescript/unbound-method"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, UnboundMethodConfig];
1222
- "typescript/unified-signatures"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, UnifiedSignaturesOptions];
1336
+ "typescript/restrict-plus-operands"?: RuleNoConfig | [AllowWarnDeny, RestrictPlusOperandsConfig];
1337
+ "typescript/restrict-template-expressions"?: RuleNoConfig | [AllowWarnDeny, RestrictTemplateExpressionsConfig];
1338
+ "typescript/return-await"?: RuleNoConfig | [AllowWarnDeny, ReturnAwaitOption];
1339
+ "typescript/strict-boolean-expressions"?: RuleNoConfig | [AllowWarnDeny, StrictBooleanExpressionsConfig];
1340
+ "typescript/strict-void-return"?: RuleNoConfig | [AllowWarnDeny, StrictVoidReturnConfig];
1341
+ "typescript/switch-exhaustiveness-check"?: RuleNoConfig | [AllowWarnDeny, SwitchExhaustivenessCheckConfig];
1342
+ "typescript/triple-slash-reference"?: RuleNoConfig | [AllowWarnDeny, TripleSlashReferenceConfig];
1343
+ "typescript/unbound-method"?: RuleNoConfig | [AllowWarnDeny, UnboundMethodConfig];
1344
+ "typescript/unified-signatures"?: RuleNoConfig | [AllowWarnDeny, UnifiedSignaturesOptions];
1223
1345
  "typescript/use-unknown-in-catch-callback-variable"?: RuleNoConfig;
1224
- "unicode-bom"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, BomOptionType];
1225
- "unicorn/catch-error-name"?: DummyRule;
1346
+ "unicode-bom"?: RuleNoConfig | [AllowWarnDeny, BomOptionType];
1347
+ "unicorn/catch-error-name"?: RuleNoConfig | [AllowWarnDeny, CatchErrorNameConfig];
1226
1348
  "unicorn/consistent-assert"?: RuleNoConfig;
1227
1349
  "unicorn/consistent-date-clone"?: RuleNoConfig;
1228
1350
  "unicorn/consistent-empty-array-spread"?: RuleNoConfig;
1229
1351
  "unicorn/consistent-existence-index-check"?: RuleNoConfig;
1230
- "unicorn/consistent-function-scoping"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ConsistentFunctionScoping];
1352
+ "unicorn/consistent-function-scoping"?: RuleNoConfig | [AllowWarnDeny, ConsistentFunctionScoping];
1231
1353
  "unicorn/consistent-template-literal-escape"?: RuleNoConfig;
1232
1354
  "unicorn/custom-error-definition"?: RuleNoConfig;
1233
1355
  "unicorn/empty-brace-spaces"?: RuleNoConfig;
1234
1356
  "unicorn/error-message"?: RuleNoConfig;
1235
1357
  "unicorn/escape-case"?: RuleNoConfig;
1236
- "unicorn/explicit-length-check"?: DummyRule;
1358
+ "unicorn/explicit-length-check"?: RuleNoConfig | [AllowWarnDeny, ExplicitLengthCheck];
1237
1359
  "unicorn/filename-case"?: DummyRule;
1238
- "unicorn/import-style"?: DummyRule;
1360
+ "unicorn/import-style"?: RuleNoConfig | [AllowWarnDeny, ImportStyleConfig];
1239
1361
  "unicorn/new-for-builtins"?: RuleNoConfig;
1240
1362
  "unicorn/no-abusive-eslint-disable"?: RuleNoConfig;
1241
1363
  "unicorn/no-accessor-recursion"?: RuleNoConfig;
1242
1364
  "unicorn/no-anonymous-default-export"?: RuleNoConfig;
1243
1365
  "unicorn/no-array-callback-reference"?: RuleNoConfig;
1366
+ "unicorn/no-array-fill-with-reference-type"?: RuleNoConfig;
1244
1367
  "unicorn/no-array-for-each"?: RuleNoConfig;
1245
1368
  "unicorn/no-array-method-this-argument"?: RuleNoConfig;
1246
- "unicorn/no-array-reduce"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoArrayReduce];
1247
- "unicorn/no-array-reverse"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoArrayReverse];
1248
- "unicorn/no-array-sort"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoArraySort];
1369
+ "unicorn/no-array-reduce"?: RuleNoConfig | [AllowWarnDeny, NoArrayReduce];
1370
+ "unicorn/no-array-reverse"?: RuleNoConfig | [AllowWarnDeny, NoArrayReverse];
1371
+ "unicorn/no-array-sort"?: RuleNoConfig | [AllowWarnDeny, NoArraySort];
1249
1372
  "unicorn/no-await-expression-member"?: RuleNoConfig;
1250
1373
  "unicorn/no-await-in-promise-methods"?: RuleNoConfig;
1251
1374
  "unicorn/no-console-spaces"?: RuleNoConfig;
@@ -1254,7 +1377,7 @@ interface DummyRuleMap {
1254
1377
  "unicorn/no-hex-escape"?: RuleNoConfig;
1255
1378
  "unicorn/no-immediate-mutation"?: RuleNoConfig;
1256
1379
  "unicorn/no-instanceof-array"?: RuleNoConfig;
1257
- "unicorn/no-instanceof-builtins"?: DummyRule;
1380
+ "unicorn/no-instanceof-builtins"?: RuleNoConfig | [AllowWarnDeny, NoInstanceofBuiltinsConfig];
1258
1381
  "unicorn/no-invalid-fetch-options"?: RuleNoConfig;
1259
1382
  "unicorn/no-invalid-remove-event-listener"?: RuleNoConfig;
1260
1383
  "unicorn/no-length-as-slice-end"?: RuleNoConfig;
@@ -1265,14 +1388,14 @@ interface DummyRuleMap {
1265
1388
  "unicorn/no-nested-ternary"?: RuleNoConfig;
1266
1389
  "unicorn/no-new-array"?: RuleNoConfig;
1267
1390
  "unicorn/no-new-buffer"?: RuleNoConfig;
1268
- "unicorn/no-null"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoNull];
1391
+ "unicorn/no-null"?: RuleNoConfig | [AllowWarnDeny, NoNull];
1269
1392
  "unicorn/no-object-as-default-parameter"?: RuleNoConfig;
1270
1393
  "unicorn/no-process-exit"?: RuleNoConfig;
1271
1394
  "unicorn/no-single-promise-in-promise-methods"?: RuleNoConfig;
1272
1395
  "unicorn/no-static-only-class"?: RuleNoConfig;
1273
1396
  "unicorn/no-thenable"?: RuleNoConfig;
1274
1397
  "unicorn/no-this-assignment"?: RuleNoConfig;
1275
- "unicorn/no-typeof-undefined"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoTypeofUndefined];
1398
+ "unicorn/no-typeof-undefined"?: RuleNoConfig | [AllowWarnDeny, NoTypeofUndefined];
1276
1399
  "unicorn/no-unnecessary-array-flat-depth"?: RuleNoConfig;
1277
1400
  "unicorn/no-unnecessary-array-splice-count"?: RuleNoConfig;
1278
1401
  "unicorn/no-unnecessary-await"?: RuleNoConfig;
@@ -1284,10 +1407,10 @@ interface DummyRuleMap {
1284
1407
  "unicorn/no-useless-fallback-in-spread"?: RuleNoConfig;
1285
1408
  "unicorn/no-useless-iterator-to-array"?: RuleNoConfig;
1286
1409
  "unicorn/no-useless-length-check"?: RuleNoConfig;
1287
- "unicorn/no-useless-promise-resolve-reject"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUselessPromiseResolveRejectOptions];
1410
+ "unicorn/no-useless-promise-resolve-reject"?: RuleNoConfig | [AllowWarnDeny, NoUselessPromiseResolveRejectOptions];
1288
1411
  "unicorn/no-useless-spread"?: RuleNoConfig;
1289
1412
  "unicorn/no-useless-switch-case"?: RuleNoConfig;
1290
- "unicorn/no-useless-undefined"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoUselessUndefined];
1413
+ "unicorn/no-useless-undefined"?: RuleNoConfig | [AllowWarnDeny, NoUselessUndefined];
1291
1414
  "unicorn/no-zero-fractions"?: RuleNoConfig;
1292
1415
  "unicorn/number-literal-case"?: RuleNoConfig;
1293
1416
  "unicorn/numeric-separators-style"?: DummyRule;
@@ -1297,7 +1420,7 @@ interface DummyRuleMap {
1297
1420
  "unicorn/prefer-array-flat-map"?: RuleNoConfig;
1298
1421
  "unicorn/prefer-array-index-of"?: RuleNoConfig;
1299
1422
  "unicorn/prefer-array-some"?: RuleNoConfig;
1300
- "unicorn/prefer-at"?: DummyRule;
1423
+ "unicorn/prefer-at"?: RuleNoConfig | [AllowWarnDeny, PreferAtConfig];
1301
1424
  "unicorn/prefer-bigint-literals"?: RuleNoConfig;
1302
1425
  "unicorn/prefer-blob-reading-methods"?: RuleNoConfig;
1303
1426
  "unicorn/prefer-class-fields"?: RuleNoConfig;
@@ -1310,6 +1433,7 @@ interface DummyRuleMap {
1310
1433
  "unicorn/prefer-dom-node-remove"?: RuleNoConfig;
1311
1434
  "unicorn/prefer-dom-node-text-content"?: RuleNoConfig;
1312
1435
  "unicorn/prefer-event-target"?: RuleNoConfig;
1436
+ "unicorn/prefer-export-from"?: RuleNoConfig | [AllowWarnDeny, PreferExportFrom];
1313
1437
  "unicorn/prefer-global-this"?: RuleNoConfig;
1314
1438
  "unicorn/prefer-import-meta-properties"?: RuleNoConfig;
1315
1439
  "unicorn/prefer-includes"?: RuleNoConfig;
@@ -1323,8 +1447,8 @@ interface DummyRuleMap {
1323
1447
  "unicorn/prefer-native-coercion-functions"?: RuleNoConfig;
1324
1448
  "unicorn/prefer-negative-index"?: RuleNoConfig;
1325
1449
  "unicorn/prefer-node-protocol"?: RuleNoConfig;
1326
- "unicorn/prefer-number-properties"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferNumberPropertiesConfig];
1327
- "unicorn/prefer-object-from-entries"?: DummyRule;
1450
+ "unicorn/prefer-number-properties"?: RuleNoConfig | [AllowWarnDeny, PreferNumberPropertiesConfig];
1451
+ "unicorn/prefer-object-from-entries"?: RuleNoConfig | [AllowWarnDeny, PreferObjectFromEntriesConfig];
1328
1452
  "unicorn/prefer-optional-catch-binding"?: RuleNoConfig;
1329
1453
  "unicorn/prefer-prototype-methods"?: RuleNoConfig;
1330
1454
  "unicorn/prefer-query-selector"?: RuleNoConfig;
@@ -1333,37 +1457,38 @@ interface DummyRuleMap {
1333
1457
  "unicorn/prefer-response-static-json"?: RuleNoConfig;
1334
1458
  "unicorn/prefer-set-has"?: RuleNoConfig;
1335
1459
  "unicorn/prefer-set-size"?: RuleNoConfig;
1460
+ "unicorn/prefer-single-call"?: RuleNoConfig | [AllowWarnDeny, PreferSingleCallConfig];
1336
1461
  "unicorn/prefer-spread"?: RuleNoConfig;
1337
1462
  "unicorn/prefer-string-raw"?: RuleNoConfig;
1338
1463
  "unicorn/prefer-string-replace-all"?: RuleNoConfig;
1339
1464
  "unicorn/prefer-string-slice"?: RuleNoConfig;
1340
1465
  "unicorn/prefer-string-starts-ends-with"?: RuleNoConfig;
1341
1466
  "unicorn/prefer-string-trim-start-end"?: RuleNoConfig;
1342
- "unicorn/prefer-structured-clone"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferStructuredCloneConfig];
1343
- "unicorn/prefer-ternary"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, PreferTernaryOption];
1467
+ "unicorn/prefer-structured-clone"?: RuleNoConfig | [AllowWarnDeny, PreferStructuredCloneConfig];
1468
+ "unicorn/prefer-ternary"?: RuleNoConfig | [AllowWarnDeny, PreferTernaryOption];
1344
1469
  "unicorn/prefer-top-level-await"?: RuleNoConfig;
1345
1470
  "unicorn/prefer-type-error"?: RuleNoConfig;
1346
- "unicorn/relative-url-style"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RelativeUrlStyleConfig];
1471
+ "unicorn/relative-url-style"?: RuleNoConfig | [AllowWarnDeny, RelativeUrlStyleConfig];
1347
1472
  "unicorn/require-array-join-separator"?: RuleNoConfig;
1348
1473
  "unicorn/require-module-attributes"?: RuleNoConfig;
1349
1474
  "unicorn/require-module-specifiers"?: RuleNoConfig;
1350
1475
  "unicorn/require-number-to-fixed-digits-argument"?: RuleNoConfig;
1351
1476
  "unicorn/require-post-message-target-origin"?: RuleNoConfig;
1352
- "unicorn/switch-case-braces"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, SwitchCaseBracesConfig];
1477
+ "unicorn/switch-case-braces"?: RuleNoConfig | [AllowWarnDeny, SwitchCaseBracesConfig];
1353
1478
  "unicorn/switch-case-break-position"?: RuleNoConfig;
1354
- "unicorn/text-encoding-identifier-case"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, TextEncodingIdentifierCase];
1479
+ "unicorn/text-encoding-identifier-case"?: RuleNoConfig | [AllowWarnDeny, TextEncodingIdentifierCase];
1355
1480
  "unicorn/throw-new-error"?: RuleNoConfig;
1356
- "use-isnan"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, UseIsnan];
1357
- "valid-typeof"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ValidTypeof];
1481
+ "use-isnan"?: RuleNoConfig | [AllowWarnDeny, UseIsnan];
1482
+ "valid-typeof"?: RuleNoConfig | [AllowWarnDeny, ValidTypeof];
1358
1483
  "vars-on-top"?: RuleNoConfig;
1359
- "vitest/consistent-each-for"?: DummyRule;
1360
- "vitest/consistent-test-filename"?: DummyRule;
1361
- "vitest/consistent-test-it"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ConsistentTestItConfig];
1362
- "vitest/consistent-vitest-vi"?: DummyRule;
1363
- "vitest/expect-expect"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ExpectExpectConfig];
1484
+ "vitest/consistent-each-for"?: RuleNoConfig | [AllowWarnDeny, ConsistentEachForJson];
1485
+ "vitest/consistent-test-filename"?: RuleNoConfig | [AllowWarnDeny, ConsistentTestFilenameConfig];
1486
+ "vitest/consistent-test-it"?: RuleNoConfig | [AllowWarnDeny, ConsistentTestItConfig];
1487
+ "vitest/consistent-vitest-vi"?: RuleNoConfig | [AllowWarnDeny, ConsistentVitestConfig];
1488
+ "vitest/expect-expect"?: RuleNoConfig | [AllowWarnDeny, ExpectExpectConfig];
1364
1489
  "vitest/hoisted-apis-on-top"?: RuleNoConfig;
1365
- "vitest/max-expects"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, MaxExpectsConfig];
1366
- "vitest/max-nested-describe"?: DummyRule;
1490
+ "vitest/max-expects"?: RuleNoConfig | [AllowWarnDeny, MaxExpectsConfig];
1491
+ "vitest/max-nested-describe"?: RuleNoConfig | [AllowWarnDeny, MaxNestedDescribeConfig];
1367
1492
  "vitest/no-alias-methods"?: RuleNoConfig;
1368
1493
  "vitest/no-commented-out-tests"?: RuleNoConfig;
1369
1494
  "vitest/no-conditional-expect"?: RuleNoConfig;
@@ -1372,16 +1497,16 @@ interface DummyRuleMap {
1372
1497
  "vitest/no-disabled-tests"?: RuleNoConfig;
1373
1498
  "vitest/no-duplicate-hooks"?: RuleNoConfig;
1374
1499
  "vitest/no-focused-tests"?: RuleNoConfig;
1375
- "vitest/no-hooks"?: DummyRule;
1500
+ "vitest/no-hooks"?: RuleNoConfig | [AllowWarnDeny, NoHooksConfig];
1376
1501
  "vitest/no-identical-title"?: RuleNoConfig;
1377
1502
  "vitest/no-import-node-test"?: RuleNoConfig;
1378
1503
  "vitest/no-importing-vitest-globals"?: RuleNoConfig;
1379
1504
  "vitest/no-interpolation-in-snapshots"?: RuleNoConfig;
1380
- "vitest/no-large-snapshots"?: DummyRule;
1505
+ "vitest/no-large-snapshots"?: RuleNoConfig | [AllowWarnDeny, NoLargeSnapshotsConfig];
1381
1506
  "vitest/no-mocks-import"?: RuleNoConfig;
1382
- "vitest/no-restricted-matchers"?: DummyRule;
1383
- "vitest/no-restricted-vi-methods"?: DummyRule;
1384
- "vitest/no-standalone-expect"?: DummyRule;
1507
+ "vitest/no-restricted-matchers"?: RuleNoConfig | [AllowWarnDeny, NoRestrictedMatchersConfig];
1508
+ "vitest/no-restricted-vi-methods"?: RuleNoConfig | [AllowWarnDeny, NoRestrictedTestMethodsConfig];
1509
+ "vitest/no-standalone-expect"?: RuleNoConfig | [AllowWarnDeny, NoStandaloneExpectConfig];
1385
1510
  "vitest/no-test-prefixes"?: RuleNoConfig;
1386
1511
  "vitest/no-test-return-statement"?: RuleNoConfig;
1387
1512
  "vitest/no-unneeded-async-expect-function"?: RuleNoConfig;
@@ -1394,17 +1519,17 @@ interface DummyRuleMap {
1394
1519
  "vitest/prefer-describe-function-title"?: RuleNoConfig;
1395
1520
  "vitest/prefer-each"?: RuleNoConfig;
1396
1521
  "vitest/prefer-equality-matcher"?: RuleNoConfig;
1397
- "vitest/prefer-expect-assertions"?: DummyRule;
1522
+ "vitest/prefer-expect-assertions"?: RuleNoConfig | [AllowWarnDeny, PreferExpectAssertionsConfig];
1398
1523
  "vitest/prefer-expect-resolves"?: RuleNoConfig;
1399
1524
  "vitest/prefer-expect-type-of"?: RuleNoConfig;
1400
1525
  "vitest/prefer-hooks-in-order"?: RuleNoConfig;
1401
1526
  "vitest/prefer-hooks-on-top"?: RuleNoConfig;
1402
- "vitest/prefer-import-in-mock"?: DummyRule;
1527
+ "vitest/prefer-import-in-mock"?: RuleNoConfig | [AllowWarnDeny, PreferImportInMockConfig];
1403
1528
  "vitest/prefer-importing-vitest-globals"?: RuleNoConfig;
1404
1529
  "vitest/prefer-lowercase-title"?: DummyRule;
1405
1530
  "vitest/prefer-mock-promise-shorthand"?: RuleNoConfig;
1406
1531
  "vitest/prefer-mock-return-shorthand"?: RuleNoConfig;
1407
- "vitest/prefer-snapshot-hint"?: DummyRule;
1532
+ "vitest/prefer-snapshot-hint"?: RuleNoConfig | [AllowWarnDeny, SnapshotHintMode];
1408
1533
  "vitest/prefer-spy-on"?: RuleNoConfig;
1409
1534
  "vitest/prefer-strict-boolean-matchers"?: RuleNoConfig;
1410
1535
  "vitest/prefer-strict-equal"?: RuleNoConfig;
@@ -1417,60 +1542,63 @@ interface DummyRuleMap {
1417
1542
  "vitest/prefer-to-have-length"?: RuleNoConfig;
1418
1543
  "vitest/prefer-todo"?: RuleNoConfig;
1419
1544
  "vitest/require-awaited-expect-poll"?: RuleNoConfig;
1420
- "vitest/require-hook"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RequireHookConfig];
1545
+ "vitest/require-hook"?: RuleNoConfig | [AllowWarnDeny, RequireHookConfig];
1421
1546
  "vitest/require-local-test-context-for-concurrent-snapshots"?: RuleNoConfig;
1422
- "vitest/require-mock-type-parameters"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RequireMockTypeParametersConfig];
1547
+ "vitest/require-mock-type-parameters"?: RuleNoConfig | [AllowWarnDeny, RequireMockTypeParametersConfig];
1423
1548
  "vitest/require-test-timeout"?: RuleNoConfig;
1424
1549
  "vitest/require-to-throw-message"?: RuleNoConfig;
1425
- "vitest/require-top-level-describe"?: DummyRule;
1550
+ "vitest/require-top-level-describe"?: RuleNoConfig | [AllowWarnDeny, RequireTopLevelDescribeConfig];
1426
1551
  "vitest/valid-describe-callback"?: RuleNoConfig;
1427
- "vitest/valid-expect"?: DummyRule;
1552
+ "vitest/valid-expect"?: RuleNoConfig | [AllowWarnDeny, ValidExpectConfig];
1428
1553
  "vitest/valid-expect-in-promise"?: RuleNoConfig;
1429
1554
  "vitest/valid-title"?: DummyRule;
1430
1555
  "vitest/warn-todo"?: RuleNoConfig;
1431
- "vue/component-definition-name-casing"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, CaseType];
1432
- "vue/define-emits-declaration"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, DeclarationStyle];
1433
- "vue/define-props-declaration"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, DeclarationStyle2];
1434
- "vue/define-props-destructuring"?: DummyRule;
1435
- "vue/max-props"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, MaxProps];
1436
- "vue/next-tick-style"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NextTickOption];
1556
+ "vue/component-definition-name-casing"?: RuleNoConfig | [AllowWarnDeny, CaseType];
1557
+ "vue/define-emits-declaration"?: RuleNoConfig | [AllowWarnDeny, DeclarationStyle];
1558
+ "vue/define-props-declaration"?: RuleNoConfig | [AllowWarnDeny, DeclarationStyle2];
1559
+ "vue/define-props-destructuring"?: RuleNoConfig | [AllowWarnDeny, DefinePropsDestructuring];
1560
+ "vue/max-props"?: RuleNoConfig | [AllowWarnDeny, MaxProps];
1561
+ "vue/next-tick-style"?: RuleNoConfig | [AllowWarnDeny, NextTickOption];
1437
1562
  "vue/no-arrow-functions-in-watch"?: RuleNoConfig;
1438
1563
  "vue/no-computed-properties-in-data"?: RuleNoConfig;
1439
1564
  "vue/no-deprecated-data-object-declaration"?: RuleNoConfig;
1440
1565
  "vue/no-deprecated-delete-set"?: RuleNoConfig;
1441
1566
  "vue/no-deprecated-destroyed-lifecycle"?: RuleNoConfig;
1442
1567
  "vue/no-deprecated-events-api"?: RuleNoConfig;
1443
- "vue/no-deprecated-model-definition"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoDeprecatedModelDefinitionConfig];
1568
+ "vue/no-deprecated-model-definition"?: RuleNoConfig | [AllowWarnDeny, NoDeprecatedModelDefinitionConfig];
1444
1569
  "vue/no-deprecated-props-default-this"?: RuleNoConfig;
1445
1570
  "vue/no-deprecated-vue-config-keycodes"?: RuleNoConfig;
1571
+ "vue/no-dupe-keys"?: RuleNoConfig | [AllowWarnDeny, NoDupeKeysConfig];
1446
1572
  "vue/no-export-in-script-setup"?: RuleNoConfig;
1447
1573
  "vue/no-expose-after-await"?: RuleNoConfig;
1448
1574
  "vue/no-import-compiler-macros"?: RuleNoConfig;
1449
1575
  "vue/no-lifecycle-after-await"?: RuleNoConfig;
1450
1576
  "vue/no-multiple-slot-args"?: RuleNoConfig;
1451
1577
  "vue/no-required-prop-with-default"?: RuleNoConfig;
1452
- "vue/no-reserved-component-names"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoReservedComponentNames];
1453
- "vue/no-reserved-keys"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoReservedKeysConfig];
1454
- "vue/no-reserved-props"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, NoReservedPropsConfig];
1578
+ "vue/no-reserved-component-names"?: RuleNoConfig | [AllowWarnDeny, NoReservedComponentNames];
1579
+ "vue/no-reserved-keys"?: RuleNoConfig | [AllowWarnDeny, NoReservedKeysConfig];
1580
+ "vue/no-reserved-props"?: RuleNoConfig | [AllowWarnDeny, NoReservedPropsConfig];
1455
1581
  "vue/no-shared-component-data"?: RuleNoConfig;
1582
+ "vue/no-side-effects-in-computed-properties"?: RuleNoConfig;
1456
1583
  "vue/no-this-in-before-route-enter"?: RuleNoConfig;
1457
1584
  "vue/no-watch-after-await"?: RuleNoConfig;
1458
1585
  "vue/prefer-import-from-vue"?: RuleNoConfig;
1459
- "vue/prop-name-casing"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, CaseType2] | [AllowWarnDeny, CaseType2, Options];
1586
+ "vue/prop-name-casing"?: RuleNoConfig | [AllowWarnDeny, CaseType2] | [AllowWarnDeny, CaseType2, Options];
1460
1587
  "vue/require-default-export"?: RuleNoConfig;
1461
- "vue/require-direct-export"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, RequireDirectExport];
1588
+ "vue/require-default-prop"?: RuleNoConfig;
1589
+ "vue/require-direct-export"?: RuleNoConfig | [AllowWarnDeny, RequireDirectExport];
1462
1590
  "vue/require-prop-type-constructor"?: RuleNoConfig;
1463
1591
  "vue/require-prop-types"?: RuleNoConfig;
1464
1592
  "vue/require-render-return"?: RuleNoConfig;
1465
1593
  "vue/require-slots-as-functions"?: RuleNoConfig;
1466
1594
  "vue/require-typed-ref"?: RuleNoConfig;
1467
- "vue/return-in-computed-property"?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, ReturnInComputedPropertyConfig];
1595
+ "vue/return-in-computed-property"?: RuleNoConfig | [AllowWarnDeny, ReturnInComputedPropertyConfig];
1468
1596
  "vue/return-in-emits-validator"?: RuleNoConfig;
1469
1597
  "vue/valid-define-emits"?: RuleNoConfig;
1470
1598
  "vue/valid-define-options"?: RuleNoConfig;
1471
1599
  "vue/valid-define-props"?: RuleNoConfig;
1472
1600
  "vue/valid-next-tick"?: RuleNoConfig;
1473
- yoda?: AllowWarnDeny | [AllowWarnDeny] | [AllowWarnDeny, AllowYoda] | [AllowWarnDeny, AllowYoda, YodaOptions];
1601
+ yoda?: RuleNoConfig | [AllowWarnDeny, AllowYoda] | [AllowWarnDeny, AllowYoda, YodaOptions];
1474
1602
  [k: string]: DummyRule | undefined;
1475
1603
  }
1476
1604
  interface AccessorPairsConfig {
@@ -1995,6 +2123,77 @@ interface MaxExpectsConfig {
1995
2123
  */
1996
2124
  max?: number;
1997
2125
  }
2126
+ interface MaxNestedDescribeConfig {
2127
+ /**
2128
+ * Maximum allowed depth of nested describe calls.
2129
+ */
2130
+ max?: number;
2131
+ }
2132
+ interface NoDeprecatedFunctionsConfig {
2133
+ /**
2134
+ * Jest configuration options.
2135
+ * Deprecated config, it will be removed in future versions.
2136
+ * Use please instead { "settings": { "jest": {"version": 29 } } } in `Oxlint config file`.
2137
+ * Beware the value from the config have higher priority than the rule config.
2138
+ */
2139
+ jest?: JestConfigJson;
2140
+ }
2141
+ interface JestConfigJson {
2142
+ /**
2143
+ * The version of Jest being used.
2144
+ */
2145
+ version?: string;
2146
+ }
2147
+ interface NoHooksConfig {
2148
+ /**
2149
+ * An array of hook function names that are permitted for use.
2150
+ */
2151
+ allow?: string[];
2152
+ }
2153
+ interface NoLargeSnapshotsConfig {
2154
+ /**
2155
+ * A map of snapshot file paths to arrays of snapshot names that are allowed to exceed the size limit.
2156
+ * Snapshot names can be specified as regular expressions.
2157
+ */
2158
+ allowedSnapshots?: {
2159
+ [k: string]: string[];
2160
+ };
2161
+ /**
2162
+ * Maximum number of lines allowed for inline snapshots.
2163
+ */
2164
+ inlineMaxSize?: number;
2165
+ /**
2166
+ * Maximum number of lines allowed for external snapshot files.
2167
+ */
2168
+ maxSize?: number;
2169
+ }
2170
+ interface NoRestrictedTestMethodsConfig {
2171
+ [k: string]: string | null;
2172
+ }
2173
+ interface NoRestrictedMatchersConfig {
2174
+ [k: string]: string | null;
2175
+ }
2176
+ interface NoStandaloneExpectConfig {
2177
+ /**
2178
+ * An array of function names that should also be treated as test blocks.
2179
+ */
2180
+ additionalTestBlockFunctions?: string[];
2181
+ }
2182
+ interface PreferEndingWithAnExpectConfig {
2183
+ /**
2184
+ * An array of function names that should also be treated as test blocks.
2185
+ */
2186
+ additionalTestBlockFunctions?: string[];
2187
+ /**
2188
+ * A list of function names that should be treated as assertion functions.
2189
+ */
2190
+ assertFunctionNames?: string[];
2191
+ }
2192
+ interface PreferExpectAssertionsConfig {
2193
+ onlyFunctionsWithAsyncKeyword?: boolean;
2194
+ onlyFunctionsWithExpectInCallback?: boolean;
2195
+ onlyFunctionsWithExpectInLoop?: boolean;
2196
+ }
1998
2197
  interface PreferImportingJestGlobalsConfig {
1999
2198
  /**
2000
2199
  * Jest function types to enforce importing for.
@@ -2007,6 +2206,30 @@ interface RequireHookConfig {
2007
2206
  */
2008
2207
  allowedFunctionCalls?: string[];
2009
2208
  }
2209
+ interface RequireTopLevelDescribeConfig {
2210
+ /**
2211
+ * The maximum number of top-level `describe` blocks allowed in a test file.
2212
+ */
2213
+ maxNumberOfTopLevelDescribes?: number;
2214
+ }
2215
+ interface ValidExpectConfig {
2216
+ /**
2217
+ * When `true`, async assertions must be awaited in all contexts (not just return statements).
2218
+ */
2219
+ alwaysAwait?: boolean;
2220
+ /**
2221
+ * List of matchers that are considered async and therefore require awaiting (e.g. `toResolve`, `toReject`).
2222
+ */
2223
+ asyncMatchers?: string[];
2224
+ /**
2225
+ * Maximum number of arguments `expect` should be called with.
2226
+ */
2227
+ maxArgs?: number;
2228
+ /**
2229
+ * Minimum number of arguments `expect` should be called with.
2230
+ */
2231
+ minArgs?: number;
2232
+ }
2010
2233
  interface CheckTagNamesConfig {
2011
2234
  /**
2012
2235
  * Additional tag names to allow.
@@ -2073,6 +2296,28 @@ interface RequireYieldsConfig {
2073
2296
  */
2074
2297
  withGeneratorTag?: boolean;
2075
2298
  }
2299
+ interface AltTextConfigSchema {
2300
+ /**
2301
+ * Custom components to check for alt text on `area` elements.
2302
+ */
2303
+ area?: string[];
2304
+ /**
2305
+ * Custom components to check for alt text on any of the supported elements.
2306
+ */
2307
+ elements?: AltTextElements[];
2308
+ /**
2309
+ * Custom components to check for alt text on `img` elements.
2310
+ */
2311
+ img?: string[];
2312
+ /**
2313
+ * Custom components to check for alt text on `input[type="image"]` elements.
2314
+ */
2315
+ 'input[type="image"]'?: string[];
2316
+ /**
2317
+ * Custom components to check for alt text on `object` elements.
2318
+ */
2319
+ object?: string[];
2320
+ }
2076
2321
  interface AnchorAmbiguousTextConfig {
2077
2322
  /**
2078
2323
  * List of ambiguous words or phrases that should be flagged in anchor text.
@@ -2095,6 +2340,31 @@ interface AutocompleteValidConfig {
2095
2340
  */
2096
2341
  inputComponents?: string[];
2097
2342
  }
2343
+ interface ControlHasAssociatedLabelConfig {
2344
+ /**
2345
+ * Custom JSX components to be treated as interactive controls.
2346
+ */
2347
+ controlComponents?: string[];
2348
+ /**
2349
+ * Maximum depth to search for an accessible label within the element.
2350
+ * Defaults to `2`.
2351
+ */
2352
+ depth?: number;
2353
+ /**
2354
+ * Elements to ignore.
2355
+ * Defaults to `["audio", "canvas", "embed", "input", "textarea", "tr", "video"]`.
2356
+ */
2357
+ ignoreElements?: string[];
2358
+ /**
2359
+ * Interactive roles to ignore.
2360
+ * Defaults to `["grid", "listbox", "menu", "menubar", "radiogroup", "row", "tablist", "toolbar", "tree", "treegrid"]`.
2361
+ */
2362
+ ignoreRoles?: string[];
2363
+ /**
2364
+ * Additional attributes to check for accessible label text.
2365
+ */
2366
+ labelAttributes?: string[];
2367
+ }
2098
2368
  interface HeadingHasContentConfig {
2099
2369
  /**
2100
2370
  * Additional custom component names to treat as heading elements.
@@ -2102,6 +2372,17 @@ interface HeadingHasContentConfig {
2102
2372
  */
2103
2373
  components?: string[];
2104
2374
  }
2375
+ interface ImgRedundantAltConfig {
2376
+ /**
2377
+ * JSX element types to validate (component names) where the rule applies.
2378
+ * For example, `["img", "Image"]`.
2379
+ */
2380
+ components?: string[];
2381
+ /**
2382
+ * Words considered redundant in alt text that should trigger a warning.
2383
+ */
2384
+ words?: string[];
2385
+ }
2105
2386
  interface InteractiveSupportsFocusConfig {
2106
2387
  /**
2107
2388
  * An array of interactive ARIA roles that should be considered tabbable (require `tabIndex={0}`).
@@ -2110,6 +2391,42 @@ interface InteractiveSupportsFocusConfig {
2110
2391
  */
2111
2392
  tabbable?: string[];
2112
2393
  }
2394
+ interface LabelHasAssociatedControlConfig {
2395
+ /**
2396
+ * The type of association required between the label and the control.
2397
+ */
2398
+ assert?: Assert;
2399
+ /**
2400
+ * Custom JSX components to be treated as form controls.
2401
+ */
2402
+ controlComponents?: string[];
2403
+ /**
2404
+ * Maximum depth to search for a nested control.
2405
+ */
2406
+ depth?: number;
2407
+ /**
2408
+ * Attributes to check for accessible label text.
2409
+ */
2410
+ labelAttributes?: string[];
2411
+ /**
2412
+ * Custom JSX components to be treated as labels.
2413
+ */
2414
+ labelComponents?: string[];
2415
+ }
2416
+ interface MediaHasCaptionConfig {
2417
+ /**
2418
+ * Element names to treat as `<audio>` elements
2419
+ */
2420
+ audio?: string[];
2421
+ /**
2422
+ * Element names to treat as `<track>` elements
2423
+ */
2424
+ track?: string[];
2425
+ /**
2426
+ * Element names to treat as `<video>` elements
2427
+ */
2428
+ video?: string[];
2429
+ }
2113
2430
  interface MouseEventsHaveKeyEventsConfig {
2114
2431
  /**
2115
2432
  * List of hover-in mouse event handlers that require corresponding keyboard event handlers.
@@ -2126,6 +2443,35 @@ interface NoAutofocus {
2126
2443
  */
2127
2444
  ignoreNonDOM?: boolean;
2128
2445
  }
2446
+ interface NoDistractingElementsConfig {
2447
+ /**
2448
+ * List of distracting elements to check for.
2449
+ */
2450
+ elements?: DistractingElement[];
2451
+ }
2452
+ interface NoInteractiveElementToNoninteractiveRoleConfig {
2453
+ [k: string]: string[];
2454
+ }
2455
+ interface NoNoninteractiveElementToInteractiveRoleConfig {
2456
+ [k: string]: string[];
2457
+ }
2458
+ interface NoNoninteractiveTabindexConfig {
2459
+ /**
2460
+ * If `true`, allows tabIndex values to be expression values (e.g., variables, ternaries). If `false`, only string literal values are allowed.
2461
+ */
2462
+ allowExpressionValues?: boolean;
2463
+ /**
2464
+ * An array of ARIA roles that should be considered interactive.
2465
+ */
2466
+ roles?: string[];
2467
+ /**
2468
+ * An array of custom HTML elements that should be considered interactive.
2469
+ */
2470
+ tags?: string[];
2471
+ }
2472
+ interface NoRedundantRolesConfig {
2473
+ [k: string]: string[];
2474
+ }
2129
2475
  interface NoStaticElementInteractionsConfig {
2130
2476
  /**
2131
2477
  * If `true`, role attribute values that are JSX expressions (e.g., `role={ROLE}`) are allowed.
@@ -2855,7 +3201,6 @@ interface NoSequences {
2855
3201
  /**
2856
3202
  * If this option is set to `false`, this rule disallows the comma operator
2857
3203
  * even when the expression sequence is explicitly wrapped in parentheses.
2858
- * Default is `true`.
2859
3204
  */
2860
3205
  allowInParentheses?: boolean;
2861
3206
  }
@@ -3249,6 +3594,36 @@ interface NoUnusedVarsFixOptions {
3249
3594
  */
3250
3595
  variables?: NoUnusedVarsFixMode;
3251
3596
  }
3597
+ interface NoUseBeforeDefineConfig {
3598
+ /**
3599
+ * Allow named exports that appear before declaration.
3600
+ */
3601
+ allowNamedExports?: boolean;
3602
+ /**
3603
+ * Check class declarations.
3604
+ */
3605
+ classes?: boolean;
3606
+ /**
3607
+ * Check enum declarations.
3608
+ */
3609
+ enums?: boolean;
3610
+ /**
3611
+ * Check function declarations.
3612
+ */
3613
+ functions?: boolean;
3614
+ /**
3615
+ * Ignore usages that are type-only references.
3616
+ */
3617
+ ignoreTypeReferences?: boolean;
3618
+ /**
3619
+ * Check type aliases, interfaces, and type parameters.
3620
+ */
3621
+ typedefs?: boolean;
3622
+ /**
3623
+ * Check variable declarations.
3624
+ */
3625
+ variables?: boolean;
3626
+ }
3252
3627
  interface NoUselessComputedKey {
3253
3628
  /**
3254
3629
  * The `enforceForClassMembers` option controls whether the rule applies to
@@ -3313,6 +3688,12 @@ interface ObjectShorthandOptions {
3313
3688
  ignoreConstructors?: boolean;
3314
3689
  methodsIgnorePattern?: string;
3315
3690
  }
3691
+ interface NoAsyncEndpointHandlersConfig {
3692
+ /**
3693
+ * An array of names that are allowed to be async.
3694
+ */
3695
+ allowedNames?: string[];
3696
+ }
3316
3697
  interface NoBarrelFile {
3317
3698
  /**
3318
3699
  * The maximum number of modules that can be re-exported via `export *`
@@ -3375,7 +3756,13 @@ interface NoRestSpreadPropertiesOptions {
3375
3756
  objectSpreadMessage?: string;
3376
3757
  }
3377
3758
  interface PreferArrowCallbackConfig {
3759
+ /**
3760
+ * If this option is set to `true`, named function expressions are allowed.
3761
+ */
3378
3762
  allowNamedFunctions?: boolean;
3763
+ /**
3764
+ * If this option is set to `false`, function expressions that reference `this` are reported even when they are not bound to a `this` value.
3765
+ */
3379
3766
  allowUnboundThis?: boolean;
3380
3767
  }
3381
3768
  interface PreferConstConfig {
@@ -3509,6 +3896,34 @@ interface AlwaysReturnConfig {
3509
3896
  */
3510
3897
  ignoreLastCallback?: boolean;
3511
3898
  }
3899
+ interface CatchOrReturnConfig {
3900
+ /**
3901
+ * Whether to allow `finally()` as a termination method.
3902
+ */
3903
+ allowFinally?: boolean;
3904
+ /**
3905
+ * Whether to allow `then()` with two arguments as a termination method.
3906
+ */
3907
+ allowThen?: boolean;
3908
+ /**
3909
+ * Whether to allow `then(null, handler)` as a termination method.
3910
+ */
3911
+ allowThenStrict?: boolean;
3912
+ /**
3913
+ * List of allowed termination methods (e.g., `catch`, `done`).
3914
+ */
3915
+ terminationMethod?: TerminationMethod;
3916
+ }
3917
+ interface NoCallbackInPromiseConfig {
3918
+ /**
3919
+ * List of callback function names to allow within Promise `then` and `catch` methods.
3920
+ */
3921
+ exceptions?: string[];
3922
+ /**
3923
+ * Boolean as to whether callbacks in timeout functions like `setTimeout` will err.
3924
+ */
3925
+ timeoutsErr?: boolean;
3926
+ }
3512
3927
  interface NoPromiseInCallbackConfig {
3513
3928
  /**
3514
3929
  * Whether or not to exempt function declarations. Defaults to `false`.
@@ -3534,6 +3949,18 @@ interface NoReturnWrap {
3534
3949
  */
3535
3950
  allowReject?: boolean;
3536
3951
  }
3952
+ interface ParamNamesConfig {
3953
+ /**
3954
+ * Regex pattern used to validate the `reject` parameter name. If provided, this pattern
3955
+ * is used instead of the default `^_?reject$` check.
3956
+ */
3957
+ rejectPattern?: string;
3958
+ /**
3959
+ * Regex pattern used to validate the `resolve` parameter name. If provided, this pattern
3960
+ * is used instead of the default `^_?resolve$` check.
3961
+ */
3962
+ resolvePattern?: string;
3963
+ }
3537
3964
  interface PreferAwaitToThenConfig {
3538
3965
  /**
3539
3966
  * If true, enforces the rule even after an `await` or `yield` expression.
@@ -3546,6 +3973,15 @@ interface SpecOnlyConfig {
3546
3973
  */
3547
3974
  allowedMethods?: string[];
3548
3975
  }
3976
+ interface ReactPerfConfig {
3977
+ /**
3978
+ * Controls whether native elements (lowercase-first-letter tags such as `div`)
3979
+ * are ignored by the rule. Set to `"all"` to ignore every attribute on native
3980
+ * elements, or to an array of attribute names to ignore only those attributes
3981
+ * on native elements.
3982
+ */
3983
+ nativeAllowList?: NativeAllowList;
3984
+ }
3549
3985
  interface ButtonHasType {
3550
3986
  /**
3551
3987
  * If true, allow `type="button"`.
@@ -3585,6 +4021,12 @@ interface DisplayNameConfig {
3585
4021
  */
3586
4022
  ignoreTranspilerName?: boolean;
3587
4023
  }
4024
+ interface ExhaustiveDepsConfig {
4025
+ /**
4026
+ * Optionally provide a regex of additional hooks to check.
4027
+ */
4028
+ additionalHooks?: string;
4029
+ }
3588
4030
  interface ForbidComponentPropsConfig {
3589
4031
  /**
3590
4032
  * An array specifying the names of props that are forbidden.
@@ -3721,6 +4163,74 @@ interface JsxBooleanValueOptions {
3721
4163
  */
3722
4164
  never?: string[];
3723
4165
  }
4166
+ interface JsxCurlyBracePresence {
4167
+ /**
4168
+ * Whether to enforce or disallow curly braces for child content of a JSX element.
4169
+ *
4170
+ * - `never` will disallow unnecessary curly braces, e.g. this will be preferred: `<Foo>I love oxlint</Foo>`
4171
+ * - `always` will force the usage of curly braces like this, in all cases: `<Foo>{'I love oxlint'}</Foo>`
4172
+ * - `ignore` will allow either style for child content.
4173
+ */
4174
+ children?: JsxCurlyBracePresenceMode;
4175
+ /**
4176
+ * When set to `ignore` or `never`, this JSX code is allowed (or enforced):
4177
+ * `<App prop=<div /> />;`
4178
+ *
4179
+ * When set to `always`, the curly braces are required for prop values that are
4180
+ * JSX elements: `<App prop={<div />} />;`
4181
+ *
4182
+ * **Note**: it is _highly_ recommended that you set `propElementValues` to `always`.
4183
+ * The ability to omit curly braces around prop values that are JSX elements is obscure, and
4184
+ * intentionally undocumented, and should not be relied upon.
4185
+ */
4186
+ propElementValues?: JsxCurlyBracePresenceMode;
4187
+ /**
4188
+ * Whether to enforce or disallow curly braces for props on JSX elements.
4189
+ *
4190
+ * - `never` will disallow unnecessary curly braces, e.g. this will be preferred: `<Foo foo="bar" />`
4191
+ * - `always` will force the usage of curly braces like this, in all cases: `<Foo foo={'bar'} />`
4192
+ * - `ignore` will allow either style for prop values.
4193
+ */
4194
+ props?: JsxCurlyBracePresenceMode;
4195
+ }
4196
+ interface JsxFilenameExtensionConfig {
4197
+ /**
4198
+ * When to allow a JSX filename extension. By default all files may have a JSX extension.
4199
+ * Set this to `as-needed` to only allow JSX file extensions in files that contain JSX syntax.
4200
+ */
4201
+ allow?: JsxFilenameExtensionAllowMode;
4202
+ /**
4203
+ * The set of allowed file extensions.
4204
+ * Can include or exclude the leading dot (e.g., "jsx" and ".jsx" are both valid).
4205
+ */
4206
+ extensions?: string[];
4207
+ /**
4208
+ * If enabled, files that do not contain code (i.e. are empty, contain only whitespaces or comments) will not be rejected.
4209
+ */
4210
+ ignoreFilesWithoutCode?: boolean;
4211
+ }
4212
+ interface JsxHandlerNamesConfig {
4213
+ /**
4214
+ * Whether to check for inline functions in JSX attributes.
4215
+ */
4216
+ checkInlineFunction?: boolean;
4217
+ /**
4218
+ * Whether to check for local variables in JSX attributes.
4219
+ */
4220
+ checkLocalVariables?: boolean;
4221
+ /**
4222
+ * Event handler prefixes to check against.
4223
+ */
4224
+ eventHandlerPrefix?: string | false;
4225
+ /**
4226
+ * Event handler prop prefixes to check against.
4227
+ */
4228
+ eventHandlerPropPrefix?: string | false;
4229
+ /**
4230
+ * Component names to ignore when checking for event handler prefixes.
4231
+ */
4232
+ ignoreComponentNames?: string[];
4233
+ }
3724
4234
  interface JsxKeyConfig {
3725
4235
  /**
3726
4236
  * When true, check fragment shorthand `<>` for keys
@@ -3741,34 +4251,143 @@ interface JsxMaxDepthConfig {
3741
4251
  */
3742
4252
  max?: number;
3743
4253
  }
3744
- interface JsxNoUselessFragment {
4254
+ /**
4255
+ * The options shared between the top-level config and each `elementOverrides` entry.
4256
+ */
4257
+ interface JsxNoLiteralsConfig {
3745
4258
  /**
3746
- * Allow fragments with a single expression child.
4259
+ * An array of unique string values that would otherwise warn, but will be ignored.
3747
4260
  */
3748
- allowExpressions?: boolean;
3749
- }
3750
- interface JsxPascalCaseConfig {
4261
+ allowedStrings?: string[];
3751
4262
  /**
3752
- * Whether to allow all-caps component names.
4263
+ * An object where the keys are the element names and the values are objects with the same options as above. This allows you to specify different options for different elements.
3753
4264
  */
3754
- allowAllCaps?: boolean;
4265
+ elementOverrides?: {
4266
+ [k: string]: ElementOverrideOptions;
4267
+ };
3755
4268
  /**
3756
- * Whether to allow leading underscores in component names.
4269
+ * (default: false) - When true the rule ignores literals used in props, wrapped or unwrapped.
3757
4270
  */
3758
- allowLeadingUnderscore?: boolean;
4271
+ ignoreProps?: boolean;
3759
4272
  /**
3760
- * Whether to allow namespaced component names.
4273
+ * (default: false) - Enforces no string literals used in attributes when set to true.
3761
4274
  */
3762
- allowNamespace?: boolean;
4275
+ noAttributeStrings?: boolean;
3763
4276
  /**
3764
- * List of component names to ignore.
4277
+ * (default: false) - Enforces no string literals used as children, wrapped or unwrapped.
3765
4278
  */
3766
- ignore?: string[];
3767
- }
3768
- interface NoMultiCompConfig {
4279
+ noStrings?: boolean;
3769
4280
  /**
3770
- * When `true`, the rule will ignore stateless components and will allow you to have multiple
3771
- * stateless components in the same file. Or one stateful component and one-or-more stateless
4281
+ * An array of unique attribute names where string literals should be restricted. Only the specified attributes will be checked for string literals when this option is used. Note: When noAttributeStrings is true, this option is ignored at the root level.
4282
+ */
4283
+ restrictedAttributes?: string[];
4284
+ }
4285
+ /**
4286
+ * One entry in `elementOverrides`: the base options plus override-only fields.
4287
+ */
4288
+ interface ElementOverrideOptions {
4289
+ /**
4290
+ * (default: false) - When true the rule will allow the specified element to have string literals as children, wrapped or unwrapped without warning.
4291
+ */
4292
+ allowElement?: boolean;
4293
+ /**
4294
+ * An array of unique string values that would otherwise warn, but will be ignored.
4295
+ */
4296
+ allowedStrings?: string[];
4297
+ /**
4298
+ * (default: true) - When false the rule will not apply the current options set to nested elements. This is useful when you want to apply the rule to a specific element, but not to its children.
4299
+ */
4300
+ applyToNestedElements?: boolean;
4301
+ /**
4302
+ * (default: false) - When true the rule ignores literals used in props, wrapped or unwrapped.
4303
+ */
4304
+ ignoreProps?: boolean;
4305
+ /**
4306
+ * (default: false) - Enforces no string literals used in attributes when set to true.
4307
+ */
4308
+ noAttributeStrings?: boolean;
4309
+ /**
4310
+ * (default: false) - Enforces no string literals used as children, wrapped or unwrapped.
4311
+ */
4312
+ noStrings?: boolean;
4313
+ /**
4314
+ * An array of unique attribute names where string literals should be restricted. Only the specified attributes will be checked for string literals when this option is used. Note: When noAttributeStrings is true, this option is ignored at the root level.
4315
+ */
4316
+ restrictedAttributes?: string[];
4317
+ }
4318
+ interface JsxNoTargetBlank {
4319
+ /**
4320
+ * Whether to allow referrers.
4321
+ */
4322
+ allowReferrer?: boolean;
4323
+ /**
4324
+ * Whether to enforce dynamic links or enforce static links.
4325
+ */
4326
+ enforceDynamicLinks?: EnforceDynamicLinksEnum;
4327
+ /**
4328
+ * Whether to check form elements.
4329
+ */
4330
+ forms?: boolean;
4331
+ /**
4332
+ * Whether to check link elements.
4333
+ */
4334
+ links?: boolean;
4335
+ /**
4336
+ * Whether to warn when spread attributes are used.
4337
+ */
4338
+ warnOnSpreadAttributes?: boolean;
4339
+ }
4340
+ interface JsxNoUselessFragment {
4341
+ /**
4342
+ * Allow fragments with a single expression child.
4343
+ */
4344
+ allowExpressions?: boolean;
4345
+ }
4346
+ interface JsxPascalCaseConfig {
4347
+ /**
4348
+ * Whether to allow all-caps component names.
4349
+ */
4350
+ allowAllCaps?: boolean;
4351
+ /**
4352
+ * Whether to allow leading underscores in component names.
4353
+ */
4354
+ allowLeadingUnderscore?: boolean;
4355
+ /**
4356
+ * Whether to allow namespaced component names.
4357
+ */
4358
+ allowNamespace?: boolean;
4359
+ /**
4360
+ * List of component names to ignore.
4361
+ */
4362
+ ignore?: string[];
4363
+ }
4364
+ interface JsxPropsNoSpreadingConfig {
4365
+ /**
4366
+ * `custom` set to `ignore` will ignore all custom jsx tags like `App`, `MyCustomComponent` etc. Default is set to `enforce`.
4367
+ */
4368
+ custom?: IgnoreEnforceOption;
4369
+ /**
4370
+ * Exceptions flip the enforcement behavior for specific components.
4371
+ * For example:
4372
+ * - If `html` is set to `ignore`, an exception for `div` will enforce the rule on `<div>` elements.
4373
+ * - If `custom` is set to `enforce`, an exception for `Foo` will ignore the rule on `<Foo>` components.
4374
+ *
4375
+ * This allows you to override the general setting for individual components.
4376
+ */
4377
+ exceptions?: string[];
4378
+ /**
4379
+ * `explicitSpread` set to `ignore` will ignore spread operators that are explicitly listing all object properties within that spread. Default is set to `enforce`.
4380
+ */
4381
+ explicitSpread?: IgnoreEnforceOption;
4382
+ /**
4383
+ * `html` set to `ignore` will ignore all html jsx tags like `div`, `img` etc. Default is set to `enforce`.
4384
+ */
4385
+ html?: IgnoreEnforceOption;
4386
+ }
4387
+ interface NoMultiCompConfig {
4388
+ /**
4389
+ * When `true`, the rule will ignore stateless components and will allow you to have multiple
4390
+ * stateless components in the same file. Or one stateful component and one-or-more stateless
3772
4391
  * components in the same file.
3773
4392
  *
3774
4393
  * Stateless basically just means function components, including those created via
@@ -3802,6 +4421,20 @@ interface NoUnsafeConfig {
3802
4421
  */
3803
4422
  checkAliases?: boolean;
3804
4423
  }
4424
+ interface NoUnstableNestedComponentsConfig {
4425
+ /**
4426
+ * Allow component definitions in props.
4427
+ */
4428
+ allowAsProps?: boolean;
4429
+ /**
4430
+ * Optional custom propTypes validators accepted for eslint-plugin-react compatibility.
4431
+ */
4432
+ customValidators?: string[];
4433
+ /**
4434
+ * Glob pattern for render-prop names that may receive inline component definitions.
4435
+ */
4436
+ propNamePattern?: string;
4437
+ }
3805
4438
  interface OnlyExportComponentsConfig {
3806
4439
  /**
3807
4440
  * Allow exporting primitive constants (string/number/boolean/template literal)
@@ -3848,6 +4481,15 @@ interface PreferFunctionComponent {
3848
4481
  */
3849
4482
  allowJsxUtilityClass?: boolean;
3850
4483
  }
4484
+ interface ReactCompilerConfig {
4485
+ /**
4486
+ * Also report compiler bail-outs — places where React Compiler skipped a
4487
+ * component or hook (for example because of unsupported syntax) without
4488
+ * finding a rule violation. These do not indicate incorrect code, only
4489
+ * code that the compiler declined to optimize.
4490
+ */
4491
+ reportAllBailouts?: boolean;
4492
+ }
3851
4493
  interface SelfClosingComp {
3852
4494
  /**
3853
4495
  * Whether to enforce self-closing for custom components.
@@ -3948,18 +4590,101 @@ interface SortVars {
3948
4590
  */
3949
4591
  ignoreCase?: boolean;
3950
4592
  }
4593
+ interface ArrayTypeConfig {
4594
+ /**
4595
+ * The array type expected for mutable cases.
4596
+ */
4597
+ default?: ArrayOption;
4598
+ /**
4599
+ * The array type expected for readonly cases. If omitted, the value for `default` will be used.
4600
+ */
4601
+ readonly?: ReadonlyArrayOption;
4602
+ }
4603
+ /**
4604
+ * This rule allows you to specify how different TypeScript directive comments
4605
+ * should be handled.
4606
+ *
4607
+ * For each directive (`@ts-expect-error`, `@ts-ignore`, `@ts-nocheck`, `@ts-check`), you can choose one of the following options:
4608
+ * - `true`: Disallow the directive entirely, preventing its use in the entire codebase.
4609
+ * - `false`: Allow the directive without any restrictions.
4610
+ * - `"allow-with-description"`: Allow the directive only if it is followed by a description explaining its use. The description must meet the minimum length specified by `minimumDescriptionLength`.
4611
+ * - `{ "descriptionFormat": "<regex>" }`: Allow the directive only if the description matches the specified regex pattern.
4612
+ *
4613
+ * For example:
4614
+ * ```json
4615
+ * {
4616
+ * "ts-expect-error": "allow-with-description",
4617
+ * "ts-ignore": true,
4618
+ * "ts-nocheck": {
4619
+ * "descriptionFormat": "^: TS\\d+ because .+$"
4620
+ * },
4621
+ * "ts-check": false,
4622
+ * "minimumDescriptionLength": 3
4623
+ * }
4624
+ * ```
4625
+ */
4626
+ interface BanTsCommentConfig {
4627
+ /**
4628
+ * Minimum description length required when using directives with `allow-with-description`.
4629
+ */
4630
+ minimumDescriptionLength?: number;
4631
+ /**
4632
+ * How to handle the `@ts-check` directive.
4633
+ */
4634
+ "ts-check"?: DirectiveConfigSchema;
4635
+ /**
4636
+ * How to handle the `@ts-expect-error` directive.
4637
+ */
4638
+ "ts-expect-error"?: DirectiveConfigSchema;
4639
+ /**
4640
+ * How to handle the `@ts-ignore` directive.
4641
+ */
4642
+ "ts-ignore"?: DirectiveConfigSchema;
4643
+ /**
4644
+ * How to handle the `@ts-nocheck` directive.
4645
+ */
4646
+ "ts-nocheck"?: DirectiveConfigSchema;
4647
+ }
3951
4648
  interface ConsistentReturnConfig {
3952
4649
  /**
3953
4650
  * Treat explicit `return undefined` as equivalent to an unspecified return.
3954
4651
  */
3955
4652
  treatUndefinedAsUnspecified?: boolean;
3956
4653
  }
4654
+ interface ConsistentTypeAssertionsConfig {
4655
+ /**
4656
+ * Whether array literal type assertions are allowed, allowed only as parameters, or disallowed.
4657
+ */
4658
+ arrayLiteralTypeAssertions?: ArrayLiteralTypeAssertions;
4659
+ /**
4660
+ * Which assertion syntax is enforced.
4661
+ */
4662
+ assertionStyle?: AssertionStyle;
4663
+ /**
4664
+ * Whether object literal type assertions are allowed, allowed only as parameters, or disallowed.
4665
+ */
4666
+ objectLiteralTypeAssertions?: ObjectLiteralTypeAssertions;
4667
+ }
3957
4668
  interface ConsistentTypeExportsConfig {
3958
4669
  /**
3959
4670
  * Enables an autofix strategy that rewrites mixed exports using inline `type` specifiers.
3960
4671
  */
3961
4672
  fixMixedExportsWithInlineTypeSpecifier?: boolean;
3962
4673
  }
4674
+ interface ConsistentTypeImportsConfig {
4675
+ /**
4676
+ * Disallow using `import()` in type annotations, like `type T = import('foo')`
4677
+ */
4678
+ disallowTypeAnnotations?: boolean;
4679
+ /**
4680
+ * Control how type imports are added when auto-fixing.
4681
+ */
4682
+ fixStyle?: FixStyle;
4683
+ /**
4684
+ * Control whether to enforce type imports or value imports.
4685
+ */
4686
+ prefer?: Prefer;
4687
+ }
3963
4688
  interface DotNotationConfig {
3964
4689
  /**
3965
4690
  * Allow bracket notation for properties covered by an index signature.
@@ -4171,12 +4896,52 @@ interface PackageSpecifier {
4171
4896
  */
4172
4897
  package: string;
4173
4898
  }
4899
+ interface NoDuplicateTypeConstituentsConfig {
4900
+ /**
4901
+ * Whether to ignore duplicate types in intersection types.
4902
+ * When true, allows `type T = A & A`.
4903
+ */
4904
+ ignoreIntersections?: boolean;
4905
+ /**
4906
+ * Whether to ignore duplicate types in union types.
4907
+ * When true, allows `type T = A | A`.
4908
+ */
4909
+ ignoreUnions?: boolean;
4910
+ }
4174
4911
  interface NoEmptyInterface {
4175
4912
  /**
4176
4913
  * When set to `true`, allows empty interfaces that extend a single interface.
4177
4914
  */
4178
4915
  allowSingleExtends?: boolean;
4179
4916
  }
4917
+ interface NoEmptyObjectTypeConfig {
4918
+ /**
4919
+ * Whether to allow empty interfaces.
4920
+ */
4921
+ allowInterfaces?: AllowInterfaces;
4922
+ /**
4923
+ * Whether to allow empty object type literals.
4924
+ */
4925
+ allowObjectTypes?: AllowObjectTypes;
4926
+ /**
4927
+ * A stringified regular expression to allow interfaces and object type aliases with the configured name.
4928
+ *
4929
+ * This can be useful if your existing code style includes a pattern of declaring empty types with `{}` instead of `object`.
4930
+ *
4931
+ * Example of **incorrect** code for this rule with `{ allowWithName: 'Props$' }`:
4932
+ * ```ts
4933
+ * interface InterfaceValue {}
4934
+ * type TypeValue = {};
4935
+ * ```
4936
+ *
4937
+ * Example of **correct** code for this rule with `{ allowWithName: 'Props$' }`:
4938
+ * ```ts
4939
+ * interface InterfaceProps {}
4940
+ * type TypeProps = {};
4941
+ * ```
4942
+ */
4943
+ allowWithName?: string;
4944
+ }
4180
4945
  interface NoExplicitAny {
4181
4946
  /**
4182
4947
  * Whether to enable auto-fixing in which the `any` type is converted to the `unknown` type.
@@ -4237,12 +5002,66 @@ interface NoInferrableTypes {
4237
5002
  */
4238
5003
  ignoreProperties?: boolean;
4239
5004
  }
5005
+ interface NoInvalidVoidTypeConfig {
5006
+ /**
5007
+ * Whether a `this` parameter of a function may be `void`.
5008
+ */
5009
+ allowAsThisParameter?: boolean;
5010
+ /**
5011
+ * Whether `void` can be used as generic type arguments.
5012
+ * Can be `true` / `false`, or an allowlist of generic type names.
5013
+ */
5014
+ allowInGenericTypeArguments?: AllowInGenericTypeArguments;
5015
+ }
4240
5016
  interface NoMeaninglessVoidOperatorConfig {
4241
5017
  /**
4242
5018
  * Whether to check `void` applied to expressions of type `never`.
4243
5019
  */
4244
5020
  checkNever?: boolean;
4245
5021
  }
5022
+ interface NoMisusedPromisesConfig {
5023
+ /**
5024
+ * Whether to check if Promises are used in conditionals.
5025
+ * When true, disallows using Promises in conditions where a boolean is expected.
5026
+ */
5027
+ checksConditionals?: boolean;
5028
+ /**
5029
+ * Whether to check if Promises are used in spread syntax.
5030
+ * When true, disallows spreading Promise values.
5031
+ */
5032
+ checksSpreads?: boolean;
5033
+ /**
5034
+ * Configuration for checking if Promises are returned in contexts expecting void.
5035
+ * Can be a boolean to enable/disable all checks, or an object for granular control.
5036
+ */
5037
+ checksVoidReturn?: ChecksVoidReturn;
5038
+ }
5039
+ interface ChecksVoidReturnOptions {
5040
+ /**
5041
+ * Whether to check Promise-returning functions passed as arguments to void-returning functions.
5042
+ */
5043
+ arguments?: boolean;
5044
+ /**
5045
+ * Whether to check Promise-returning functions in JSX attributes expecting void.
5046
+ */
5047
+ attributes?: boolean;
5048
+ /**
5049
+ * Whether to check Promise-returning methods that override void-returning inherited methods.
5050
+ */
5051
+ inheritedMethods?: boolean;
5052
+ /**
5053
+ * Whether to check Promise-returning functions assigned to object properties expecting void.
5054
+ */
5055
+ properties?: boolean;
5056
+ /**
5057
+ * Whether to check Promise values returned from void-returning functions.
5058
+ */
5059
+ returns?: boolean;
5060
+ /**
5061
+ * Whether to check Promise-returning functions assigned to variables typed as void-returning.
5062
+ */
5063
+ variables?: boolean;
5064
+ }
4246
5065
  interface NoMisusedSpreadConfig {
4247
5066
  /**
4248
5067
  * An array of type or value specifiers that are allowed to be spread
@@ -4346,6 +5165,14 @@ interface NoRequireImportsConfig {
4346
5165
  */
4347
5166
  allowAsImport?: boolean;
4348
5167
  }
5168
+ interface NoRestrictedTypesConfig {
5169
+ /**
5170
+ * A mapping of type names to ban configurations.
5171
+ */
5172
+ types?: {
5173
+ [k: string]: BanConfigValue;
5174
+ };
5175
+ }
4349
5176
  interface NoThisAliasConfig {
4350
5177
  /**
4351
5178
  * Whether to allow destructuring of `this` to local variables.
@@ -4368,6 +5195,17 @@ interface NoUnnecessaryBooleanLiteralCompareConfig {
4368
5195
  */
4369
5196
  allowComparingNullableBooleansToTrue?: boolean;
4370
5197
  }
5198
+ interface NoUnnecessaryConditionConfig {
5199
+ /**
5200
+ * Whether to allow constant loop conditions.
5201
+ * `true` is treated as `"always"`, `false` as `"never"`.
5202
+ */
5203
+ allowConstantLoopConditions?: AllowConstantLoopConditions;
5204
+ /**
5205
+ * Whether to check type predicate functions.
5206
+ */
5207
+ checkTypePredicates?: boolean;
5208
+ }
4371
5209
  interface NoUnnecessaryTypeAssertionConfig {
4372
5210
  /**
4373
5211
  * Whether to check literal const assertions like `'foo' as const`.
@@ -4409,6 +5247,16 @@ interface OnlyThrowErrorConfig {
4409
5247
  */
4410
5248
  allowThrowingUnknown?: boolean;
4411
5249
  }
5250
+ interface ParameterPropertiesConfig {
5251
+ /**
5252
+ * Modifiers that are allowed to be used with parameter properties or class properties, depending on the `prefer` option.
5253
+ */
5254
+ allow?: Modifier[];
5255
+ /**
5256
+ * Whether to prefer parameter properties or class properties.
5257
+ */
5258
+ prefer?: Prefer2;
5259
+ }
4412
5260
  interface PreferLiteralEnumMember {
4413
5261
  /**
4414
5262
  * When set to `true`, allows bitwise expressions in enum member initializers.
@@ -4416,6 +5264,56 @@ interface PreferLiteralEnumMember {
4416
5264
  */
4417
5265
  allowBitwiseExpressions?: boolean;
4418
5266
  }
5267
+ interface PreferNullishCoalescingConfig {
5268
+ /**
5269
+ * Whether to ignore arguments to the `Boolean` constructor.
5270
+ */
5271
+ ignoreBooleanCoercion?: boolean;
5272
+ /**
5273
+ * Whether to ignore cases that are located within a conditional test.
5274
+ */
5275
+ ignoreConditionalTests?: boolean;
5276
+ /**
5277
+ * Whether to ignore any if statements that could be simplified by using
5278
+ * the nullish coalescing operator.
5279
+ */
5280
+ ignoreIfStatements?: boolean;
5281
+ /**
5282
+ * Whether to ignore any logical or expressions that are part of a mixed
5283
+ * logical expression (with `&&`).
5284
+ */
5285
+ ignoreMixedLogicalExpressions?: boolean;
5286
+ /**
5287
+ * Whether to ignore all (`true`) or some (an object with properties) primitive types.
5288
+ */
5289
+ ignorePrimitives?: IgnorePrimitives;
5290
+ /**
5291
+ * Whether to ignore any ternary expressions that could be simplified by
5292
+ * using the nullish coalescing operator.
5293
+ */
5294
+ ignoreTernaryTests?: boolean;
5295
+ }
5296
+ /**
5297
+ * Options for ignoring specific primitive types.
5298
+ */
5299
+ interface IgnorePrimitivesOptions {
5300
+ /**
5301
+ * Ignore bigint primitive types.
5302
+ */
5303
+ bigint?: boolean;
5304
+ /**
5305
+ * Ignore boolean primitive types.
5306
+ */
5307
+ boolean?: boolean;
5308
+ /**
5309
+ * Ignore number primitive types.
5310
+ */
5311
+ number?: boolean;
5312
+ /**
5313
+ * Ignore string primitive types.
5314
+ */
5315
+ string?: boolean;
5316
+ }
4419
5317
  interface PreferOptionalChainConfig {
4420
5318
  /**
4421
5319
  * Allow autofixers that will change the return type of the expression.
@@ -4495,6 +5393,12 @@ interface PreferReadonlyParameterTypesConfig {
4495
5393
  */
4496
5394
  treatMethodsAsReadonly?: boolean;
4497
5395
  }
5396
+ interface PreferStringStartsEndsWithConfig {
5397
+ /**
5398
+ * Whether equality checks against the first/last character are allowed.
5399
+ */
5400
+ allowSingleElementEquality?: AllowSingleElementEquality;
5401
+ }
4498
5402
  interface PromiseFunctionAsyncConfig {
4499
5403
  /**
4500
5404
  * Whether to allow functions returning `any` type without requiring `async`.
@@ -4653,6 +5557,14 @@ interface SwitchExhaustivenessCheckConfig {
4653
5557
  */
4654
5558
  requireDefaultForNonUnion?: boolean;
4655
5559
  }
5560
+ interface TripleSlashReferenceConfig {
5561
+ /**
5562
+ * What to enforce for `/// <reference lib="..." />` references.
5563
+ */
5564
+ lib?: AlwaysNever;
5565
+ path?: PathOption;
5566
+ types?: TypesOption;
5567
+ }
4656
5568
  interface UnboundMethodConfig {
4657
5569
  /**
4658
5570
  * Whether to ignore unbound methods that are static.
@@ -4674,12 +5586,141 @@ interface UnifiedSignaturesOptions {
4674
5586
  */
4675
5587
  ignoreOverloadsWithDifferentJSDoc?: boolean;
4676
5588
  }
5589
+ interface CatchErrorNameConfig {
5590
+ /**
5591
+ * A list of patterns to ignore when checking `catch` variable names. The pattern
5592
+ * can be a string or regular expression.
5593
+ */
5594
+ ignore?: string[];
5595
+ /**
5596
+ * The name to use for error variables in `catch` blocks. You can customize it
5597
+ * to something other than `'error'` (e.g., `'exception'`).
5598
+ */
5599
+ name?: string;
5600
+ }
4677
5601
  interface ConsistentFunctionScoping {
4678
5602
  /**
4679
5603
  * Whether to check scoping with arrow functions.
4680
5604
  */
4681
5605
  checkArrowFunctions?: boolean;
4682
5606
  }
5607
+ interface ExplicitLengthCheck {
5608
+ /**
5609
+ * Configuration option to specify how non-zero length checks should be enforced.
5610
+ */
5611
+ "non-zero"?: NonZero;
5612
+ }
5613
+ interface ImportStyleConfig {
5614
+ /**
5615
+ * Whether dynamic import expressions are checked.
5616
+ *
5617
+ * Set this to `false` to skip calls such as `await import("module")`.
5618
+ *
5619
+ * With the default configuration, examples of **incorrect** code:
5620
+ * ```js
5621
+ * async () => {
5622
+ * const {red} = await import("chalk");
5623
+ * };
5624
+ * ```
5625
+ *
5626
+ * Examples of **correct** code:
5627
+ * ```js
5628
+ * async () => {
5629
+ * const {default: chalk} = await import("chalk");
5630
+ * };
5631
+ * ```
5632
+ */
5633
+ checkDynamicImport?: boolean;
5634
+ /**
5635
+ * Whether export-from declarations are checked.
5636
+ *
5637
+ * This is disabled by default. Set this to `true` to check declarations like
5638
+ * `export ... from "module"`.
5639
+ *
5640
+ * With `{ "checkExportFrom": true }`, examples of **incorrect** code:
5641
+ * ```js
5642
+ * export * from "node:util";
5643
+ * ```
5644
+ *
5645
+ * Examples of **correct** code:
5646
+ * ```js
5647
+ * export {promisify} from "node:util";
5648
+ * ```
5649
+ */
5650
+ checkExportFrom?: boolean;
5651
+ /**
5652
+ * Whether static import declarations are checked.
5653
+ *
5654
+ * Set this to `false` to skip `import ... from "module"` and side-effect imports like
5655
+ * `import "module"`.
5656
+ *
5657
+ * With the default configuration, examples of **incorrect** code:
5658
+ * ```js
5659
+ * import {red} from "chalk";
5660
+ * ```
5661
+ *
5662
+ * Examples of **correct** code:
5663
+ * ```js
5664
+ * import chalk from "chalk";
5665
+ * ```
5666
+ */
5667
+ checkImport?: boolean;
5668
+ /**
5669
+ * Whether CommonJS `require()` calls are checked.
5670
+ *
5671
+ * Set this to `false` to skip `require("module")` calls completely.
5672
+ *
5673
+ * With the default configuration, examples of **incorrect** code:
5674
+ * ```js
5675
+ * const util = require("node:util");
5676
+ * ```
5677
+ *
5678
+ * Examples of **correct** code:
5679
+ * ```js
5680
+ * const {promisify} = require("node:util");
5681
+ * ```
5682
+ */
5683
+ checkRequire?: boolean;
5684
+ /**
5685
+ * Whether `styles` extends or replaces the built-in module preferences.
5686
+ *
5687
+ * When this is `true`, entries in `styles` are merged with the default preferences. For
5688
+ * example, `{ "styles": { "path": { "named": true } } }` allows named imports from
5689
+ * `path` while leaving its default import style allowed. When this is `false`, only modules
5690
+ * configured in `styles` are checked.
5691
+ *
5692
+ * With `{ "extendDefaultStyles": false, "styles": {} }`, examples of **correct** code:
5693
+ * ```js
5694
+ * import {red} from "chalk";
5695
+ * ```
5696
+ */
5697
+ extendDefaultStyles?: boolean;
5698
+ /**
5699
+ * Per-module import style preferences.
5700
+ *
5701
+ * Each key is a module specifier. Set the value to `false` to disable checking for the
5702
+ * module, or to an object that allows one or more import styles. The available styles are
5703
+ * `unassigned`, `default`, `namespace`, and `named`. When `extendDefaultStyles` is `true`,
5704
+ * these entries extend the built-in defaults instead of replacing them.
5705
+ *
5706
+ * The default module preferences are default imports for `chalk`, `path`, and `node:path`,
5707
+ * and named imports for `util` and `node:util`.
5708
+ *
5709
+ * With `{ "styles": { "node:util": { "named": true, "default": false } } }`,
5710
+ * examples of **incorrect** code:
5711
+ * ```js
5712
+ * import util from "node:util";
5713
+ * ```
5714
+ *
5715
+ * Examples of **correct** code:
5716
+ * ```js
5717
+ * import {promisify} from "node:util";
5718
+ * ```
5719
+ */
5720
+ styles?: {
5721
+ [k: string]: ModuleStylesOverride;
5722
+ };
5723
+ }
4683
5724
  interface NoArrayReduce {
4684
5725
  /**
4685
5726
  * When set to `true`, allows simple operations (like summing numbers) in `reduce` and `reduceRight` calls.
@@ -4710,6 +5751,27 @@ interface NoArraySort {
4710
5751
  */
4711
5752
  allowExpressionStatement?: boolean;
4712
5753
  }
5754
+ interface NoInstanceofBuiltinsConfig {
5755
+ /**
5756
+ * Constructor names to exclude from checking.
5757
+ */
5758
+ exclude?: string[];
5759
+ /**
5760
+ * Additional constructor names to check beyond the default set.
5761
+ * Use this to extend the rule with additional constructors.
5762
+ */
5763
+ include?: string[];
5764
+ /**
5765
+ * Controls which built-in constructors are checked.
5766
+ */
5767
+ strategy?: NoInstanceofBuiltinsStrategy;
5768
+ /**
5769
+ * When `true`, checks `instanceof Error` and suggests using `Error.isError()` instead.
5770
+ * Requires [the `Error.isError()` function](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error/isError)
5771
+ * to be available.
5772
+ */
5773
+ useErrorIsError?: boolean;
5774
+ }
4713
5775
  interface NoNull {
4714
5776
  /**
4715
5777
  * When set to `true`, disallow the use of `null` as a direct function call or constructor argument.
@@ -4743,6 +5805,24 @@ interface NoUselessUndefined {
4743
5805
  */
4744
5806
  checkArrowFunctionBody?: boolean;
4745
5807
  }
5808
+ interface PreferAtConfig {
5809
+ /**
5810
+ * Check all index access, not just special patterns like `array.length - 1`.
5811
+ * When enabled, `array[0]`, `array[1]`, etc. will also be flagged.
5812
+ */
5813
+ checkAllIndexAccess?: boolean;
5814
+ /**
5815
+ * List of function names to treat as "get last element" functions.
5816
+ * These functions will be checked for `.at(-1)` usage.
5817
+ */
5818
+ getLastElementFunctions?: string[];
5819
+ }
5820
+ interface PreferExportFrom {
5821
+ /**
5822
+ * When false, if any import binding is used somewhere other than a re-export, all variables in the import declaration are ignored.
5823
+ */
5824
+ checkUsedVariables?: boolean;
5825
+ }
4746
5826
  interface PreferNumberPropertiesConfig {
4747
5827
  /**
4748
5828
  * If set to `true`, checks for usage of `Infinity` and `-Infinity` as global variables.
@@ -4753,6 +5833,18 @@ interface PreferNumberPropertiesConfig {
4753
5833
  */
4754
5834
  checkNaN?: boolean;
4755
5835
  }
5836
+ interface PreferObjectFromEntriesConfig {
5837
+ /**
5838
+ * Additional functions to treat as equivalents to `Object.fromEntries`.
5839
+ */
5840
+ functions?: string[];
5841
+ }
5842
+ interface PreferSingleCallConfig {
5843
+ /**
5844
+ * Methods to ignore.
5845
+ */
5846
+ ignore?: string[];
5847
+ }
4756
5848
  interface PreferStructuredCloneConfig {
4757
5849
  /**
4758
5850
  * List of functions that are allowed to be used for deep cloning instead of structuredClone.
@@ -4801,12 +5893,60 @@ interface ValidTypeof {
4801
5893
  */
4802
5894
  requireStringLiterals?: boolean;
4803
5895
  }
5896
+ interface ConsistentEachForJson {
5897
+ /**
5898
+ * Preferred method to create parameterized tests for `describe` blocks.
5899
+ */
5900
+ describe?: MemberNames;
5901
+ /**
5902
+ * Preferred method to create parameterized tests for `it` blocks.
5903
+ */
5904
+ it?: MemberNames;
5905
+ /**
5906
+ * Preferred method to create parameterized tests for `suite` blocks.
5907
+ */
5908
+ suite?: MemberNames;
5909
+ /**
5910
+ * Preferred method to create parameterized tests for `test` blocks.
5911
+ */
5912
+ test?: MemberNames;
5913
+ }
5914
+ interface ConsistentTestFilenameConfig {
5915
+ /**
5916
+ * Regex pattern to ensure we are linting only test filenames.
5917
+ * Decides whether a file is a testing file.
5918
+ */
5919
+ allTestPattern?: string;
5920
+ /**
5921
+ * Required regex to check if a test filename have a valid formart.
5922
+ * Pattern doesn't have a default value, you must provide one.
5923
+ */
5924
+ pattern?: string;
5925
+ }
5926
+ interface ConsistentVitestConfig {
5927
+ /**
5928
+ * Decides whether to prefer vitest function accessor
5929
+ */
5930
+ fn?: VitestFnName;
5931
+ }
5932
+ interface PreferImportInMockConfig {
5933
+ /**
5934
+ * Whether the rule should generate fixes or not.
5935
+ */
5936
+ fixable: boolean;
5937
+ }
4804
5938
  interface RequireMockTypeParametersConfig {
4805
5939
  /**
4806
5940
  * Also require type parameters for `importActual` and `importMock`.
4807
5941
  */
4808
5942
  checkImportFunctions?: boolean;
4809
5943
  }
5944
+ interface DefinePropsDestructuring {
5945
+ /**
5946
+ * Require or prohibit destructuring.
5947
+ */
5948
+ destructure?: Destructure;
5949
+ }
4810
5950
  interface MaxProps {
4811
5951
  /**
4812
5952
  * The maximum number of props allowed in a Vue SFC.
@@ -4821,6 +5961,13 @@ interface NoDeprecatedModelDefinitionConfig {
4821
5961
  */
4822
5962
  allowVue3Compat?: boolean;
4823
5963
  }
5964
+ interface NoDupeKeysConfig {
5965
+ /**
5966
+ * Additional group names to search for duplicate keys in, on top of the
5967
+ * built-in `props`, `computed`, `data`, `methods` and `setup` groups.
5968
+ */
5969
+ groups?: string[];
5970
+ }
4824
5971
  interface NoReservedComponentNames {
4825
5972
  /**
4826
5973
  * Disallow Vue 3 built-in component names (e.g. `Teleport`, `Suspense`).