@shayanthenerd/eslint-config 0.31.0 → 0.33.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +76 -42
  2. package/dist/configs/astro.mjs +5 -1
  3. package/dist/configs/javascript.mjs +1 -1
  4. package/dist/configs/packageJson.mjs +1 -1
  5. package/dist/configs/react.mjs +2 -2
  6. package/dist/configs/tailwind.mjs +7 -1
  7. package/dist/configs/tanstack.mjs +26 -0
  8. package/dist/configs/typescript.mjs +4 -6
  9. package/dist/helpers/ignores/defaultIgnorePatterns.mjs +1 -6
  10. package/dist/helpers/options/defaultOptions.mjs +19 -3
  11. package/dist/helpers/options/enableDetectedConfigs.mjs +22 -1
  12. package/dist/index.d.mts +4 -3
  13. package/dist/index.mjs +3 -35
  14. package/dist/rules/astro.mjs +61 -54
  15. package/dist/rules/baseline.mjs +1 -1
  16. package/dist/rules/css.mjs +35 -7
  17. package/dist/rules/html.mjs +3 -2
  18. package/dist/rules/importX.mjs +2 -2
  19. package/dist/rules/javascript.mjs +6 -5
  20. package/dist/rules/next.mjs +2 -0
  21. package/dist/rules/node.mjs +1 -1
  22. package/dist/rules/packageJson.mjs +166 -153
  23. package/dist/rules/perfectionist.mjs +41 -11
  24. package/dist/rules/playwright.mjs +10 -0
  25. package/dist/rules/react.mjs +57 -54
  26. package/dist/rules/stylistic.mjs +1 -1
  27. package/dist/rules/tanstack.mjs +39 -0
  28. package/dist/rules/typescript.mjs +2 -2
  29. package/dist/rules/unicorn.mjs +15 -6
  30. package/dist/rules/vue.mjs +38 -41
  31. package/dist/rules/zod.mjs +2 -0
  32. package/dist/types/eslint-schema.d.mts +851 -651
  33. package/dist/types/index.d.mts +57 -7
  34. package/dist/types/options/baseline.d.mts +24 -3
  35. package/dist/types/options/react.d.mts +9 -9
  36. package/dist/types/options/tanstack.d.mts +32 -0
  37. package/dist/types/options/typescript.d.mts +3 -3
  38. package/dist/types/options/vue.d.mts +1 -1
  39. package/package.json +38 -34
@@ -881,7 +881,7 @@ export interface ESLintSchema {
881
881
  */
882
882
  '@html-eslint/no-redundant-role'?: Linter.RuleEntry<[]>;
883
883
  /**
884
- * Disallow specified attributes
884
+ * Disallow specified attribute values
885
885
  * @see https://html-eslint.org/docs/rules/no-restricted-attr-values
886
886
  */
887
887
  '@html-eslint/no-restricted-attr-values'?: Linter.RuleEntry<HtmlEslintNoRestrictedAttrValues>;
@@ -959,6 +959,21 @@ export interface ESLintSchema {
959
959
  * Disallow use of obsolete elements in HTML5
960
960
  */
961
961
  '@html-eslint/react/no-obsolete-tags'?: Linter.RuleEntry<[]>;
962
+ /**
963
+ * Disallow specified attribute values
964
+ * @see https://html-eslint.org/docs/react/rules/no-restricted-attr-values
965
+ */
966
+ '@html-eslint/react/no-restricted-attr-values'?: Linter.RuleEntry<HtmlEslintReactNoRestrictedAttrValues>;
967
+ /**
968
+ * Disallow specified attributes
969
+ * @see https://html-eslint.org/docs/react/rules/no-restricted-attrs
970
+ */
971
+ '@html-eslint/react/no-restricted-attrs'?: Linter.RuleEntry<HtmlEslintReactNoRestrictedAttrs>;
972
+ /**
973
+ * Require specified attributes
974
+ * @see https://html-eslint.org/docs/react/rules/require-attrs
975
+ */
976
+ '@html-eslint/react/require-attrs'?: Linter.RuleEntry<HtmlEslintReactRequireAttrs>;
962
977
  /**
963
978
  * Enforce the use of baseline features.
964
979
  * @see https://html-eslint.org/docs/react/rules/use-baseline
@@ -1557,6 +1572,66 @@ export interface ESLintSchema {
1557
1572
  * @see https://eslint.style/rules/yield-star-spacing
1558
1573
  */
1559
1574
  '@stylistic/yield-star-spacing'?: Linter.RuleEntry<StylisticYieldStarSpacing>;
1575
+ /**
1576
+ * Exhaustive deps rule for useQuery
1577
+ * @see https://tanstack.com/query/latest/docs/eslint/exhaustive-deps
1578
+ */
1579
+ '@tanstack/query/exhaustive-deps'?: Linter.RuleEntry<TanstackQueryExhaustiveDeps>;
1580
+ /**
1581
+ * Ensure correct order of inference sensitive properties for infinite queries
1582
+ * @see https://tanstack.com/query/latest/docs/eslint/infinite-query-property-order
1583
+ */
1584
+ '@tanstack/query/infinite-query-property-order'?: Linter.RuleEntry<[]>;
1585
+ /**
1586
+ * Ensure correct order of inference-sensitive properties in useMutation()
1587
+ * @see https://tanstack.com/query/latest/docs/eslint/mutation-property-order
1588
+ */
1589
+ '@tanstack/query/mutation-property-order'?: Linter.RuleEntry<[]>;
1590
+ /**
1591
+ * Disallows rest destructuring in queries
1592
+ * @see https://tanstack.com/query/latest/docs/eslint/no-rest-destructuring
1593
+ */
1594
+ '@tanstack/query/no-rest-destructuring'?: Linter.RuleEntry<[]>;
1595
+ /**
1596
+ * Disallow putting the result of query hooks directly in a React hook dependency array
1597
+ * @see https://tanstack.com/query/latest/docs/eslint/no-unstable-deps
1598
+ */
1599
+ '@tanstack/query/no-unstable-deps'?: Linter.RuleEntry<[]>;
1600
+ /**
1601
+ * Ensures queryFn returns a non-undefined value
1602
+ * @see https://tanstack.com/query/latest/docs/eslint/no-void-query-fn
1603
+ */
1604
+ '@tanstack/query/no-void-query-fn'?: Linter.RuleEntry<[]>;
1605
+ /**
1606
+ * Prefer using queryOptions() to co-locate queryKey and queryFn
1607
+ * @see https://tanstack.com/query/latest/docs/eslint/prefer-query-options
1608
+ */
1609
+ '@tanstack/query/prefer-query-options'?: Linter.RuleEntry<[]>;
1610
+ /**
1611
+ * Makes sure that QueryClient is stable
1612
+ * @see https://tanstack.com/query/latest/docs/eslint/stable-query-client
1613
+ */
1614
+ '@tanstack/query/stable-query-client'?: Linter.RuleEntry<[]>;
1615
+ /**
1616
+ * Ensure correct order of inference sensitive properties for createRoute functions
1617
+ * @see https://tanstack.com/router/latest/docs/eslint/create-route-property-order
1618
+ */
1619
+ '@tanstack/router/create-route-property-order'?: Linter.RuleEntry<[]>;
1620
+ /**
1621
+ * Ensure route param names are valid JavaScript identifiers
1622
+ * @see https://tanstack.com/router/latest/docs/eslint/route-param-names
1623
+ */
1624
+ '@tanstack/router/route-param-names'?: Linter.RuleEntry<[]>;
1625
+ /**
1626
+ * Disallow async components in client context. Async components are only valid inside server components.
1627
+ * @see https://tanstack.com/start/latest/docs/eslint/no-async-client-component
1628
+ */
1629
+ '@tanstack/start/no-async-client-component'?: Linter.RuleEntry<TanstackStartNoAsyncClientComponent>;
1630
+ /**
1631
+ * Disallow client-only code inside server components
1632
+ * @see https://tanstack.com/start/latest/docs/eslint/no-client-code-in-server-component
1633
+ */
1634
+ '@tanstack/start/no-client-code-in-server-component'?: Linter.RuleEntry<TanstackStartNoClientCodeInServerComponent>;
1560
1635
  /**
1561
1636
  * Require that function overload signatures be consecutive
1562
1637
  * @see https://typescript-eslint.io/rules/adjacent-overload-signatures
@@ -2310,17 +2385,17 @@ export interface ESLintSchema {
2310
2385
  * apply `jsx-a11y/aria-activedescendant-has-tabindex` rule to Astro components
2311
2386
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-activedescendant-has-tabindex/
2312
2387
  */
2313
- 'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<AstroJsxA11YAriaActivedescendantHasTabindex>;
2388
+ 'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<[]>;
2314
2389
  /**
2315
2390
  * apply `jsx-a11y/aria-props` rule to Astro components
2316
2391
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-props/
2317
2392
  */
2318
- 'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<AstroJsxA11YAriaProps>;
2393
+ 'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<[]>;
2319
2394
  /**
2320
2395
  * apply `jsx-a11y/aria-proptypes` rule to Astro components
2321
2396
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-proptypes/
2322
2397
  */
2323
- 'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<AstroJsxA11YAriaProptypes>;
2398
+ 'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<[]>;
2324
2399
  /**
2325
2400
  * apply `jsx-a11y/aria-role` rule to Astro components
2326
2401
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-role/
@@ -2330,7 +2405,7 @@ export interface ESLintSchema {
2330
2405
  * apply `jsx-a11y/aria-unsupported-elements` rule to Astro components
2331
2406
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-unsupported-elements/
2332
2407
  */
2333
- 'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<AstroJsxA11YAriaUnsupportedElements>;
2408
+ 'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<[]>;
2334
2409
  /**
2335
2410
  * apply `jsx-a11y/autocomplete-valid` rule to Astro components
2336
2411
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/autocomplete-valid/
@@ -2340,7 +2415,7 @@ export interface ESLintSchema {
2340
2415
  * apply `jsx-a11y/click-events-have-key-events` rule to Astro components
2341
2416
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/click-events-have-key-events/
2342
2417
  */
2343
- 'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<AstroJsxA11YClickEventsHaveKeyEvents>;
2418
+ 'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<[]>;
2344
2419
  /**
2345
2420
  * apply `jsx-a11y/control-has-associated-label` rule to Astro components
2346
2421
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/control-has-associated-label/
@@ -2355,12 +2430,12 @@ export interface ESLintSchema {
2355
2430
  * apply `jsx-a11y/html-has-lang` rule to Astro components
2356
2431
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/html-has-lang/
2357
2432
  */
2358
- 'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<AstroJsxA11YHtmlHasLang>;
2433
+ 'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<[]>;
2359
2434
  /**
2360
2435
  * apply `jsx-a11y/iframe-has-title` rule to Astro components
2361
2436
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/iframe-has-title/
2362
2437
  */
2363
- 'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<AstroJsxA11YIframeHasTitle>;
2438
+ 'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<[]>;
2364
2439
  /**
2365
2440
  * apply `jsx-a11y/img-redundant-alt` rule to Astro components
2366
2441
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/img-redundant-alt/
@@ -2380,7 +2455,7 @@ export interface ESLintSchema {
2380
2455
  * apply `jsx-a11y/lang` rule to Astro components
2381
2456
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/lang/
2382
2457
  */
2383
- 'astro/jsx-a11y/lang'?: Linter.RuleEntry<AstroJsxA11YLang>;
2458
+ 'astro/jsx-a11y/lang'?: Linter.RuleEntry<[]>;
2384
2459
  /**
2385
2460
  * apply `jsx-a11y/media-has-caption` rule to Astro components
2386
2461
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/media-has-caption/
@@ -2395,12 +2470,12 @@ export interface ESLintSchema {
2395
2470
  * apply `jsx-a11y/no-access-key` rule to Astro components
2396
2471
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-access-key/
2397
2472
  */
2398
- 'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<AstroJsxA11YNoAccessKey>;
2473
+ 'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<[]>;
2399
2474
  /**
2400
2475
  * apply `jsx-a11y/no-aria-hidden-on-focusable` rule to Astro components
2401
2476
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-aria-hidden-on-focusable/
2402
2477
  */
2403
- 'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<AstroJsxA11YNoAriaHiddenOnFocusable>;
2478
+ 'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<[]>;
2404
2479
  /**
2405
2480
  * apply `jsx-a11y/no-autofocus` rule to Astro components
2406
2481
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-autofocus/
@@ -2445,27 +2520,27 @@ export interface ESLintSchema {
2445
2520
  * apply `jsx-a11y/prefer-tag-over-role` rule to Astro components
2446
2521
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/prefer-tag-over-role/
2447
2522
  */
2448
- 'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<AstroJsxA11YPreferTagOverRole>;
2523
+ 'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<[]>;
2449
2524
  /**
2450
2525
  * apply `jsx-a11y/role-has-required-aria-props` rule to Astro components
2451
2526
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-has-required-aria-props/
2452
2527
  */
2453
- 'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<AstroJsxA11YRoleHasRequiredAriaProps>;
2528
+ 'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<[]>;
2454
2529
  /**
2455
2530
  * apply `jsx-a11y/role-supports-aria-props` rule to Astro components
2456
2531
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-supports-aria-props/
2457
2532
  */
2458
- 'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<AstroJsxA11YRoleSupportsAriaProps>;
2533
+ 'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<[]>;
2459
2534
  /**
2460
2535
  * apply `jsx-a11y/scope` rule to Astro components
2461
2536
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/scope/
2462
2537
  */
2463
- 'astro/jsx-a11y/scope'?: Linter.RuleEntry<AstroJsxA11YScope>;
2538
+ 'astro/jsx-a11y/scope'?: Linter.RuleEntry<[]>;
2464
2539
  /**
2465
2540
  * apply `jsx-a11y/tabindex-no-positive` rule to Astro components
2466
2541
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/tabindex-no-positive/
2467
2542
  */
2468
- 'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<AstroJsxA11YTabindexNoPositive>;
2543
+ 'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<[]>;
2469
2544
  /**
2470
2545
  * the client:only directive is missing the correct component's framework value
2471
2546
  * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/missing-client-only-directive-value/
@@ -3283,204 +3358,186 @@ export interface ESLintSchema {
3283
3358
  * @see https://eslint.org/docs/latest/rules/init-declarations
3284
3359
  */
3285
3360
  'init-declarations'?: Linter.RuleEntry<InitDeclarations>;
3286
- /**
3287
- * Enforce emojis are wrapped in `<span>` and provide screen reader access.
3288
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/accessible-emoji.md
3289
- * @deprecated
3290
- */
3291
- 'jsx-a11y/accessible-emoji'?: Linter.RuleEntry<JsxA11YAccessibleEmoji>;
3292
3361
  /**
3293
3362
  * Enforce all elements that require alternative text have meaningful information to relay back to end user.
3294
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/alt-text.md
3363
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/alt-text.md
3295
3364
  */
3296
- 'jsx-a11y/alt-text'?: Linter.RuleEntry<JsxA11YAltText>;
3365
+ 'jsx-a11y-x/alt-text'?: Linter.RuleEntry<JsxA11YXAltText>;
3297
3366
  /**
3298
3367
  * Enforce `<a>` text to not exactly match "click here", "here", "link", or "a link".
3299
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-ambiguous-text.md
3368
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/anchor-ambiguous-text.md
3300
3369
  */
3301
- 'jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<JsxA11YAnchorAmbiguousText>;
3370
+ 'jsx-a11y-x/anchor-ambiguous-text'?: Linter.RuleEntry<JsxA11YXAnchorAmbiguousText>;
3302
3371
  /**
3303
3372
  * Enforce all anchors to contain accessible content.
3304
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-has-content.md
3373
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/anchor-has-content.md
3305
3374
  */
3306
- 'jsx-a11y/anchor-has-content'?: Linter.RuleEntry<JsxA11YAnchorHasContent>;
3375
+ 'jsx-a11y-x/anchor-has-content'?: Linter.RuleEntry<JsxA11YXAnchorHasContent>;
3307
3376
  /**
3308
3377
  * Enforce all anchors are valid, navigable elements.
3309
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-is-valid.md
3378
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/anchor-is-valid.md
3310
3379
  */
3311
- 'jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<JsxA11YAnchorIsValid>;
3380
+ 'jsx-a11y-x/anchor-is-valid'?: Linter.RuleEntry<JsxA11YXAnchorIsValid>;
3312
3381
  /**
3313
3382
  * Enforce elements with aria-activedescendant are tabbable.
3314
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-activedescendant-has-tabindex.md
3383
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/aria-activedescendant-has-tabindex.md
3315
3384
  */
3316
- 'jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<JsxA11YAriaActivedescendantHasTabindex>;
3385
+ 'jsx-a11y-x/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<[]>;
3317
3386
  /**
3318
3387
  * Enforce all `aria-*` props are valid.
3319
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-props.md
3388
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/aria-props.md
3320
3389
  */
3321
- 'jsx-a11y/aria-props'?: Linter.RuleEntry<JsxA11YAriaProps>;
3390
+ 'jsx-a11y-x/aria-props'?: Linter.RuleEntry<[]>;
3322
3391
  /**
3323
3392
  * Enforce ARIA state and property values are valid.
3324
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-proptypes.md
3393
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/aria-proptypes.md
3325
3394
  */
3326
- 'jsx-a11y/aria-proptypes'?: Linter.RuleEntry<JsxA11YAriaProptypes>;
3395
+ 'jsx-a11y-x/aria-proptypes'?: Linter.RuleEntry<[]>;
3327
3396
  /**
3328
3397
  * Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
3329
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-role.md
3398
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/aria-role.md
3330
3399
  */
3331
- 'jsx-a11y/aria-role'?: Linter.RuleEntry<JsxA11YAriaRole>;
3400
+ 'jsx-a11y-x/aria-role'?: Linter.RuleEntry<JsxA11YXAriaRole>;
3332
3401
  /**
3333
3402
  * Enforce that elements that do not support ARIA roles, states, and properties do not have those attributes.
3334
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-unsupported-elements.md
3403
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/aria-unsupported-elements.md
3335
3404
  */
3336
- 'jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<JsxA11YAriaUnsupportedElements>;
3405
+ 'jsx-a11y-x/aria-unsupported-elements'?: Linter.RuleEntry<[]>;
3337
3406
  /**
3338
3407
  * Enforce that autocomplete attributes are used correctly.
3339
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/autocomplete-valid.md
3408
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/autocomplete-valid.md
3340
3409
  */
3341
- 'jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<JsxA11YAutocompleteValid>;
3410
+ 'jsx-a11y-x/autocomplete-valid'?: Linter.RuleEntry<JsxA11YXAutocompleteValid>;
3342
3411
  /**
3343
3412
  * Enforce a clickable non-interactive element has at least one keyboard event listener.
3344
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/click-events-have-key-events.md
3413
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/click-events-have-key-events.md
3345
3414
  */
3346
- 'jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<JsxA11YClickEventsHaveKeyEvents>;
3415
+ 'jsx-a11y-x/click-events-have-key-events'?: Linter.RuleEntry<[]>;
3347
3416
  /**
3348
3417
  * Enforce that a control (an interactive element) has a text label.
3349
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/control-has-associated-label.md
3418
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/control-has-associated-label.md
3350
3419
  */
3351
- 'jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<JsxA11YControlHasAssociatedLabel>;
3420
+ 'jsx-a11y-x/control-has-associated-label'?: Linter.RuleEntry<JsxA11YXControlHasAssociatedLabel>;
3352
3421
  /**
3353
3422
  * Enforce heading (`h1`, `h2`, etc) elements contain accessible content.
3354
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/heading-has-content.md
3423
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/heading-has-content.md
3355
3424
  */
3356
- 'jsx-a11y/heading-has-content'?: Linter.RuleEntry<JsxA11YHeadingHasContent>;
3425
+ 'jsx-a11y-x/heading-has-content'?: Linter.RuleEntry<JsxA11YXHeadingHasContent>;
3357
3426
  /**
3358
3427
  * Enforce `<html>` element has `lang` prop.
3359
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/html-has-lang.md
3428
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/html-has-lang.md
3360
3429
  */
3361
- 'jsx-a11y/html-has-lang'?: Linter.RuleEntry<JsxA11YHtmlHasLang>;
3430
+ 'jsx-a11y-x/html-has-lang'?: Linter.RuleEntry<[]>;
3362
3431
  /**
3363
3432
  * Enforce iframe elements have a title attribute.
3364
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/iframe-has-title.md
3433
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/iframe-has-title.md
3365
3434
  */
3366
- 'jsx-a11y/iframe-has-title'?: Linter.RuleEntry<JsxA11YIframeHasTitle>;
3435
+ 'jsx-a11y-x/iframe-has-title'?: Linter.RuleEntry<[]>;
3367
3436
  /**
3368
3437
  * Enforce `<img>` alt prop does not contain the word "image", "picture", or "photo".
3369
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/img-redundant-alt.md
3438
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/img-redundant-alt.md
3370
3439
  */
3371
- 'jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<JsxA11YImgRedundantAlt>;
3440
+ 'jsx-a11y-x/img-redundant-alt'?: Linter.RuleEntry<JsxA11YXImgRedundantAlt>;
3372
3441
  /**
3373
3442
  * Enforce that elements with interactive handlers like `onClick` must be focusable.
3374
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/interactive-supports-focus.md
3443
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/interactive-supports-focus.md
3375
3444
  */
3376
- 'jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<JsxA11YInteractiveSupportsFocus>;
3445
+ 'jsx-a11y-x/interactive-supports-focus'?: Linter.RuleEntry<JsxA11YXInteractiveSupportsFocus>;
3377
3446
  /**
3378
3447
  * Enforce that a `label` tag has a text label and an associated control.
3379
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/label-has-associated-control.md
3448
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/label-has-associated-control.md
3380
3449
  */
3381
- 'jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<JsxA11YLabelHasAssociatedControl>;
3382
- /**
3383
- * Enforce that `<label>` elements have the `htmlFor` prop.
3384
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/label-has-for.md
3385
- * @deprecated
3386
- */
3387
- 'jsx-a11y/label-has-for'?: Linter.RuleEntry<JsxA11YLabelHasFor>;
3450
+ 'jsx-a11y-x/label-has-associated-control'?: Linter.RuleEntry<JsxA11YXLabelHasAssociatedControl>;
3388
3451
  /**
3389
3452
  * Enforce lang attribute has a valid value.
3390
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/lang.md
3453
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/lang.md
3391
3454
  */
3392
- 'jsx-a11y/lang'?: Linter.RuleEntry<JsxA11YLang>;
3455
+ 'jsx-a11y-x/lang'?: Linter.RuleEntry<[]>;
3393
3456
  /**
3394
3457
  * Enforces that `<audio>` and `<video>` elements must have a `<track>` for captions.
3395
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/media-has-caption.md
3458
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/media-has-caption.md
3396
3459
  */
3397
- 'jsx-a11y/media-has-caption'?: Linter.RuleEntry<JsxA11YMediaHasCaption>;
3460
+ 'jsx-a11y-x/media-has-caption'?: Linter.RuleEntry<JsxA11YXMediaHasCaption>;
3398
3461
  /**
3399
3462
  * Enforce that `onMouseOver`/`onMouseOut` are accompanied by `onFocus`/`onBlur` for keyboard-only users.
3400
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/mouse-events-have-key-events.md
3463
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/mouse-events-have-key-events.md
3401
3464
  */
3402
- 'jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<JsxA11YMouseEventsHaveKeyEvents>;
3465
+ 'jsx-a11y-x/mouse-events-have-key-events'?: Linter.RuleEntry<JsxA11YXMouseEventsHaveKeyEvents>;
3403
3466
  /**
3404
3467
  * Enforce that the `accessKey` prop is not used on any element to avoid complications with keyboard commands used by a screen reader.
3405
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-access-key.md
3468
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-access-key.md
3406
3469
  */
3407
- 'jsx-a11y/no-access-key'?: Linter.RuleEntry<JsxA11YNoAccessKey>;
3470
+ 'jsx-a11y-x/no-access-key'?: Linter.RuleEntry<[]>;
3408
3471
  /**
3409
3472
  * Disallow `aria-hidden="true"` from being set on focusable elements.
3410
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-aria-hidden-on-focusable.md
3473
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-aria-hidden-on-focusable.md
3411
3474
  */
3412
- 'jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<JsxA11YNoAriaHiddenOnFocusable>;
3475
+ 'jsx-a11y-x/no-aria-hidden-on-focusable'?: Linter.RuleEntry<[]>;
3413
3476
  /**
3414
- * Enforce autoFocus prop is not used.
3415
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-autofocus.md
3477
+ * Enforce autoFocus prop is not enabled.
3478
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-autofocus.md
3416
3479
  */
3417
- 'jsx-a11y/no-autofocus'?: Linter.RuleEntry<JsxA11YNoAutofocus>;
3480
+ 'jsx-a11y-x/no-autofocus'?: Linter.RuleEntry<JsxA11YXNoAutofocus>;
3418
3481
  /**
3419
3482
  * Enforce distracting elements are not used.
3420
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-distracting-elements.md
3421
- */
3422
- 'jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<JsxA11YNoDistractingElements>;
3423
- /**
3424
- * Interactive elements should not be assigned non-interactive roles.
3425
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-interactive-element-to-noninteractive-role.md
3483
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-distracting-elements.md
3426
3484
  */
3427
- 'jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<JsxA11YNoInteractiveElementToNoninteractiveRole>;
3485
+ 'jsx-a11y-x/no-distracting-elements'?: Linter.RuleEntry<JsxA11YXNoDistractingElements>;
3428
3486
  /**
3429
- * Non-interactive elements should not be assigned mouse or keyboard event listeners.
3430
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-interactions.md
3487
+ * Disallow interactive elements being assigned non-interactive roles.
3488
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-interactive-element-to-noninteractive-role.md
3431
3489
  */
3432
- 'jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<JsxA11YNoNoninteractiveElementInteractions>;
3490
+ 'jsx-a11y-x/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<JsxA11YXNoInteractiveElementToNoninteractiveRole>;
3433
3491
  /**
3434
- * Non-interactive elements should not be assigned interactive roles.
3435
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-to-interactive-role.md
3492
+ * Disallow non-interactive elements being assigned mouse or keyboard event listeners.
3493
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-noninteractive-element-interactions.md
3436
3494
  */
3437
- 'jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<JsxA11YNoNoninteractiveElementToInteractiveRole>;
3495
+ 'jsx-a11y-x/no-noninteractive-element-interactions'?: Linter.RuleEntry<JsxA11YXNoNoninteractiveElementInteractions>;
3438
3496
  /**
3439
- * `tabIndex` should only be declared on interactive elements.
3440
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-tabindex.md
3497
+ * Disallow non-interactive elements being assigned interactive roles.
3498
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-noninteractive-element-to-interactive-role.md
3441
3499
  */
3442
- 'jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<JsxA11YNoNoninteractiveTabindex>;
3500
+ 'jsx-a11y-x/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<JsxA11YXNoNoninteractiveElementToInteractiveRole>;
3443
3501
  /**
3444
- * Enforce usage of `onBlur` over `onChange` on select menus for accessibility.
3445
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-onchange.md
3446
- * @deprecated
3502
+ * Enforce `tabIndex` only be declared on interactive elements.
3503
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-noninteractive-tabindex.md
3447
3504
  */
3448
- 'jsx-a11y/no-onchange'?: Linter.RuleEntry<JsxA11YNoOnchange>;
3505
+ 'jsx-a11y-x/no-noninteractive-tabindex'?: Linter.RuleEntry<JsxA11YXNoNoninteractiveTabindex>;
3449
3506
  /**
3450
3507
  * Enforce explicit role property is not the same as implicit/default role property on element.
3451
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-redundant-roles.md
3508
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-redundant-roles.md
3452
3509
  */
3453
- 'jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<JsxA11YNoRedundantRoles>;
3510
+ 'jsx-a11y-x/no-redundant-roles'?: Linter.RuleEntry<JsxA11YXNoRedundantRoles>;
3454
3511
  /**
3455
3512
  * Enforce that non-interactive, visible elements (such as `<div>`) that have click handlers use the role attribute.
3456
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-static-element-interactions.md
3513
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/no-static-element-interactions.md
3457
3514
  */
3458
- 'jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<JsxA11YNoStaticElementInteractions>;
3515
+ 'jsx-a11y-x/no-static-element-interactions'?: Linter.RuleEntry<JsxA11YXNoStaticElementInteractions>;
3459
3516
  /**
3460
3517
  * Enforces using semantic DOM elements over the ARIA `role` property.
3461
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/prefer-tag-over-role.md
3518
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/prefer-tag-over-role.md
3462
3519
  */
3463
- 'jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<JsxA11YPreferTagOverRole>;
3520
+ 'jsx-a11y-x/prefer-tag-over-role'?: Linter.RuleEntry<[]>;
3464
3521
  /**
3465
3522
  * Enforce that elements with ARIA roles must have all required attributes for that role.
3466
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-has-required-aria-props.md
3523
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/role-has-required-aria-props.md
3467
3524
  */
3468
- 'jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<JsxA11YRoleHasRequiredAriaProps>;
3525
+ 'jsx-a11y-x/role-has-required-aria-props'?: Linter.RuleEntry<[]>;
3469
3526
  /**
3470
3527
  * Enforce that elements with explicit or implicit roles defined contain only `aria-*` properties supported by that `role`.
3471
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-supports-aria-props.md
3528
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/role-supports-aria-props.md
3472
3529
  */
3473
- 'jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<JsxA11YRoleSupportsAriaProps>;
3530
+ 'jsx-a11y-x/role-supports-aria-props'?: Linter.RuleEntry<[]>;
3474
3531
  /**
3475
3532
  * Enforce `scope` prop is only used on `<th>` elements.
3476
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/scope.md
3533
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/scope.md
3477
3534
  */
3478
- 'jsx-a11y/scope'?: Linter.RuleEntry<JsxA11YScope>;
3535
+ 'jsx-a11y-x/scope'?: Linter.RuleEntry<[]>;
3479
3536
  /**
3480
3537
  * Enforce `tabIndex` value is not greater than zero.
3481
- * @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/tabindex-no-positive.md
3538
+ * @see https://github.com/es-tooling/eslint-plugin-jsx-a11y-x/tree/HEAD/docs/rules/tabindex-no-positive.md
3482
3539
  */
3483
- 'jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<JsxA11YTabindexNoPositive>;
3540
+ 'jsx-a11y-x/tabindex-no-positive'?: Linter.RuleEntry<[]>;
3484
3541
  /**
3485
3542
  * Enforce the consistent use of either double or single quotes in JSX attributes
3486
3543
  * @see https://eslint.org/docs/latest/rules/jsx-quotes
@@ -5138,6 +5195,11 @@ export interface ESLintSchema {
5138
5195
  * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-os
5139
5196
  */
5140
5197
  'package-json/require-os'?: Linter.RuleEntry<PackageJsonRequireOs>;
5198
+ /**
5199
+ * Ensures that if a package specifies `exports` (or `publishConfig.exports`), an explicit `package.json` export is included.
5200
+ * @see https://eslint-plugin-package-json.dev/rules/require-package-json-export
5201
+ */
5202
+ 'package-json/require-package-json-export'?: Linter.RuleEntry<[]>;
5141
5203
  /**
5142
5204
  * Requires the `packageManager` property to be present.
5143
5205
  * @see https://eslint-plugin-package-json.dev/rules/require-properties/require-packageManager
@@ -5198,6 +5260,11 @@ export interface ESLintSchema {
5198
5260
  * @see https://eslint-plugin-package-json.dev/rules/restrict-dependency-ranges
5199
5261
  */
5200
5262
  'package-json/restrict-dependency-ranges'?: Linter.RuleEntry<PackageJsonRestrictDependencyRanges>;
5263
+ /**
5264
+ * Restricts dependency dist-tags to an allowed list and selected dependency types.
5265
+ * @see https://eslint-plugin-package-json.dev/rules/restrict-dist-tags
5266
+ */
5267
+ 'package-json/restrict-dist-tags'?: Linter.RuleEntry<PackageJsonRestrictDistTags>;
5201
5268
  /**
5202
5269
  * Disallows unnecessary properties in private packages.
5203
5270
  * @see https://eslint-plugin-package-json.dev/rules/restrict-private-properties
@@ -5585,6 +5652,11 @@ export interface ESLintSchema {
5585
5652
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/missing-playwright-await.md
5586
5653
  */
5587
5654
  'playwright/missing-playwright-await'?: Linter.RuleEntry<PlaywrightMissingPlaywrightAwait>;
5655
+ /**
5656
+ * Disallow the `timeout` option on actions
5657
+ * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-action-timeout.md
5658
+ */
5659
+ 'playwright/no-action-timeout'?: Linter.RuleEntry<PlaywrightNoActionTimeout>;
5588
5660
  /**
5589
5661
  * Disallow commented out tests
5590
5662
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-commented-out-tests.md
@@ -5620,6 +5692,11 @@ export interface ESLintSchema {
5620
5692
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-eval.md
5621
5693
  */
5622
5694
  'playwright/no-eval'?: Linter.RuleEntry<[]>;
5695
+ /**
5696
+ * Disallow using `export` in files containing tests
5697
+ * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-export.md
5698
+ */
5699
+ 'playwright/no-export'?: Linter.RuleEntry<[]>;
5623
5700
  /**
5624
5701
  * Prevent usage of `.only()` focus test annotation
5625
5702
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-focused-test.md
@@ -5640,6 +5717,16 @@ export interface ESLintSchema {
5640
5717
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-hooks.md
5641
5718
  */
5642
5719
  'playwright/no-hooks'?: Linter.RuleEntry<PlaywrightNoHooks>;
5720
+ /**
5721
+ * Disallow identical titles
5722
+ * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-identical-title.md
5723
+ */
5724
+ 'playwright/no-identical-title'?: Linter.RuleEntry<[]>;
5725
+ /**
5726
+ * Disallow magic numbers as Playwright timeout values
5727
+ * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-magic-timeouts.md
5728
+ */
5729
+ 'playwright/no-magic-timeouts'?: Linter.RuleEntry<PlaywrightNoMagicTimeouts>;
5643
5730
  /**
5644
5731
  * Disallow nested `test.step()` methods
5645
5732
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-nested-step.md
@@ -5695,6 +5782,16 @@ export interface ESLintSchema {
5695
5782
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-standalone-expect.md
5696
5783
  */
5697
5784
  'playwright/no-standalone-expect'?: Linter.RuleEntry<[]>;
5785
+ /**
5786
+ * Disallow template literals in test, describe, and step titles
5787
+ * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-template-literal-title.md
5788
+ */
5789
+ 'playwright/no-template-literal-title'?: Linter.RuleEntry<PlaywrightNoTemplateLiteralTitle>;
5790
+ /**
5791
+ * Disallow explicitly returning from tests
5792
+ * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-test-return-statement.md
5793
+ */
5794
+ 'playwright/no-test-return-statement'?: Linter.RuleEntry<[]>;
5698
5795
  /**
5699
5796
  * Disallow assertions on a Locator that can never fail
5700
5797
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/no-unnecessary-assertions.md
@@ -5740,6 +5837,11 @@ export interface ESLintSchema {
5740
5837
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/prefer-comparison-matcher.md
5741
5838
  */
5742
5839
  'playwright/prefer-comparison-matcher'?: Linter.RuleEntry<[]>;
5840
+ /**
5841
+ * Prefer having the last statement in a test be an assertion
5842
+ * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/prefer-ending-with-an-expect.md
5843
+ */
5844
+ 'playwright/prefer-ending-with-an-expect'?: Linter.RuleEntry<PlaywrightPreferEndingWithAnExpect>;
5743
5845
  /**
5744
5846
  * Suggest using the built-in equality matchers
5745
5847
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/prefer-equality-matcher.md
@@ -5800,6 +5902,11 @@ export interface ESLintSchema {
5800
5902
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/prefer-web-first-assertions.md
5801
5903
  */
5802
5904
  'playwright/prefer-web-first-assertions'?: Linter.RuleEntry<[]>;
5905
+ /**
5906
+ * Require a reason for `.skip()` and `.fixme()` annotations
5907
+ * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/require-annotation-reason.md
5908
+ */
5909
+ 'playwright/require-annotation-reason'?: Linter.RuleEntry<PlaywrightRequireAnnotationReason>;
5803
5910
  /**
5804
5911
  * Require setup and teardown code to be within a hook
5805
5912
  * @see https://github.com/mskelton/eslint-plugin-playwright/tree/main/docs/rules/require-hook.md
@@ -6243,1740 +6350,1841 @@ export interface ESLintSchema {
6243
6350
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>;
6244
6351
  /**
6245
6352
  * Prefer better DOM traversal APIs.
6246
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/better-dom-traversing.md
6353
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/better-dom-traversing.md
6247
6354
  */
6248
6355
  'unicorn/better-dom-traversing'?: Linter.RuleEntry<[]>;
6249
6356
  /**
6250
6357
  * Removed. Prefer `eslint-plugin-regexp`
6251
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/deleted-and-deprecated-rules.md#better-regex
6358
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#better-regex
6252
6359
  * @deprecated
6253
6360
  */
6254
6361
  'unicorn/better-regex'?: Linter.RuleEntry<[]>;
6255
6362
  /**
6256
6363
  * Enforce a specific parameter name in catch clauses.
6257
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/catch-error-name.md
6364
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/catch-error-name.md
6258
6365
  */
6259
6366
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
6260
6367
  /**
6261
6368
  * Enforce consistent class references in static methods.
6262
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/class-reference-in-static-methods.md
6369
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/class-reference-in-static-methods.md
6263
6370
  */
6264
6371
  'unicorn/class-reference-in-static-methods'?: Linter.RuleEntry<UnicornClassReferenceInStaticMethods>;
6265
6372
  /**
6266
6373
  * Enforce better comment content.
6267
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/comment-content.md
6374
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/comment-content.md
6268
6375
  */
6269
6376
  'unicorn/comment-content'?: Linter.RuleEntry<UnicornCommentContent>;
6270
6377
  /**
6271
6378
  * Enforce a consistent return style for multiline arrow function bodies.
6272
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-arrow-return-style.md
6379
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-arrow-return-style.md
6273
6380
  */
6274
6381
  'unicorn/consistent-arrow-return-style'?: Linter.RuleEntry<[]>;
6275
6382
  /**
6276
6383
  * Enforce consistent assertion style with `node:assert`.
6277
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-assert.md
6384
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-assert.md
6278
6385
  */
6279
6386
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
6280
6387
  /**
6281
6388
  * Enforce consistent naming for boolean names.
6282
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-boolean-name.md
6389
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-boolean-name.md
6283
6390
  */
6284
6391
  'unicorn/consistent-boolean-name'?: Linter.RuleEntry<UnicornConsistentBooleanName>;
6285
6392
  /**
6286
6393
  * Enforce consistent class member order.
6287
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-class-member-order.md
6394
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-class-member-order.md
6288
6395
  */
6289
6396
  'unicorn/consistent-class-member-order'?: Linter.RuleEntry<UnicornConsistentClassMemberOrder>;
6290
6397
  /**
6291
6398
  * Enforce consistent spelling of compound words in identifiers.
6292
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-compound-words.md
6399
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-compound-words.md
6293
6400
  */
6294
6401
  'unicorn/consistent-compound-words'?: Linter.RuleEntry<UnicornConsistentCompoundWords>;
6295
6402
  /**
6296
6403
  * Enforce consistent conditional object spread style.
6297
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-conditional-object-spread.md
6404
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-conditional-object-spread.md
6298
6405
  */
6299
6406
  'unicorn/consistent-conditional-object-spread'?: Linter.RuleEntry<UnicornConsistentConditionalObjectSpread>;
6300
6407
  /**
6301
6408
  * Prefer passing `Date` directly to the constructor when cloning.
6302
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-date-clone.md
6409
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-date-clone.md
6303
6410
  */
6304
6411
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
6305
6412
  /**
6306
6413
  * Use destructured variables over properties.
6307
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-destructuring.md
6414
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-destructuring.md
6308
6415
  */
6309
6416
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
6310
6417
  /**
6311
6418
  * Prefer consistent types when spreading a ternary in an array literal.
6312
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-empty-array-spread.md
6419
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-empty-array-spread.md
6313
6420
  */
6314
6421
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
6315
6422
  /**
6316
6423
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
6317
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-existence-index-check.md
6424
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-existence-index-check.md
6318
6425
  */
6319
6426
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
6320
6427
  /**
6321
6428
  * Enforce consistent decorator position on exported classes.
6322
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-export-decorator-position.md
6429
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-export-decorator-position.md
6323
6430
  */
6324
6431
  'unicorn/consistent-export-decorator-position'?: Linter.RuleEntry<UnicornConsistentExportDecoratorPosition>;
6325
6432
  /**
6326
6433
  * Move function definitions to the highest possible scope.
6327
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-function-scoping.md
6434
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-function-scoping.md
6328
6435
  */
6329
6436
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
6330
6437
  /**
6331
6438
  * Enforce function syntax by role.
6332
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-function-style.md
6439
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-function-style.md
6333
6440
  */
6334
6441
  'unicorn/consistent-function-style'?: Linter.RuleEntry<UnicornConsistentFunctionStyle>;
6335
6442
  /**
6336
6443
  * Enforce consistent JSON file reads before `JSON.parse()`.
6337
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-json-file-read.md
6444
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-json-file-read.md
6338
6445
  */
6339
6446
  'unicorn/consistent-json-file-read'?: Linter.RuleEntry<UnicornConsistentJsonFileRead>;
6340
6447
  /**
6341
6448
  * Enforce consistent optional chaining for same-base member access.
6342
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-optional-chaining.md
6449
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-optional-chaining.md
6343
6450
  */
6344
6451
  'unicorn/consistent-optional-chaining'?: Linter.RuleEntry<[]>;
6345
6452
  /**
6346
6453
  * Enforce consistent style for escaping `${` in template literals.
6347
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-template-literal-escape.md
6454
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-template-literal-escape.md
6348
6455
  */
6349
6456
  'unicorn/consistent-template-literal-escape'?: Linter.RuleEntry<[]>;
6350
6457
  /**
6351
6458
  * Enforce consistent labels on tuple type elements.
6352
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/consistent-tuple-labels.md
6459
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/consistent-tuple-labels.md
6353
6460
  */
6354
6461
  'unicorn/consistent-tuple-labels'?: Linter.RuleEntry<[]>;
6355
6462
  /**
6356
6463
  * Enforce correct `Error` subclassing.
6357
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/custom-error-definition.md
6464
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/custom-error-definition.md
6358
6465
  */
6359
6466
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
6360
6467
  /**
6361
6468
  * Enforce consistent default export declarations.
6362
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/default-export-style.md
6469
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/default-export-style.md
6363
6470
  */
6364
6471
  'unicorn/default-export-style'?: Linter.RuleEntry<UnicornDefaultExportStyle>;
6365
6472
  /**
6366
6473
  * Enforce consistent style for DOM element dataset access.
6367
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/dom-node-dataset.md
6474
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/dom-node-dataset.md
6368
6475
  */
6369
6476
  'unicorn/dom-node-dataset'?: Linter.RuleEntry<UnicornDomNodeDataset>;
6370
6477
  /**
6371
6478
  * Enforce no spaces between braces.
6372
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/empty-brace-spaces.md
6479
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/empty-brace-spaces.md
6373
6480
  */
6374
6481
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
6375
6482
  /**
6376
6483
  * Enforce passing a `message` value when creating a built-in error.
6377
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/error-message.md
6484
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/error-message.md
6378
6485
  */
6379
6486
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
6380
6487
  /**
6381
6488
  * Require escape sequences to use uppercase or lowercase values.
6382
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/escape-case.md
6489
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/escape-case.md
6383
6490
  */
6384
6491
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
6385
6492
  /**
6386
6493
  * Add expiration conditions to TODO comments.
6387
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/expiring-todo-comments.md
6494
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/expiring-todo-comments.md
6388
6495
  */
6389
6496
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
6390
6497
  /**
6391
6498
  * Enforce explicitly comparing the `length` or `size` property of a value.
6392
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/explicit-length-check.md
6499
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/explicit-length-check.md
6393
6500
  */
6394
6501
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
6395
6502
  /**
6396
6503
  * Enforce or disallow explicit `delay` argument for `setTimeout()` and `setInterval()`.
6397
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/explicit-timer-delay.md
6504
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/explicit-timer-delay.md
6398
6505
  */
6399
6506
  'unicorn/explicit-timer-delay'?: Linter.RuleEntry<UnicornExplicitTimerDelay>;
6400
6507
  /**
6401
6508
  * Enforce a case style for filenames and directory names.
6402
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/filename-case.md
6509
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/filename-case.md
6403
6510
  */
6404
6511
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
6405
6512
  /**
6406
6513
  * Require identifiers to match a specified regular expression.
6407
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/id-match.md
6514
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/id-match.md
6408
6515
  */
6409
6516
  'unicorn/id-match'?: Linter.RuleEntry<UnicornIdMatch>;
6410
6517
  /**
6411
6518
  * Enforce specific import styles per module.
6412
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/import-style.md
6519
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/import-style.md
6413
6520
  */
6414
6521
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
6415
6522
  /**
6416
6523
  * Prevent usage of variables from outside the scope of isolated functions.
6417
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/isolated-functions.md
6524
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/isolated-functions.md
6418
6525
  */
6419
6526
  'unicorn/isolated-functions'?: Linter.RuleEntry<UnicornIsolatedFunctions>;
6420
6527
  /**
6421
6528
  * Enforce a consistent style for optional loop sources.
6422
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/iteration-fallback-style.md
6529
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/iteration-fallback-style.md
6423
6530
  */
6424
6531
  'unicorn/iteration-fallback-style'?: Linter.RuleEntry<UnicornIterationFallbackStyle>;
6425
6532
  /**
6426
6533
  * Require or disallow logical assignment operator shorthand
6427
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/logical-assignment-operators.md
6534
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/logical-assignment-operators.md
6428
6535
  */
6429
6536
  'unicorn/logical-assignment-operators'?: Linter.RuleEntry<UnicornLogicalAssignmentOperators>;
6430
6537
  /**
6431
6538
  * Limit the depth of nested calls.
6432
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/max-nested-calls.md
6539
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/max-nested-calls.md
6433
6540
  */
6434
6541
  'unicorn/max-nested-calls'?: Linter.RuleEntry<UnicornMaxNestedCalls>;
6435
6542
  /**
6436
6543
  * Enforce replacements for variable, property, and filenames.
6437
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/name-replacements.md
6544
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/name-replacements.md
6438
6545
  */
6439
6546
  'unicorn/name-replacements'?: Linter.RuleEntry<UnicornNameReplacements>;
6440
6547
  /**
6441
6548
  * Enforce correct use of `new` for builtin constructors.
6442
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/new-for-builtins.md
6549
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/new-for-builtins.md
6443
6550
  */
6444
6551
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
6445
6552
  /**
6446
6553
  * Enforce specifying rules to disable in `eslint-disable` comments.
6447
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-abusive-eslint-disable.md
6554
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-abusive-eslint-disable.md
6448
6555
  */
6449
6556
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
6450
6557
  /**
6451
6558
  * Disallow recursive access to `this` within getters and setters.
6452
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-accessor-recursion.md
6559
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-accessor-recursion.md
6453
6560
  */
6454
6561
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
6455
6562
  /**
6456
6563
  * Disallow bitwise operators where a logical operator was likely intended.
6457
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-accidental-bitwise-operator.md
6564
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-accidental-bitwise-operator.md
6458
6565
  */
6459
6566
  'unicorn/no-accidental-bitwise-operator'?: Linter.RuleEntry<[]>;
6460
6567
  /**
6461
6568
  * Disallow anonymous functions and classes as the default export.
6462
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-anonymous-default-export.md
6569
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-anonymous-default-export.md
6463
6570
  */
6464
6571
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
6465
6572
  /**
6466
6573
  * Prevent passing a function reference directly to iterator methods.
6467
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-callback-reference.md
6574
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-callback-reference.md
6468
6575
  */
6469
6576
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<UnicornNoArrayCallbackReference>;
6470
6577
  /**
6471
6578
  * Disallow array accumulation with `Array#concat()` in loops.
6472
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-concat-in-loop.md
6579
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-concat-in-loop.md
6473
6580
  */
6474
6581
  'unicorn/no-array-concat-in-loop'?: Linter.RuleEntry<[]>;
6475
6582
  /**
6476
6583
  * Disallow using reference values as `Array#fill()` values.
6477
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-fill-with-reference-type.md
6584
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-fill-with-reference-type.md
6478
6585
  */
6479
6586
  'unicorn/no-array-fill-with-reference-type'?: Linter.RuleEntry<[]>;
6480
6587
  /**
6481
6588
  * Disallow `.fill()` after `Array.from({length: …})`.
6482
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-from-fill.md
6589
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-from-fill.md
6483
6590
  */
6484
6591
  'unicorn/no-array-from-fill'?: Linter.RuleEntry<[]>;
6485
6592
  /**
6486
6593
  * Disallow front-of-array mutation.
6487
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-front-mutation.md
6594
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-front-mutation.md
6488
6595
  */
6489
6596
  'unicorn/no-array-front-mutation'?: Linter.RuleEntry<[]>;
6490
6597
  /**
6491
6598
  * Disallow using the `this` argument in array methods.
6492
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-method-this-argument.md
6599
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-method-this-argument.md
6493
6600
  */
6494
6601
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
6495
6602
  /**
6496
6603
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
6497
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/deleted-and-deprecated-rules.md#no-array-push-push
6604
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#no-array-push-push
6498
6605
  * @deprecated
6499
6606
  */
6500
6607
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
6501
6608
  /**
6502
6609
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
6503
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-reduce.md
6610
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-reduce.md
6504
6611
  */
6505
6612
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
6506
6613
  /**
6507
6614
  * Prefer `Array#toReversed()` over `Array#reverse()`.
6508
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-reverse.md
6615
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-reverse.md
6509
6616
  */
6510
6617
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
6511
6618
  /**
6512
6619
  * Prefer `Array#toSorted()` over `Array#sort()`.
6513
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-sort.md
6620
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-sort.md
6514
6621
  */
6515
6622
  'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
6516
6623
  /**
6517
6624
  * Disallow sorting arrays to get the minimum or maximum value.
6518
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-sort-for-min-max.md
6625
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-sort-for-min-max.md
6519
6626
  */
6520
6627
  'unicorn/no-array-sort-for-min-max'?: Linter.RuleEntry<[]>;
6521
6628
  /**
6522
6629
  * Prefer `Array#toSpliced()` over `Array#splice()`.
6523
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-array-splice.md
6630
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-array-splice.md
6524
6631
  */
6525
6632
  'unicorn/no-array-splice'?: Linter.RuleEntry<[]>;
6526
6633
  /**
6527
6634
  * Disallow asterisk prefixes in documentation comments.
6528
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-asterisk-prefix-in-documentation-comments.md
6635
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-asterisk-prefix-in-documentation-comments.md
6529
6636
  */
6530
6637
  'unicorn/no-asterisk-prefix-in-documentation-comments'?: Linter.RuleEntry<[]>;
6638
+ /**
6639
+ * Disallow asynchronous callbacks in synchronous iterator helpers.
6640
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-async-iterator-callback.md
6641
+ */
6642
+ 'unicorn/no-async-iterator-callback'?: Linter.RuleEntry<[]>;
6531
6643
  /**
6532
6644
  * Disallow async functions as `Promise#finally()` callbacks.
6533
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-async-promise-finally.md
6645
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-async-promise-finally.md
6534
6646
  */
6535
6647
  'unicorn/no-async-promise-finally'?: Linter.RuleEntry<[]>;
6536
6648
  /**
6537
6649
  * Disallow member access from await expression.
6538
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-await-expression-member.md
6650
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-await-expression-member.md
6539
6651
  */
6540
6652
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
6541
6653
  /**
6542
6654
  * Disallow using `await` in `Promise` method parameters.
6543
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-await-in-promise-methods.md
6655
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-await-in-promise-methods.md
6544
6656
  */
6545
6657
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
6546
6658
  /**
6547
6659
  * Disallow barrel files.
6548
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-barrel-files.md
6660
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-barrel-files.md
6549
6661
  */
6550
6662
  'unicorn/no-barrel-files'?: Linter.RuleEntry<[]>;
6551
6663
  /**
6552
6664
  * Disallow unnecessary `Blob` to `File` conversion.
6553
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-blob-to-file.md
6665
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-blob-to-file.md
6554
6666
  */
6555
6667
  'unicorn/no-blob-to-file'?: Linter.RuleEntry<[]>;
6556
6668
  /**
6557
6669
  * Disallow boolean-returning sort comparators.
6558
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-boolean-sort-comparator.md
6670
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-boolean-sort-comparator.md
6559
6671
  */
6560
6672
  'unicorn/no-boolean-sort-comparator'?: Linter.RuleEntry<[]>;
6561
6673
  /**
6562
- * Disallow `break` and `continue` in nested loops and switches inside loops.
6563
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-break-in-nested-loop.md
6674
+ * Disallow `break` and optionally `continue` in nested loops and switches inside loops.
6675
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-break-in-nested-loop.md
6564
6676
  */
6565
- 'unicorn/no-break-in-nested-loop'?: Linter.RuleEntry<[]>;
6677
+ 'unicorn/no-break-in-nested-loop'?: Linter.RuleEntry<UnicornNoBreakInNestedLoop>;
6566
6678
  /**
6567
6679
  * Prefer drawing canvases directly instead of converting them to images.
6568
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-canvas-to-image.md
6680
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-canvas-to-image.md
6569
6681
  */
6570
6682
  'unicorn/no-canvas-to-image'?: Linter.RuleEntry<[]>;
6571
6683
  /**
6572
6684
  * Disallow chained comparisons such as `a < b < c`.
6573
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-chained-comparison.md
6685
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-chained-comparison.md
6574
6686
  */
6575
6687
  'unicorn/no-chained-comparison'?: Linter.RuleEntry<[]>;
6576
6688
  /**
6577
6689
  * Disallow accessing `Map`, `Set`, `WeakMap`, and `WeakSet` entries with bracket notation.
6578
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-collection-bracket-access.md
6690
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-collection-bracket-access.md
6579
6691
  */
6580
6692
  'unicorn/no-collection-bracket-access'?: Linter.RuleEntry<[]>;
6581
6693
  /**
6582
6694
  * Disallow dynamic object property existence checks.
6583
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-computed-property-existence-check.md
6695
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-computed-property-existence-check.md
6584
6696
  */
6585
6697
  'unicorn/no-computed-property-existence-check'?: Linter.RuleEntry<[]>;
6586
6698
  /**
6587
6699
  * Disallow confusing uses of `Array#{splice,toSpliced}()`.
6588
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-confusing-array-splice.md
6700
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-confusing-array-splice.md
6589
6701
  */
6590
6702
  'unicorn/no-confusing-array-splice'?: Linter.RuleEntry<[]>;
6591
6703
  /**
6592
6704
  * Disallow confusing uses of `Array#with()`.
6593
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-confusing-array-with.md
6705
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-confusing-array-with.md
6594
6706
  */
6595
6707
  'unicorn/no-confusing-array-with'?: Linter.RuleEntry<[]>;
6596
6708
  /**
6597
6709
  * Do not use leading/trailing space between `console.log` parameters.
6598
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-console-spaces.md
6710
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-console-spaces.md
6599
6711
  */
6600
6712
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
6601
6713
  /**
6602
6714
  * Disallow arithmetic and bitwise operations that always evaluate to `0`.
6603
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-constant-zero-expression.md
6715
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-constant-zero-expression.md
6604
6716
  */
6605
6717
  'unicorn/no-constant-zero-expression'?: Linter.RuleEntry<[]>;
6606
6718
  /**
6607
6719
  * Disallow declarations before conditional early exits when they are only used after the exit.
6608
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-declarations-before-early-exit.md
6720
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-declarations-before-early-exit.md
6609
6721
  */
6610
6722
  'unicorn/no-declarations-before-early-exit'?: Linter.RuleEntry<[]>;
6723
+ /**
6724
+ * Disallow deprecated CSS features.
6725
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-deprecated-css-features.md
6726
+ */
6727
+ 'unicorn/no-deprecated-css-features'?: Linter.RuleEntry<UnicornNoDeprecatedCssFeatures>;
6611
6728
  /**
6612
6729
  * Do not use `document.cookie` directly.
6613
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-document-cookie.md
6730
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-document-cookie.md
6614
6731
  */
6615
6732
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
6616
6733
  /**
6617
6734
  * Disallow two comparisons of the same operands that can be combined into one.
6618
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-double-comparison.md
6735
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-double-comparison.md
6619
6736
  */
6620
6737
  'unicorn/no-double-comparison'?: Linter.RuleEntry<[]>;
6738
+ /**
6739
+ * Disallow duplicate CSS selectors.
6740
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-duplicate-css-selectors.md
6741
+ */
6742
+ 'unicorn/no-duplicate-css-selectors'?: Linter.RuleEntry<[]>;
6743
+ /**
6744
+ * Disallow duplicate font family names.
6745
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-duplicate-font-family-names.md
6746
+ */
6747
+ 'unicorn/no-duplicate-font-family-names'?: Linter.RuleEntry<[]>;
6621
6748
  /**
6622
6749
  * Disallow duplicate adjacent branches in if chains.
6623
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-duplicate-if-branches.md
6750
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-duplicate-if-branches.md
6624
6751
  */
6625
6752
  'unicorn/no-duplicate-if-branches'?: Linter.RuleEntry<[]>;
6626
6753
  /**
6627
6754
  * Disallow adjacent duplicate operands in logical expressions.
6628
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-duplicate-logical-operands.md
6755
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-duplicate-logical-operands.md
6629
6756
  */
6630
6757
  'unicorn/no-duplicate-logical-operands'?: Linter.RuleEntry<[]>;
6631
6758
  /**
6632
6759
  * Disallow `.map()` and `.filter()` in `for…of` and `for await…of` loop headers.
6633
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-duplicate-loops.md
6760
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-duplicate-loops.md
6634
6761
  */
6635
6762
  'unicorn/no-duplicate-loops'?: Linter.RuleEntry<[]>;
6636
6763
  /**
6637
6764
  * Disallow duplicate values in `Set` constructor array literals.
6638
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-duplicate-set-values.md
6765
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-duplicate-set-values.md
6639
6766
  */
6640
6767
  'unicorn/no-duplicate-set-values'?: Linter.RuleEntry<[]>;
6641
6768
  /**
6642
6769
  * Disallow empty files.
6643
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-empty-file.md
6770
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-empty-file.md
6644
6771
  */
6645
6772
  'unicorn/no-empty-file'?: Linter.RuleEntry<UnicornNoEmptyFile>;
6646
6773
  /**
6647
6774
  * Disallow assigning to built-in error properties.
6648
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-error-property-assignment.md
6775
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-error-property-assignment.md
6649
6776
  */
6650
6777
  'unicorn/no-error-property-assignment'?: Linter.RuleEntry<[]>;
6651
6778
  /**
6652
6779
  * Disallow exports in scripts.
6653
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-exports-in-scripts.md
6780
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-exports-in-scripts.md
6654
6781
  */
6655
6782
  'unicorn/no-exports-in-scripts'?: Linter.RuleEntry<[]>;
6656
6783
  /**
6657
6784
  * Prefer `for…of` over the `forEach` method.
6658
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-for-each.md
6785
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-for-each.md
6659
6786
  */
6660
6787
  'unicorn/no-for-each'?: Linter.RuleEntry<[]>;
6661
6788
  /**
6662
6789
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
6663
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-for-loop.md
6790
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-for-loop.md
6664
6791
  */
6665
6792
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
6666
6793
  /**
6667
6794
  * Disallow assigning properties on the global object.
6668
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-global-object-property-assignment.md
6795
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-global-object-property-assignment.md
6669
6796
  */
6670
6797
  'unicorn/no-global-object-property-assignment'?: Linter.RuleEntry<[]>;
6671
6798
  /**
6672
6799
  * Replaced by `unicorn/prefer-unicode-code-point-escapes` which covers more cases.
6673
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/deleted-and-deprecated-rules.md#no-hex-escape
6800
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#no-hex-escape
6674
6801
  * @deprecated
6675
6802
  */
6676
6803
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
6677
6804
  /**
6678
6805
  * Disallow immediate mutation after variable assignment.
6679
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-immediate-mutation.md
6806
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-immediate-mutation.md
6680
6807
  */
6681
- 'unicorn/no-immediate-mutation'?: Linter.RuleEntry<[]>;
6808
+ 'unicorn/no-immediate-mutation'?: Linter.RuleEntry<UnicornNoImmediateMutation>;
6682
6809
  /**
6683
6810
  * Disallow impossible comparisons against `.length` or `.size`.
6684
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-impossible-length-comparison.md
6811
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-impossible-length-comparison.md
6685
6812
  */
6686
6813
  'unicorn/no-impossible-length-comparison'?: Linter.RuleEntry<[]>;
6687
6814
  /**
6688
6815
  * Disallow incorrect `querySelector()` and `querySelectorAll()` usage.
6689
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-incorrect-query-selector.md
6816
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-incorrect-query-selector.md
6690
6817
  */
6691
6818
  'unicorn/no-incorrect-query-selector'?: Linter.RuleEntry<[]>;
6692
6819
  /**
6693
6820
  * Disallow incorrect template literal interpolation syntax.
6694
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-incorrect-template-string-interpolation.md
6821
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-incorrect-template-string-interpolation.md
6695
6822
  */
6696
6823
  'unicorn/no-incorrect-template-string-interpolation'?: Linter.RuleEntry<[]>;
6697
6824
  /**
6698
6825
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
6699
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/deleted-and-deprecated-rules.md#no-instanceof-array
6826
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#no-instanceof-array
6700
6827
  * @deprecated
6701
6828
  */
6702
6829
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
6703
6830
  /**
6704
6831
  * Disallow `instanceof` with built-in objects
6705
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-instanceof-builtins.md
6832
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-instanceof-builtins.md
6706
6833
  */
6707
6834
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
6708
6835
  /**
6709
6836
  * Disallow calling functions and constructors with an invalid number of arguments.
6710
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-invalid-argument-count.md
6837
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-invalid-argument-count.md
6711
6838
  */
6712
6839
  'unicorn/no-invalid-argument-count'?: Linter.RuleEntry<UnicornNoInvalidArgumentCount>;
6713
6840
  /**
6714
6841
  * Disallow comparing a single character from a string to a multi-character string.
6715
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-invalid-character-comparison.md
6842
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-invalid-character-comparison.md
6716
6843
  */
6717
6844
  'unicorn/no-invalid-character-comparison'?: Linter.RuleEntry<[]>;
6718
6845
  /**
6719
6846
  * Disallow invalid options in `fetch()` and `new Request()`.
6720
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-invalid-fetch-options.md
6847
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-invalid-fetch-options.md
6721
6848
  */
6722
6849
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
6723
6850
  /**
6724
6851
  * Disallow invalid `accept` values on file inputs.
6725
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-invalid-file-input-accept.md
6852
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-invalid-file-input-accept.md
6726
6853
  */
6727
6854
  'unicorn/no-invalid-file-input-accept'?: Linter.RuleEntry<[]>;
6855
+ /**
6856
+ * Disallow unknown media features and invalid values for known media features.
6857
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-invalid-media-features.md
6858
+ */
6859
+ 'unicorn/no-invalid-media-features'?: Linter.RuleEntry<[]>;
6728
6860
  /**
6729
6861
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
6730
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-invalid-remove-event-listener.md
6862
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-invalid-remove-event-listener.md
6731
6863
  */
6732
6864
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
6733
6865
  /**
6734
6866
  * Disallow invalid implementations of well-known symbol methods.
6735
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-invalid-well-known-symbol-methods.md
6867
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-invalid-well-known-symbol-methods.md
6736
6868
  */
6737
6869
  'unicorn/no-invalid-well-known-symbol-methods'?: Linter.RuleEntry<[]>;
6738
6870
  /**
6739
6871
  * Disallow identifiers starting with `new` or `class`.
6740
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-keyword-prefix.md
6872
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-keyword-prefix.md
6741
6873
  */
6742
6874
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
6743
6875
  /**
6744
6876
  * Disallow accessing `event.currentTarget` after the synchronous event dispatch has finished.
6745
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-late-current-target-access.md
6877
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-late-current-target-access.md
6746
6878
  */
6747
6879
  'unicorn/no-late-current-target-access'?: Linter.RuleEntry<[]>;
6748
6880
  /**
6749
6881
  * Disallow event-control method calls after the synchronous event dispatch has finished.
6750
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-late-event-control.md
6882
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-late-event-control.md
6751
6883
  */
6752
6884
  'unicorn/no-late-event-control'?: Linter.RuleEntry<[]>;
6753
6885
  /**
6754
6886
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
6755
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/deleted-and-deprecated-rules.md#no-length-as-slice-end
6887
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#no-length-as-slice-end
6756
6888
  * @deprecated
6757
6889
  */
6758
6890
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
6759
6891
  /**
6760
6892
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
6761
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-lonely-if.md
6893
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-lonely-if.md
6762
6894
  */
6763
6895
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
6764
6896
  /**
6765
6897
  * Disallow mutating a loop iterable during iteration.
6766
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-loop-iterable-mutation.md
6898
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-loop-iterable-mutation.md
6767
6899
  */
6768
6900
  'unicorn/no-loop-iterable-mutation'?: Linter.RuleEntry<[]>;
6769
6901
  /**
6770
6902
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
6771
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-magic-array-flat-depth.md
6903
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-magic-array-flat-depth.md
6772
6904
  */
6773
6905
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
6774
6906
  /**
6775
6907
  * Disallow manually wrapped comments.
6776
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-manually-wrapped-comments.md
6908
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-manually-wrapped-comments.md
6777
6909
  */
6778
6910
  'unicorn/no-manually-wrapped-comments'?: Linter.RuleEntry<[]>;
6779
6911
  /**
6780
6912
  * Disallow checking a Map key before accessing a different key.
6781
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-mismatched-map-key.md
6913
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-mismatched-map-key.md
6782
6914
  */
6783
6915
  'unicorn/no-mismatched-map-key'?: Linter.RuleEntry<[]>;
6784
6916
  /**
6785
6917
  * Disallow misrefactored compound assignments where the target is duplicated in the right-hand side.
6786
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-misrefactored-assignment.md
6918
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-misrefactored-assignment.md
6787
6919
  */
6788
6920
  'unicorn/no-misrefactored-assignment'?: Linter.RuleEntry<[]>;
6789
6921
  /**
6790
6922
  * Disallow references to missing local resources.
6791
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-missing-local-resource.md
6923
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-missing-local-resource.md
6792
6924
  */
6793
6925
  'unicorn/no-missing-local-resource'?: Linter.RuleEntry<[]>;
6794
6926
  /**
6795
6927
  * Disallow calling Promise executor resolver functions more than once on the same execution path.
6796
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-multiple-promise-resolver-calls.md
6928
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-multiple-promise-resolver-calls.md
6797
6929
  */
6798
6930
  'unicorn/no-multiple-promise-resolver-calls'?: Linter.RuleEntry<[]>;
6799
6931
  /**
6800
6932
  * Disallow named usage of default import and export.
6801
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-named-default.md
6933
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-named-default.md
6802
6934
  */
6803
6935
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
6804
6936
  /**
6805
6937
  * Disallow negated array predicate calls.
6806
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-negated-array-predicate.md
6938
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-negated-array-predicate.md
6807
6939
  */
6808
6940
  'unicorn/no-negated-array-predicate'?: Linter.RuleEntry<[]>;
6809
6941
  /**
6810
6942
  * Disallow negated comparisons.
6811
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-negated-comparison.md
6943
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-negated-comparison.md
6812
6944
  */
6813
6945
  'unicorn/no-negated-comparison'?: Linter.RuleEntry<UnicornNoNegatedComparison>;
6814
6946
  /**
6815
6947
  * Disallow negated conditions.
6816
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-negated-condition.md
6948
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-negated-condition.md
6817
6949
  */
6818
6950
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
6819
6951
  /**
6820
6952
  * Disallow negated expression in equality check.
6821
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-negation-in-equality-check.md
6953
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-negation-in-equality-check.md
6822
6954
  */
6823
6955
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
6824
6956
  /**
6825
6957
  * Disallow nested ternary expressions.
6826
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-nested-ternary.md
6958
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-nested-ternary.md
6827
6959
  */
6828
6960
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
6961
+ /**
6962
+ * Disallow nesting under selector lists with mixed specificity.
6963
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-nesting-with-mixed-specificity.md
6964
+ */
6965
+ 'unicorn/no-nesting-with-mixed-specificity'?: Linter.RuleEntry<[]>;
6829
6966
  /**
6830
6967
  * Disallow `new Array()`.
6831
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-new-array.md
6968
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-new-array.md
6832
6969
  */
6833
6970
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
6834
6971
  /**
6835
6972
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
6836
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-new-buffer.md
6973
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-new-buffer.md
6837
6974
  */
6838
6975
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
6839
6976
  /**
6840
6977
  * Disallow non-function values with function-style verb prefixes.
6841
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-non-function-verb-prefix.md
6978
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-non-function-verb-prefix.md
6842
6979
  */
6843
6980
  'unicorn/no-non-function-verb-prefix'?: Linter.RuleEntry<UnicornNoNonFunctionVerbPrefix>;
6844
6981
  /**
6845
6982
  * Disallow non-standard properties on built-in objects.
6846
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-nonstandard-builtin-properties.md
6983
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-nonstandard-builtin-properties.md
6847
6984
  */
6848
6985
  'unicorn/no-nonstandard-builtin-properties'?: Linter.RuleEntry<[]>;
6849
6986
  /**
6850
6987
  * Disallow the use of the `null` literal.
6851
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-null.md
6988
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-null.md
6852
6989
  */
6853
6990
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
6854
6991
  /**
6855
6992
  * Disallow the use of objects as default parameters.
6856
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-object-as-default-parameter.md
6993
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-object-as-default-parameter.md
6857
6994
  */
6858
6995
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
6859
6996
  /**
6860
6997
  * Disallow `Object` methods with `Map` or `Set`.
6861
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-object-methods-with-collections.md
6998
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-object-methods-with-collections.md
6862
6999
  */
6863
7000
  'unicorn/no-object-methods-with-collections'?: Linter.RuleEntry<[]>;
6864
7001
  /**
6865
7002
  * Disallow optional chaining on undeclared variables.
6866
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-optional-chaining-on-undeclared-variable.md
7003
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-optional-chaining-on-undeclared-variable.md
6867
7004
  */
6868
7005
  'unicorn/no-optional-chaining-on-undeclared-variable'?: Linter.RuleEntry<[]>;
6869
7006
  /**
6870
7007
  * Disallow `process.exit()`.
6871
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-process-exit.md
7008
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-process-exit.md
6872
7009
  */
6873
7010
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
6874
7011
  /**
6875
7012
  * Disallow comparisons made redundant by an equality check in the same logical AND.
6876
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-redundant-comparison.md
7013
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-redundant-comparison.md
6877
7014
  */
6878
7015
  'unicorn/no-redundant-comparison'?: Linter.RuleEntry<[]>;
7016
+ /**
7017
+ * Disallow nested style rules that do not modify the parent selector.
7018
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-redundant-nested-style-rules.md
7019
+ */
7020
+ 'unicorn/no-redundant-nested-style-rules'?: Linter.RuleEntry<[]>;
6879
7021
  /**
6880
7022
  * Disallow using the return value of `Array#push()` and `Array#unshift()`.
6881
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-return-array-push.md
7023
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-return-array-push.md
6882
7024
  */
6883
7025
  'unicorn/no-return-array-push'?: Linter.RuleEntry<[]>;
6884
7026
  /**
6885
7027
  * Disallow selector syntax in DOM names.
6886
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-selector-as-dom-name.md
7028
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-selector-as-dom-name.md
6887
7029
  */
6888
7030
  'unicorn/no-selector-as-dom-name'?: Linter.RuleEntry<[]>;
6889
7031
  /**
6890
7032
  * Disallow shorthand properties that override related longhand properties.
6891
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-shorthand-property-overrides.md
7033
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-shorthand-property-overrides.md
6892
7034
  */
6893
7035
  'unicorn/no-shorthand-property-overrides'?: Linter.RuleEntry<[]>;
6894
7036
  /**
6895
7037
  * Disallow passing single-element arrays to `Promise` methods.
6896
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-single-promise-in-promise-methods.md
7038
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-single-promise-in-promise-methods.md
6897
7039
  */
6898
7040
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
6899
7041
  /**
6900
7042
  * Disallow classes that only have static members.
6901
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-static-only-class.md
7043
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-static-only-class.md
6902
7044
  */
6903
7045
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
6904
7046
  /**
6905
7047
  * Prefer comparing values directly over subtracting and comparing to `0`.
6906
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-subtraction-comparison.md
7048
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-subtraction-comparison.md
6907
7049
  */
6908
7050
  'unicorn/no-subtraction-comparison'?: Linter.RuleEntry<[]>;
6909
7051
  /**
6910
7052
  * Disallow `then` property.
6911
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-thenable.md
7053
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-thenable.md
6912
7054
  */
6913
7055
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
6914
7056
  /**
6915
7057
  * Disallow assigning `this` to a variable.
6916
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-this-assignment.md
7058
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-this-assignment.md
6917
7059
  */
6918
7060
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
6919
7061
  /**
6920
7062
  * Disallow `this` outside of classes.
6921
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-this-outside-of-class.md
7063
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-this-outside-of-class.md
6922
7064
  */
6923
7065
  'unicorn/no-this-outside-of-class'?: Linter.RuleEntry<[]>;
6924
7066
  /**
6925
7067
  * Disallow assigning to top-level variables from inside functions.
6926
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-top-level-assignment-in-function.md
7068
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-top-level-assignment-in-function.md
6927
7069
  */
6928
7070
  'unicorn/no-top-level-assignment-in-function'?: Linter.RuleEntry<[]>;
6929
7071
  /**
6930
7072
  * Disallow top-level side effects in exported modules.
6931
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-top-level-side-effects.md
7073
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-top-level-side-effects.md
6932
7074
  */
6933
7075
  'unicorn/no-top-level-side-effects'?: Linter.RuleEntry<[]>;
6934
7076
  /**
6935
7077
  * Disallow `all` as a transition property.
6936
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-transition-all.md
7078
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-transition-all.md
6937
7079
  */
6938
7080
  'unicorn/no-transition-all'?: Linter.RuleEntry<[]>;
6939
7081
  /**
6940
7082
  * Disallow comparing `undefined` using `typeof`.
6941
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-typeof-undefined.md
7083
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-typeof-undefined.md
6942
7084
  */
6943
7085
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
6944
7086
  /**
6945
7087
  * Disallow referencing methods without calling them.
6946
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-uncalled-method.md
7088
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-uncalled-method.md
6947
7089
  */
6948
7090
  'unicorn/no-uncalled-method'?: Linter.RuleEntry<[]>;
6949
7091
  /**
6950
7092
  * Require class members to be declared.
6951
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-undeclared-class-members.md
7093
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-undeclared-class-members.md
6952
7094
  */
6953
7095
  'unicorn/no-undeclared-class-members'?: Linter.RuleEntry<[]>;
7096
+ /**
7097
+ * Disallow unknown and noncanonical CSS annotations.
7098
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unknown-css-annotations.md
7099
+ */
7100
+ 'unicorn/no-unknown-css-annotations'?: Linter.RuleEntry<[]>;
7101
+ /**
7102
+ * Disallow unknown pseudo-class and pseudo-element selectors.
7103
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unknown-pseudo-selectors.md
7104
+ */
7105
+ 'unicorn/no-unknown-pseudo-selectors'?: Linter.RuleEntry<UnicornNoUnknownPseudoSelectors>;
6954
7106
  /**
6955
7107
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
6956
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-array-flat-depth.md
7108
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-array-flat-depth.md
6957
7109
  */
6958
7110
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
6959
7111
  /**
6960
7112
  * Disallow `Array#flatMap()` callbacks that only wrap a single item.
6961
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-array-flat-map.md
7113
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-array-flat-map.md
6962
7114
  */
6963
7115
  'unicorn/no-unnecessary-array-flat-map'?: Linter.RuleEntry<[]>;
6964
7116
  /**
6965
7117
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
6966
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-array-splice-count.md
7118
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-array-splice-count.md
6967
7119
  */
6968
7120
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
6969
7121
  /**
6970
7122
  * Disallow awaiting non-promise values.
6971
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-await.md
7123
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-await.md
6972
7124
  */
6973
7125
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
6974
7126
  /**
6975
7127
  * Disallow unnecessary comparisons against boolean literals.
6976
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-boolean-comparison.md
7128
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-boolean-comparison.md
6977
7129
  */
6978
7130
  'unicorn/no-unnecessary-boolean-comparison'?: Linter.RuleEntry<[]>;
6979
7131
  /**
6980
7132
  * Disallow unnecessary options in `fetch()` and `new Request()`.
6981
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-fetch-options.md
7133
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-fetch-options.md
6982
7134
  */
6983
7135
  'unicorn/no-unnecessary-fetch-options'?: Linter.RuleEntry<[]>;
6984
7136
  /**
6985
7137
  * Disallow unnecessary `globalThis` references.
6986
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-global-this.md
7138
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-global-this.md
6987
7139
  */
6988
7140
  'unicorn/no-unnecessary-global-this'?: Linter.RuleEntry<[]>;
6989
7141
  /**
6990
7142
  * Disallow unnecessary nested ternary expressions.
6991
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-nested-ternary.md
7143
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-nested-ternary.md
6992
7144
  */
6993
7145
  'unicorn/no-unnecessary-nested-ternary'?: Linter.RuleEntry<[]>;
6994
7146
  /**
6995
7147
  * Enforce the use of built-in methods instead of unnecessary polyfills.
6996
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-polyfills.md
7148
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-polyfills.md
6997
7149
  */
6998
7150
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
6999
7151
  /**
7000
7152
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
7001
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-slice-end.md
7153
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-slice-end.md
7002
7154
  */
7003
7155
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
7004
7156
  /**
7005
7157
  * Disallow `Array#splice()` when simpler alternatives exist.
7006
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-splice.md
7158
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-splice.md
7007
7159
  */
7008
7160
  'unicorn/no-unnecessary-splice'?: Linter.RuleEntry<[]>;
7009
7161
  /**
7010
7162
  * Disallow `String#trim()` before `String#startsWith()` or `String#endsWith()`.
7011
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unnecessary-string-trim.md
7163
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unnecessary-string-trim.md
7012
7164
  */
7013
7165
  'unicorn/no-unnecessary-string-trim'?: Linter.RuleEntry<[]>;
7014
7166
  /**
7015
7167
  * Disallow unreadable array destructuring.
7016
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unreadable-array-destructuring.md
7168
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unreadable-array-destructuring.md
7017
7169
  */
7018
7170
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<UnicornNoUnreadableArrayDestructuring>;
7019
7171
  /**
7020
7172
  * Disallow unreadable iterable expressions in `for…of` and `for await…of` loop headers.
7021
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unreadable-for-of-expression.md
7173
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unreadable-for-of-expression.md
7022
7174
  */
7023
7175
  'unicorn/no-unreadable-for-of-expression'?: Linter.RuleEntry<[]>;
7024
7176
  /**
7025
7177
  * Disallow unreadable IIFEs.
7026
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unreadable-iife.md
7178
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unreadable-iife.md
7027
7179
  */
7028
7180
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
7029
7181
  /**
7030
7182
  * Disallow unreadable `new` expressions.
7031
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unreadable-new-expression.md
7183
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unreadable-new-expression.md
7032
7184
  */
7033
7185
  'unicorn/no-unreadable-new-expression'?: Linter.RuleEntry<[]>;
7034
7186
  /**
7035
7187
  * Disallow unreadable object destructuring.
7036
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unreadable-object-destructuring.md
7188
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unreadable-object-destructuring.md
7037
7189
  */
7038
7190
  'unicorn/no-unreadable-object-destructuring'?: Linter.RuleEntry<[]>;
7039
7191
  /**
7040
7192
  * Prevent unsafe use of ArrayBuffer view `.buffer`.
7041
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unsafe-buffer-conversion.md
7193
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unsafe-buffer-conversion.md
7042
7194
  */
7043
7195
  'unicorn/no-unsafe-buffer-conversion'?: Linter.RuleEntry<[]>;
7044
7196
  /**
7045
7197
  * Disallow unsafe DOM HTML APIs.
7046
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unsafe-dom-html.md
7198
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unsafe-dom-html.md
7047
7199
  */
7048
7200
  'unicorn/no-unsafe-dom-html'?: Linter.RuleEntry<[]>;
7049
7201
  /**
7050
7202
  * Disallow reading `.value` from `Promise.allSettled()` results without a fulfilled status guard.
7051
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unsafe-promise-all-settled-values.md
7203
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unsafe-promise-all-settled-values.md
7052
7204
  */
7053
7205
  'unicorn/no-unsafe-promise-all-settled-values'?: Linter.RuleEntry<[]>;
7054
7206
  /**
7055
7207
  * Disallow unsafe values as property keys.
7056
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unsafe-property-key.md
7208
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unsafe-property-key.md
7057
7209
  */
7058
7210
  'unicorn/no-unsafe-property-key'?: Linter.RuleEntry<[]>;
7059
7211
  /**
7060
7212
  * Disallow interpolation into SQL strings passed to Node’s `node:sqlite` APIs.
7061
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unsafe-sqlite-interpolation.md
7213
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unsafe-sqlite-interpolation.md
7062
7214
  */
7063
7215
  'unicorn/no-unsafe-sqlite-interpolation'?: Linter.RuleEntry<[]>;
7064
7216
  /**
7065
7217
  * Disallow non-literal replacement values in `String#replace()` and `String#replaceAll()`.
7066
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unsafe-string-replacement.md
7218
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unsafe-string-replacement.md
7067
7219
  */
7068
7220
  'unicorn/no-unsafe-string-replacement'?: Linter.RuleEntry<[]>;
7069
7221
  /**
7070
- * Disallow ignoring the return value of selected array methods.
7071
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unused-array-method-return.md
7222
+ * Disallow unscoped CSS nesting selectors.
7223
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unscoped-css-nesting-selector.md
7224
+ */
7225
+ 'unicorn/no-unscoped-css-nesting-selector'?: Linter.RuleEntry<UnicornNoUnscopedCssNestingSelector>;
7226
+ /**
7227
+ * Replaced by `unicorn/no-unused-builtin-method-return` which covers more cases.
7228
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#no-unused-array-method-return
7229
+ * @deprecated
7072
7230
  */
7073
7231
  'unicorn/no-unused-array-method-return'?: Linter.RuleEntry<[]>;
7232
+ /**
7233
+ * Disallow ignoring the return value of selected built-in methods.
7234
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unused-builtin-method-return.md
7235
+ */
7236
+ 'unicorn/no-unused-builtin-method-return'?: Linter.RuleEntry<[]>;
7237
+ /**
7238
+ * Disallow discarding lazy iterator helpers.
7239
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unused-iterator-helper.md
7240
+ */
7241
+ 'unicorn/no-unused-iterator-helper'?: Linter.RuleEntry<[]>;
7074
7242
  /**
7075
7243
  * Disallow unused object properties.
7076
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-unused-properties.md
7244
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-unused-properties.md
7077
7245
  */
7078
7246
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
7079
7247
  /**
7080
7248
  * Disallow unnecessary `Boolean()` casts in array predicate callbacks.
7081
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-boolean-cast.md
7249
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-boolean-cast.md
7082
7250
  */
7083
7251
  'unicorn/no-useless-boolean-cast'?: Linter.RuleEntry<[]>;
7084
7252
  /**
7085
7253
  * Disallow useless type coercions of values that are already of the target type.
7086
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-coercion.md
7254
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-coercion.md
7087
7255
  */
7088
7256
  'unicorn/no-useless-coercion'?: Linter.RuleEntry<[]>;
7089
7257
  /**
7090
7258
  * Disallow useless values or fallbacks in `Set`, `Map`, `WeakSet`, or `WeakMap`.
7091
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-collection-argument.md
7259
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-collection-argument.md
7092
7260
  */
7093
7261
  'unicorn/no-useless-collection-argument'?: Linter.RuleEntry<[]>;
7094
7262
  /**
7095
7263
  * Disallow useless compound assignments such as `x += 0`.
7096
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-compound-assignment.md
7264
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-compound-assignment.md
7097
7265
  */
7098
7266
  'unicorn/no-useless-compound-assignment'?: Linter.RuleEntry<[]>;
7099
7267
  /**
7100
7268
  * Disallow useless concatenation of literals.
7101
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-concat.md
7269
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-concat.md
7102
7270
  */
7103
7271
  'unicorn/no-useless-concat'?: Linter.RuleEntry<[]>;
7104
7272
  /**
7105
7273
  * Disallow useless `continue` statements.
7106
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-continue.md
7274
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-continue.md
7107
7275
  */
7108
7276
  'unicorn/no-useless-continue'?: Linter.RuleEntry<[]>;
7109
7277
  /**
7110
7278
  * Disallow unnecessary existence checks before deletion.
7111
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-delete-check.md
7279
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-delete-check.md
7112
7280
  */
7113
7281
  'unicorn/no-useless-delete-check'?: Linter.RuleEntry<[]>;
7114
7282
  /**
7115
7283
  * Disallow `else` after a statement that exits.
7116
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-else.md
7284
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-else.md
7117
7285
  */
7118
7286
  'unicorn/no-useless-else'?: Linter.RuleEntry<[]>;
7119
7287
  /**
7120
7288
  * Disallow unnecessary `Error.captureStackTrace(…)`.
7121
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-error-capture-stack-trace.md
7289
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-error-capture-stack-trace.md
7122
7290
  */
7123
7291
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
7124
7292
  /**
7125
7293
  * Disallow useless fallback when spreading in object literals.
7126
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-fallback-in-spread.md
7294
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-fallback-in-spread.md
7127
7295
  */
7128
7296
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
7129
7297
  /**
7130
7298
  * Disallow unnecessary `.toArray()` on iterators.
7131
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-iterator-to-array.md
7299
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-iterator-to-array.md
7132
7300
  */
7133
7301
  'unicorn/no-useless-iterator-to-array'?: Linter.RuleEntry<[]>;
7134
7302
  /**
7135
7303
  * Disallow useless array length check.
7136
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-length-check.md
7304
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-length-check.md
7137
7305
  */
7138
7306
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
7139
7307
  /**
7140
7308
  * Disallow unnecessary operands in logical expressions involving boolean literals.
7141
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-logical-operand.md
7309
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-logical-operand.md
7142
7310
  */
7143
7311
  'unicorn/no-useless-logical-operand'?: Linter.RuleEntry<[]>;
7144
7312
  /**
7145
7313
  * Disallow useless overrides of class methods.
7146
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-override.md
7314
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-override.md
7147
7315
  */
7148
7316
  'unicorn/no-useless-override'?: Linter.RuleEntry<[]>;
7149
7317
  /**
7150
7318
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
7151
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-promise-resolve-reject.md
7319
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-promise-resolve-reject.md
7152
7320
  */
7153
7321
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
7154
7322
  /**
7155
7323
  * Disallow redundant re-exports.
7156
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-re-export.md
7324
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-re-export.md
7157
7325
  */
7158
7326
  'unicorn/no-useless-re-export'?: Linter.RuleEntry<[]>;
7159
7327
  /**
7160
7328
  * Disallow simple recursive function calls that can be replaced with a loop.
7161
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-recursion.md
7329
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-recursion.md
7162
7330
  */
7163
7331
  'unicorn/no-useless-recursion'?: Linter.RuleEntry<[]>;
7332
+ /**
7333
+ * Disallow unnecessary `Set` construction around `Set` methods.
7334
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-set-construction.md
7335
+ */
7336
+ 'unicorn/no-useless-set-construction'?: Linter.RuleEntry<[]>;
7164
7337
  /**
7165
7338
  * Disallow unnecessary spread.
7166
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-spread.md
7339
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-spread.md
7167
7340
  */
7168
7341
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
7169
7342
  /**
7170
7343
  * Disallow useless case in switch statements.
7171
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-switch-case.md
7344
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-switch-case.md
7172
7345
  */
7173
7346
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
7174
7347
  /**
7175
7348
  * Disallow useless template literal expressions.
7176
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-template-literals.md
7349
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-template-literals.md
7177
7350
  */
7178
7351
  'unicorn/no-useless-template-literals'?: Linter.RuleEntry<[]>;
7179
7352
  /**
7180
7353
  * Disallow useless `undefined`.
7181
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-useless-undefined.md
7354
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-useless-undefined.md
7182
7355
  */
7183
7356
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
7357
+ /**
7358
+ * Disallow returning or exporting resources declared with `using`, including through capturing functions.
7359
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-using-resource-escape.md
7360
+ */
7361
+ 'unicorn/no-using-resource-escape'?: Linter.RuleEntry<[]>;
7184
7362
  /**
7185
7363
  * Disallow the bitwise XOR operator where exponentiation was likely intended.
7186
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-xor-as-exponentiation.md
7364
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-xor-as-exponentiation.md
7187
7365
  */
7188
7366
  'unicorn/no-xor-as-exponentiation'?: Linter.RuleEntry<[]>;
7189
7367
  /**
7190
7368
  * Disallow number literals with zero fractions or dangling dots.
7191
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/no-zero-fractions.md
7369
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/no-zero-fractions.md
7192
7370
  */
7193
7371
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
7194
7372
  /**
7195
7373
  * Enforce proper case for numeric literals.
7196
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/number-literal-case.md
7374
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/number-literal-case.md
7197
7375
  */
7198
7376
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
7199
7377
  /**
7200
7378
  * Enforce the style of numeric separators by correctly grouping digits.
7201
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/numeric-separators-style.md
7379
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/numeric-separators-style.md
7202
7380
  */
7203
7381
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
7204
7382
  /**
7205
7383
  * Require assignment operator shorthand where possible.
7206
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/operator-assignment.md
7384
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/operator-assignment.md
7207
7385
  */
7208
7386
  'unicorn/operator-assignment'?: Linter.RuleEntry<UnicornOperatorAssignment>;
7209
7387
  /**
7210
7388
  * Prefer `AbortSignal.any()` over manually forwarding abort events between signals.
7211
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-abort-signal-any.md
7389
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-abort-signal-any.md
7212
7390
  */
7213
7391
  'unicorn/prefer-abort-signal-any'?: Linter.RuleEntry<[]>;
7214
7392
  /**
7215
7393
  * Prefer `AbortSignal.timeout()` over manually aborting an `AbortController` with `setTimeout()`.
7216
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-abort-signal-timeout.md
7394
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-abort-signal-timeout.md
7217
7395
  */
7218
7396
  'unicorn/prefer-abort-signal-timeout'?: Linter.RuleEntry<[]>;
7219
7397
  /**
7220
7398
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
7221
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-add-event-listener.md
7399
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-add-event-listener.md
7222
7400
  */
7223
7401
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
7224
7402
  /**
7225
7403
  * Prefer an options object over a boolean in `.addEventListener()`.
7226
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-add-event-listener-options.md
7404
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-add-event-listener-options.md
7227
7405
  */
7228
7406
  'unicorn/prefer-add-event-listener-options'?: Linter.RuleEntry<[]>;
7229
7407
  /**
7230
7408
  * Prefer `AggregateError` when throwing collected errors.
7231
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-aggregate-error.md
7409
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-aggregate-error.md
7232
7410
  */
7233
7411
  'unicorn/prefer-aggregate-error'?: Linter.RuleEntry<[]>;
7234
7412
  /**
7235
7413
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
7236
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-find.md
7414
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-find.md
7237
7415
  */
7238
7416
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
7239
7417
  /**
7240
7418
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
7241
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-flat.md
7419
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-flat.md
7242
7420
  */
7243
7421
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
7244
7422
  /**
7245
7423
  * Prefer `.flatMap(…)` over `.map(…).flat()` and `.filter(…).flatMap(…)`.
7246
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-flat-map.md
7424
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-flat-map.md
7247
7425
  */
7248
7426
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
7249
7427
  /**
7250
- * Prefer `Array.fromAsync()` over `for await…of` array accumulation.
7251
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-from-async.md
7428
+ * Prefer `Array.fromAsync()` over array accumulation loops.
7429
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-from-async.md
7252
7430
  */
7253
7431
  'unicorn/prefer-array-from-async'?: Linter.RuleEntry<[]>;
7254
7432
  /**
7255
7433
  * Prefer using the `Array.from()` mapping function argument.
7256
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-from-map.md
7434
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-from-map.md
7257
7435
  */
7258
7436
  'unicorn/prefer-array-from-map'?: Linter.RuleEntry<[]>;
7259
7437
  /**
7260
7438
  * Prefer `Array.from({length}, …)` when creating range arrays.
7261
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-from-range.md
7439
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-from-range.md
7262
7440
  */
7263
7441
  'unicorn/prefer-array-from-range'?: Linter.RuleEntry<[]>;
7264
7442
  /**
7265
7443
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
7266
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-index-of.md
7444
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-index-of.md
7267
7445
  */
7268
7446
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
7269
7447
  /**
7270
7448
  * Prefer iterating an array directly or with `Array#keys()` over `Array#entries()` when the index or value is unused.
7271
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-iterable-methods.md
7449
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-iterable-methods.md
7272
7450
  */
7273
7451
  'unicorn/prefer-array-iterable-methods'?: Linter.RuleEntry<[]>;
7274
7452
  /**
7275
7453
  * Prefer last-oriented array methods over `Array#reverse()` or `Array#toReversed()` followed by a method.
7276
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-last-methods.md
7454
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-last-methods.md
7277
7455
  */
7278
7456
  'unicorn/prefer-array-last-methods'?: Linter.RuleEntry<[]>;
7279
7457
  /**
7280
7458
  * Prefer `Array#slice()` over `Array#splice()` when reading from the returned array.
7281
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-slice.md
7459
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-slice.md
7282
7460
  */
7283
7461
  'unicorn/prefer-array-slice'?: Linter.RuleEntry<[]>;
7284
7462
  /**
7285
7463
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
7286
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-array-some.md
7464
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-array-some.md
7287
7465
  */
7288
7466
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
7289
7467
  /**
7290
7468
  * Prefer `.at()` method for index access and `String#charAt()`.
7291
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-at.md
7469
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-at.md
7292
7470
  */
7293
7471
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
7294
7472
  /**
7295
7473
  * Prefer `await` over promise chaining.
7296
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-await.md
7474
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-await.md
7297
7475
  */
7298
7476
  'unicorn/prefer-await'?: Linter.RuleEntry<[]>;
7299
7477
  /**
7300
7478
  * Prefer `BigInt` literals over the constructor.
7301
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-bigint-literals.md
7479
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-bigint-literals.md
7302
7480
  */
7303
7481
  'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
7304
7482
  /**
7305
7483
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
7306
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-blob-reading-methods.md
7484
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-blob-reading-methods.md
7307
7485
  */
7308
7486
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
7309
7487
  /**
7310
7488
  * Prefer block statements over IIFEs used only for scoping.
7311
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-block-statement-over-iife.md
7489
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-block-statement-over-iife.md
7312
7490
  */
7313
7491
  'unicorn/prefer-block-statement-over-iife'?: Linter.RuleEntry<[]>;
7314
7492
  /**
7315
7493
  * Prefer directly returning boolean expressions over `if` statements.
7316
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-boolean-return.md
7494
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-boolean-return.md
7317
7495
  */
7318
7496
  'unicorn/prefer-boolean-return'?: Linter.RuleEntry<[]>;
7319
7497
  /**
7320
7498
  * Prefer class field declarations over `this` assignments in constructors.
7321
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-class-fields.md
7499
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-class-fields.md
7322
7500
  */
7323
7501
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
7324
7502
  /**
7325
7503
  * Prefer using `Element#classList.toggle()` to toggle class names.
7326
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-classlist-toggle.md
7504
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-classlist-toggle.md
7327
7505
  */
7328
7506
  'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
7329
7507
  /**
7330
7508
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
7331
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-code-point.md
7509
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-code-point.md
7332
7510
  */
7333
7511
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
7334
7512
  /**
7335
- * Prefer early continues over whole-loop conditional wrapping.
7336
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-continue.md
7513
+ * Prefer combining consecutive guards with identical exit statements.
7514
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-combined-guards.md
7515
+ */
7516
+ 'unicorn/prefer-combined-guards'?: Linter.RuleEntry<UnicornPreferCombinedGuards>;
7517
+ /**
7518
+ * Prefer early continues over conditionals wrapping the remainder of the loop body.
7519
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-continue.md
7337
7520
  */
7338
7521
  'unicorn/prefer-continue'?: Linter.RuleEntry<UnicornPreferContinue>;
7339
7522
  /**
7340
7523
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
7341
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-date-now.md
7524
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-date-now.md
7342
7525
  */
7343
7526
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
7344
7527
  /**
7345
7528
  * Prefer default parameters over reassignment.
7346
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-default-parameters.md
7529
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-default-parameters.md
7347
7530
  */
7348
7531
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
7349
7532
  /**
7350
7533
  * Prefer direct iteration over default iterator method calls.
7351
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-direct-iteration.md
7534
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-direct-iteration.md
7352
7535
  */
7353
7536
  'unicorn/prefer-direct-iteration'?: Linter.RuleEntry<[]>;
7354
7537
  /**
7355
7538
  * Prefer using `using`/`await using` over manual `try`/`finally` resource disposal.
7356
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-dispose.md
7539
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-dispose.md
7357
7540
  */
7358
7541
  'unicorn/prefer-dispose'?: Linter.RuleEntry<[]>;
7359
7542
  /**
7360
7543
  * Prefer `Element#append()` over `Node#appendChild()`.
7361
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-dom-node-append.md
7544
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-dom-node-append.md
7362
7545
  */
7363
7546
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
7364
7547
  /**
7365
7548
  * Renamed to `unicorn/dom-node-dataset`.
7366
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/deleted-and-deprecated-rules.md#prefer-dom-node-dataset
7549
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#prefer-dom-node-dataset
7367
7550
  * @deprecated
7368
7551
  */
7369
7552
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
7370
7553
  /**
7371
7554
  * Prefer `.getHTML()` and `.setHTML()` over `.innerHTML`.
7372
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-dom-node-html-methods.md
7555
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-dom-node-html-methods.md
7373
7556
  */
7374
7557
  'unicorn/prefer-dom-node-html-methods'?: Linter.RuleEntry<UnicornPreferDomNodeHtmlMethods>;
7375
7558
  /**
7376
7559
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
7377
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-dom-node-remove.md
7560
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-dom-node-remove.md
7378
7561
  */
7379
7562
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
7380
7563
  /**
7381
- * Prefer `.replaceChildren()` when emptying DOM children.
7382
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-dom-node-replace-children.md
7564
+ * Prefer `.replaceChildren()` when replacing DOM children.
7565
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-dom-node-replace-children.md
7383
7566
  */
7384
7567
  'unicorn/prefer-dom-node-replace-children'?: Linter.RuleEntry<[]>;
7385
7568
  /**
7386
7569
  * Prefer `.textContent` over `.innerText`.
7387
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-dom-node-text-content.md
7570
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-dom-node-text-content.md
7388
7571
  */
7389
7572
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
7390
7573
  /**
7391
- * Prefer early returns over full-function conditional wrapping.
7392
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-early-return.md
7574
+ * Prefer early returns over conditionals wrapping the remainder of the function body.
7575
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-early-return.md
7393
7576
  */
7394
7577
  'unicorn/prefer-early-return'?: Linter.RuleEntry<UnicornPreferEarlyReturn>;
7395
7578
  /**
7396
7579
  * Prefer `else if` over adjacent `if` statements with related conditions.
7397
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-else-if.md
7580
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-else-if.md
7398
7581
  */
7399
7582
  'unicorn/prefer-else-if'?: Linter.RuleEntry<[]>;
7400
7583
  /**
7401
7584
  * Prefer `Error.isError()` when checking for errors.
7402
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-error-is-error.md
7585
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-error-is-error.md
7403
7586
  */
7404
7587
  'unicorn/prefer-error-is-error'?: Linter.RuleEntry<[]>;
7405
7588
  /**
7406
7589
  * Prefer `EventTarget` over `EventEmitter`.
7407
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-event-target.md
7590
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-event-target.md
7408
7591
  */
7409
7592
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
7410
7593
  /**
7411
7594
  * Prefer explicit viewport units.
7412
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-explicit-viewport-units.md
7595
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-explicit-viewport-units.md
7413
7596
  */
7414
7597
  'unicorn/prefer-explicit-viewport-units'?: Linter.RuleEntry<UnicornPreferExplicitViewportUnits>;
7415
7598
  /**
7416
7599
  * Prefer `export…from` when re-exporting.
7417
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-export-from.md
7600
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-export-from.md
7418
7601
  */
7419
7602
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
7420
7603
  /**
7421
7604
  * Prefer flat `Math.min()` and `Math.max()` calls over nested calls.
7422
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-flat-math-min-max.md
7605
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-flat-math-min-max.md
7423
7606
  */
7424
7607
  'unicorn/prefer-flat-math-min-max'?: Linter.RuleEntry<[]>;
7425
7608
  /**
7426
7609
  * Prefer `.getOrInsertComputed()` when the default value has side effects.
7427
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-get-or-insert-computed.md
7610
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-get-or-insert-computed.md
7428
7611
  */
7429
7612
  'unicorn/prefer-get-or-insert-computed'?: Linter.RuleEntry<[]>;
7430
7613
  /**
7431
7614
  * Prefer global numeric constants over `Number` static properties.
7432
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-global-number-constants.md
7615
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-global-number-constants.md
7433
7616
  */
7434
7617
  'unicorn/prefer-global-number-constants'?: Linter.RuleEntry<[]>;
7435
7618
  /**
7436
7619
  * Prefer `globalThis` over `window`, `self`, and `global`.
7437
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-global-this.md
7620
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-global-this.md
7438
7621
  */
7439
7622
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
7440
7623
  /**
7441
- * Prefer `Object.groupBy()` or `Map.groupBy()` over reduce-based grouping.
7442
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-group-by.md
7624
+ * Prefer `Object.groupBy()` or `Map.groupBy()` over manual grouping.
7625
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-group-by.md
7443
7626
  */
7444
7627
  'unicorn/prefer-group-by'?: Linter.RuleEntry<[]>;
7445
7628
  /**
7446
7629
  * Prefer `.has()` when checking existence.
7447
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-has-check.md
7630
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-has-check.md
7448
7631
  */
7449
7632
  'unicorn/prefer-has-check'?: Linter.RuleEntry<[]>;
7450
7633
  /**
7451
7634
  * Prefer moving code shared by all branches of an `if` statement out of the branches.
7452
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-hoisting-branch-code.md
7635
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-hoisting-branch-code.md
7453
7636
  */
7454
7637
  'unicorn/prefer-hoisting-branch-code'?: Linter.RuleEntry<[]>;
7455
7638
  /**
7456
7639
  * Prefer HTTPS over HTTP.
7457
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-https.md
7640
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-https.md
7458
7641
  */
7459
7642
  'unicorn/prefer-https'?: Linter.RuleEntry<UnicornPreferHttps>;
7460
7643
  /**
7461
7644
  * Prefer identifiers over string literals in import and export specifiers.
7462
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-identifier-import-export-specifiers.md
7645
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-identifier-import-export-specifiers.md
7463
7646
  */
7464
7647
  'unicorn/prefer-identifier-import-export-specifiers'?: Linter.RuleEntry<[]>;
7465
7648
  /**
7466
7649
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
7467
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-import-meta-properties.md
7650
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-import-meta-properties.md
7468
7651
  */
7469
7652
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
7470
7653
  /**
7471
7654
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
7472
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-includes.md
7655
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-includes.md
7473
7656
  */
7474
7657
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
7475
7658
  /**
7476
7659
  * Prefer `.includes()` over repeated equality comparisons.
7477
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-includes-over-repeated-comparisons.md
7660
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-includes-over-repeated-comparisons.md
7478
7661
  */
7479
7662
  'unicorn/prefer-includes-over-repeated-comparisons'?: Linter.RuleEntry<UnicornPreferIncludesOverRepeatedComparisons>;
7480
7663
  /**
7481
7664
  * Prefer passing iterables directly to constructors instead of filling empty collections.
7482
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-iterable-in-constructor.md
7665
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-iterable-in-constructor.md
7483
7666
  */
7484
7667
  'unicorn/prefer-iterable-in-constructor'?: Linter.RuleEntry<[]>;
7485
7668
  /**
7486
7669
  * Prefer `Iterator.concat(…)` over temporary spread arrays.
7487
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-iterator-concat.md
7670
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-iterator-concat.md
7488
7671
  */
7489
7672
  'unicorn/prefer-iterator-concat'?: Linter.RuleEntry<[]>;
7490
7673
  /**
7491
7674
  * Prefer iterator helpers over temporary arrays from iterators.
7492
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-iterator-helpers.md
7675
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-iterator-helpers.md
7493
7676
  */
7494
7677
  'unicorn/prefer-iterator-helpers'?: Linter.RuleEntry<[]>;
7495
7678
  /**
7496
7679
  * Prefer `Iterator#toArray()` over temporary arrays from iterator spreads.
7497
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-iterator-to-array.md
7680
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-iterator-to-array.md
7498
7681
  */
7499
7682
  'unicorn/prefer-iterator-to-array'?: Linter.RuleEntry<[]>;
7500
7683
  /**
7501
7684
  * Prefer moving `.toArray()` to the end of iterator helper chains.
7502
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-iterator-to-array-at-end.md
7685
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-iterator-to-array-at-end.md
7503
7686
  */
7504
7687
  'unicorn/prefer-iterator-to-array-at-end'?: Linter.RuleEntry<[]>;
7688
+ /**
7689
+ * Prefer `Iterator.zip()` over parallel-array indexing.
7690
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-iterator-zip.md
7691
+ */
7692
+ 'unicorn/prefer-iterator-zip'?: Linter.RuleEntry<[]>;
7693
+ /**
7694
+ * Prefer JSON imports over reading and parsing JSON files.
7695
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-json-import.md
7696
+ */
7697
+ 'unicorn/prefer-json-import'?: Linter.RuleEntry<[]>;
7505
7698
  /**
7506
7699
  * Renamed to `unicorn/consistent-json-file-read`.
7507
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/deleted-and-deprecated-rules.md#prefer-json-parse-buffer
7700
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#prefer-json-parse-buffer
7508
7701
  * @deprecated
7509
7702
  */
7510
7703
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
7511
7704
  /**
7512
7705
  * Prefer `KeyboardEvent#key` over deprecated keyboard event properties.
7513
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-keyboard-event-key.md
7706
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-keyboard-event-key.md
7514
7707
  */
7515
7708
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
7516
7709
  /**
7517
7710
  * Prefer `location.assign()` over assigning to `location.href`.
7518
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-location-assign.md
7711
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-location-assign.md
7519
7712
  */
7520
7713
  'unicorn/prefer-location-assign'?: Linter.RuleEntry<[]>;
7521
7714
  /**
7522
7715
  * Prefer using a logical operator over a ternary.
7523
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-logical-operator-over-ternary.md
7716
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-logical-operator-over-ternary.md
7524
7717
  */
7525
7718
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
7526
7719
  /**
7527
7720
  * Prefer `new Map()` over `Object.fromEntries()` when using the result as a map.
7528
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-map-from-entries.md
7721
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-map-from-entries.md
7529
7722
  */
7530
7723
  'unicorn/prefer-map-from-entries'?: Linter.RuleEntry<[]>;
7531
7724
  /**
7532
7725
  * Prefer `Math.abs()` over manual absolute value expressions and symmetric range checks.
7533
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-math-abs.md
7726
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-math-abs.md
7534
7727
  */
7535
7728
  'unicorn/prefer-math-abs'?: Linter.RuleEntry<[]>;
7536
7729
  /**
7537
7730
  * Prefer `Math` constants over their approximate numeric values.
7538
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-math-constants.md
7731
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-math-constants.md
7539
7732
  */
7540
7733
  'unicorn/prefer-math-constants'?: Linter.RuleEntry<[]>;
7541
7734
  /**
7542
7735
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
7543
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-math-min-max.md
7736
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-math-min-max.md
7544
7737
  */
7545
7738
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
7546
7739
  /**
7547
7740
  * Prefer `Math.trunc()` for truncating numbers.
7548
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-math-trunc.md
7741
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-math-trunc.md
7549
7742
  */
7550
7743
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
7744
+ /**
7745
+ * Prefer modern media feature range syntax.
7746
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-media-feature-range-syntax.md
7747
+ */
7748
+ 'unicorn/prefer-media-feature-range-syntax'?: Linter.RuleEntry<[]>;
7551
7749
  /**
7552
7750
  * Prefer moving ternaries into the minimal varying part of an expression.
7553
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-minimal-ternary.md
7751
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-minimal-ternary.md
7554
7752
  */
7555
7753
  'unicorn/prefer-minimal-ternary'?: Linter.RuleEntry<UnicornPreferMinimalTernary>;
7556
7754
  /**
7557
7755
  * Prefer modern DOM APIs.
7558
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-modern-dom-apis.md
7756
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-modern-dom-apis.md
7559
7757
  */
7560
7758
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
7561
7759
  /**
7562
7760
  * Prefer modern `Math` APIs over legacy patterns.
7563
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-modern-math-apis.md
7761
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-modern-math-apis.md
7564
7762
  */
7565
7763
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
7566
7764
  /**
7567
7765
  * Prefer JavaScript modules (ESM) over CommonJS.
7568
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-module.md
7766
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-module.md
7569
7767
  */
7570
7768
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
7571
7769
  /**
7572
7770
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
7573
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-native-coercion-functions.md
7771
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-native-coercion-functions.md
7574
7772
  */
7575
7773
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
7576
7774
  /**
7577
7775
  * Prefer negative index over `.length - index` when possible.
7578
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-negative-index.md
7776
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-negative-index.md
7579
7777
  */
7580
7778
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
7581
7779
  /**
7582
7780
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
7583
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-node-protocol.md
7781
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-node-protocol.md
7584
7782
  */
7585
7783
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
7586
7784
  /**
7587
7785
  * Prefer `Number()` over `parseFloat()` and base-10 `parseInt()`.
7588
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-number-coercion.md
7786
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-number-coercion.md
7589
7787
  */
7590
7788
  'unicorn/prefer-number-coercion'?: Linter.RuleEntry<[]>;
7591
7789
  /**
7592
7790
  * Prefer `Number.isSafeInteger()` over integer checks.
7593
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-number-is-safe-integer.md
7791
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-number-is-safe-integer.md
7594
7792
  */
7595
7793
  'unicorn/prefer-number-is-safe-integer'?: Linter.RuleEntry<[]>;
7596
7794
  /**
7597
7795
  * Prefer `Number` static methods over global functions and optionally static properties over global constants.
7598
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-number-properties.md
7796
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-number-properties.md
7599
7797
  */
7600
7798
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
7601
7799
  /**
7602
7800
  * Prefer `Object.defineProperties()` over multiple `Object.defineProperty()` calls.
7603
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-object-define-properties.md
7801
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-object-define-properties.md
7604
7802
  */
7605
7803
  'unicorn/prefer-object-define-properties'?: Linter.RuleEntry<[]>;
7606
7804
  /**
7607
7805
  * Prefer object destructuring defaults over default object literals with spread.
7608
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-object-destructuring-defaults.md
7806
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-object-destructuring-defaults.md
7609
7807
  */
7610
7808
  'unicorn/prefer-object-destructuring-defaults'?: Linter.RuleEntry<[]>;
7611
7809
  /**
7612
7810
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
7613
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-object-from-entries.md
7811
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-object-from-entries.md
7614
7812
  */
7615
7813
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
7616
7814
  /**
7617
7815
  * Prefer the most specific `Object` iterable method.
7618
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-object-iterable-methods.md
7816
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-object-iterable-methods.md
7619
7817
  */
7620
7818
  'unicorn/prefer-object-iterable-methods'?: Linter.RuleEntry<[]>;
7621
7819
  /**
7622
7820
  * Prefer observer APIs over resize and scroll listeners with layout reads.
7623
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-observer-apis.md
7821
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-observer-apis.md
7624
7822
  */
7625
7823
  'unicorn/prefer-observer-apis'?: Linter.RuleEntry<[]>;
7626
7824
  /**
7627
7825
  * Prefer omitting the `catch` binding parameter.
7628
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-optional-catch-binding.md
7826
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-optional-catch-binding.md
7629
7827
  */
7630
7828
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
7631
7829
  /**
7632
7830
  * Prefer `Path2D` for repeatedly drawn canvas paths.
7633
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-path2d.md
7831
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-path2d.md
7634
7832
  */
7635
7833
  'unicorn/prefer-path2d'?: Linter.RuleEntry<[]>;
7636
7834
  /**
7637
7835
  * Prefer private class fields over the underscore-prefix convention.
7638
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-private-class-fields.md
7836
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-private-class-fields.md
7639
7837
  */
7640
7838
  'unicorn/prefer-private-class-fields'?: Linter.RuleEntry<[]>;
7641
7839
  /**
7642
7840
  * Prefer `Promise.try()` over promise-wrapping boilerplate.
7643
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-promise-try.md
7841
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-promise-try.md
7644
7842
  */
7645
7843
  'unicorn/prefer-promise-try'?: Linter.RuleEntry<[]>;
7646
7844
  /**
7647
7845
  * Prefer `Promise.withResolvers()` when extracting resolver functions from `new Promise()`.
7648
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-promise-with-resolvers.md
7846
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-promise-with-resolvers.md
7649
7847
  */
7650
7848
  'unicorn/prefer-promise-with-resolvers'?: Linter.RuleEntry<[]>;
7651
7849
  /**
7652
7850
  * Prefer borrowing methods from the prototype instead of the instance.
7653
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-prototype-methods.md
7851
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-prototype-methods.md
7654
7852
  */
7655
7853
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
7656
7854
  /**
7657
7855
  * Prefer `.querySelector()` and `.querySelectorAll()` over older DOM query methods.
7658
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-query-selector.md
7856
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-query-selector.md
7659
7857
  */
7660
7858
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<UnicornPreferQuerySelector>;
7661
7859
  /**
7662
7860
  * Prefer `queueMicrotask()` over `process.nextTick()`, `setImmediate()`, and `setTimeout(…, 0)`.
7663
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-queue-microtask.md
7861
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-queue-microtask.md
7664
7862
  */
7665
7863
  'unicorn/prefer-queue-microtask'?: Linter.RuleEntry<UnicornPreferQueueMicrotask>;
7666
7864
  /**
7667
7865
  * Prefer `Reflect.apply()` over `Function#apply()`.
7668
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-reflect-apply.md
7866
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-reflect-apply.md
7669
7867
  */
7670
7868
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
7671
7869
  /**
7672
7870
  * Prefer `RegExp.escape()` for escaping strings to use in regular expressions.
7673
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-regexp-escape.md
7871
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-regexp-escape.md
7674
7872
  */
7675
7873
  'unicorn/prefer-regexp-escape'?: Linter.RuleEntry<[]>;
7676
7874
  /**
7677
7875
  * Prefer `RegExp#test()` over `String#match()`, `String#search()`, and `RegExp#exec()`.
7678
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-regexp-test.md
7876
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-regexp-test.md
7679
7877
  */
7680
7878
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
7681
7879
  /**
7682
7880
  * Prefer `Response.json()` over `new Response(JSON.stringify())`.
7683
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-response-static-json.md
7881
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-response-static-json.md
7684
7882
  */
7685
7883
  'unicorn/prefer-response-static-json'?: Linter.RuleEntry<[]>;
7686
7884
  /**
7687
7885
  * Prefer `:scope` when using element query selector methods.
7688
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-scoped-selector.md
7886
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-scoped-selector.md
7689
7887
  */
7690
7888
  'unicorn/prefer-scoped-selector'?: Linter.RuleEntry<[]>;
7691
7889
  /**
7692
7890
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
7693
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-set-has.md
7891
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-set-has.md
7694
7892
  */
7695
7893
  'unicorn/prefer-set-has'?: Linter.RuleEntry<UnicornPreferSetHas>;
7696
7894
  /**
7697
7895
  * Prefer `Set` methods for Set operations.
7698
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-set-methods.md
7896
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-set-methods.md
7699
7897
  */
7700
7898
  'unicorn/prefer-set-methods'?: Linter.RuleEntry<[]>;
7701
7899
  /**
7702
7900
  * Prefer using `Set#size` instead of `Array#length`.
7703
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-set-size.md
7901
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-set-size.md
7704
7902
  */
7705
7903
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
7706
7904
  /**
7707
7905
  * Prefer arrow function properties over methods with a single return.
7708
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-short-arrow-method.md
7906
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-short-arrow-method.md
7709
7907
  */
7710
7908
  'unicorn/prefer-short-arrow-method'?: Linter.RuleEntry<UnicornPreferShortArrowMethod>;
7711
7909
  /**
7712
7910
  * Prefer simple conditions first in logical expressions.
7713
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-simple-condition-first.md
7911
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-simple-condition-first.md
7714
7912
  */
7715
7913
  'unicorn/prefer-simple-condition-first'?: Linter.RuleEntry<[]>;
7716
7914
  /**
7717
7915
  * Prefer a simple comparison function for `Array#sort()`.
7718
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-simple-sort-comparator.md
7916
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-simple-sort-comparator.md
7719
7917
  */
7720
7918
  'unicorn/prefer-simple-sort-comparator'?: Linter.RuleEntry<[]>;
7721
7919
  /**
7722
7920
  * Prefer simplified conditions.
7723
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-simplified-conditions.md
7921
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-simplified-conditions.md
7724
7922
  */
7725
7923
  'unicorn/prefer-simplified-conditions'?: Linter.RuleEntry<[]>;
7726
7924
  /**
7727
7925
  * Prefer a single `Array#some()` or `Array#every()` with a combined predicate.
7728
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-single-array-predicate.md
7926
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-single-array-predicate.md
7729
7927
  */
7730
7928
  'unicorn/prefer-single-array-predicate'?: Linter.RuleEntry<[]>;
7731
7929
  /**
7732
7930
  * Enforce combining multiple `Array#{push,unshift}()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
7733
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-single-call.md
7931
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-single-call.md
7734
7932
  */
7735
7933
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
7736
7934
  /**
7737
7935
  * Prefer a single object destructuring declaration per local const source.
7738
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-single-object-destructuring.md
7936
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-single-object-destructuring.md
7739
7937
  */
7740
7938
  'unicorn/prefer-single-object-destructuring'?: Linter.RuleEntry<[]>;
7741
7939
  /**
7742
7940
  * Enforce combining multiple single-character replacements into a single `String#replaceAll()` with a regular expression.
7743
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-single-replace.md
7941
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-single-replace.md
7744
7942
  */
7745
7943
  'unicorn/prefer-single-replace'?: Linter.RuleEntry<[]>;
7746
7944
  /**
7747
7945
  * Prefer declaring variables in the smallest possible scope.
7748
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-smaller-scope.md
7946
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-smaller-scope.md
7749
7947
  */
7750
7948
  'unicorn/prefer-smaller-scope'?: Linter.RuleEntry<[]>;
7751
7949
  /**
7752
7950
  * Prefer `String#split()` with a limit.
7753
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-split-limit.md
7951
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-split-limit.md
7754
7952
  */
7755
7953
  'unicorn/prefer-split-limit'?: Linter.RuleEntry<[]>;
7756
7954
  /**
7757
7955
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()`, and trivial `for…of` copies.
7758
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-spread.md
7956
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-spread.md
7759
7957
  */
7760
7958
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
7761
7959
  /**
7762
7960
  * Prefer `String#matchAll()` over `RegExp#exec()` loops.
7763
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-string-match-all.md
7961
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-string-match-all.md
7764
7962
  */
7765
7963
  'unicorn/prefer-string-match-all'?: Linter.RuleEntry<[]>;
7766
7964
  /**
7767
7965
  * Prefer `String#padStart()` and `String#padEnd()` over manual string padding.
7768
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-string-pad-start-end.md
7966
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-string-pad-start-end.md
7769
7967
  */
7770
7968
  'unicorn/prefer-string-pad-start-end'?: Linter.RuleEntry<[]>;
7771
7969
  /**
7772
7970
  * Prefer using the `String.raw` tag to avoid escaping `\`.
7773
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-string-raw.md
7971
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-string-raw.md
7774
7972
  */
7775
7973
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
7776
7974
  /**
7777
7975
  * Prefer `String#repeat()` for repeated whitespace.
7778
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-string-repeat.md
7976
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-string-repeat.md
7779
7977
  */
7780
7978
  'unicorn/prefer-string-repeat'?: Linter.RuleEntry<UnicornPreferStringRepeat>;
7781
7979
  /**
7782
7980
  * Prefer `String#replaceAll()` over regex searches with the global flag and `String#split().join()`.
7783
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-string-replace-all.md
7981
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-string-replace-all.md
7784
7982
  */
7785
7983
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
7786
7984
  /**
7787
7985
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
7788
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-string-slice.md
7986
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-string-slice.md
7789
7987
  */
7790
7988
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
7791
7989
  /**
7792
7990
  * Prefer `String#startsWith()` & `String#endsWith()` over regexes, `String#indexOf() === 0`, and slice checks.
7793
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-string-starts-ends-with.md
7991
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-string-starts-ends-with.md
7794
7992
  */
7795
7993
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
7796
7994
  /**
7797
7995
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
7798
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-string-trim-start-end.md
7996
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-string-trim-start-end.md
7799
7997
  */
7800
7998
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
7801
7999
  /**
7802
8000
  * Prefer using `structuredClone` to create a deep clone.
7803
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-structured-clone.md
8001
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-structured-clone.md
7804
8002
  */
7805
8003
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
7806
8004
  /**
7807
8005
  * Prefer `switch` over multiple `else-if`.
7808
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-switch.md
8006
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-switch.md
7809
8007
  */
7810
8008
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
7811
8009
  /**
7812
8010
  * Prefer `Temporal` over `Date`.
7813
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-temporal.md
8011
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-temporal.md
7814
8012
  */
7815
8013
  'unicorn/prefer-temporal'?: Linter.RuleEntry<UnicornPreferTemporal>;
8014
+ /**
8015
+ * Prefer direct Temporal conversion methods.
8016
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-temporal-conversion.md
8017
+ */
8018
+ 'unicorn/prefer-temporal-conversion'?: Linter.RuleEntry<[]>;
7816
8019
  /**
7817
8020
  * Prefer ternary expressions over simple `if` statements that return or assign values.
7818
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-ternary.md
8021
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-ternary.md
7819
8022
  */
7820
8023
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
7821
8024
  /**
7822
8025
  * Prefer `.then().catch()` over `.then(…, …)` for error handling.
7823
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-then-catch.md
8026
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-then-catch.md
7824
8027
  */
7825
8028
  'unicorn/prefer-then-catch'?: Linter.RuleEntry<[]>;
7826
8029
  /**
7827
8030
  * Prefer using `Element#toggleAttribute()` to toggle attributes.
7828
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-toggle-attribute.md
8031
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-toggle-attribute.md
7829
8032
  */
7830
8033
  'unicorn/prefer-toggle-attribute'?: Linter.RuleEntry<[]>;
7831
8034
  /**
7832
8035
  * Prefer top-level await over top-level promises and async function calls.
7833
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-top-level-await.md
8036
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-top-level-await.md
7834
8037
  */
7835
8038
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
7836
8039
  /**
7837
8040
  * Enforce throwing `TypeError` in type checking conditions.
7838
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-type-error.md
8041
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-type-error.md
7839
8042
  */
7840
8043
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
7841
8044
  /**
7842
8045
  * Require type literals to be last in union types.
7843
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-type-literal-last.md
8046
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-type-literal-last.md
7844
8047
  */
7845
8048
  'unicorn/prefer-type-literal-last'?: Linter.RuleEntry<[]>;
7846
8049
  /**
7847
- * Prefer `Uint8Array#toBase64()` and `Uint8Array.fromBase64()` over `atob()`, `btoa()`, and `Buffer` base64 conversions.
7848
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-uint8array-base64.md
8050
+ * Prefer `Uint8Array#toBase64()` and `Uint8Array.fromBase64()` over legacy base64 conversions and manual postprocessing.
8051
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-uint8array-base64.md
7849
8052
  */
7850
8053
  'unicorn/prefer-uint8array-base64'?: Linter.RuleEntry<[]>;
8054
+ /**
8055
+ * Prefer `Uint8Array#toHex()` and `Uint8Array.fromHex()` over manual and Buffer hex conversions.
8056
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-uint8array-hex.md
8057
+ */
8058
+ 'unicorn/prefer-uint8array-hex'?: Linter.RuleEntry<[]>;
7851
8059
  /**
7852
8060
  * Prefer the unary minus operator over multiplying or dividing by `-1`.
7853
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-unary-minus.md
8061
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-unary-minus.md
7854
8062
  */
7855
8063
  'unicorn/prefer-unary-minus'?: Linter.RuleEntry<[]>;
7856
8064
  /**
7857
8065
  * Prefer Unicode code point escapes over legacy escape sequences.
7858
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-unicode-code-point-escapes.md
8066
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-unicode-code-point-escapes.md
7859
8067
  */
7860
8068
  'unicorn/prefer-unicode-code-point-escapes'?: Linter.RuleEntry<[]>;
7861
8069
  /**
7862
8070
  * Prefer `URL.canParse()` over constructing a `URL` in a try/catch for validation.
7863
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-url-can-parse.md
8071
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-url-can-parse.md
7864
8072
  */
7865
8073
  'unicorn/prefer-url-can-parse'?: Linter.RuleEntry<[]>;
7866
8074
  /**
7867
8075
  * Prefer `URL#href` over stringifying a `URL`.
7868
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-url-href.md
8076
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-url-href.md
7869
8077
  */
7870
8078
  'unicorn/prefer-url-href'?: Linter.RuleEntry<[]>;
7871
8079
  /**
7872
8080
  * Prefer `URLSearchParams` over manually splitting query strings.
7873
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-url-search-parameters.md
8081
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-url-search-parameters.md
7874
8082
  */
7875
8083
  'unicorn/prefer-url-search-parameters'?: Linter.RuleEntry<[]>;
7876
8084
  /**
7877
8085
  * Prefer putting the condition in the while statement.
7878
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/prefer-while-loop-condition.md
8086
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/prefer-while-loop-condition.md
7879
8087
  */
7880
8088
  'unicorn/prefer-while-loop-condition'?: Linter.RuleEntry<[]>;
7881
8089
  /**
7882
8090
  * Renamed to `unicorn/name-replacements`.
7883
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/deleted-and-deprecated-rules.md#prevent-abbreviations
8091
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/deleted-and-deprecated-rules.md#prevent-abbreviations
7884
8092
  * @deprecated
7885
8093
  */
7886
8094
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<[]>;
7887
8095
  /**
7888
8096
  * Enforce consistent relative URL style.
7889
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/relative-url-style.md
8097
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/relative-url-style.md
7890
8098
  */
7891
8099
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
7892
8100
  /**
7893
8101
  * Enforce using the separator argument with `Array#join()`.
7894
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-array-join-separator.md
8102
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-array-join-separator.md
7895
8103
  */
7896
8104
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
7897
8105
  /**
7898
8106
  * Require a compare function when calling `Array#sort()` or `Array#toSorted()`.
7899
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-array-sort-compare.md
8107
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-array-sort-compare.md
7900
8108
  */
7901
8109
  'unicorn/require-array-sort-compare'?: Linter.RuleEntry<[]>;
7902
8110
  /**
7903
8111
  * Require `CSS.escape()` for interpolated values in CSS selectors.
7904
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-css-escape.md
8112
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-css-escape.md
7905
8113
  */
7906
8114
  'unicorn/require-css-escape'?: Linter.RuleEntry<UnicornRequireCssEscape>;
7907
8115
  /**
7908
8116
  * Require configured YAML frontmatter fields.
7909
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-frontmatter-fields.md
8117
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-frontmatter-fields.md
7910
8118
  */
7911
8119
  'unicorn/require-frontmatter-fields'?: Linter.RuleEntry<UnicornRequireFrontmatterFields>;
7912
8120
  /**
7913
8121
  * Require non-empty module attributes for imports and exports
7914
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-module-attributes.md
8122
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-module-attributes.md
7915
8123
  */
7916
8124
  'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
7917
8125
  /**
7918
8126
  * Require non-empty specifier list in import and export statements.
7919
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-module-specifiers.md
8127
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-module-specifiers.md
7920
8128
  */
7921
8129
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
7922
8130
  /**
7923
8131
  * Enforce using the digits argument with `Number#toFixed()`.
7924
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-number-to-fixed-digits-argument.md
8132
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-number-to-fixed-digits-argument.md
7925
8133
  */
7926
8134
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
7927
8135
  /**
7928
8136
  * Require passive event listeners for high-frequency events.
7929
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-passive-events.md
8137
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-passive-events.md
7930
8138
  */
7931
8139
  'unicorn/require-passive-events'?: Linter.RuleEntry<[]>;
7932
8140
  /**
7933
8141
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
7934
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-post-message-target-origin.md
8142
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-post-message-target-origin.md
7935
8143
  */
7936
8144
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
7937
8145
  /**
7938
8146
  * Require boolean-returning Proxy traps to return booleans.
7939
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/require-proxy-trap-boolean-return.md
8147
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/require-proxy-trap-boolean-return.md
7940
8148
  */
7941
8149
  'unicorn/require-proxy-trap-boolean-return'?: Linter.RuleEntry<[]>;
7942
8150
  /**
7943
8151
  * Enforce a consistent style for single-line block comments.
7944
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/single-line-block-comment-style.md
8152
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/single-line-block-comment-style.md
7945
8153
  */
7946
8154
  'unicorn/single-line-block-comment-style'?: Linter.RuleEntry<UnicornSingleLineBlockCommentStyle>;
7947
8155
  /**
7948
8156
  * Enforce better string content.
7949
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/string-content.md
8157
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/string-content.md
7950
8158
  */
7951
8159
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
7952
8160
  /**
7953
8161
  * Enforce consistent brace style for `case` clauses.
7954
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/switch-case-braces.md
8162
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/switch-case-braces.md
7955
8163
  */
7956
8164
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
7957
8165
  /**
7958
8166
  * Enforce consistent `break`/`return`/`continue`/`throw` position in `case` clauses.
7959
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/switch-case-break-position.md
8167
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/switch-case-break-position.md
7960
8168
  */
7961
8169
  'unicorn/switch-case-break-position'?: Linter.RuleEntry<[]>;
7962
8170
  /**
7963
8171
  * Fix whitespace-insensitive template indentation.
7964
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/template-indent.md
8172
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/template-indent.md
7965
8173
  */
7966
8174
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
7967
8175
  /**
7968
8176
  * Enforce consistent case for text encoding identifiers.
7969
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/text-encoding-identifier-case.md
8177
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/text-encoding-identifier-case.md
7970
8178
  */
7971
8179
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<UnicornTextEncodingIdentifierCase>;
7972
8180
  /**
7973
8181
  * Require `new` when creating an error.
7974
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/throw-new-error.md
8182
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/throw-new-error.md
7975
8183
  */
7976
8184
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
7977
8185
  /**
7978
8186
  * Limit the complexity of `try` blocks.
7979
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v74.0.0/docs/rules/try-complexity.md
8187
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v76.0.0/docs/rules/try-complexity.md
7980
8188
  */
7981
8189
  'unicorn/try-complexity'?: Linter.RuleEntry<UnicornTryComplexity>;
7982
8190
  /**
@@ -9835,11 +10043,21 @@ export interface ESLintSchema {
9835
10043
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod-mini/docs/rules/no-duplicate-schema-methods.md
9836
10044
  */
9837
10045
  'zod-mini/no-duplicate-schema-methods'?: Linter.RuleEntry<[]>;
10046
+ /**
10047
+ * Disallow non-static values passed as arguments in a Zod Mini schema expression
10048
+ * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod-mini/docs/rules/no-dynamic-schema-value.md
10049
+ */
10050
+ 'zod-mini/no-dynamic-schema-value'?: Linter.RuleEntry<[]>;
9838
10051
  /**
9839
10052
  * Disallow usage of `z.custom()` without arguments
9840
10053
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod-mini/docs/rules/no-empty-custom-schema.md
9841
10054
  */
9842
10055
  'zod-mini/no-empty-custom-schema'?: Linter.RuleEntry<[]>;
10056
+ /**
10057
+ * Disallow constructing a Zod Mini schema inside a function body
10058
+ * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod-mini/docs/rules/no-function-scoped-schema.md
10059
+ */
10060
+ 'zod-mini/no-function-scoped-schema'?: Linter.RuleEntry<[]>;
9843
10061
  /**
9844
10062
  * Disallow deprecated `z.nativeEnum()` in favor of `z.enum()`.
9845
10063
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod-mini/docs/rules/no-native-enum.md
@@ -9900,6 +10118,11 @@ export interface ESLintSchema {
9900
10118
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod-mini/docs/rules/prefer-tuple-over-array-length.md
9901
10119
  */
9902
10120
  'zod-mini/prefer-tuple-over-array-length'?: Linter.RuleEntry<[]>;
10121
+ /**
10122
+ * Prefer boolean validation when only the success of parsing is used
10123
+ * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod-mini/docs/rules/prefer-validate.md
10124
+ */
10125
+ 'zod-mini/prefer-validate'?: Linter.RuleEntry<[]>;
9903
10126
  /**
9904
10127
  * Require type parameter on `.brand()` functions
9905
10128
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod-mini/docs/rules/require-brand-type-parameter.md
@@ -9965,11 +10188,21 @@ export interface ESLintSchema {
9965
10188
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod/docs/rules/no-duplicate-schema-methods.md
9966
10189
  */
9967
10190
  'zod/no-duplicate-schema-methods'?: Linter.RuleEntry<[]>;
10191
+ /**
10192
+ * Disallow non-static values passed as arguments in a Zod schema expression
10193
+ * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod/docs/rules/no-dynamic-schema-value.md
10194
+ */
10195
+ 'zod/no-dynamic-schema-value'?: Linter.RuleEntry<[]>;
9968
10196
  /**
9969
10197
  * Disallow usage of `z.custom()` without arguments
9970
10198
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod/docs/rules/no-empty-custom-schema.md
9971
10199
  */
9972
10200
  'zod/no-empty-custom-schema'?: Linter.RuleEntry<[]>;
10201
+ /**
10202
+ * Disallow constructing a Zod schema inside a function body
10203
+ * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod/docs/rules/no-function-scoped-schema.md
10204
+ */
10205
+ 'zod/no-function-scoped-schema'?: Linter.RuleEntry<[]>;
9973
10206
  /**
9974
10207
  * Disallow deprecated `z.nativeEnum()` in favor of `z.enum()`.
9975
10208
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod/docs/rules/no-native-enum.md
@@ -10111,6 +10344,11 @@ export interface ESLintSchema {
10111
10344
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod/docs/rules/prefer-tuple-over-array-length.md
10112
10345
  */
10113
10346
  'zod/prefer-tuple-over-array-length'?: Linter.RuleEntry<[]>;
10347
+ /**
10348
+ * Prefer boolean validation when only the success of parsing is used
10349
+ * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod/docs/rules/prefer-validate.md
10350
+ */
10351
+ 'zod/prefer-validate'?: Linter.RuleEntry<[]>;
10114
10352
  /**
10115
10353
  * Require type parameter on `.brand()` functions
10116
10354
  * @see https://github.com/marcalexiei/eslint-zod/blob/HEAD/plugins/eslint-plugin-zod/docs/rules/require-brand-type-parameter.md
@@ -10294,6 +10532,30 @@ type HtmlEslintReactNoInvalidAttrValue = [] | [{
10294
10532
  valuePattern?: string;
10295
10533
  }[];
10296
10534
  }];
10535
+ // ----- @html-eslint/react/no-restricted-attr-values -----
10536
+ type HtmlEslintReactNoRestrictedAttrValues = {
10537
+ attrPatterns: string[];
10538
+ attrValuePatterns: string[];
10539
+ message?: string;
10540
+ }[];
10541
+ // ----- @html-eslint/react/no-restricted-attrs -----
10542
+ type HtmlEslintReactNoRestrictedAttrs = {
10543
+ tagPatterns: string[];
10544
+ attrPatterns: string[];
10545
+ message?: string;
10546
+ }[];
10547
+ // ----- @html-eslint/react/require-attrs -----
10548
+ type HtmlEslintReactRequireAttrs = {
10549
+ tag: string;
10550
+ attr: string;
10551
+ value?: (string | boolean);
10552
+ message?: string;
10553
+ conditions?: {
10554
+ attr: string;
10555
+ value?: string;
10556
+ kind: ("present" | "absent" | "equal" | "not-equal");
10557
+ }[];
10558
+ }[];
10297
10559
  // ----- @html-eslint/react/use-baseline -----
10298
10560
  type HtmlEslintReactUseBaseline = [] | [{
10299
10561
  available?: (("widely" | "newly") | number);
@@ -11595,6 +11857,21 @@ type StylisticYieldStarSpacing = [] | [(("before" | "after" | "both" | "neither"
11595
11857
  before?: boolean;
11596
11858
  after?: boolean;
11597
11859
  })];
11860
+ // ----- @tanstack/query/exhaustive-deps -----
11861
+ type TanstackQueryExhaustiveDeps = [] | [{
11862
+ allowlist?: {
11863
+ variables?: string[];
11864
+ types?: string[];
11865
+ };
11866
+ }];
11867
+ // ----- @tanstack/start/no-async-client-component -----
11868
+ type TanstackStartNoAsyncClientComponent = [] | [{
11869
+ ignorePatterns?: string[];
11870
+ }];
11871
+ // ----- @tanstack/start/no-client-code-in-server-component -----
11872
+ type TanstackStartNoClientCodeInServerComponent = [] | [{
11873
+ allowedServerHooks?: string[];
11874
+ }];
11598
11875
  // ----- @typescript-eslint/array-type -----
11599
11876
  type TypescriptEslintArrayType = [] | [{
11600
11877
  default?: ("array" | "generic" | "array-simple");
@@ -12641,37 +12918,17 @@ type AstroJsxA11YAnchorIsValid = [] | [{
12641
12918
  aspects?: [("noHref" | "invalidHref" | "preferButton"), ...(("noHref" | "invalidHref" | "preferButton"))[]];
12642
12919
  [k: string]: unknown | undefined;
12643
12920
  }];
12644
- // ----- astro/jsx-a11y/aria-activedescendant-has-tabindex -----
12645
- type AstroJsxA11YAriaActivedescendantHasTabindex = [] | [{
12646
- [k: string]: unknown | undefined;
12647
- }];
12648
- // ----- astro/jsx-a11y/aria-props -----
12649
- type AstroJsxA11YAriaProps = [] | [{
12650
- [k: string]: unknown | undefined;
12651
- }];
12652
- // ----- astro/jsx-a11y/aria-proptypes -----
12653
- type AstroJsxA11YAriaProptypes = [] | [{
12654
- [k: string]: unknown | undefined;
12655
- }];
12656
12921
  // ----- astro/jsx-a11y/aria-role -----
12657
12922
  type AstroJsxA11YAriaRole = [] | [{
12658
12923
  allowedInvalidRoles?: string[];
12659
12924
  ignoreNonDOM?: boolean;
12660
12925
  [k: string]: unknown | undefined;
12661
12926
  }];
12662
- // ----- astro/jsx-a11y/aria-unsupported-elements -----
12663
- type AstroJsxA11YAriaUnsupportedElements = [] | [{
12664
- [k: string]: unknown | undefined;
12665
- }];
12666
12927
  // ----- astro/jsx-a11y/autocomplete-valid -----
12667
12928
  type AstroJsxA11YAutocompleteValid = [] | [{
12668
12929
  inputComponents?: string[];
12669
12930
  [k: string]: unknown | undefined;
12670
12931
  }];
12671
- // ----- astro/jsx-a11y/click-events-have-key-events -----
12672
- type AstroJsxA11YClickEventsHaveKeyEvents = [] | [{
12673
- [k: string]: unknown | undefined;
12674
- }];
12675
12932
  // ----- astro/jsx-a11y/control-has-associated-label -----
12676
12933
  type AstroJsxA11YControlHasAssociatedLabel = [] | [{
12677
12934
  labelAttributes?: string[];
@@ -12686,14 +12943,6 @@ type AstroJsxA11YHeadingHasContent = [] | [{
12686
12943
  components?: string[];
12687
12944
  [k: string]: unknown | undefined;
12688
12945
  }];
12689
- // ----- astro/jsx-a11y/html-has-lang -----
12690
- type AstroJsxA11YHtmlHasLang = [] | [{
12691
- [k: string]: unknown | undefined;
12692
- }];
12693
- // ----- astro/jsx-a11y/iframe-has-title -----
12694
- type AstroJsxA11YIframeHasTitle = [] | [{
12695
- [k: string]: unknown | undefined;
12696
- }];
12697
12946
  // ----- astro/jsx-a11y/img-redundant-alt -----
12698
12947
  type AstroJsxA11YImgRedundantAlt = [] | [{
12699
12948
  components?: string[];
@@ -12714,10 +12963,6 @@ type AstroJsxA11YLabelHasAssociatedControl = [] | [{
12714
12963
  depth?: number;
12715
12964
  [k: string]: unknown | undefined;
12716
12965
  }];
12717
- // ----- astro/jsx-a11y/lang -----
12718
- type AstroJsxA11YLang = [] | [{
12719
- [k: string]: unknown | undefined;
12720
- }];
12721
12966
  // ----- astro/jsx-a11y/media-has-caption -----
12722
12967
  type AstroJsxA11YMediaHasCaption = [] | [{
12723
12968
  audio?: string[];
@@ -12731,14 +12976,6 @@ type AstroJsxA11YMouseEventsHaveKeyEvents = [] | [{
12731
12976
  hoverOutHandlers?: string[];
12732
12977
  [k: string]: unknown | undefined;
12733
12978
  }];
12734
- // ----- astro/jsx-a11y/no-access-key -----
12735
- type AstroJsxA11YNoAccessKey = [] | [{
12736
- [k: string]: unknown | undefined;
12737
- }];
12738
- // ----- astro/jsx-a11y/no-aria-hidden-on-focusable -----
12739
- type AstroJsxA11YNoAriaHiddenOnFocusable = [] | [{
12740
- [k: string]: unknown | undefined;
12741
- }];
12742
12979
  // ----- astro/jsx-a11y/no-autofocus -----
12743
12980
  type AstroJsxA11YNoAutofocus = [] | [{
12744
12981
  ignoreNonDOM?: boolean;
@@ -12777,26 +13014,6 @@ type AstroJsxA11YNoStaticElementInteractions = [] | [{
12777
13014
  handlers?: string[];
12778
13015
  [k: string]: unknown | undefined;
12779
13016
  }];
12780
- // ----- astro/jsx-a11y/prefer-tag-over-role -----
12781
- type AstroJsxA11YPreferTagOverRole = [] | [{
12782
- [k: string]: unknown | undefined;
12783
- }];
12784
- // ----- astro/jsx-a11y/role-has-required-aria-props -----
12785
- type AstroJsxA11YRoleHasRequiredAriaProps = [] | [{
12786
- [k: string]: unknown | undefined;
12787
- }];
12788
- // ----- astro/jsx-a11y/role-supports-aria-props -----
12789
- type AstroJsxA11YRoleSupportsAriaProps = [] | [{
12790
- [k: string]: unknown | undefined;
12791
- }];
12792
- // ----- astro/jsx-a11y/scope -----
12793
- type AstroJsxA11YScope = [] | [{
12794
- [k: string]: unknown | undefined;
12795
- }];
12796
- // ----- astro/jsx-a11y/tabindex-no-positive -----
12797
- type AstroJsxA11YTabindexNoPositive = [] | [{
12798
- [k: string]: unknown | undefined;
12799
- }];
12800
13017
  // ----- astro/no-unsafe-inline-scripts -----
12801
13018
  type AstroNoUnsafeInlineScripts = [] | [{
12802
13019
  allowDefineVars?: boolean;
@@ -16883,12 +17100,8 @@ type IndentLegacy = [] | [("tab" | number)] | [("tab" | number), {
16883
17100
  type InitDeclarations = ([] | ["always"] | [] | ["never"] | ["never", {
16884
17101
  ignoreForLoopInit?: boolean;
16885
17102
  }]);
16886
- // ----- jsx-a11y/accessible-emoji -----
16887
- type JsxA11YAccessibleEmoji = [] | [{
16888
- [k: string]: unknown | undefined;
16889
- }];
16890
- // ----- jsx-a11y/alt-text -----
16891
- type JsxA11YAltText = [] | [{
17103
+ // ----- jsx-a11y-x/alt-text -----
17104
+ type JsxA11YXAltText = [] | [{
16892
17105
  elements?: string[];
16893
17106
  img?: string[];
16894
17107
  object?: string[];
@@ -16896,56 +17109,36 @@ type JsxA11YAltText = [] | [{
16896
17109
  "input[type=\"image\"]"?: string[];
16897
17110
  [k: string]: unknown | undefined;
16898
17111
  }];
16899
- // ----- jsx-a11y/anchor-ambiguous-text -----
16900
- type JsxA11YAnchorAmbiguousText = [] | [{
17112
+ // ----- jsx-a11y-x/anchor-ambiguous-text -----
17113
+ type JsxA11YXAnchorAmbiguousText = [] | [{
16901
17114
  words?: string[];
16902
17115
  [k: string]: unknown | undefined;
16903
17116
  }];
16904
- // ----- jsx-a11y/anchor-has-content -----
16905
- type JsxA11YAnchorHasContent = [] | [{
17117
+ // ----- jsx-a11y-x/anchor-has-content -----
17118
+ type JsxA11YXAnchorHasContent = [] | [{
16906
17119
  components?: string[];
16907
17120
  [k: string]: unknown | undefined;
16908
17121
  }];
16909
- // ----- jsx-a11y/anchor-is-valid -----
16910
- type JsxA11YAnchorIsValid = [] | [{
17122
+ // ----- jsx-a11y-x/anchor-is-valid -----
17123
+ type JsxA11YXAnchorIsValid = [] | [{
16911
17124
  components?: string[];
16912
17125
  specialLink?: string[];
16913
17126
  aspects?: [("noHref" | "invalidHref" | "preferButton"), ...(("noHref" | "invalidHref" | "preferButton"))[]];
16914
17127
  [k: string]: unknown | undefined;
16915
17128
  }];
16916
- // ----- jsx-a11y/aria-activedescendant-has-tabindex -----
16917
- type JsxA11YAriaActivedescendantHasTabindex = [] | [{
16918
- [k: string]: unknown | undefined;
16919
- }];
16920
- // ----- jsx-a11y/aria-props -----
16921
- type JsxA11YAriaProps = [] | [{
16922
- [k: string]: unknown | undefined;
16923
- }];
16924
- // ----- jsx-a11y/aria-proptypes -----
16925
- type JsxA11YAriaProptypes = [] | [{
16926
- [k: string]: unknown | undefined;
16927
- }];
16928
- // ----- jsx-a11y/aria-role -----
16929
- type JsxA11YAriaRole = [] | [{
17129
+ // ----- jsx-a11y-x/aria-role -----
17130
+ type JsxA11YXAriaRole = [] | [{
16930
17131
  allowedInvalidRoles?: string[];
16931
17132
  ignoreNonDOM?: boolean;
16932
17133
  [k: string]: unknown | undefined;
16933
17134
  }];
16934
- // ----- jsx-a11y/aria-unsupported-elements -----
16935
- type JsxA11YAriaUnsupportedElements = [] | [{
16936
- [k: string]: unknown | undefined;
16937
- }];
16938
- // ----- jsx-a11y/autocomplete-valid -----
16939
- type JsxA11YAutocompleteValid = [] | [{
17135
+ // ----- jsx-a11y-x/autocomplete-valid -----
17136
+ type JsxA11YXAutocompleteValid = [] | [{
16940
17137
  inputComponents?: string[];
16941
17138
  [k: string]: unknown | undefined;
16942
17139
  }];
16943
- // ----- jsx-a11y/click-events-have-key-events -----
16944
- type JsxA11YClickEventsHaveKeyEvents = [] | [{
16945
- [k: string]: unknown | undefined;
16946
- }];
16947
- // ----- jsx-a11y/control-has-associated-label -----
16948
- type JsxA11YControlHasAssociatedLabel = [] | [{
17140
+ // ----- jsx-a11y-x/control-has-associated-label -----
17141
+ type JsxA11YXControlHasAssociatedLabel = [] | [{
16949
17142
  labelAttributes?: string[];
16950
17143
  controlComponents?: string[];
16951
17144
  ignoreElements?: string[];
@@ -16953,32 +17146,24 @@ type JsxA11YControlHasAssociatedLabel = [] | [{
16953
17146
  depth?: number;
16954
17147
  [k: string]: unknown | undefined;
16955
17148
  }];
16956
- // ----- jsx-a11y/heading-has-content -----
16957
- type JsxA11YHeadingHasContent = [] | [{
17149
+ // ----- jsx-a11y-x/heading-has-content -----
17150
+ type JsxA11YXHeadingHasContent = [] | [{
16958
17151
  components?: string[];
16959
17152
  [k: string]: unknown | undefined;
16960
17153
  }];
16961
- // ----- jsx-a11y/html-has-lang -----
16962
- type JsxA11YHtmlHasLang = [] | [{
16963
- [k: string]: unknown | undefined;
16964
- }];
16965
- // ----- jsx-a11y/iframe-has-title -----
16966
- type JsxA11YIframeHasTitle = [] | [{
16967
- [k: string]: unknown | undefined;
16968
- }];
16969
- // ----- jsx-a11y/img-redundant-alt -----
16970
- type JsxA11YImgRedundantAlt = [] | [{
17154
+ // ----- jsx-a11y-x/img-redundant-alt -----
17155
+ type JsxA11YXImgRedundantAlt = [] | [{
16971
17156
  components?: string[];
16972
17157
  words?: string[];
16973
17158
  [k: string]: unknown | undefined;
16974
17159
  }];
16975
- // ----- jsx-a11y/interactive-supports-focus -----
16976
- type JsxA11YInteractiveSupportsFocus = [] | [{
17160
+ // ----- jsx-a11y-x/interactive-supports-focus -----
17161
+ type JsxA11YXInteractiveSupportsFocus = [] | [{
16977
17162
  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")[];
16978
17163
  [k: string]: unknown | undefined;
16979
17164
  }];
16980
- // ----- jsx-a11y/label-has-associated-control -----
16981
- type JsxA11YLabelHasAssociatedControl = [] | [{
17165
+ // ----- jsx-a11y-x/label-has-associated-control -----
17166
+ type JsxA11YXLabelHasAssociatedControl = [] | [{
16982
17167
  labelComponents?: string[];
16983
17168
  labelAttributes?: string[];
16984
17169
  controlComponents?: string[];
@@ -16986,106 +17171,57 @@ type JsxA11YLabelHasAssociatedControl = [] | [{
16986
17171
  depth?: number;
16987
17172
  [k: string]: unknown | undefined;
16988
17173
  }];
16989
- // ----- jsx-a11y/label-has-for -----
16990
- type JsxA11YLabelHasFor = [] | [{
16991
- components?: string[];
16992
- required?: (("nesting" | "id") | {
16993
- some: ("nesting" | "id")[];
16994
- [k: string]: unknown | undefined;
16995
- } | {
16996
- every: ("nesting" | "id")[];
16997
- [k: string]: unknown | undefined;
16998
- });
16999
- allowChildren?: boolean;
17000
- [k: string]: unknown | undefined;
17001
- }];
17002
- // ----- jsx-a11y/lang -----
17003
- type JsxA11YLang = [] | [{
17004
- [k: string]: unknown | undefined;
17005
- }];
17006
- // ----- jsx-a11y/media-has-caption -----
17007
- type JsxA11YMediaHasCaption = [] | [{
17174
+ // ----- jsx-a11y-x/media-has-caption -----
17175
+ type JsxA11YXMediaHasCaption = [] | [{
17008
17176
  audio?: string[];
17009
17177
  video?: string[];
17010
17178
  track?: string[];
17011
17179
  [k: string]: unknown | undefined;
17012
17180
  }];
17013
- // ----- jsx-a11y/mouse-events-have-key-events -----
17014
- type JsxA11YMouseEventsHaveKeyEvents = [] | [{
17181
+ // ----- jsx-a11y-x/mouse-events-have-key-events -----
17182
+ type JsxA11YXMouseEventsHaveKeyEvents = [] | [{
17015
17183
  hoverInHandlers?: string[];
17016
17184
  hoverOutHandlers?: string[];
17017
17185
  [k: string]: unknown | undefined;
17018
17186
  }];
17019
- // ----- jsx-a11y/no-access-key -----
17020
- type JsxA11YNoAccessKey = [] | [{
17021
- [k: string]: unknown | undefined;
17022
- }];
17023
- // ----- jsx-a11y/no-aria-hidden-on-focusable -----
17024
- type JsxA11YNoAriaHiddenOnFocusable = [] | [{
17025
- [k: string]: unknown | undefined;
17026
- }];
17027
- // ----- jsx-a11y/no-autofocus -----
17028
- type JsxA11YNoAutofocus = [] | [{
17187
+ // ----- jsx-a11y-x/no-autofocus -----
17188
+ type JsxA11YXNoAutofocus = [] | [{
17029
17189
  ignoreNonDOM?: boolean;
17030
17190
  [k: string]: unknown | undefined;
17031
17191
  }];
17032
- // ----- jsx-a11y/no-distracting-elements -----
17033
- type JsxA11YNoDistractingElements = [] | [{
17192
+ // ----- jsx-a11y-x/no-distracting-elements -----
17193
+ type JsxA11YXNoDistractingElements = [] | [{
17034
17194
  elements?: ("marquee" | "blink")[];
17035
17195
  [k: string]: unknown | undefined;
17036
17196
  }];
17037
- // ----- jsx-a11y/no-interactive-element-to-noninteractive-role -----
17038
- type JsxA11YNoInteractiveElementToNoninteractiveRole = [] | [{
17197
+ // ----- jsx-a11y-x/no-interactive-element-to-noninteractive-role -----
17198
+ type JsxA11YXNoInteractiveElementToNoninteractiveRole = [] | [{
17039
17199
  [k: string]: string[] | undefined;
17040
17200
  }];
17041
- // ----- jsx-a11y/no-noninteractive-element-interactions -----
17042
- type JsxA11YNoNoninteractiveElementInteractions = [] | [{
17201
+ // ----- jsx-a11y-x/no-noninteractive-element-interactions -----
17202
+ type JsxA11YXNoNoninteractiveElementInteractions = [] | [{
17043
17203
  handlers?: string[];
17044
17204
  [k: string]: unknown | undefined;
17045
17205
  }];
17046
- // ----- jsx-a11y/no-noninteractive-element-to-interactive-role -----
17047
- type JsxA11YNoNoninteractiveElementToInteractiveRole = [] | [{
17206
+ // ----- jsx-a11y-x/no-noninteractive-element-to-interactive-role -----
17207
+ type JsxA11YXNoNoninteractiveElementToInteractiveRole = [] | [{
17048
17208
  [k: string]: string[] | undefined;
17049
17209
  }];
17050
- // ----- jsx-a11y/no-noninteractive-tabindex -----
17051
- type JsxA11YNoNoninteractiveTabindex = [] | [{
17210
+ // ----- jsx-a11y-x/no-noninteractive-tabindex -----
17211
+ type JsxA11YXNoNoninteractiveTabindex = [] | [{
17052
17212
  roles?: string[];
17053
17213
  tags?: string[];
17054
17214
  [k: string]: unknown | undefined;
17055
17215
  }];
17056
- // ----- jsx-a11y/no-onchange -----
17057
- type JsxA11YNoOnchange = [] | [{
17058
- [k: string]: unknown | undefined;
17059
- }];
17060
- // ----- jsx-a11y/no-redundant-roles -----
17061
- type JsxA11YNoRedundantRoles = [] | [{
17216
+ // ----- jsx-a11y-x/no-redundant-roles -----
17217
+ type JsxA11YXNoRedundantRoles = [] | [{
17062
17218
  [k: string]: string[] | undefined;
17063
17219
  }];
17064
- // ----- jsx-a11y/no-static-element-interactions -----
17065
- type JsxA11YNoStaticElementInteractions = [] | [{
17220
+ // ----- jsx-a11y-x/no-static-element-interactions -----
17221
+ type JsxA11YXNoStaticElementInteractions = [] | [{
17066
17222
  handlers?: string[];
17067
17223
  [k: string]: unknown | undefined;
17068
17224
  }];
17069
- // ----- jsx-a11y/prefer-tag-over-role -----
17070
- type JsxA11YPreferTagOverRole = [] | [{
17071
- [k: string]: unknown | undefined;
17072
- }];
17073
- // ----- jsx-a11y/role-has-required-aria-props -----
17074
- type JsxA11YRoleHasRequiredAriaProps = [] | [{
17075
- [k: string]: unknown | undefined;
17076
- }];
17077
- // ----- jsx-a11y/role-supports-aria-props -----
17078
- type JsxA11YRoleSupportsAriaProps = [] | [{
17079
- [k: string]: unknown | undefined;
17080
- }];
17081
- // ----- jsx-a11y/scope -----
17082
- type JsxA11YScope = [] | [{
17083
- [k: string]: unknown | undefined;
17084
- }];
17085
- // ----- jsx-a11y/tabindex-no-positive -----
17086
- type JsxA11YTabindexNoPositive = [] | [{
17087
- [k: string]: unknown | undefined;
17088
- }];
17089
17225
  // ----- jsx-quotes -----
17090
17226
  type JsxQuotes = [] | [("prefer-single" | "prefer-double")];
17091
17227
  // ----- key-spacing -----
@@ -18626,6 +18762,11 @@ type PackageJsonRestrictDependencyRanges = [] | [({
18626
18762
  forVersions?: string;
18627
18763
  rangeType: (("^" | "~" | "<" | "<=" | ">" | ">=" | "caret" | "pin" | "tilde" | "lt" | "le" | "gt" | "ge") | ("^" | "~" | "<" | "<=" | ">" | ">=" | "caret" | "pin" | "tilde" | "lt" | "le" | "gt" | "ge")[]);
18628
18764
  }[])];
18765
+ // ----- package-json/restrict-dist-tags -----
18766
+ type PackageJsonRestrictDistTags = [] | [{
18767
+ allowed?: string[];
18768
+ allowedFor?: ("dependencies" | "devDependencies" | "optionalDependencies" | "peerDependencies")[];
18769
+ }];
18629
18770
  // ----- package-json/restrict-private-properties -----
18630
18771
  type PackageJsonRestrictPrivateProperties = [] | [{
18631
18772
  blockedProperties?: string[];
@@ -21440,10 +21581,20 @@ type PlaywrightMissingPlaywrightAwait = [] | [{
21440
21581
  customMatchers?: string[];
21441
21582
  includePageLocatorMethods?: boolean;
21442
21583
  }];
21584
+ // ----- playwright/no-action-timeout -----
21585
+ type PlaywrightNoActionTimeout = [] | [{
21586
+ allow?: string[];
21587
+ }];
21443
21588
  // ----- playwright/no-hooks -----
21444
21589
  type PlaywrightNoHooks = [] | [{
21445
21590
  allow?: unknown[];
21446
21591
  }];
21592
+ // ----- playwright/no-magic-timeouts -----
21593
+ type PlaywrightNoMagicTimeouts = [] | [{
21594
+ allow?: number[];
21595
+ minOccurrences?: number;
21596
+ properties?: string[];
21597
+ }];
21447
21598
  // ----- playwright/no-raw-locators -----
21448
21599
  type PlaywrightNoRawLocators = [] | [{
21449
21600
  allowed?: string[];
@@ -21464,13 +21615,25 @@ type PlaywrightNoRestrictedRoles = [] | [(string | {
21464
21615
  })[]];
21465
21616
  // ----- playwright/no-skipped-test -----
21466
21617
  type PlaywrightNoSkippedTest = [] | [{
21467
- allowConditional?: boolean;
21618
+ allowConditional?: (boolean | {
21619
+ fixme?: boolean;
21620
+ skip?: boolean;
21621
+ });
21468
21622
  disallowFixme?: boolean;
21469
21623
  }];
21470
21624
  // ----- playwright/no-slowed-test -----
21471
21625
  type PlaywrightNoSlowedTest = [] | [{
21472
21626
  allowConditional?: boolean;
21473
21627
  }];
21628
+ // ----- playwright/no-template-literal-title -----
21629
+ type PlaywrightNoTemplateLiteralTitle = [] | [{
21630
+ ignore?: ("test" | "test.describe" | "test.step")[];
21631
+ }];
21632
+ // ----- playwright/prefer-ending-with-an-expect -----
21633
+ type PlaywrightPreferEndingWithAnExpect = [] | [{
21634
+ assertFunctionNames?: string[];
21635
+ assertFunctionPatterns?: string[];
21636
+ }];
21474
21637
  // ----- playwright/prefer-lowercase-title -----
21475
21638
  type PlaywrightPreferLowercaseTitle = [] | [{
21476
21639
  allowedPrefixes?: string[];
@@ -21481,6 +21644,11 @@ type PlaywrightPreferLowercaseTitle = [] | [{
21481
21644
  type PlaywrightPreferNativeLocators = [] | [{
21482
21645
  testIdAttribute?: string;
21483
21646
  }];
21647
+ // ----- playwright/require-annotation-reason -----
21648
+ type PlaywrightRequireAnnotationReason = [] | [{
21649
+ annotations?: ("fail" | "fixme" | "skip" | "slow")[];
21650
+ pattern?: string;
21651
+ }];
21484
21652
  // ----- playwright/require-hook -----
21485
21653
  type PlaywrightRequireHook = [] | [{
21486
21654
  allowedFunctionCalls?: string[];
@@ -21853,6 +22021,9 @@ type UnicornFilenameCase = [] | [({
21853
22021
  })[];
21854
22022
  multipleFileExtensions?: boolean;
21855
22023
  checkDirectories?: boolean;
22024
+ directoryRoots?: (string | {
22025
+ [k: string]: unknown | undefined;
22026
+ })[];
21856
22027
  } | {
21857
22028
  cases?: {
21858
22029
  camelCase?: boolean;
@@ -21866,6 +22037,9 @@ type UnicornFilenameCase = [] | [({
21866
22037
  })[];
21867
22038
  multipleFileExtensions?: boolean;
21868
22039
  checkDirectories?: boolean;
22040
+ directoryRoots?: (string | {
22041
+ [k: string]: unknown | undefined;
22042
+ })[];
21869
22043
  })];
21870
22044
  // ----- unicorn/id-match -----
21871
22045
  type UnicornIdMatch = [] | [string] | [string, {
@@ -21952,10 +22126,22 @@ type UnicornNoArrayReverse = [] | [{
21952
22126
  type UnicornNoArraySort = [] | [{
21953
22127
  allowExpressionStatement?: boolean;
21954
22128
  }];
22129
+ // ----- unicorn/no-break-in-nested-loop -----
22130
+ type UnicornNoBreakInNestedLoop = [] | [{
22131
+ checkContinue?: boolean;
22132
+ }];
22133
+ // ----- unicorn/no-deprecated-css-features -----
22134
+ type UnicornNoDeprecatedCssFeatures = [] | [{
22135
+ allow?: string[];
22136
+ }];
21955
22137
  // ----- unicorn/no-empty-file -----
21956
22138
  type UnicornNoEmptyFile = [] | [{
21957
22139
  allowComments?: boolean;
21958
22140
  }];
22141
+ // ----- unicorn/no-immediate-mutation -----
22142
+ type UnicornNoImmediateMutation = [] | [{
22143
+ checkConditionals?: boolean;
22144
+ }];
21959
22145
  // ----- unicorn/no-instanceof-builtins -----
21960
22146
  type UnicornNoInstanceofBuiltins = [] | [{
21961
22147
  useErrorIsError?: boolean;
@@ -21996,6 +22182,10 @@ type UnicornNoNull = [] | [{
21996
22182
  type UnicornNoTypeofUndefined = [] | [{
21997
22183
  checkGlobalVariables?: boolean;
21998
22184
  }];
22185
+ // ----- unicorn/no-unknown-pseudo-selectors -----
22186
+ type UnicornNoUnknownPseudoSelectors = [] | [{
22187
+ allow?: string[];
22188
+ }];
21999
22189
  // ----- unicorn/no-unnecessary-polyfills -----
22000
22190
  type UnicornNoUnnecessaryPolyfills = [] | [{
22001
22191
  targets?: (string | string[] | {
@@ -22006,6 +22196,10 @@ type UnicornNoUnnecessaryPolyfills = [] | [{
22006
22196
  type UnicornNoUnreadableArrayDestructuring = [] | [{
22007
22197
  maximumIgnoredElements?: number;
22008
22198
  }];
22199
+ // ----- unicorn/no-unscoped-css-nesting-selector -----
22200
+ type UnicornNoUnscopedCssNestingSelector = [] | [{
22201
+ scopingRootAtRules?: string[];
22202
+ }];
22009
22203
  // ----- unicorn/no-useless-undefined -----
22010
22204
  type UnicornNoUselessUndefined = [] | [{
22011
22205
  checkArguments?: boolean;
@@ -22059,9 +22253,14 @@ type UnicornPreferAt = [] | [{
22059
22253
  getLastElementFunctions?: string[];
22060
22254
  checkAllIndexAccess?: boolean;
22061
22255
  }];
22256
+ // ----- unicorn/prefer-combined-guards -----
22257
+ type UnicornPreferCombinedGuards = [] | [{
22258
+ checkCompoundConditions?: boolean;
22259
+ }];
22062
22260
  // ----- unicorn/prefer-continue -----
22063
22261
  type UnicornPreferContinue = [] | [{
22064
22262
  maximumStatements?: number;
22263
+ checkShortBodies?: boolean;
22065
22264
  }];
22066
22265
  // ----- unicorn/prefer-dom-node-html-methods -----
22067
22266
  type UnicornPreferDomNodeHtmlMethods = [] | [{
@@ -22071,6 +22270,7 @@ type UnicornPreferDomNodeHtmlMethods = [] | [{
22071
22270
  // ----- unicorn/prefer-early-return -----
22072
22271
  type UnicornPreferEarlyReturn = [] | [{
22073
22272
  maximumStatements?: number;
22273
+ checkShortBodies?: boolean;
22074
22274
  }];
22075
22275
  // ----- unicorn/prefer-explicit-viewport-units -----
22076
22276
  type UnicornPreferExplicitViewportUnits = [] | [{