@vinicunca/eslint-config 3.30.0 → 4.0.1

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.
@@ -7,11 +7,11 @@ import pluginPerfectionist from "eslint-plugin-perfectionist";
7
7
  import pluginSonar from "eslint-plugin-sonarjs";
8
8
  import pluginUnicorn from "eslint-plugin-unicorn";
9
9
  import pluginUnusedImports from "eslint-plugin-unused-imports";
10
+ import { Linter } from "eslint";
10
11
  import { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
11
12
  import { ParserOptions } from "@typescript-eslint/parser";
12
13
  import { FlatGitignoreOptions } from "eslint-config-flat-gitignore";
13
14
  import { Options } from "eslint-processor-vue-blocks";
14
- import { Linter } from "eslint";
15
15
 
16
16
  //#region src/typegen.d.ts
17
17
  interface RuleOptions {
@@ -119,182 +119,182 @@ interface RuleOptions {
119
119
  * apply `jsx-a11y/alt-text` rule to Astro components
120
120
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/alt-text/
121
121
  */
122
- 'astro/jsx-a11y/alt-text'?: Linter.RuleEntry<[]>;
122
+ 'astro/jsx-a11y/alt-text'?: Linter.RuleEntry<AstroJsxA11YAltText>;
123
123
  /**
124
124
  * apply `jsx-a11y/anchor-ambiguous-text` rule to Astro components
125
125
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-ambiguous-text/
126
126
  */
127
- 'astro/jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<[]>;
127
+ 'astro/jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<AstroJsxA11YAnchorAmbiguousText>;
128
128
  /**
129
129
  * apply `jsx-a11y/anchor-has-content` rule to Astro components
130
130
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-has-content/
131
131
  */
132
- 'astro/jsx-a11y/anchor-has-content'?: Linter.RuleEntry<[]>;
132
+ 'astro/jsx-a11y/anchor-has-content'?: Linter.RuleEntry<AstroJsxA11YAnchorHasContent>;
133
133
  /**
134
134
  * apply `jsx-a11y/anchor-is-valid` rule to Astro components
135
135
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-is-valid/
136
136
  */
137
- 'astro/jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<[]>;
137
+ 'astro/jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<AstroJsxA11YAnchorIsValid>;
138
138
  /**
139
139
  * apply `jsx-a11y/aria-activedescendant-has-tabindex` rule to Astro components
140
140
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-activedescendant-has-tabindex/
141
141
  */
142
- 'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<[]>;
142
+ 'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<AstroJsxA11YAriaActivedescendantHasTabindex>;
143
143
  /**
144
144
  * apply `jsx-a11y/aria-props` rule to Astro components
145
145
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-props/
146
146
  */
147
- 'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<[]>;
147
+ 'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<AstroJsxA11YAriaProps>;
148
148
  /**
149
149
  * apply `jsx-a11y/aria-proptypes` rule to Astro components
150
150
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-proptypes/
151
151
  */
152
- 'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<[]>;
152
+ 'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<AstroJsxA11YAriaProptypes>;
153
153
  /**
154
154
  * apply `jsx-a11y/aria-role` rule to Astro components
155
155
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-role/
156
156
  */
157
- 'astro/jsx-a11y/aria-role'?: Linter.RuleEntry<[]>;
157
+ 'astro/jsx-a11y/aria-role'?: Linter.RuleEntry<AstroJsxA11YAriaRole>;
158
158
  /**
159
159
  * apply `jsx-a11y/aria-unsupported-elements` rule to Astro components
160
160
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-unsupported-elements/
161
161
  */
162
- 'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<[]>;
162
+ 'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<AstroJsxA11YAriaUnsupportedElements>;
163
163
  /**
164
164
  * apply `jsx-a11y/autocomplete-valid` rule to Astro components
165
165
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/autocomplete-valid/
166
166
  */
167
- 'astro/jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<[]>;
167
+ 'astro/jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<AstroJsxA11YAutocompleteValid>;
168
168
  /**
169
169
  * apply `jsx-a11y/click-events-have-key-events` rule to Astro components
170
170
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/click-events-have-key-events/
171
171
  */
172
- 'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<[]>;
172
+ 'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<AstroJsxA11YClickEventsHaveKeyEvents>;
173
173
  /**
174
174
  * apply `jsx-a11y/control-has-associated-label` rule to Astro components
175
175
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/control-has-associated-label/
176
176
  */
177
- 'astro/jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<[]>;
177
+ 'astro/jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<AstroJsxA11YControlHasAssociatedLabel>;
178
178
  /**
179
179
  * apply `jsx-a11y/heading-has-content` rule to Astro components
180
180
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/heading-has-content/
181
181
  */
182
- 'astro/jsx-a11y/heading-has-content'?: Linter.RuleEntry<[]>;
182
+ 'astro/jsx-a11y/heading-has-content'?: Linter.RuleEntry<AstroJsxA11YHeadingHasContent>;
183
183
  /**
184
184
  * apply `jsx-a11y/html-has-lang` rule to Astro components
185
185
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/html-has-lang/
186
186
  */
187
- 'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<[]>;
187
+ 'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<AstroJsxA11YHtmlHasLang>;
188
188
  /**
189
189
  * apply `jsx-a11y/iframe-has-title` rule to Astro components
190
190
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/iframe-has-title/
191
191
  */
192
- 'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<[]>;
192
+ 'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<AstroJsxA11YIframeHasTitle>;
193
193
  /**
194
194
  * apply `jsx-a11y/img-redundant-alt` rule to Astro components
195
195
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/img-redundant-alt/
196
196
  */
197
- 'astro/jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<[]>;
197
+ 'astro/jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<AstroJsxA11YImgRedundantAlt>;
198
198
  /**
199
199
  * apply `jsx-a11y/interactive-supports-focus` rule to Astro components
200
200
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/interactive-supports-focus/
201
201
  */
202
- 'astro/jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<[]>;
202
+ 'astro/jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<AstroJsxA11YInteractiveSupportsFocus>;
203
203
  /**
204
204
  * apply `jsx-a11y/label-has-associated-control` rule to Astro components
205
205
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/label-has-associated-control/
206
206
  */
207
- 'astro/jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<[]>;
207
+ 'astro/jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<AstroJsxA11YLabelHasAssociatedControl>;
208
208
  /**
209
209
  * apply `jsx-a11y/lang` rule to Astro components
210
210
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/lang/
211
211
  */
212
- 'astro/jsx-a11y/lang'?: Linter.RuleEntry<[]>;
212
+ 'astro/jsx-a11y/lang'?: Linter.RuleEntry<AstroJsxA11YLang>;
213
213
  /**
214
214
  * apply `jsx-a11y/media-has-caption` rule to Astro components
215
215
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/media-has-caption/
216
216
  */
217
- 'astro/jsx-a11y/media-has-caption'?: Linter.RuleEntry<[]>;
217
+ 'astro/jsx-a11y/media-has-caption'?: Linter.RuleEntry<AstroJsxA11YMediaHasCaption>;
218
218
  /**
219
219
  * apply `jsx-a11y/mouse-events-have-key-events` rule to Astro components
220
220
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/mouse-events-have-key-events/
221
221
  */
222
- 'astro/jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<[]>;
222
+ 'astro/jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<AstroJsxA11YMouseEventsHaveKeyEvents>;
223
223
  /**
224
224
  * apply `jsx-a11y/no-access-key` rule to Astro components
225
225
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-access-key/
226
226
  */
227
- 'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<[]>;
227
+ 'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<AstroJsxA11YNoAccessKey>;
228
228
  /**
229
229
  * apply `jsx-a11y/no-aria-hidden-on-focusable` rule to Astro components
230
230
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-aria-hidden-on-focusable/
231
231
  */
232
- 'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<[]>;
232
+ 'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<AstroJsxA11YNoAriaHiddenOnFocusable>;
233
233
  /**
234
234
  * apply `jsx-a11y/no-autofocus` rule to Astro components
235
235
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-autofocus/
236
236
  */
237
- 'astro/jsx-a11y/no-autofocus'?: Linter.RuleEntry<[]>;
237
+ 'astro/jsx-a11y/no-autofocus'?: Linter.RuleEntry<AstroJsxA11YNoAutofocus>;
238
238
  /**
239
239
  * apply `jsx-a11y/no-distracting-elements` rule to Astro components
240
240
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-distracting-elements/
241
241
  */
242
- 'astro/jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<[]>;
242
+ 'astro/jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<AstroJsxA11YNoDistractingElements>;
243
243
  /**
244
244
  * apply `jsx-a11y/no-interactive-element-to-noninteractive-role` rule to Astro components
245
245
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-interactive-element-to-noninteractive-role/
246
246
  */
247
- 'astro/jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<[]>;
247
+ 'astro/jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<AstroJsxA11YNoInteractiveElementToNoninteractiveRole>;
248
248
  /**
249
249
  * apply `jsx-a11y/no-noninteractive-element-interactions` rule to Astro components
250
250
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-element-interactions/
251
251
  */
252
- 'astro/jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<[]>;
252
+ 'astro/jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveElementInteractions>;
253
253
  /**
254
254
  * apply `jsx-a11y/no-noninteractive-element-to-interactive-role` rule to Astro components
255
255
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-element-to-interactive-role/
256
256
  */
257
- 'astro/jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<[]>;
257
+ 'astro/jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveElementToInteractiveRole>;
258
258
  /**
259
259
  * apply `jsx-a11y/no-noninteractive-tabindex` rule to Astro components
260
260
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-tabindex/
261
261
  */
262
- 'astro/jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<[]>;
262
+ 'astro/jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveTabindex>;
263
263
  /**
264
264
  * apply `jsx-a11y/no-redundant-roles` rule to Astro components
265
265
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-redundant-roles/
266
266
  */
267
- 'astro/jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<[]>;
267
+ 'astro/jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<AstroJsxA11YNoRedundantRoles>;
268
268
  /**
269
269
  * apply `jsx-a11y/no-static-element-interactions` rule to Astro components
270
270
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-static-element-interactions/
271
271
  */
272
- 'astro/jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<[]>;
272
+ 'astro/jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<AstroJsxA11YNoStaticElementInteractions>;
273
273
  /**
274
274
  * apply `jsx-a11y/prefer-tag-over-role` rule to Astro components
275
275
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/prefer-tag-over-role/
276
276
  */
277
- 'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<[]>;
277
+ 'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<AstroJsxA11YPreferTagOverRole>;
278
278
  /**
279
279
  * apply `jsx-a11y/role-has-required-aria-props` rule to Astro components
280
280
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-has-required-aria-props/
281
281
  */
282
- 'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<[]>;
282
+ 'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<AstroJsxA11YRoleHasRequiredAriaProps>;
283
283
  /**
284
284
  * apply `jsx-a11y/role-supports-aria-props` rule to Astro components
285
285
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-supports-aria-props/
286
286
  */
287
- 'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<[]>;
287
+ 'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<AstroJsxA11YRoleSupportsAriaProps>;
288
288
  /**
289
289
  * apply `jsx-a11y/scope` rule to Astro components
290
290
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/scope/
291
291
  */
292
- 'astro/jsx-a11y/scope'?: Linter.RuleEntry<[]>;
292
+ 'astro/jsx-a11y/scope'?: Linter.RuleEntry<AstroJsxA11YScope>;
293
293
  /**
294
294
  * apply `jsx-a11y/tabindex-no-positive` rule to Astro components
295
295
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/tabindex-no-positive/
296
296
  */
297
- 'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<[]>;
297
+ 'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<AstroJsxA11YTabindexNoPositive>;
298
298
  /**
299
299
  * the client:only directive is missing the correct component's framework value
300
300
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/missing-client-only-directive-value/
@@ -340,6 +340,11 @@ interface RuleOptions {
340
340
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-set-text-directive/
341
341
  */
342
342
  'astro/no-set-text-directive'?: Linter.RuleEntry<[]>;
343
+ /**
344
+ * disallow inline `<script>` without `src` to encourage CSP-safe patterns
345
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-unsafe-inline-scripts/
346
+ */
347
+ 'astro/no-unsafe-inline-scripts'?: Linter.RuleEntry<AstroNoUnsafeInlineScripts>;
343
348
  /**
344
349
  * disallow selectors defined in `style` tag that don't use in HTML
345
350
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-unused-css-selector/
@@ -2812,11 +2817,6 @@ interface RuleOptions {
2812
2817
  * @see https://eslint.org/docs/latest/rules/radix
2813
2818
  */
2814
2819
  'radix'?: Linter.RuleEntry<Radix>;
2815
- /**
2816
- * Disallow `children` in void DOM elements.
2817
- * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
2818
- */
2819
- 'react-dom/no-children-in-void-dom-elements'?: Linter.RuleEntry<[]>;
2820
2820
  /**
2821
2821
  * Disallow `dangerouslySetInnerHTML`.
2822
2822
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml
@@ -2848,7 +2848,7 @@ interface RuleOptions {
2848
2848
  */
2849
2849
  'react-dom/no-missing-button-type'?: Linter.RuleEntry<[]>;
2850
2850
  /**
2851
- * Enforces explicit `sandbox` attribute for `iframe` elements.
2851
+ * Enforces explicit `sandbox` prop for `iframe` elements.
2852
2852
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox
2853
2853
  */
2854
2854
  'react-dom/no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>;
@@ -2872,6 +2872,11 @@ interface RuleOptions {
2872
2872
  * @see https://eslint-react.xyz/docs/rules/dom-no-script-url
2873
2873
  */
2874
2874
  'react-dom/no-script-url'?: Linter.RuleEntry<[]>;
2875
+ /**
2876
+ * Disallows the use of string style prop.
2877
+ * @see https://eslint-react.xyz/docs/rules/dom-no-string-style-prop
2878
+ */
2879
+ 'react-dom/no-string-style-prop'?: Linter.RuleEntry<[]>;
2875
2880
  /**
2876
2881
  * Disallow unknown `DOM` property.
2877
2882
  * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property
@@ -2898,70 +2903,133 @@ interface RuleOptions {
2898
2903
  */
2899
2904
  'react-dom/no-void-elements-with-children'?: Linter.RuleEntry<[]>;
2900
2905
  /**
2901
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2902
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2906
+ * Enforces React Dom is imported via a namespace import.
2907
+ * @see https://eslint-react.xyz/docs/rules/dom-prefer-namespace-import
2903
2908
  */
2904
- 'react-hooks-extra/ensure-custom-hooks-using-other-hooks'?: Linter.RuleEntry<[]>;
2909
+ 'react-dom/prefer-namespace-import'?: Linter.RuleEntry<[]>;
2905
2910
  /**
2906
- * Disallow unnecessary usage of `useCallback`.
2907
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-callback
2911
+ * Disallow direct calls to the `set` function of `useState` in `useEffect`.
2912
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
2908
2913
  */
2909
- 'react-hooks-extra/ensure-use-callback-has-non-empty-deps'?: Linter.RuleEntry<[]>;
2914
+ 'react-hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>;
2910
2915
  /**
2911
- * Disallow unnecessary usage of `useMemo`.
2912
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-memo
2916
+ * Verifies that automatic effect dependencies are compiled if opted-in
2913
2917
  */
2914
- 'react-hooks-extra/ensure-use-memo-has-non-empty-deps'?: Linter.RuleEntry<[]>;
2918
+ 'react-hooks/automatic-effect-dependencies'?: Linter.RuleEntry<ReactHooksAutomaticEffectDependencies>;
2915
2919
  /**
2916
- * Disallow direct calls to the `set` function of `useState` in `useEffect`.
2917
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
2920
+ * Validates against calling capitalized functions/methods instead of using JSX
2918
2921
  */
2919
- 'react-hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>;
2922
+ 'react-hooks/capitalized-calls'?: Linter.RuleEntry<ReactHooksCapitalizedCalls>;
2920
2923
  /**
2921
- * Disallow direct calls to the `set` function of `useState` in `useLayoutEffect`.
2922
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-layout-effect
2924
+ * Validates against higher order functions defining nested components or hooks. Components and hooks should be defined at the module level
2923
2925
  */
2924
- 'react-hooks-extra/no-direct-set-state-in-use-layout-effect'?: Linter.RuleEntry<[]>;
2926
+ 'react-hooks/component-hook-factories'?: Linter.RuleEntry<ReactHooksComponentHookFactories>;
2925
2927
  /**
2926
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2927
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2928
+ * Validates the compiler configuration options
2928
2929
  */
2929
- 'react-hooks-extra/no-redundant-custom-hook'?: Linter.RuleEntry<[]>;
2930
+ 'react-hooks/config'?: Linter.RuleEntry<ReactHooksConfig>;
2930
2931
  /**
2931
- * Disallow unnecessary usage of `useCallback`.
2932
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-callback
2932
+ * Validates usage of error boundaries instead of try/catch for errors in child components
2933
2933
  */
2934
- 'react-hooks-extra/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>;
2934
+ 'react-hooks/error-boundaries'?: Linter.RuleEntry<ReactHooksErrorBoundaries>;
2935
2935
  /**
2936
- * Disallow unnecessary usage of `useMemo`.
2937
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-memo
2936
+ * verifies the list of dependencies for Hooks like useEffect and similar
2937
+ * @see https://github.com/facebook/react/issues/14920
2938
2938
  */
2939
- 'react-hooks-extra/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>;
2939
+ 'react-hooks/exhaustive-deps'?: Linter.RuleEntry<ReactHooksExhaustiveDeps>;
2940
2940
  /**
2941
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2942
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2941
+ * Validates usage of fbt
2943
2942
  */
2944
- 'react-hooks-extra/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>;
2943
+ 'react-hooks/fbt'?: Linter.RuleEntry<ReactHooksFbt>;
2945
2944
  /**
2946
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2947
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2945
+ * Validates usage of `fire`
2948
2946
  */
2949
- 'react-hooks-extra/no-useless-custom-hooks'?: Linter.RuleEntry<[]>;
2947
+ 'react-hooks/fire'?: Linter.RuleEntry<ReactHooksFire>;
2950
2948
  /**
2951
- * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
2952
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-prefer-use-state-lazy-initialization
2949
+ * Validates configuration of [gating mode](https://react.dev/reference/react-compiler/gating)
2953
2950
  */
2954
- 'react-hooks-extra/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>;
2951
+ 'react-hooks/gating'?: Linter.RuleEntry<ReactHooksGating>;
2955
2952
  /**
2956
- * verifies the list of dependencies for Hooks like useEffect and similar
2957
- * @see https://github.com/facebook/react/issues/14920
2953
+ * Validates against assignment/mutation of globals during render, part of ensuring that [side effects must render outside of render](https://react.dev/reference/rules/components-and-hooks-must-be-pure#side-effects-must-run-outside-of-render)
2958
2954
  */
2959
- 'react-hooks/exhaustive-deps'?: Linter.RuleEntry<ReactHooksExhaustiveDeps>;
2955
+ 'react-hooks/globals'?: Linter.RuleEntry<ReactHooksGlobals>;
2956
+ /**
2957
+ * Validates the rules of hooks
2958
+ */
2959
+ 'react-hooks/hooks'?: Linter.RuleEntry<ReactHooksHooks>;
2960
+ /**
2961
+ * Validates against mutating props, state, and other values that [are immutable](https://react.dev/reference/rules/components-and-hooks-must-be-pure#props-and-state-are-immutable)
2962
+ */
2963
+ 'react-hooks/immutability'?: Linter.RuleEntry<ReactHooksImmutability>;
2964
+ /**
2965
+ * Validates against usage of libraries which are incompatible with memoization (manual or automatic)
2966
+ */
2967
+ 'react-hooks/incompatible-library'?: Linter.RuleEntry<ReactHooksIncompatibleLibrary>;
2968
+ /**
2969
+ * Internal invariants
2970
+ */
2971
+ 'react-hooks/invariant'?: Linter.RuleEntry<ReactHooksInvariant>;
2972
+ /**
2973
+ * Validates that effect dependencies are memoized
2974
+ */
2975
+ 'react-hooks/memoized-effect-dependencies'?: Linter.RuleEntry<ReactHooksMemoizedEffectDependencies>;
2976
+ /**
2977
+ * Validates against deriving values from state in an effect
2978
+ */
2979
+ 'react-hooks/no-deriving-state-in-effects'?: Linter.RuleEntry<ReactHooksNoDerivingStateInEffects>;
2980
+ /**
2981
+ * Validates that existing manual memoized is preserved by the compiler. React Compiler will only compile components and hooks if its inference [matches or exceeds the existing manual memoization](https://react.dev/learn/react-compiler/introduction#what-should-i-do-about-usememo-usecallback-and-reactmemo)
2982
+ */
2983
+ 'react-hooks/preserve-manual-memoization'?: Linter.RuleEntry<ReactHooksPreserveManualMemoization>;
2984
+ /**
2985
+ * Validates that [components/hooks are pure](https://react.dev/reference/rules/components-and-hooks-must-be-pure) by checking that they do not call known-impure functions
2986
+ */
2987
+ 'react-hooks/purity'?: Linter.RuleEntry<ReactHooksPurity>;
2988
+ /**
2989
+ * Validates correct usage of refs, not reading/writing during render. See the "pitfalls" section in [`useRef()` usage](https://react.dev/reference/react/useRef#usage)
2990
+ */
2991
+ 'react-hooks/refs'?: Linter.RuleEntry<ReactHooksRefs>;
2992
+ /**
2993
+ * Validates against suppression of other rules
2994
+ */
2995
+ 'react-hooks/rule-suppression'?: Linter.RuleEntry<ReactHooksRuleSuppression>;
2960
2996
  /**
2961
2997
  * enforces the Rules of Hooks
2962
- * @see https://reactjs.org/docs/hooks-rules.html
2998
+ * @see https://react.dev/reference/rules/rules-of-hooks
2999
+ */
3000
+ 'react-hooks/rules-of-hooks'?: Linter.RuleEntry<ReactHooksRulesOfHooks>;
3001
+ /**
3002
+ * Validates against calling setState synchronously in an effect, which can lead to re-renders that degrade performance
3003
+ */
3004
+ 'react-hooks/set-state-in-effect'?: Linter.RuleEntry<ReactHooksSetStateInEffect>;
3005
+ /**
3006
+ * Validates against setting state during render, which can trigger additional renders and potential infinite render loops
3007
+ */
3008
+ 'react-hooks/set-state-in-render'?: Linter.RuleEntry<ReactHooksSetStateInRender>;
3009
+ /**
3010
+ * Validates that components are static, not recreated every render. Components that are recreated dynamically can reset state and trigger excessive re-rendering
3011
+ */
3012
+ 'react-hooks/static-components'?: Linter.RuleEntry<ReactHooksStaticComponents>;
3013
+ /**
3014
+ * Validates against invalid syntax
3015
+ */
3016
+ 'react-hooks/syntax'?: Linter.RuleEntry<ReactHooksSyntax>;
3017
+ /**
3018
+ * Unimplemented features
3019
+ */
3020
+ 'react-hooks/todo'?: Linter.RuleEntry<ReactHooksTodo>;
3021
+ /**
3022
+ * Validates against syntax that we do not plan to support in React Compiler
3023
+ */
3024
+ 'react-hooks/unsupported-syntax'?: Linter.RuleEntry<ReactHooksUnsupportedSyntax>;
3025
+ /**
3026
+ * Validates usage of the useMemo() hook against common mistakes. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
2963
3027
  */
2964
- 'react-hooks/rules-of-hooks'?: Linter.RuleEntry<[]>;
3028
+ 'react-hooks/use-memo'?: Linter.RuleEntry<ReactHooksUseMemo>;
3029
+ /**
3030
+ * Validates that useMemos always return a value and that the result of the useMemo is used by the component/hook. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
3031
+ */
3032
+ 'react-hooks/void-use-memo'?: Linter.RuleEntry<ReactHooksVoidUseMemo>;
2965
3033
  /**
2966
3034
  * Enforces naming conventions for components.
2967
3035
  * @see https://eslint-react.xyz/docs/rules/naming-convention-component-name
@@ -3009,25 +3077,20 @@ interface RuleOptions {
3009
3077
  */
3010
3078
  'react-web-api/no-leaked-timeout'?: Linter.RuleEntry<[]>;
3011
3079
  /**
3012
- * Enforces explicit boolean values for boolean attributes.
3013
- * @see https://eslint-react.xyz/docs/rules/avoid-shorthand-boolean
3014
- */
3015
- 'react/avoid-shorthand-boolean'?: Linter.RuleEntry<[]>;
3016
- /**
3017
- * Enforces explicit `<Fragment>` components instead of the shorthand `<>` or `</>` syntax.
3018
- * @see https://eslint-react.xyz/docs/rules/avoid-shorthand-fragment
3019
- */
3020
- 'react/avoid-shorthand-fragment'?: Linter.RuleEntry<[]>;
3021
- /**
3022
- * Disallow useless `forwardRef` calls on components that don't use `ref`s.
3023
- * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
3080
+ * Prevents dollar signs from being inserted as text nodes before expressions.
3081
+ * @see https://eslint-react.xyz/docs/rules/jsx-dollar
3024
3082
  */
3025
- 'react/ensure-forward-ref-using-ref'?: Linter.RuleEntry<[]>;
3083
+ 'react/jsx-dollar'?: Linter.RuleEntry<[]>;
3026
3084
  /**
3027
- * Enforces that the 'key' attribute is placed before the spread attribute in JSX elements.
3085
+ * Enforces that the 'key' prop is placed before the spread prop in JSX elements.
3028
3086
  * @see https://eslint-react.xyz/docs/rules/jsx-key-before-spread
3029
3087
  */
3030
3088
  'react/jsx-key-before-spread'?: Linter.RuleEntry<[]>;
3089
+ /**
3090
+ * Prevents comments from being inserted as text nodes.
3091
+ * @see https://eslint-react.xyz/docs/rules/jsx-no-comment-textnodes
3092
+ */
3093
+ 'react/jsx-no-comment-textnodes'?: Linter.RuleEntry<[]>;
3031
3094
  /**
3032
3095
  * Disallow duplicate props in JSX elements.
3033
3096
  * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
@@ -3043,6 +3106,16 @@ interface RuleOptions {
3043
3106
  * @see https://eslint-react.xyz/docs/rules/jsx-no-undef
3044
3107
  */
3045
3108
  'react/jsx-no-undef'?: Linter.RuleEntry<[]>;
3109
+ /**
3110
+ * Enforces shorthand syntax for boolean attributes.
3111
+ * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-boolean
3112
+ */
3113
+ 'react/jsx-shorthand-boolean'?: Linter.RuleEntry<ReactJsxShorthandBoolean>;
3114
+ /**
3115
+ * Enforces shorthand syntax for fragments.
3116
+ * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-fragment
3117
+ */
3118
+ 'react/jsx-shorthand-fragment'?: Linter.RuleEntry<ReactJsxShorthandFragment>;
3046
3119
  /**
3047
3120
  * Marks React variables as used when JSX is used.
3048
3121
  * @see https://eslint-react.xyz/docs/rules/jsx-uses-react
@@ -3103,21 +3176,6 @@ interface RuleOptions {
3103
3176
  * @see https://eslint-react.xyz/docs/rules/no-clone-element
3104
3177
  */
3105
3178
  'react/no-clone-element'?: Linter.RuleEntry<[]>;
3106
- /**
3107
- * Prevents comments from being inserted as text nodes.
3108
- * @see https://eslint-react.xyz/docs/rules/no-comment-textnodes
3109
- */
3110
- 'react/no-comment-textnodes'?: Linter.RuleEntry<[]>;
3111
- /**
3112
- * Disallow complex conditional rendering in JSX expressions.
3113
- * @see https://eslint-react.xyz/docs/rules/no-complex-conditional-rendering
3114
- */
3115
- 'react/no-complex-conditional-rendering'?: Linter.RuleEntry<[]>;
3116
- /**
3117
- * Disallow complex conditional rendering in JSX expressions.
3118
- * @see https://eslint-react.xyz/docs/rules/no-complex-conditional-rendering
3119
- */
3120
- 'react/no-complicated-conditional-rendering'?: Linter.RuleEntry<[]>;
3121
3179
  /**
3122
3180
  * Replace usages of `componentWillMount` with `UNSAFE_componentWillMount`.
3123
3181
  * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
@@ -3153,16 +3211,17 @@ interface RuleOptions {
3153
3211
  * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
3154
3212
  */
3155
3213
  'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>;
3156
- /**
3157
- * Disallow duplicate props in JSX elements.
3158
- * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
3159
- */
3160
- 'react/no-duplicate-jsx-props'?: Linter.RuleEntry<[]>;
3161
3214
  /**
3162
3215
  * Disallow duplicate `key` on elements in the same array or a list of `children`.
3163
3216
  * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
3164
3217
  */
3165
3218
  'react/no-duplicate-key'?: Linter.RuleEntry<[]>;
3219
+ /**
3220
+ * Disallow certain props on components.
3221
+ * @see https://eslint-react.xyz/docs/rules/no-forbidden-props
3222
+ * @deprecated
3223
+ */
3224
+ 'react/no-forbidden-props'?: Linter.RuleEntry<ReactNoForbiddenProps>;
3166
3225
  /**
3167
3226
  * Replaces usages of `forwardRef` with passing `ref` as a prop.
3168
3227
  * @see https://eslint-react.xyz/docs/rules/no-forward-ref
@@ -3203,14 +3262,9 @@ interface RuleOptions {
3203
3262
  * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
3204
3263
  */
3205
3264
  'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>;
3206
- /**
3207
- * Disallow nesting component definitions inside other components.
3208
- * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
3209
- */
3210
- 'react/no-nested-components'?: Linter.RuleEntry<[]>;
3211
3265
  /**
3212
3266
  * Disallow nesting lazy component declarations inside other components.
3213
- * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
3267
+ * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations
3214
3268
  */
3215
3269
  'react/no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>;
3216
3270
  /**
@@ -3234,7 +3288,7 @@ interface RuleOptions {
3234
3288
  */
3235
3289
  'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>;
3236
3290
  /**
3237
- * Disallows calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
3291
+ * Disallow calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
3238
3292
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
3239
3293
  */
3240
3294
  'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>;
@@ -3243,6 +3297,26 @@ interface RuleOptions {
3243
3297
  * @see https://eslint-react.xyz/docs/rules/no-string-refs
3244
3298
  */
3245
3299
  'react/no-string-refs'?: Linter.RuleEntry<[]>;
3300
+ /**
3301
+ * Prevents the use of unnecessary `key` props on JSX elements when rendering lists.
3302
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-key
3303
+ */
3304
+ 'react/no-unnecessary-key'?: Linter.RuleEntry<[]>;
3305
+ /**
3306
+ * Disallow unnecessary usage of `useCallback`.
3307
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-callback
3308
+ */
3309
+ 'react/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>;
3310
+ /**
3311
+ * Disallow unnecessary usage of `useMemo`.
3312
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-memo
3313
+ */
3314
+ 'react/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>;
3315
+ /**
3316
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
3317
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix
3318
+ */
3319
+ 'react/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>;
3246
3320
  /**
3247
3321
  * Warns the usage of `UNSAFE_componentWillMount` in class components.
3248
3322
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
@@ -3267,12 +3341,17 @@ interface RuleOptions {
3267
3341
  * Prevents using referential-type values as default props in object destructuring.
3268
3342
  * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
3269
3343
  */
3270
- 'react/no-unstable-default-props'?: Linter.RuleEntry<[]>;
3344
+ 'react/no-unstable-default-props'?: Linter.RuleEntry<ReactNoUnstableDefaultProps>;
3271
3345
  /**
3272
3346
  * Warns unused class component methods and properties.
3273
3347
  * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
3274
3348
  */
3275
3349
  'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>;
3350
+ /**
3351
+ * Warns component props that are defined but never used.
3352
+ * @see https://eslint-react.xyz/docs/rules/no-unused-props
3353
+ */
3354
+ 'react/no-unused-props'?: Linter.RuleEntry<[]>;
3276
3355
  /**
3277
3356
  * Warns unused class component state.
3278
3357
  * @see https://eslint-react.xyz/docs/rules/no-unused-state
@@ -3300,29 +3379,19 @@ interface RuleOptions {
3300
3379
  'react/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>;
3301
3380
  /**
3302
3381
  * Enforces React is imported via a namespace import.
3303
- * @see https://eslint-react.xyz/docs/rules/prefer-react-namespace-import
3382
+ * @see https://eslint-react.xyz/docs/rules/prefer-namespace-import
3304
3383
  */
3305
- 'react/prefer-react-namespace-import'?: Linter.RuleEntry<[]>;
3384
+ 'react/prefer-namespace-import'?: Linter.RuleEntry<[]>;
3306
3385
  /**
3307
3386
  * Enforces read-only props in components.
3308
3387
  * @see https://eslint-react.xyz/docs/rules/prefer-read-only-props
3309
3388
  */
3310
3389
  'react/prefer-read-only-props'?: Linter.RuleEntry<[]>;
3311
3390
  /**
3312
- * Enforces shorthand syntax for boolean attributes.
3313
- * @see https://eslint-react.xyz/docs/rules/prefer-shorthand-boolean
3314
- */
3315
- 'react/prefer-shorthand-boolean'?: Linter.RuleEntry<[]>;
3316
- /**
3317
- * Enforces shorthand syntax for fragments.
3318
- * @see https://eslint-react.xyz/docs/rules/prefer-shorthand-fragment
3319
- */
3320
- 'react/prefer-shorthand-fragment'?: Linter.RuleEntry<[]>;
3321
- /**
3322
- * Marks variables used in JSX elements as used.
3323
- * @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
3391
+ * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
3392
+ * @see https://eslint-react.xyz/docs/rules/prefer-use-state-lazy-initialization
3324
3393
  */
3325
- 'react/use-jsx-vars'?: Linter.RuleEntry<[]>;
3394
+ 'react/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>;
3326
3395
  /**
3327
3396
  * disallow confusing quantifiers
3328
3397
  * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/confusing-quantifier.html
@@ -5939,8 +6008,14 @@ interface RuleOptions {
5939
6008
  /**
5940
6009
  * disallow using navigation (links, goto, pushState, replaceState) without the base path
5941
6010
  * @see https://sveltejs.github.io/eslint-plugin-svelte/rules/no-navigation-without-base/
6011
+ * @deprecated
5942
6012
  */
5943
6013
  'svelte/no-navigation-without-base'?: Linter.RuleEntry<SvelteNoNavigationWithoutBase>;
6014
+ /**
6015
+ * disallow using navigation (links, goto, pushState, replaceState) without a resolve()
6016
+ * @see https://sveltejs.github.io/eslint-plugin-svelte/rules/no-navigation-without-resolve/
6017
+ */
6018
+ 'svelte/no-navigation-without-resolve'?: Linter.RuleEntry<SvelteNoNavigationWithoutResolve>;
5944
6019
  /**
5945
6020
  * disallow use of not function in event handler
5946
6021
  * @see https://sveltejs.github.io/eslint-plugin-svelte/rules/no-not-function-handler/
@@ -6179,6 +6254,11 @@ interface RuleOptions {
6179
6254
  * @deprecated
6180
6255
  */
6181
6256
  'template-tag-spacing'?: Linter.RuleEntry<TemplateTagSpacing>;
6257
+ /**
6258
+ * enforce using `.each` or `.for` consistently
6259
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-each-for.md
6260
+ */
6261
+ 'test/consistent-each-for'?: Linter.RuleEntry<TestConsistentEachFor>;
6182
6262
  /**
6183
6263
  * require test file pattern
6184
6264
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-filename.md
@@ -6401,7 +6481,7 @@ interface RuleOptions {
6401
6481
  */
6402
6482
  'test/prefer-each'?: Linter.RuleEntry<[]>;
6403
6483
  /**
6404
- * enforce using the built-in quality matchers
6484
+ * enforce using the built-in equality matchers
6405
6485
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-equality-matcher.md
6406
6486
  */
6407
6487
  'test/prefer-equality-matcher'?: Linter.RuleEntry<[]>;
@@ -6510,11 +6590,21 @@ interface RuleOptions {
6510
6590
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-vi-mocked.md
6511
6591
  */
6512
6592
  'test/prefer-vi-mocked'?: Linter.RuleEntry<[]>;
6593
+ /**
6594
+ * ensure that every `expect.poll` call is awaited
6595
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-awaited-expect-poll.md
6596
+ */
6597
+ 'test/require-awaited-expect-poll'?: Linter.RuleEntry<[]>;
6513
6598
  /**
6514
6599
  * require setup and teardown to be within a hook
6515
6600
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-hook.md
6516
6601
  */
6517
6602
  'test/require-hook'?: Linter.RuleEntry<TestRequireHook>;
6603
+ /**
6604
+ * require usage of import in vi.mock()
6605
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-import-vi-mock.md
6606
+ */
6607
+ 'test/require-import-vi-mock'?: Linter.RuleEntry<[]>;
6518
6608
  /**
6519
6609
  * require local Test Context for concurrent snapshot tests
6520
6610
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-local-test-context-for-concurrent-snapshots.md
@@ -7345,710 +7435,725 @@ interface RuleOptions {
7345
7435
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>;
7346
7436
  /**
7347
7437
  * Improve regexes by making them shorter, consistent, and safer.
7348
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/better-regex.md
7438
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/better-regex.md
7349
7439
  */
7350
7440
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>;
7351
7441
  /**
7352
7442
  * Enforce a specific parameter name in catch clauses.
7353
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/catch-error-name.md
7443
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/catch-error-name.md
7354
7444
  */
7355
7445
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
7356
7446
  /**
7357
7447
  * Enforce consistent assertion style with `node:assert`.
7358
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-assert.md
7448
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-assert.md
7359
7449
  */
7360
7450
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
7361
7451
  /**
7362
7452
  * Prefer passing `Date` directly to the constructor when cloning.
7363
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-date-clone.md
7453
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-date-clone.md
7364
7454
  */
7365
7455
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
7366
7456
  /**
7367
7457
  * Use destructured variables over properties.
7368
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-destructuring.md
7458
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-destructuring.md
7369
7459
  */
7370
7460
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
7371
7461
  /**
7372
7462
  * Prefer consistent types when spreading a ternary in an array literal.
7373
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-empty-array-spread.md
7463
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-empty-array-spread.md
7374
7464
  */
7375
7465
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
7376
7466
  /**
7377
7467
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
7378
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-existence-index-check.md
7468
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-existence-index-check.md
7379
7469
  */
7380
7470
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
7381
7471
  /**
7382
7472
  * Move function definitions to the highest possible scope.
7383
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-function-scoping.md
7473
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-function-scoping.md
7384
7474
  */
7385
7475
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
7386
7476
  /**
7387
7477
  * Enforce correct `Error` subclassing.
7388
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/custom-error-definition.md
7478
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/custom-error-definition.md
7389
7479
  */
7390
7480
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
7391
7481
  /**
7392
7482
  * Enforce no spaces between braces.
7393
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/empty-brace-spaces.md
7483
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/empty-brace-spaces.md
7394
7484
  */
7395
7485
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
7396
7486
  /**
7397
7487
  * Enforce passing a `message` value when creating a built-in error.
7398
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/error-message.md
7488
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/error-message.md
7399
7489
  */
7400
7490
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
7401
7491
  /**
7402
7492
  * Require escape sequences to use uppercase or lowercase values.
7403
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/escape-case.md
7493
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/escape-case.md
7404
7494
  */
7405
7495
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
7406
7496
  /**
7407
7497
  * Add expiration conditions to TODO comments.
7408
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/expiring-todo-comments.md
7498
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/expiring-todo-comments.md
7409
7499
  */
7410
7500
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
7411
7501
  /**
7412
7502
  * Enforce explicitly comparing the `length` or `size` property of a value.
7413
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/explicit-length-check.md
7503
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/explicit-length-check.md
7414
7504
  */
7415
7505
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
7416
7506
  /**
7417
7507
  * Enforce a case style for filenames.
7418
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/filename-case.md
7508
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/filename-case.md
7419
7509
  */
7420
7510
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
7421
7511
  /**
7422
7512
  * Enforce specific import styles per module.
7423
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/import-style.md
7513
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/import-style.md
7424
7514
  */
7425
7515
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
7426
7516
  /**
7427
7517
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
7428
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/new-for-builtins.md
7518
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/new-for-builtins.md
7429
7519
  */
7430
7520
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
7431
7521
  /**
7432
7522
  * Enforce specifying rules to disable in `eslint-disable` comments.
7433
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-abusive-eslint-disable.md
7523
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-abusive-eslint-disable.md
7434
7524
  */
7435
7525
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
7436
7526
  /**
7437
7527
  * Disallow recursive access to `this` within getters and setters.
7438
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-accessor-recursion.md
7528
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-accessor-recursion.md
7439
7529
  */
7440
7530
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
7441
7531
  /**
7442
7532
  * Disallow anonymous functions and classes as the default export.
7443
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-anonymous-default-export.md
7533
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-anonymous-default-export.md
7444
7534
  */
7445
7535
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
7446
7536
  /**
7447
7537
  * Prevent passing a function reference directly to iterator methods.
7448
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-callback-reference.md
7538
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-callback-reference.md
7449
7539
  */
7450
7540
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>;
7451
7541
  /**
7452
7542
  * Prefer `for…of` over the `forEach` method.
7453
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-for-each.md
7543
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-for-each.md
7454
7544
  */
7455
7545
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
7456
7546
  /**
7457
7547
  * Disallow using the `this` argument in array methods.
7458
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-method-this-argument.md
7548
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-method-this-argument.md
7459
7549
  */
7460
7550
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
7461
7551
  /**
7462
7552
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
7463
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/deprecated-rules.md#no-array-push-push
7553
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-array-push-push
7464
7554
  * @deprecated
7465
7555
  */
7466
7556
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
7467
7557
  /**
7468
7558
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
7469
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-reduce.md
7559
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-reduce.md
7470
7560
  */
7471
7561
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
7472
7562
  /**
7473
7563
  * Prefer `Array#toReversed()` over `Array#reverse()`.
7474
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-reverse.md
7564
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-reverse.md
7475
7565
  */
7476
7566
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
7477
7567
  /**
7478
7568
  * Prefer `Array#toSorted()` over `Array#sort()`.
7479
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-sort.md
7569
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-sort.md
7480
7570
  */
7481
7571
  'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
7482
7572
  /**
7483
7573
  * Disallow member access from await expression.
7484
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-await-expression-member.md
7574
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-await-expression-member.md
7485
7575
  */
7486
7576
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
7487
7577
  /**
7488
7578
  * Disallow using `await` in `Promise` method parameters.
7489
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-await-in-promise-methods.md
7579
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-await-in-promise-methods.md
7490
7580
  */
7491
7581
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
7492
7582
  /**
7493
7583
  * Do not use leading/trailing space between `console.log` parameters.
7494
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-console-spaces.md
7584
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-console-spaces.md
7495
7585
  */
7496
7586
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
7497
7587
  /**
7498
7588
  * Do not use `document.cookie` directly.
7499
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-document-cookie.md
7589
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-document-cookie.md
7500
7590
  */
7501
7591
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
7502
7592
  /**
7503
7593
  * Disallow empty files.
7504
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-empty-file.md
7594
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-empty-file.md
7505
7595
  */
7506
7596
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>;
7507
7597
  /**
7508
7598
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
7509
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-for-loop.md
7599
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-for-loop.md
7510
7600
  */
7511
7601
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
7512
7602
  /**
7513
7603
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
7514
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-hex-escape.md
7604
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-hex-escape.md
7515
7605
  */
7516
7606
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
7607
+ /**
7608
+ * Disallow immediate mutation after variable assignment.
7609
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-immediate-mutation.md
7610
+ */
7611
+ 'unicorn/no-immediate-mutation'?: Linter.RuleEntry<[]>;
7517
7612
  /**
7518
7613
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
7519
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/deprecated-rules.md#no-instanceof-array
7614
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-instanceof-array
7520
7615
  * @deprecated
7521
7616
  */
7522
7617
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
7523
7618
  /**
7524
7619
  * Disallow `instanceof` with built-in objects
7525
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-instanceof-builtins.md
7620
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-instanceof-builtins.md
7526
7621
  */
7527
7622
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
7528
7623
  /**
7529
7624
  * Disallow invalid options in `fetch()` and `new Request()`.
7530
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-invalid-fetch-options.md
7625
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-invalid-fetch-options.md
7531
7626
  */
7532
7627
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
7533
7628
  /**
7534
7629
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
7535
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-invalid-remove-event-listener.md
7630
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-invalid-remove-event-listener.md
7536
7631
  */
7537
7632
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
7538
7633
  /**
7539
7634
  * Disallow identifiers starting with `new` or `class`.
7540
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-keyword-prefix.md
7635
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-keyword-prefix.md
7541
7636
  */
7542
7637
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
7543
7638
  /**
7544
7639
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
7545
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/deprecated-rules.md#no-length-as-slice-end
7640
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-length-as-slice-end
7546
7641
  * @deprecated
7547
7642
  */
7548
7643
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
7549
7644
  /**
7550
7645
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
7551
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-lonely-if.md
7646
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-lonely-if.md
7552
7647
  */
7553
7648
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
7554
7649
  /**
7555
7650
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
7556
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-magic-array-flat-depth.md
7651
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-magic-array-flat-depth.md
7557
7652
  */
7558
7653
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
7559
7654
  /**
7560
7655
  * Disallow named usage of default import and export.
7561
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-named-default.md
7656
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-named-default.md
7562
7657
  */
7563
7658
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
7564
7659
  /**
7565
7660
  * Disallow negated conditions.
7566
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-negated-condition.md
7661
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-negated-condition.md
7567
7662
  */
7568
7663
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
7569
7664
  /**
7570
7665
  * Disallow negated expression in equality check.
7571
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-negation-in-equality-check.md
7666
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-negation-in-equality-check.md
7572
7667
  */
7573
7668
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
7574
7669
  /**
7575
7670
  * Disallow nested ternary expressions.
7576
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-nested-ternary.md
7671
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-nested-ternary.md
7577
7672
  */
7578
7673
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
7579
7674
  /**
7580
7675
  * Disallow `new Array()`.
7581
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-new-array.md
7676
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-new-array.md
7582
7677
  */
7583
7678
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
7584
7679
  /**
7585
7680
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
7586
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-new-buffer.md
7681
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-new-buffer.md
7587
7682
  */
7588
7683
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
7589
7684
  /**
7590
7685
  * Disallow the use of the `null` literal.
7591
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-null.md
7686
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-null.md
7592
7687
  */
7593
7688
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
7594
7689
  /**
7595
7690
  * Disallow the use of objects as default parameters.
7596
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-object-as-default-parameter.md
7691
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-object-as-default-parameter.md
7597
7692
  */
7598
7693
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
7599
7694
  /**
7600
7695
  * Disallow `process.exit()`.
7601
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-process-exit.md
7696
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-process-exit.md
7602
7697
  */
7603
7698
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
7604
7699
  /**
7605
7700
  * Disallow passing single-element arrays to `Promise` methods.
7606
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-single-promise-in-promise-methods.md
7701
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-single-promise-in-promise-methods.md
7607
7702
  */
7608
7703
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
7609
7704
  /**
7610
7705
  * Disallow classes that only have static members.
7611
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-static-only-class.md
7706
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-static-only-class.md
7612
7707
  */
7613
7708
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
7614
7709
  /**
7615
7710
  * Disallow `then` property.
7616
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-thenable.md
7711
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-thenable.md
7617
7712
  */
7618
7713
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
7619
7714
  /**
7620
7715
  * Disallow assigning `this` to a variable.
7621
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-this-assignment.md
7716
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-this-assignment.md
7622
7717
  */
7623
7718
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
7624
7719
  /**
7625
7720
  * Disallow comparing `undefined` using `typeof`.
7626
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-typeof-undefined.md
7721
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-typeof-undefined.md
7627
7722
  */
7628
7723
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
7629
7724
  /**
7630
7725
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
7631
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-array-flat-depth.md
7726
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-array-flat-depth.md
7632
7727
  */
7633
7728
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
7634
7729
  /**
7635
7730
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
7636
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-array-splice-count.md
7731
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-array-splice-count.md
7637
7732
  */
7638
7733
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
7639
7734
  /**
7640
7735
  * Disallow awaiting non-promise values.
7641
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-await.md
7736
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-await.md
7642
7737
  */
7643
7738
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
7644
7739
  /**
7645
7740
  * Enforce the use of built-in methods instead of unnecessary polyfills.
7646
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-polyfills.md
7741
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-polyfills.md
7647
7742
  */
7648
7743
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
7649
7744
  /**
7650
7745
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
7651
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-slice-end.md
7746
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-slice-end.md
7652
7747
  */
7653
7748
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
7654
7749
  /**
7655
7750
  * Disallow unreadable array destructuring.
7656
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unreadable-array-destructuring.md
7751
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unreadable-array-destructuring.md
7657
7752
  */
7658
7753
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
7659
7754
  /**
7660
7755
  * Disallow unreadable IIFEs.
7661
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unreadable-iife.md
7756
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unreadable-iife.md
7662
7757
  */
7663
7758
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
7664
7759
  /**
7665
7760
  * Disallow unused object properties.
7666
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unused-properties.md
7761
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unused-properties.md
7667
7762
  */
7668
7763
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
7764
+ /**
7765
+ * Disallow useless values or fallbacks in `Set`, `Map`, `WeakSet`, or `WeakMap`.
7766
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-collection-argument.md
7767
+ */
7768
+ 'unicorn/no-useless-collection-argument'?: Linter.RuleEntry<[]>;
7669
7769
  /**
7670
7770
  * Disallow unnecessary `Error.captureStackTrace(…)`.
7671
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-error-capture-stack-trace.md
7771
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-error-capture-stack-trace.md
7672
7772
  */
7673
7773
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
7674
7774
  /**
7675
7775
  * Disallow useless fallback when spreading in object literals.
7676
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-fallback-in-spread.md
7776
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-fallback-in-spread.md
7677
7777
  */
7678
7778
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
7679
7779
  /**
7680
7780
  * Disallow useless array length check.
7681
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-length-check.md
7781
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-length-check.md
7682
7782
  */
7683
7783
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
7684
7784
  /**
7685
7785
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
7686
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-promise-resolve-reject.md
7786
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-promise-resolve-reject.md
7687
7787
  */
7688
7788
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
7689
7789
  /**
7690
7790
  * Disallow unnecessary spread.
7691
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-spread.md
7791
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-spread.md
7692
7792
  */
7693
7793
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
7694
7794
  /**
7695
7795
  * Disallow useless case in switch statements.
7696
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-switch-case.md
7796
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-switch-case.md
7697
7797
  */
7698
7798
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
7699
7799
  /**
7700
7800
  * Disallow useless `undefined`.
7701
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-undefined.md
7801
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-undefined.md
7702
7802
  */
7703
7803
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
7704
7804
  /**
7705
7805
  * Disallow number literals with zero fractions or dangling dots.
7706
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-zero-fractions.md
7806
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-zero-fractions.md
7707
7807
  */
7708
7808
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
7709
7809
  /**
7710
7810
  * Enforce proper case for numeric literals.
7711
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/number-literal-case.md
7811
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/number-literal-case.md
7712
7812
  */
7713
7813
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
7714
7814
  /**
7715
7815
  * Enforce the style of numeric separators by correctly grouping digits.
7716
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/numeric-separators-style.md
7816
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/numeric-separators-style.md
7717
7817
  */
7718
7818
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
7719
7819
  /**
7720
7820
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
7721
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-add-event-listener.md
7821
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-add-event-listener.md
7722
7822
  */
7723
7823
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
7724
7824
  /**
7725
7825
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
7726
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-find.md
7826
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-find.md
7727
7827
  */
7728
7828
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
7729
7829
  /**
7730
7830
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
7731
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-flat.md
7831
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-flat.md
7732
7832
  */
7733
7833
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
7734
7834
  /**
7735
7835
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
7736
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-flat-map.md
7836
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-flat-map.md
7737
7837
  */
7738
7838
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
7739
7839
  /**
7740
7840
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
7741
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-index-of.md
7841
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-index-of.md
7742
7842
  */
7743
7843
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
7744
7844
  /**
7745
7845
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
7746
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-some.md
7846
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-some.md
7747
7847
  */
7748
7848
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
7749
7849
  /**
7750
7850
  * Prefer `.at()` method for index access and `String#charAt()`.
7751
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-at.md
7851
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-at.md
7752
7852
  */
7753
7853
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
7754
7854
  /**
7755
7855
  * Prefer `BigInt` literals over the constructor.
7756
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-bigint-literals.md
7856
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-bigint-literals.md
7757
7857
  */
7758
7858
  'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
7759
7859
  /**
7760
7860
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
7761
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-blob-reading-methods.md
7861
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-blob-reading-methods.md
7762
7862
  */
7763
7863
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
7764
7864
  /**
7765
7865
  * Prefer class field declarations over `this` assignments in constructors.
7766
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-class-fields.md
7866
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-class-fields.md
7767
7867
  */
7768
7868
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
7769
7869
  /**
7770
7870
  * Prefer using `Element#classList.toggle()` to toggle class names.
7771
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-classlist-toggle.md
7871
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-classlist-toggle.md
7772
7872
  */
7773
7873
  'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
7774
7874
  /**
7775
7875
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
7776
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-code-point.md
7876
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-code-point.md
7777
7877
  */
7778
7878
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
7779
7879
  /**
7780
7880
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
7781
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-date-now.md
7881
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-date-now.md
7782
7882
  */
7783
7883
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
7784
7884
  /**
7785
7885
  * Prefer default parameters over reassignment.
7786
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-default-parameters.md
7886
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-default-parameters.md
7787
7887
  */
7788
7888
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
7789
7889
  /**
7790
7890
  * Prefer `Node#append()` over `Node#appendChild()`.
7791
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-dom-node-append.md
7891
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-append.md
7792
7892
  */
7793
7893
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
7794
7894
  /**
7795
7895
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
7796
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-dom-node-dataset.md
7896
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-dataset.md
7797
7897
  */
7798
7898
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
7799
7899
  /**
7800
7900
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
7801
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-dom-node-remove.md
7901
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-remove.md
7802
7902
  */
7803
7903
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
7804
7904
  /**
7805
7905
  * Prefer `.textContent` over `.innerText`.
7806
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-dom-node-text-content.md
7906
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-text-content.md
7807
7907
  */
7808
7908
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
7809
7909
  /**
7810
7910
  * Prefer `EventTarget` over `EventEmitter`.
7811
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-event-target.md
7911
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-event-target.md
7812
7912
  */
7813
7913
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
7814
7914
  /**
7815
7915
  * Prefer `export…from` when re-exporting.
7816
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-export-from.md
7916
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-export-from.md
7817
7917
  */
7818
7918
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
7819
7919
  /**
7820
7920
  * Prefer `globalThis` over `window`, `self`, and `global`.
7821
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-global-this.md
7921
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-global-this.md
7822
7922
  */
7823
7923
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
7824
7924
  /**
7825
7925
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
7826
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-import-meta-properties.md
7926
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-import-meta-properties.md
7827
7927
  */
7828
7928
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
7829
7929
  /**
7830
7930
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
7831
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-includes.md
7931
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-includes.md
7832
7932
  */
7833
7933
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
7834
7934
  /**
7835
7935
  * Prefer reading a JSON file as a buffer.
7836
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-json-parse-buffer.md
7936
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-json-parse-buffer.md
7837
7937
  */
7838
7938
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
7839
7939
  /**
7840
7940
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
7841
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-keyboard-event-key.md
7941
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-keyboard-event-key.md
7842
7942
  */
7843
7943
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
7844
7944
  /**
7845
7945
  * Prefer using a logical operator over a ternary.
7846
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-logical-operator-over-ternary.md
7946
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-logical-operator-over-ternary.md
7847
7947
  */
7848
7948
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
7849
7949
  /**
7850
7950
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
7851
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-math-min-max.md
7951
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-math-min-max.md
7852
7952
  */
7853
7953
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
7854
7954
  /**
7855
7955
  * Enforce the use of `Math.trunc` instead of bitwise operators.
7856
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-math-trunc.md
7956
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-math-trunc.md
7857
7957
  */
7858
7958
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
7859
7959
  /**
7860
7960
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
7861
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-modern-dom-apis.md
7961
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-modern-dom-apis.md
7862
7962
  */
7863
7963
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
7864
7964
  /**
7865
7965
  * Prefer modern `Math` APIs over legacy patterns.
7866
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-modern-math-apis.md
7966
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-modern-math-apis.md
7867
7967
  */
7868
7968
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
7869
7969
  /**
7870
7970
  * Prefer JavaScript modules (ESM) over CommonJS.
7871
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-module.md
7971
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-module.md
7872
7972
  */
7873
7973
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
7874
7974
  /**
7875
7975
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
7876
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-native-coercion-functions.md
7976
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-native-coercion-functions.md
7877
7977
  */
7878
7978
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
7879
7979
  /**
7880
7980
  * Prefer negative index over `.length - index` when possible.
7881
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-negative-index.md
7981
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-negative-index.md
7882
7982
  */
7883
7983
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
7884
7984
  /**
7885
7985
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
7886
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-node-protocol.md
7986
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-node-protocol.md
7887
7987
  */
7888
7988
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
7889
7989
  /**
7890
7990
  * Prefer `Number` static properties over global ones.
7891
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-number-properties.md
7991
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-number-properties.md
7892
7992
  */
7893
7993
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
7894
7994
  /**
7895
7995
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
7896
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-object-from-entries.md
7996
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-object-from-entries.md
7897
7997
  */
7898
7998
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
7899
7999
  /**
7900
8000
  * Prefer omitting the `catch` binding parameter.
7901
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-optional-catch-binding.md
8001
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-optional-catch-binding.md
7902
8002
  */
7903
8003
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
7904
8004
  /**
7905
8005
  * Prefer borrowing methods from the prototype instead of the instance.
7906
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-prototype-methods.md
8006
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-prototype-methods.md
7907
8007
  */
7908
8008
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
7909
8009
  /**
7910
8010
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
7911
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-query-selector.md
8011
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-query-selector.md
7912
8012
  */
7913
8013
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>;
7914
8014
  /**
7915
8015
  * Prefer `Reflect.apply()` over `Function#apply()`.
7916
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-reflect-apply.md
8016
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-reflect-apply.md
7917
8017
  */
7918
8018
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
7919
8019
  /**
7920
8020
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
7921
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-regexp-test.md
8021
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-regexp-test.md
7922
8022
  */
7923
8023
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
8024
+ /**
8025
+ * Prefer `Response.json()` over `new Response(JSON.stringify())`.
8026
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-response-static-json.md
8027
+ */
8028
+ 'unicorn/prefer-response-static-json'?: Linter.RuleEntry<[]>;
7924
8029
  /**
7925
8030
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
7926
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-set-has.md
8031
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-set-has.md
7927
8032
  */
7928
8033
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>;
7929
8034
  /**
7930
8035
  * Prefer using `Set#size` instead of `Array#length`.
7931
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-set-size.md
8036
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-set-size.md
7932
8037
  */
7933
8038
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
7934
8039
  /**
7935
8040
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
7936
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-single-call.md
8041
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-single-call.md
7937
8042
  */
7938
8043
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
7939
8044
  /**
7940
8045
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
7941
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-spread.md
8046
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-spread.md
7942
8047
  */
7943
8048
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
7944
8049
  /**
7945
8050
  * Prefer using the `String.raw` tag to avoid escaping `\`.
7946
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-raw.md
8051
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-raw.md
7947
8052
  */
7948
8053
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
7949
8054
  /**
7950
8055
  * Prefer `String#replaceAll()` over regex searches with the global flag.
7951
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-replace-all.md
8056
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-replace-all.md
7952
8057
  */
7953
8058
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
7954
8059
  /**
7955
8060
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
7956
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-slice.md
8061
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-slice.md
7957
8062
  */
7958
8063
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
7959
8064
  /**
7960
8065
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
7961
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-starts-ends-with.md
8066
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-starts-ends-with.md
7962
8067
  */
7963
8068
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
7964
8069
  /**
7965
8070
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
7966
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-trim-start-end.md
8071
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-trim-start-end.md
7967
8072
  */
7968
8073
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
7969
8074
  /**
7970
8075
  * Prefer using `structuredClone` to create a deep clone.
7971
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-structured-clone.md
8076
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-structured-clone.md
7972
8077
  */
7973
8078
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
7974
8079
  /**
7975
8080
  * Prefer `switch` over multiple `else-if`.
7976
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-switch.md
8081
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-switch.md
7977
8082
  */
7978
8083
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
7979
8084
  /**
7980
8085
  * Prefer ternary expressions over simple `if-else` statements.
7981
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-ternary.md
8086
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-ternary.md
7982
8087
  */
7983
8088
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
7984
8089
  /**
7985
8090
  * Prefer top-level await over top-level promises and async function calls.
7986
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-top-level-await.md
8091
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-top-level-await.md
7987
8092
  */
7988
8093
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
7989
8094
  /**
7990
8095
  * Enforce throwing `TypeError` in type checking conditions.
7991
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-type-error.md
8096
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-type-error.md
7992
8097
  */
7993
8098
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
7994
8099
  /**
7995
8100
  * Prevent abbreviations.
7996
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prevent-abbreviations.md
8101
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prevent-abbreviations.md
7997
8102
  */
7998
8103
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
7999
8104
  /**
8000
8105
  * Enforce consistent relative URL style.
8001
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/relative-url-style.md
8106
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/relative-url-style.md
8002
8107
  */
8003
8108
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
8004
8109
  /**
8005
8110
  * Enforce using the separator argument with `Array#join()`.
8006
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-array-join-separator.md
8111
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-array-join-separator.md
8007
8112
  */
8008
8113
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
8009
8114
  /**
8010
8115
  * Require non-empty module attributes for imports and exports
8011
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-module-attributes.md
8116
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-module-attributes.md
8012
8117
  */
8013
8118
  'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
8014
8119
  /**
8015
8120
  * Require non-empty specifier list in import and export statements.
8016
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-module-specifiers.md
8121
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-module-specifiers.md
8017
8122
  */
8018
8123
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
8019
8124
  /**
8020
8125
  * Enforce using the digits argument with `Number#toFixed()`.
8021
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-number-to-fixed-digits-argument.md
8126
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-number-to-fixed-digits-argument.md
8022
8127
  */
8023
8128
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
8024
8129
  /**
8025
8130
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
8026
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-post-message-target-origin.md
8131
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-post-message-target-origin.md
8027
8132
  */
8028
8133
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
8029
8134
  /**
8030
8135
  * Enforce better string content.
8031
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/string-content.md
8136
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/string-content.md
8032
8137
  */
8033
8138
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
8034
8139
  /**
8035
8140
  * Enforce consistent brace style for `case` clauses.
8036
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/switch-case-braces.md
8141
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/switch-case-braces.md
8037
8142
  */
8038
8143
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
8039
8144
  /**
8040
8145
  * Fix whitespace-insensitive template indentation.
8041
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/template-indent.md
8146
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/template-indent.md
8042
8147
  */
8043
8148
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
8044
8149
  /**
8045
8150
  * Enforce consistent case for text encoding identifiers.
8046
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/text-encoding-identifier-case.md
8151
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/text-encoding-identifier-case.md
8047
8152
  */
8048
- 'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>;
8153
+ 'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<UnicornTextEncodingIdentifierCase>;
8049
8154
  /**
8050
8155
  * Require `new` when creating an error.
8051
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/throw-new-error.md
8156
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/throw-new-error.md
8052
8157
  */
8053
8158
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
8054
8159
  /**
@@ -9583,6 +9688,195 @@ type ArrowSpacing = [] | [{
9583
9688
  before?: boolean;
9584
9689
  after?: boolean;
9585
9690
  }];
9691
+ // ----- astro/jsx-a11y/alt-text -----
9692
+ type AstroJsxA11YAltText = [] | [{
9693
+ elements?: string[];
9694
+ img?: string[];
9695
+ object?: string[];
9696
+ area?: string[];
9697
+ "input[type=\"image\"]"?: string[];
9698
+ [k: string]: unknown | undefined;
9699
+ }];
9700
+ // ----- astro/jsx-a11y/anchor-ambiguous-text -----
9701
+ type AstroJsxA11YAnchorAmbiguousText = [] | [{
9702
+ words?: string[];
9703
+ [k: string]: unknown | undefined;
9704
+ }];
9705
+ // ----- astro/jsx-a11y/anchor-has-content -----
9706
+ type AstroJsxA11YAnchorHasContent = [] | [{
9707
+ components?: string[];
9708
+ [k: string]: unknown | undefined;
9709
+ }];
9710
+ // ----- astro/jsx-a11y/anchor-is-valid -----
9711
+ type AstroJsxA11YAnchorIsValid = [] | [{
9712
+ components?: string[];
9713
+ specialLink?: string[];
9714
+ aspects?: [("noHref" | "invalidHref" | "preferButton"), ...(("noHref" | "invalidHref" | "preferButton"))[]];
9715
+ [k: string]: unknown | undefined;
9716
+ }];
9717
+ // ----- astro/jsx-a11y/aria-activedescendant-has-tabindex -----
9718
+ type AstroJsxA11YAriaActivedescendantHasTabindex = [] | [{
9719
+ [k: string]: unknown | undefined;
9720
+ }];
9721
+ // ----- astro/jsx-a11y/aria-props -----
9722
+ type AstroJsxA11YAriaProps = [] | [{
9723
+ [k: string]: unknown | undefined;
9724
+ }];
9725
+ // ----- astro/jsx-a11y/aria-proptypes -----
9726
+ type AstroJsxA11YAriaProptypes = [] | [{
9727
+ [k: string]: unknown | undefined;
9728
+ }];
9729
+ // ----- astro/jsx-a11y/aria-role -----
9730
+ type AstroJsxA11YAriaRole = [] | [{
9731
+ allowedInvalidRoles?: string[];
9732
+ ignoreNonDOM?: boolean;
9733
+ [k: string]: unknown | undefined;
9734
+ }];
9735
+ // ----- astro/jsx-a11y/aria-unsupported-elements -----
9736
+ type AstroJsxA11YAriaUnsupportedElements = [] | [{
9737
+ [k: string]: unknown | undefined;
9738
+ }];
9739
+ // ----- astro/jsx-a11y/autocomplete-valid -----
9740
+ type AstroJsxA11YAutocompleteValid = [] | [{
9741
+ inputComponents?: string[];
9742
+ [k: string]: unknown | undefined;
9743
+ }];
9744
+ // ----- astro/jsx-a11y/click-events-have-key-events -----
9745
+ type AstroJsxA11YClickEventsHaveKeyEvents = [] | [{
9746
+ [k: string]: unknown | undefined;
9747
+ }];
9748
+ // ----- astro/jsx-a11y/control-has-associated-label -----
9749
+ type AstroJsxA11YControlHasAssociatedLabel = [] | [{
9750
+ labelAttributes?: string[];
9751
+ controlComponents?: string[];
9752
+ ignoreElements?: string[];
9753
+ ignoreRoles?: string[];
9754
+ depth?: number;
9755
+ [k: string]: unknown | undefined;
9756
+ }];
9757
+ // ----- astro/jsx-a11y/heading-has-content -----
9758
+ type AstroJsxA11YHeadingHasContent = [] | [{
9759
+ components?: string[];
9760
+ [k: string]: unknown | undefined;
9761
+ }];
9762
+ // ----- astro/jsx-a11y/html-has-lang -----
9763
+ type AstroJsxA11YHtmlHasLang = [] | [{
9764
+ [k: string]: unknown | undefined;
9765
+ }];
9766
+ // ----- astro/jsx-a11y/iframe-has-title -----
9767
+ type AstroJsxA11YIframeHasTitle = [] | [{
9768
+ [k: string]: unknown | undefined;
9769
+ }];
9770
+ // ----- astro/jsx-a11y/img-redundant-alt -----
9771
+ type AstroJsxA11YImgRedundantAlt = [] | [{
9772
+ components?: string[];
9773
+ words?: string[];
9774
+ [k: string]: unknown | undefined;
9775
+ }];
9776
+ // ----- astro/jsx-a11y/interactive-supports-focus -----
9777
+ type AstroJsxA11YInteractiveSupportsFocus = [] | [{
9778
+ tabbable?: ("button" | "checkbox" | "columnheader" | "combobox" | "grid" | "gridcell" | "link" | "listbox" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "option" | "progressbar" | "radio" | "radiogroup" | "row" | "rowheader" | "scrollbar" | "searchbox" | "slider" | "spinbutton" | "switch" | "tab" | "tablist" | "textbox" | "tree" | "treegrid" | "treeitem" | "doc-backlink" | "doc-biblioref" | "doc-glossref" | "doc-noteref")[];
9779
+ [k: string]: unknown | undefined;
9780
+ }];
9781
+ // ----- astro/jsx-a11y/label-has-associated-control -----
9782
+ type AstroJsxA11YLabelHasAssociatedControl = [] | [{
9783
+ labelComponents?: string[];
9784
+ labelAttributes?: string[];
9785
+ controlComponents?: string[];
9786
+ assert?: ("htmlFor" | "nesting" | "both" | "either");
9787
+ depth?: number;
9788
+ [k: string]: unknown | undefined;
9789
+ }];
9790
+ // ----- astro/jsx-a11y/lang -----
9791
+ type AstroJsxA11YLang = [] | [{
9792
+ [k: string]: unknown | undefined;
9793
+ }];
9794
+ // ----- astro/jsx-a11y/media-has-caption -----
9795
+ type AstroJsxA11YMediaHasCaption = [] | [{
9796
+ audio?: string[];
9797
+ video?: string[];
9798
+ track?: string[];
9799
+ [k: string]: unknown | undefined;
9800
+ }];
9801
+ // ----- astro/jsx-a11y/mouse-events-have-key-events -----
9802
+ type AstroJsxA11YMouseEventsHaveKeyEvents = [] | [{
9803
+ hoverInHandlers?: string[];
9804
+ hoverOutHandlers?: string[];
9805
+ [k: string]: unknown | undefined;
9806
+ }];
9807
+ // ----- astro/jsx-a11y/no-access-key -----
9808
+ type AstroJsxA11YNoAccessKey = [] | [{
9809
+ [k: string]: unknown | undefined;
9810
+ }];
9811
+ // ----- astro/jsx-a11y/no-aria-hidden-on-focusable -----
9812
+ type AstroJsxA11YNoAriaHiddenOnFocusable = [] | [{
9813
+ [k: string]: unknown | undefined;
9814
+ }];
9815
+ // ----- astro/jsx-a11y/no-autofocus -----
9816
+ type AstroJsxA11YNoAutofocus = [] | [{
9817
+ ignoreNonDOM?: boolean;
9818
+ [k: string]: unknown | undefined;
9819
+ }];
9820
+ // ----- astro/jsx-a11y/no-distracting-elements -----
9821
+ type AstroJsxA11YNoDistractingElements = [] | [{
9822
+ elements?: ("marquee" | "blink")[];
9823
+ [k: string]: unknown | undefined;
9824
+ }];
9825
+ // ----- astro/jsx-a11y/no-interactive-element-to-noninteractive-role -----
9826
+ type AstroJsxA11YNoInteractiveElementToNoninteractiveRole = [] | [{
9827
+ [k: string]: string[] | undefined;
9828
+ }];
9829
+ // ----- astro/jsx-a11y/no-noninteractive-element-interactions -----
9830
+ type AstroJsxA11YNoNoninteractiveElementInteractions = [] | [{
9831
+ handlers?: string[];
9832
+ [k: string]: unknown | undefined;
9833
+ }];
9834
+ // ----- astro/jsx-a11y/no-noninteractive-element-to-interactive-role -----
9835
+ type AstroJsxA11YNoNoninteractiveElementToInteractiveRole = [] | [{
9836
+ [k: string]: string[] | undefined;
9837
+ }];
9838
+ // ----- astro/jsx-a11y/no-noninteractive-tabindex -----
9839
+ type AstroJsxA11YNoNoninteractiveTabindex = [] | [{
9840
+ roles?: string[];
9841
+ tags?: string[];
9842
+ [k: string]: unknown | undefined;
9843
+ }];
9844
+ // ----- astro/jsx-a11y/no-redundant-roles -----
9845
+ type AstroJsxA11YNoRedundantRoles = [] | [{
9846
+ [k: string]: string[] | undefined;
9847
+ }];
9848
+ // ----- astro/jsx-a11y/no-static-element-interactions -----
9849
+ type AstroJsxA11YNoStaticElementInteractions = [] | [{
9850
+ handlers?: string[];
9851
+ [k: string]: unknown | undefined;
9852
+ }];
9853
+ // ----- astro/jsx-a11y/prefer-tag-over-role -----
9854
+ type AstroJsxA11YPreferTagOverRole = [] | [{
9855
+ [k: string]: unknown | undefined;
9856
+ }];
9857
+ // ----- astro/jsx-a11y/role-has-required-aria-props -----
9858
+ type AstroJsxA11YRoleHasRequiredAriaProps = [] | [{
9859
+ [k: string]: unknown | undefined;
9860
+ }];
9861
+ // ----- astro/jsx-a11y/role-supports-aria-props -----
9862
+ type AstroJsxA11YRoleSupportsAriaProps = [] | [{
9863
+ [k: string]: unknown | undefined;
9864
+ }];
9865
+ // ----- astro/jsx-a11y/scope -----
9866
+ type AstroJsxA11YScope = [] | [{
9867
+ [k: string]: unknown | undefined;
9868
+ }];
9869
+ // ----- astro/jsx-a11y/tabindex-no-positive -----
9870
+ type AstroJsxA11YTabindexNoPositive = [] | [{
9871
+ [k: string]: unknown | undefined;
9872
+ }];
9873
+ // ----- astro/no-unsafe-inline-scripts -----
9874
+ type AstroNoUnsafeInlineScripts = [] | [{
9875
+ allowDefineVars?: boolean;
9876
+ allowModuleScripts?: boolean;
9877
+ allowNonExecutingTypes?: string[];
9878
+ allowNonce?: boolean;
9879
+ }];
9586
9880
  // ----- astro/prefer-split-class-list -----
9587
9881
  type AstroPreferSplitClassList = [] | [{
9588
9882
  splitLiteral?: boolean;
@@ -13809,16 +14103,128 @@ type ReactDomNoUnknownProperty = [] | [{
13809
14103
  ignore?: string[];
13810
14104
  requireDataLowercase?: boolean;
13811
14105
  }];
14106
+ // ----- react-hooks/automatic-effect-dependencies -----
14107
+ type ReactHooksAutomaticEffectDependencies = [] | [{
14108
+ [k: string]: unknown | undefined;
14109
+ }];
14110
+ // ----- react-hooks/capitalized-calls -----
14111
+ type ReactHooksCapitalizedCalls = [] | [{
14112
+ [k: string]: unknown | undefined;
14113
+ }];
14114
+ // ----- react-hooks/component-hook-factories -----
14115
+ type ReactHooksComponentHookFactories = [] | [{
14116
+ [k: string]: unknown | undefined;
14117
+ }];
14118
+ // ----- react-hooks/config -----
14119
+ type ReactHooksConfig = [] | [{
14120
+ [k: string]: unknown | undefined;
14121
+ }];
14122
+ // ----- react-hooks/error-boundaries -----
14123
+ type ReactHooksErrorBoundaries = [] | [{
14124
+ [k: string]: unknown | undefined;
14125
+ }];
13812
14126
  // ----- react-hooks/exhaustive-deps -----
13813
14127
  type ReactHooksExhaustiveDeps = [] | [{
13814
14128
  additionalHooks?: string;
13815
14129
  enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean;
14130
+ experimental_autoDependenciesHooks?: string[];
14131
+ requireExplicitEffectDeps?: boolean;
14132
+ }];
14133
+ // ----- react-hooks/fbt -----
14134
+ type ReactHooksFbt = [] | [{
14135
+ [k: string]: unknown | undefined;
14136
+ }];
14137
+ // ----- react-hooks/fire -----
14138
+ type ReactHooksFire = [] | [{
14139
+ [k: string]: unknown | undefined;
14140
+ }];
14141
+ // ----- react-hooks/gating -----
14142
+ type ReactHooksGating = [] | [{
14143
+ [k: string]: unknown | undefined;
14144
+ }];
14145
+ // ----- react-hooks/globals -----
14146
+ type ReactHooksGlobals = [] | [{
14147
+ [k: string]: unknown | undefined;
14148
+ }];
14149
+ // ----- react-hooks/hooks -----
14150
+ type ReactHooksHooks = [] | [{
14151
+ [k: string]: unknown | undefined;
14152
+ }];
14153
+ // ----- react-hooks/immutability -----
14154
+ type ReactHooksImmutability = [] | [{
14155
+ [k: string]: unknown | undefined;
14156
+ }];
14157
+ // ----- react-hooks/incompatible-library -----
14158
+ type ReactHooksIncompatibleLibrary = [] | [{
14159
+ [k: string]: unknown | undefined;
14160
+ }];
14161
+ // ----- react-hooks/invariant -----
14162
+ type ReactHooksInvariant = [] | [{
14163
+ [k: string]: unknown | undefined;
14164
+ }];
14165
+ // ----- react-hooks/memoized-effect-dependencies -----
14166
+ type ReactHooksMemoizedEffectDependencies = [] | [{
14167
+ [k: string]: unknown | undefined;
14168
+ }];
14169
+ // ----- react-hooks/no-deriving-state-in-effects -----
14170
+ type ReactHooksNoDerivingStateInEffects = [] | [{
14171
+ [k: string]: unknown | undefined;
14172
+ }];
14173
+ // ----- react-hooks/preserve-manual-memoization -----
14174
+ type ReactHooksPreserveManualMemoization = [] | [{
14175
+ [k: string]: unknown | undefined;
14176
+ }];
14177
+ // ----- react-hooks/purity -----
14178
+ type ReactHooksPurity = [] | [{
14179
+ [k: string]: unknown | undefined;
14180
+ }];
14181
+ // ----- react-hooks/refs -----
14182
+ type ReactHooksRefs = [] | [{
14183
+ [k: string]: unknown | undefined;
14184
+ }];
14185
+ // ----- react-hooks/rule-suppression -----
14186
+ type ReactHooksRuleSuppression = [] | [{
14187
+ [k: string]: unknown | undefined;
14188
+ }];
14189
+ // ----- react-hooks/rules-of-hooks -----
14190
+ type ReactHooksRulesOfHooks = [] | [{
14191
+ additionalHooks?: string;
14192
+ }];
14193
+ // ----- react-hooks/set-state-in-effect -----
14194
+ type ReactHooksSetStateInEffect = [] | [{
14195
+ [k: string]: unknown | undefined;
14196
+ }];
14197
+ // ----- react-hooks/set-state-in-render -----
14198
+ type ReactHooksSetStateInRender = [] | [{
14199
+ [k: string]: unknown | undefined;
14200
+ }];
14201
+ // ----- react-hooks/static-components -----
14202
+ type ReactHooksStaticComponents = [] | [{
14203
+ [k: string]: unknown | undefined;
14204
+ }];
14205
+ // ----- react-hooks/syntax -----
14206
+ type ReactHooksSyntax = [] | [{
14207
+ [k: string]: unknown | undefined;
14208
+ }];
14209
+ // ----- react-hooks/todo -----
14210
+ type ReactHooksTodo = [] | [{
14211
+ [k: string]: unknown | undefined;
14212
+ }];
14213
+ // ----- react-hooks/unsupported-syntax -----
14214
+ type ReactHooksUnsupportedSyntax = [] | [{
14215
+ [k: string]: unknown | undefined;
14216
+ }];
14217
+ // ----- react-hooks/use-memo -----
14218
+ type ReactHooksUseMemo = [] | [{
14219
+ [k: string]: unknown | undefined;
14220
+ }];
14221
+ // ----- react-hooks/void-use-memo -----
14222
+ type ReactHooksVoidUseMemo = [] | [{
14223
+ [k: string]: unknown | undefined;
13816
14224
  }];
13817
14225
  // ----- react-naming-convention/component-name -----
13818
14226
  type ReactNamingConventionComponentName = [] | [(("PascalCase" | "CONSTANT_CASE") | {
13819
14227
  allowAllCaps?: boolean;
13820
- allowLeadingUnderscore?: boolean;
13821
- allowNamespace?: boolean;
13822
14228
  excepts?: string[];
13823
14229
  rule?: ("PascalCase" | "CONSTANT_CASE");
13824
14230
  })];
@@ -13841,8 +14247,27 @@ type ReactRefreshOnlyExportComponents = [] | [{
13841
14247
  customHOCs?: string[];
13842
14248
  checkJS?: boolean;
13843
14249
  }];
14250
+ // ----- react/jsx-shorthand-boolean -----
14251
+ type ReactJsxShorthandBoolean = [] | [(-1 | 1)];
14252
+ // ----- react/jsx-shorthand-fragment -----
14253
+ type ReactJsxShorthandFragment = [] | [(-1 | 1)];
14254
+ // ----- react/no-forbidden-props -----
14255
+ type ReactNoForbiddenProps = [] | [{
14256
+ forbid?: (string | {
14257
+ excludedNodes?: string[];
14258
+ prop: string;
14259
+ } | {
14260
+ includedNodes?: string[];
14261
+ prop: string;
14262
+ })[];
14263
+ }];
14264
+ // ----- react/no-unstable-default-props -----
14265
+ type ReactNoUnstableDefaultProps = [] | [{
14266
+ safeDefaultProps?: string[];
14267
+ }];
13844
14268
  // ----- react/no-useless-fragment -----
13845
14269
  type ReactNoUselessFragment = [] | [{
14270
+ allowEmptyFragment?: boolean;
13846
14271
  allowExpressions?: boolean;
13847
14272
  }];
13848
14273
  // ----- regexp/hexadecimal-escape -----
@@ -15551,6 +15976,13 @@ type SvelteNoNavigationWithoutBase = [] | [{
15551
15976
  ignorePushState?: boolean;
15552
15977
  ignoreReplaceState?: boolean;
15553
15978
  }];
15979
+ // ----- svelte/no-navigation-without-resolve -----
15980
+ type SvelteNoNavigationWithoutResolve = [] | [{
15981
+ ignoreGoto?: boolean;
15982
+ ignoreLinks?: boolean;
15983
+ ignorePushState?: boolean;
15984
+ ignoreReplaceState?: boolean;
15985
+ }];
15554
15986
  // ----- svelte/no-reactive-reassign -----
15555
15987
  type SvelteNoReactiveReassign = [] | [{
15556
15988
  props?: boolean;
@@ -15645,6 +16077,13 @@ type SwitchColonSpacing = [] | [{
15645
16077
  type TemplateCurlySpacing = [] | [("always" | "never")];
15646
16078
  // ----- template-tag-spacing -----
15647
16079
  type TemplateTagSpacing = [] | [("always" | "never")];
16080
+ // ----- test/consistent-each-for -----
16081
+ type TestConsistentEachFor = [] | [{
16082
+ test?: ("each" | "for");
16083
+ it?: ("each" | "for");
16084
+ describe?: ("each" | "for");
16085
+ suite?: ("each" | "for");
16086
+ }];
15648
16087
  // ----- test/consistent-test-filename -----
15649
16088
  type TestConsistentTestFilename = [] | [{
15650
16089
  pattern?: string;
@@ -15678,7 +16117,7 @@ type TestNoFocusedTests = [] | [{
15678
16117
  }];
15679
16118
  // ----- test/no-hooks -----
15680
16119
  type TestNoHooks = [] | [{
15681
- allow?: unknown[];
16120
+ allow?: ("beforeAll" | "beforeEach" | "afterAll" | "afterEach")[];
15682
16121
  }];
15683
16122
  // ----- test/no-large-snapshots -----
15684
16123
  type TestNoLargeSnapshots = [] | [{
@@ -17043,6 +17482,10 @@ type UnicornTemplateIndent = [] | [{
17043
17482
  selectors?: string[];
17044
17483
  comments?: string[];
17045
17484
  }];
17485
+ // ----- unicorn/text-encoding-identifier-case -----
17486
+ type UnicornTextEncodingIdentifierCase = [] | [{
17487
+ withDash?: boolean;
17488
+ }];
17046
17489
  // ----- unocss/enforce-class-compile -----
17047
17490
  type UnocssEnforceClassCompile = [] | [{
17048
17491
  prefix?: string;
@@ -18499,9 +18942,12 @@ type Yoda = [] | [("always" | "never")] | [("always" | "never"), {
18499
18942
  onlyEquality?: boolean;
18500
18943
  }];
18501
18944
  // Names of all the configs
18502
- type ConfigNames = 'vinicunca/astro/setup' | 'vinicunca/astro/rules' | 'vinicunca/eslint-comments/rules' | 'vinicunca/formatter/setup' | 'vinicunca/imports/rules' | 'vinicunca/javascript/setup' | 'vinicunca/javascript/rules' | 'vinicunca/javascript/disables' | 'vinicunca/jsx/setup' | 'vinicunca/jsdoc/rules' | 'vinicunca/jsonc/setup' | 'vinicunca/jsonc/rules' | 'vinicunca/markdown/setup' | 'vinicunca/markdown/processor' | 'vinicunca/markdown/parser' | 'vinicunca/markdown/disables' | 'vinicunca/node/rules' | 'vinicunca/perfectionist/rules' | 'vinicunca/react/setup' | 'vinicunca/react/rules' | 'vinicunca/solid/setup' | 'vinicunca/solid/rules' | 'vinicunca/sort/package-json' | 'vinicunca/stylistic/rules' | 'vinicunca/svelte/setup' | 'vinicunca/svelte/rules' | 'vinicunca/test/setup' | 'vinicunca/test/rules' | 'vinicunca/toml/setup' | 'vinicunca/toml/rules' | 'vinicunca/regexp/rules' | 'vinicunca/sonar/rules' | 'vinicunca/typescript/setup' | 'vinicunca/typescript/parser' | 'vinicunca/typescript/rules' | 'vinicunca/typescript/disables/dts' | 'vinicunca/typescript/disables/tests' | 'vinicunca/typescript/disables/javascript' | 'vinicunca/unicorn/rules' | 'vinicunca/unocss' | 'vinicunca/vue/setup' | 'vinicunca/vue/rules' | 'vinicunca/yaml/setup' | 'vinicunca/yaml/rules' | 'vinicunca/yaml/pnpm-workspace';
18945
+ type ConfigNames = 'vinicunca/astro/setup' | 'vinicunca/astro/rules' | 'vinicunca/eslint-comments/rules' | 'vinicunca/formatter/setup' | 'vinicunca/imports/rules' | 'vinicunca/javascript/setup' | 'vinicunca/javascript/rules' | 'vinicunca/javascript/disables' | 'antfu/jsx/setup' | 'vinicunca/jsdoc/rules' | 'vinicunca/jsonc/setup' | 'vinicunca/jsonc/rules' | 'vinicunca/markdown/setup' | 'vinicunca/markdown/processor' | 'vinicunca/markdown/parser' | 'vinicunca/markdown/disables' | 'vinicunca/node/rules' | 'vinicunca/perfectionist/rules' | 'vinicunca/react/setup' | 'vinicunca/react/rules' | 'vinicunca/solid/setup' | 'vinicunca/solid/rules' | 'vinicunca/sort/package-json' | 'vinicunca/stylistic/rules' | 'vinicunca/svelte/setup' | 'vinicunca/svelte/rules' | 'vinicunca/test/setup' | 'vinicunca/test/rules' | 'vinicunca/toml/setup' | 'vinicunca/toml/rules' | 'vinicunca/regexp/rules' | 'vinicunca/sonar/rules' | 'vinicunca/typescript/setup' | 'vinicunca/typescript/parser' | 'vinicunca/typescript/rules' | 'vinicunca/typescript/disables/dts' | 'vinicunca/typescript/disables/tests' | 'vinicunca/typescript/disables/javascript' | 'vinicunca/unicorn/rules' | 'vinicunca/unocss' | 'vinicunca/vue/setup' | 'vinicunca/vue/rules' | 'vinicunca/yaml/setup' | 'vinicunca/yaml/rules';
18503
18946
  //#endregion
18504
18947
  //#region src/vendor/prettier-types.d.ts
18948
+ /**
18949
+ * Vendor types from Prettier so we don't rely on the dependency.
18950
+ */
18505
18951
  type VendoredPrettierOptions = Partial<VendoredPrettierOptionsRequired>;
18506
18952
  interface VendoredPrettierOptionsRequired {
18507
18953
  /**
@@ -18532,7 +18978,7 @@ interface VendoredPrettierOptionsRequired {
18532
18978
  /**
18533
18979
  * Print trailing commas wherever possible.
18534
18980
  */
18535
- trailingComma: 'all' | 'es5' | 'none';
18981
+ trailingComma: 'none' | 'es5' | 'all';
18536
18982
  /**
18537
18983
  * Print spaces between brackets in object literals.
18538
18984
  */
@@ -18566,21 +19012,21 @@ interface VendoredPrettierOptionsRequired {
18566
19012
  * Include parentheses around a sole arrow function parameter.
18567
19013
  * @default "always"
18568
19014
  */
18569
- arrowParens: 'always' | 'avoid';
19015
+ arrowParens: 'avoid' | 'always';
18570
19016
  /**
18571
19017
  * Provide ability to support new languages to prettier.
18572
19018
  */
18573
- plugins: Array<any | string>;
19019
+ plugins: Array<string | any>;
18574
19020
  /**
18575
19021
  * How to handle whitespaces in HTML.
18576
19022
  * @default "css"
18577
19023
  */
18578
- htmlWhitespaceSensitivity: 'css' | 'ignore' | 'strict';
19024
+ htmlWhitespaceSensitivity: 'css' | 'strict' | 'ignore';
18579
19025
  /**
18580
19026
  * Which end of line characters to apply.
18581
19027
  * @default "lf"
18582
19028
  */
18583
- endOfLine: 'auto' | 'cr' | 'crlf' | 'lf';
19029
+ endOfLine: 'auto' | 'lf' | 'crlf' | 'cr';
18584
19030
  /**
18585
19031
  * Change when properties in objects are quoted.
18586
19032
  * @default "as-needed"
@@ -18600,7 +19046,7 @@ interface VendoredPrettierOptionsRequired {
18600
19046
  * How to handle whitespaces in XML.
18601
19047
  * @default "preserve"
18602
19048
  */
18603
- xmlQuoteAttributes: 'double' | 'preserve' | 'single';
19049
+ xmlQuoteAttributes: 'single' | 'double' | 'preserve';
18604
19050
  /**
18605
19051
  * Whether to put a space inside the brackets of self-closing XML elements.
18606
19052
  * @default true
@@ -18615,20 +19061,31 @@ interface VendoredPrettierOptionsRequired {
18615
19061
  * How to handle whitespaces in XML.
18616
19062
  * @default "ignore"
18617
19063
  */
18618
- xmlWhitespaceSensitivity: 'ignore' | 'preserve' | 'strict';
19064
+ xmlWhitespaceSensitivity: 'ignore' | 'strict' | 'preserve';
18619
19065
  }
18620
19066
  //#endregion
18621
19067
  //#region src/types.d.ts
18622
19068
  type Awaitable<T> = Promise<T> | T;
18623
- interface Rules extends RuleOptions {}
18624
- type TypedFlatConfigItem = {
19069
+ type Rules = Record<string, Linter.RuleEntry<any> | undefined> & RuleOptions;
19070
+ /**
19071
+ * An updated version of ESLint's `Linter.Config`, which provides autocompletion
19072
+ * for `rules` and relaxes type limitations for `plugins` and `rules`, because
19073
+ * many plugins still lack proper type definitions.
19074
+ */
19075
+ type TypedFlatConfigItem = Omit<Linter.Config, 'plugins' | 'rules'> & {
18625
19076
  /**
18626
- * An object containing a name-value mapping of plugin names to plugin objects. When `files` is specified, these plugins are only available to the matching files.
19077
+ * An object containing a name-value mapping of plugin names to plugin objects.
19078
+ * When `files` is specified, these plugins are only available to the matching files.
18627
19079
  *
18628
19080
  * @see [Using plugins in your configuration](https://eslint.org/docs/latest/user-guide/configuring/configuration-files-new#using-plugins-in-your-configuration)
18629
19081
  */
18630
19082
  plugins?: Record<string, any>;
18631
- } & Omit<Linter.Config<Linter.RulesRecord & Rules>, 'plugins'>;
19083
+ /**
19084
+ * An object containing the configured rules. When `files` or `ignores` are
19085
+ * specified, these rule configurations are only available to the matching files.
19086
+ */
19087
+ rules?: Rules;
19088
+ };
18632
19089
  interface OptionsFiles {
18633
19090
  /**
18634
19091
  * Override the `files` option to provide custom globs.
@@ -18657,7 +19114,20 @@ interface OptionsVue extends OptionsOverrides {
18657
19114
  */
18658
19115
  a11y?: boolean;
18659
19116
  }
18660
- type OptionsTypescript = (OptionsTypeScriptWithTypes & OptionsOverrides) | (OptionsTypeScriptParserOptions & OptionsOverrides);
19117
+ interface OptionsJSXA11y extends OptionsOverrides {}
19118
+ interface OptionsJSX {
19119
+ /**
19120
+ * Enable JSX accessibility rules.
19121
+ *
19122
+ * Requires installing:
19123
+ * - `eslint-plugin-jsx-a11y`
19124
+ *
19125
+ * Can be a boolean or an object for custom options and overrides.
19126
+ * @default false
19127
+ */
19128
+ a11y?: boolean | OptionsJSXA11y;
19129
+ }
19130
+ type OptionsTypescript = (OptionsTypeScriptWithTypes & OptionsOverrides & OptionsTypeScriptErasableOnly) | (OptionsTypeScriptParserOptions & OptionsOverrides & OptionsTypeScriptErasableOnly);
18661
19131
  interface OptionsFormatters {
18662
19132
  /**
18663
19133
  * Enable formatting support for CSS, Less, Sass, and SCSS.
@@ -18731,9 +19201,9 @@ interface OptionsComponentExts {
18731
19201
  */
18732
19202
  componentExts?: Array<string>;
18733
19203
  }
18734
- interface OptionsUnicorn {
19204
+ interface OptionsUnicorn extends OptionsOverrides {
18735
19205
  /**
18736
- * Include all rules recommended by `eslint-plugin-unicorn`, instead of only ones picked by Anthony.
19206
+ * Include all rules recommended by `eslint-plugin-unicorn`.
18737
19207
  *
18738
19208
  * @default false
18739
19209
  */
@@ -18772,7 +19242,7 @@ interface OptionsHasTypeScript {
18772
19242
  interface OptionsStylistic {
18773
19243
  stylistic?: boolean | StylisticConfig;
18774
19244
  }
18775
- interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'jsx' | 'quotes' | 'semi'> {}
19245
+ interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'quotes' | 'jsx' | 'semi' | 'experimental'> {}
18776
19246
  interface OptionsOverrides {
18777
19247
  overrides?: TypedFlatConfigItem['rules'];
18778
19248
  }
@@ -18784,6 +19254,15 @@ interface OptionsProjectType {
18784
19254
  */
18785
19255
  type?: 'app' | 'lib';
18786
19256
  }
19257
+ interface OptionsTypeScriptErasableOnly {
19258
+ /**
19259
+ * Enable erasable syntax only rules.
19260
+ *
19261
+ * @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only
19262
+ * @default false
19263
+ */
19264
+ erasableOnly?: boolean;
19265
+ }
18787
19266
  interface OptionsRegExp {
18788
19267
  /**
18789
19268
  * Override rulelevels
@@ -18809,6 +19288,9 @@ interface OptionsUnoCSS extends OptionsOverrides {
18809
19288
  */
18810
19289
  configPath?: string;
18811
19290
  }
19291
+ interface OptionsReact extends OptionsOverrides {
19292
+ reactCompiler?: boolean;
19293
+ }
18812
19294
  interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
18813
19295
  /**
18814
19296
  * Enable gitignore support.
@@ -18819,6 +19301,25 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
18819
19301
  * @default true
18820
19302
  */
18821
19303
  gitignore?: boolean | FlatGitignoreOptions;
19304
+ /**
19305
+ * Extend the global ignores.
19306
+ *
19307
+ * Passing an array to extends the ignores.
19308
+ * Passing a function to modify the default ignores.
19309
+ *
19310
+ * @default []
19311
+ */
19312
+ ignores?: Array<string> | ((originals: Array<string>) => Array<string>);
19313
+ /**
19314
+ * Disable some opinionated rules to Anthony's preference.
19315
+ *
19316
+ * Including:
19317
+ * - `antfu/top-level-function`
19318
+ * - `antfu/if-newline`
19319
+ *
19320
+ * @default false
19321
+ */
19322
+ lessOpinionated?: boolean;
18822
19323
  /**
18823
19324
  * Core rules. Can't be disabled.
18824
19325
  */
@@ -18838,7 +19339,7 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
18838
19339
  *
18839
19340
  * @default true
18840
19341
  */
18841
- jsx?: boolean;
19342
+ jsx?: boolean | OptionsJSX;
18842
19343
  /**
18843
19344
  * Options for eslint-plugin-unicorn.
18844
19345
  *
@@ -18912,21 +19413,41 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
18912
19413
  /**
18913
19414
  * Enable react rules.
18914
19415
  *
19416
+ * Requires installing:
19417
+ * - `@eslint-react/eslint-plugin`
19418
+ * - `eslint-plugin-react-hooks`
19419
+ * - `eslint-plugin-react-refresh`
19420
+ *
19421
+ * @default false
19422
+ */
19423
+ react?: boolean | OptionsReact;
19424
+ /**
19425
+ * Enable nextjs rules.
19426
+ *
19427
+ * Requires installing:
19428
+ * - `@next/eslint-plugin-next`
19429
+ *
18915
19430
  * @default false
18916
19431
  */
18917
- react?: boolean | OptionsOverrides;
19432
+ nextjs?: boolean | OptionsOverrides;
18918
19433
  /**
18919
19434
  * Enable solid rules.
18920
19435
  *
19436
+ * Requires installing:
19437
+ * - `eslint-plugin-solid`
19438
+ *
18921
19439
  * @default false
18922
19440
  */
18923
19441
  solid?: boolean | OptionsOverrides;
18924
19442
  /**
18925
19443
  * Enable svelte rules.
18926
19444
  *
19445
+ * Requires installing:
19446
+ * - `eslint-plugin-svelte`
19447
+ *
18927
19448
  * @default false
18928
19449
  */
18929
- svelte?: boolean;
19450
+ svelte?: boolean | OptionsOverrides;
18930
19451
  /**
18931
19452
  * Enable unocss rules.
18932
19453
  *
@@ -18947,6 +19468,9 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
18947
19468
  /**
18948
19469
  * Use external formatters to format files.
18949
19470
  *
19471
+ * Requires installing:
19472
+ * - `eslint-plugin-format`
19473
+ *
18950
19474
  * When set to `true`, it will enable all formatters.
18951
19475
  *
18952
19476
  * @default false
@@ -18971,6 +19495,7 @@ declare const defaultPluginRenaming: {
18971
19495
  '@eslint-react/dom': string;
18972
19496
  '@eslint-react/hooks-extra': string;
18973
19497
  '@eslint-react/naming-convention': string;
19498
+ '@next/next': string;
18974
19499
  '@stylistic': string;
18975
19500
  '@typescript-eslint': string;
18976
19501
  'import-lite': string;
@@ -18979,7 +19504,6 @@ declare const defaultPluginRenaming: {
18979
19504
  vitest: string;
18980
19505
  yml: string;
18981
19506
  };
18982
- type ResolvedOptions<T> = T extends boolean ? never : NonNullable<T>;
18983
19507
  /**
18984
19508
  * Construct an array of ESLint flat config items.
18985
19509
  *
@@ -18991,9 +19515,10 @@ type ResolvedOptions<T> = T extends boolean ? never : NonNullable<T>;
18991
19515
  * The merged ESLint configurations.
18992
19516
  */
18993
19517
  declare function vinicuncaESLint(options?: OptionsConfig & Omit<TypedFlatConfigItem, 'files'>, ...userConfigs: Array<Awaitable<Array<Linter.Config> | Array<TypedFlatConfigItem> | FlatConfigComposer<any, any> | TypedFlatConfigItem>>): FlatConfigComposer<TypedFlatConfigItem, ConfigNames>;
19518
+ type ResolvedOptions<T> = T extends boolean ? never : NonNullable<T>;
18994
19519
  //#endregion
18995
19520
  //#region src/configs/astro.d.ts
18996
- declare function astro(options?: OptionsFiles & OptionsOverrides & OptionsStylistic): Promise<Array<TypedFlatConfigItem>>;
19521
+ declare function astro(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<Array<TypedFlatConfigItem>>;
18997
19522
  //#endregion
18998
19523
  //#region src/configs/command.d.ts
18999
19524
  declare function command(): Promise<Array<TypedFlatConfigItem>>;
@@ -19005,7 +19530,7 @@ declare function comments(): Promise<Array<TypedFlatConfigItem>>;
19005
19530
  declare function formatters(options?: OptionsFormatters | true, stylistic?: StylisticConfig): Promise<Array<TypedFlatConfigItem>>;
19006
19531
  //#endregion
19007
19532
  //#region src/configs/ignores.d.ts
19008
- declare function ignores(userIgnores?: Array<string>): Promise<Array<TypedFlatConfigItem>>;
19533
+ declare function ignores(userIgnores?: Array<string> | ((originals: Array<string>) => Array<string>)): Promise<Array<TypedFlatConfigItem>>;
19009
19534
  //#endregion
19010
19535
  //#region src/configs/imports.d.ts
19011
19536
  declare function imports(options?: OptionsOverrides & OptionsStylistic): Promise<Array<TypedFlatConfigItem>>;
@@ -19017,13 +19542,16 @@ declare function javascript(options?: OptionsIsInEditor & OptionsOverrides): Pro
19017
19542
  declare function jsdoc(options?: OptionsStylistic): Promise<Array<TypedFlatConfigItem>>;
19018
19543
  //#endregion
19019
19544
  //#region src/configs/jsonc.d.ts
19020
- declare function jsonc(options?: OptionsFiles & OptionsOverrides & OptionsStylistic): Promise<Array<TypedFlatConfigItem>>;
19545
+ declare function jsonc(options?: OptionsFiles & OptionsStylistic & OptionsOverrides): Promise<Array<TypedFlatConfigItem>>;
19021
19546
  //#endregion
19022
19547
  //#region src/configs/jsx.d.ts
19023
- declare function jsx(): Promise<Array<TypedFlatConfigItem>>;
19548
+ declare function jsx(options?: OptionsJSX): Promise<Array<TypedFlatConfigItem>>;
19024
19549
  //#endregion
19025
19550
  //#region src/configs/markdown.d.ts
19026
- declare function markdown(options?: OptionsComponentExts & OptionsFiles & OptionsOverrides): Promise<Array<TypedFlatConfigItem>>;
19551
+ declare function markdown(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides): Promise<Array<TypedFlatConfigItem>>;
19552
+ //#endregion
19553
+ //#region src/configs/nextjs.d.ts
19554
+ declare function nextjs(options?: OptionsOverrides & OptionsFiles): Promise<Array<TypedFlatConfigItem>>;
19027
19555
  //#endregion
19028
19556
  //#region src/configs/node.d.ts
19029
19557
  declare function node(): Promise<Array<TypedFlatConfigItem>>;
@@ -19037,16 +19565,16 @@ declare function node(): Promise<Array<TypedFlatConfigItem>>;
19037
19565
  declare function perfectionist(): Promise<Array<TypedFlatConfigItem>>;
19038
19566
  //#endregion
19039
19567
  //#region src/configs/pnpm.d.ts
19040
- declare function pnpm(): Promise<Array<TypedFlatConfigItem>>;
19568
+ declare function pnpm(options: OptionsIsInEditor): Promise<Array<TypedFlatConfigItem>>;
19041
19569
  //#endregion
19042
19570
  //#region src/configs/react.d.ts
19043
- declare function react(options?: OptionsFiles & OptionsOverrides & OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes): Promise<Array<TypedFlatConfigItem>>;
19571
+ declare function react(options?: OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes & OptionsReact & OptionsFiles): Promise<Array<TypedFlatConfigItem>>;
19044
19572
  //#endregion
19045
19573
  //#region src/configs/regexp.d.ts
19046
- declare function regexp(options?: OptionsOverrides & OptionsRegExp): Promise<Array<TypedFlatConfigItem>>;
19574
+ declare function regexp(options?: OptionsRegExp & OptionsOverrides): Promise<Array<TypedFlatConfigItem>>;
19047
19575
  //#endregion
19048
19576
  //#region src/configs/solid.d.ts
19049
- declare function solid(options?: OptionsFiles & OptionsHasTypeScript & OptionsOverrides & OptionsTypeScriptWithTypes): Promise<Array<TypedFlatConfigItem>>;
19577
+ declare function solid(options?: OptionsHasTypeScript & OptionsOverrides & OptionsFiles & OptionsTypeScriptWithTypes): Promise<Array<TypedFlatConfigItem>>;
19050
19578
  //#endregion
19051
19579
  //#region src/configs/sonar.d.ts
19052
19580
  declare function sonar(): Promise<Array<TypedFlatConfigItem>>;
@@ -19067,20 +19595,22 @@ declare function sortTsconfig(): Array<TypedFlatConfigItem>;
19067
19595
  //#endregion
19068
19596
  //#region src/configs/stylistic.d.ts
19069
19597
  declare const STYLISTIC_CONFIG_DEFAULTS: StylisticConfig;
19070
- interface StylisticOptions extends StylisticConfig, OptionsOverrides {}
19598
+ interface StylisticOptions extends StylisticConfig, OptionsOverrides {
19599
+ lessOpinionated?: boolean;
19600
+ }
19071
19601
  declare function stylistic(options?: StylisticOptions): Promise<Array<TypedFlatConfigItem>>;
19072
19602
  //#endregion
19073
19603
  //#region src/configs/svelte.d.ts
19074
- declare function svelte(options?: OptionsFiles & OptionsHasTypeScript & OptionsOverrides & OptionsStylistic): Promise<Array<TypedFlatConfigItem>>;
19604
+ declare function svelte(options?: OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<Array<TypedFlatConfigItem>>;
19075
19605
  //#endregion
19076
19606
  //#region src/configs/test.d.ts
19077
19607
  declare function test(options?: OptionsFiles & OptionsIsInEditor & OptionsOverrides): Promise<Array<TypedFlatConfigItem>>;
19078
19608
  //#endregion
19079
19609
  //#region src/configs/toml.d.ts
19080
- declare function toml(options?: OptionsFiles & OptionsOverrides & OptionsStylistic): Promise<Array<TypedFlatConfigItem>>;
19610
+ declare function toml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<Array<TypedFlatConfigItem>>;
19081
19611
  //#endregion
19082
19612
  //#region src/configs/typescript.d.ts
19083
- declare function typescript(options?: OptionsComponentExts & OptionsFiles & OptionsOverrides & OptionsProjectType & OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes): Promise<Array<TypedFlatConfigItem>>;
19613
+ declare function typescript(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides & OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions & OptionsProjectType & OptionsTypeScriptErasableOnly): Promise<Array<TypedFlatConfigItem>>;
19084
19614
  //#endregion
19085
19615
  //#region src/configs/unicorn.d.ts
19086
19616
  declare function unicorn(options?: OptionsUnicorn): Promise<Array<TypedFlatConfigItem>>;
@@ -19089,10 +19619,10 @@ declare function unicorn(options?: OptionsUnicorn): Promise<Array<TypedFlatConfi
19089
19619
  declare function unocss(options?: OptionsUnoCSS): Promise<Array<TypedFlatConfigItem>>;
19090
19620
  //#endregion
19091
19621
  //#region src/configs/vue.d.ts
19092
- declare function vue(options?: OptionsFiles & OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsVue): Promise<Array<TypedFlatConfigItem>>;
19622
+ declare function vue(options?: OptionsVue & OptionsHasTypeScript & OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<Array<TypedFlatConfigItem>>;
19093
19623
  //#endregion
19094
19624
  //#region src/configs/yaml.d.ts
19095
- declare function yaml(options?: OptionsFiles & OptionsOverrides & OptionsStylistic): Promise<Array<TypedFlatConfigItem>>;
19625
+ declare function yaml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<Array<TypedFlatConfigItem>>;
19096
19626
  //#endregion
19097
19627
  //#region src/globs.d.ts
19098
19628
  declare const GLOB_SRC_EXT = "?([cm])[jt]s?(x)";
@@ -19111,7 +19641,7 @@ declare const GLOB_JSON5 = "**/*.json5";
19111
19641
  declare const GLOB_JSONC = "**/*.jsonc";
19112
19642
  declare const GLOB_MARKDOWN = "**/*.md";
19113
19643
  declare const GLOB_MARKDOWN_IN_MARKDOWN = "**/*.md/*.md";
19114
- declare const GLOB_SVELTE = "**/*.svelte";
19644
+ declare const GLOB_SVELTE = "**/*.svelte?(.{js,ts})";
19115
19645
  declare const GLOB_VUE = "**/*.vue";
19116
19646
  declare const GLOB_YAML = "**/*.y?(a)ml";
19117
19647
  declare const GLOB_TOML = "**/*.toml";
@@ -19201,4 +19731,4 @@ declare function ensurePackages(packages: Array<string | undefined>): Promise<vo
19201
19731
  declare function isInEditorEnv(): boolean;
19202
19732
  declare function isInGitHooksOrLintStaged(): boolean;
19203
19733
  //#endregion
19204
- export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsOverrides, OptionsProjectType, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, Rules, STYLISTIC_CONFIG_DEFAULTS, StylisticConfig, StylisticOptions, TypedFlatConfigItem, astro, combineConfigs, command, comments, defaultPluginRenaming, ensurePackages, formatters, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, node, parserPlain, perfectionist, pluginAntfu, pluginComments, pluginImportLite, pluginNode, pluginPerfectionist, pluginSonar, pluginUnicorn, pluginUnusedImports, pnpm, react, regexp, renamePluginInConfigs, renameRules, solid, sonar, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vinicuncaESLint, vue, yaml };
19734
+ export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsJSX, OptionsJSXA11y, OptionsOverrides, OptionsProjectType, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, Rules, STYLISTIC_CONFIG_DEFAULTS, StylisticConfig, StylisticOptions, TypedFlatConfigItem, astro, combineConfigs, command, comments, defaultPluginRenaming, ensurePackages, formatters, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pluginAntfu, pluginComments, pluginImportLite, pluginNode, pluginPerfectionist, pluginSonar, pluginUnicorn, pluginUnusedImports, pnpm, react, regexp, renamePluginInConfigs, renameRules, solid, sonar, sortPackageJson, sortTsconfig, stylistic, svelte, test, toArray, toml, typescript, unicorn, unocss, vinicuncaESLint, vue, yaml };