@yunarch/config-web 0.3.1 → 0.5.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.
@@ -1479,233 +1479,238 @@ interface RuleOptions {
1479
1479
  'implicit-arrow-linebreak'?: Linter.RuleEntry<ImplicitArrowLinebreak>
1480
1480
  /**
1481
1481
  * Enforce or ban the use of inline type-only markers for named imports.
1482
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/consistent-type-specifier-style.md
1482
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/consistent-type-specifier-style.md
1483
1483
  */
1484
1484
  'import/consistent-type-specifier-style'?: Linter.RuleEntry<ImportConsistentTypeSpecifierStyle>
1485
1485
  /**
1486
1486
  * Ensure a default export is present, given a default import.
1487
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/default.md
1487
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/default.md
1488
1488
  */
1489
1489
  'import/default'?: Linter.RuleEntry<[]>
1490
1490
  /**
1491
1491
  * Enforce a leading comment with the webpackChunkName for dynamic imports.
1492
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/dynamic-import-chunkname.md
1492
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/dynamic-import-chunkname.md
1493
1493
  */
1494
1494
  'import/dynamic-import-chunkname'?: Linter.RuleEntry<ImportDynamicImportChunkname>
1495
1495
  /**
1496
1496
  * Forbid any invalid exports, i.e. re-export of the same name.
1497
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/export.md
1497
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/export.md
1498
1498
  */
1499
1499
  'import/export'?: Linter.RuleEntry<[]>
1500
1500
  /**
1501
1501
  * Ensure all exports appear after other statements.
1502
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/exports-last.md
1502
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/exports-last.md
1503
1503
  */
1504
1504
  'import/exports-last'?: Linter.RuleEntry<[]>
1505
1505
  /**
1506
1506
  * Ensure consistent use of file extension within the import path.
1507
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/extensions.md
1507
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/extensions.md
1508
1508
  */
1509
1509
  'import/extensions'?: Linter.RuleEntry<ImportExtensions>
1510
1510
  /**
1511
1511
  * Ensure all imports appear before other statements.
1512
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/first.md
1512
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/first.md
1513
1513
  */
1514
1514
  'import/first'?: Linter.RuleEntry<ImportFirst>
1515
1515
  /**
1516
1516
  * Prefer named exports to be grouped together in a single export declaration.
1517
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/group-exports.md
1517
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/group-exports.md
1518
1518
  */
1519
1519
  'import/group-exports'?: Linter.RuleEntry<[]>
1520
1520
  /**
1521
1521
  * Replaced by `import-x/first`.
1522
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/imports-first.md
1522
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/imports-first.md
1523
1523
  * @deprecated
1524
1524
  */
1525
1525
  'import/imports-first'?: Linter.RuleEntry<ImportImportsFirst>
1526
1526
  /**
1527
1527
  * Enforce the maximum number of dependencies a module can have.
1528
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/max-dependencies.md
1528
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/max-dependencies.md
1529
1529
  */
1530
1530
  'import/max-dependencies'?: Linter.RuleEntry<ImportMaxDependencies>
1531
1531
  /**
1532
1532
  * Ensure named imports correspond to a named export in the remote file.
1533
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/named.md
1533
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/named.md
1534
1534
  */
1535
1535
  'import/named'?: Linter.RuleEntry<ImportNamed>
1536
1536
  /**
1537
1537
  * Ensure imported namespaces contain dereferenced properties as they are dereferenced.
1538
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/namespace.md
1538
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/namespace.md
1539
1539
  */
1540
1540
  'import/namespace'?: Linter.RuleEntry<ImportNamespace>
1541
1541
  /**
1542
1542
  * Enforce a newline after import statements.
1543
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/newline-after-import.md
1543
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/newline-after-import.md
1544
1544
  */
1545
1545
  'import/newline-after-import'?: Linter.RuleEntry<ImportNewlineAfterImport>
1546
1546
  /**
1547
1547
  * Forbid import of modules using absolute paths.
1548
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-absolute-path.md
1548
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-absolute-path.md
1549
1549
  */
1550
1550
  'import/no-absolute-path'?: Linter.RuleEntry<ImportNoAbsolutePath>
1551
1551
  /**
1552
1552
  * Forbid AMD `require` and `define` calls.
1553
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-amd.md
1553
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-amd.md
1554
1554
  */
1555
1555
  'import/no-amd'?: Linter.RuleEntry<[]>
1556
1556
  /**
1557
1557
  * Forbid anonymous values as default exports.
1558
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-anonymous-default-export.md
1558
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-anonymous-default-export.md
1559
1559
  */
1560
1560
  'import/no-anonymous-default-export'?: Linter.RuleEntry<ImportNoAnonymousDefaultExport>
1561
1561
  /**
1562
1562
  * Forbid CommonJS `require` calls and `module.exports` or `exports.*`.
1563
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-commonjs.md
1563
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-commonjs.md
1564
1564
  */
1565
1565
  'import/no-commonjs'?: Linter.RuleEntry<ImportNoCommonjs>
1566
1566
  /**
1567
1567
  * Forbid a module from importing a module with a dependency path back to itself.
1568
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-cycle.md
1568
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-cycle.md
1569
1569
  */
1570
1570
  'import/no-cycle'?: Linter.RuleEntry<ImportNoCycle>
1571
1571
  /**
1572
1572
  * Forbid default exports.
1573
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-default-export.md
1573
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-default-export.md
1574
1574
  */
1575
1575
  'import/no-default-export'?: Linter.RuleEntry<[]>
1576
1576
  /**
1577
1577
  * Forbid imported names marked with `@deprecated` documentation tag.
1578
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-deprecated.md
1578
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-deprecated.md
1579
1579
  */
1580
1580
  'import/no-deprecated'?: Linter.RuleEntry<[]>
1581
1581
  /**
1582
1582
  * Forbid repeated import of the same module in multiple places.
1583
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-duplicates.md
1583
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-duplicates.md
1584
1584
  */
1585
1585
  'import/no-duplicates'?: Linter.RuleEntry<ImportNoDuplicates>
1586
1586
  /**
1587
1587
  * Forbid `require()` calls with expressions.
1588
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-dynamic-require.md
1588
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-dynamic-require.md
1589
1589
  */
1590
1590
  'import/no-dynamic-require'?: Linter.RuleEntry<ImportNoDynamicRequire>
1591
1591
  /**
1592
1592
  * Forbid empty named import blocks.
1593
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-empty-named-blocks.md
1593
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-empty-named-blocks.md
1594
1594
  */
1595
1595
  'import/no-empty-named-blocks'?: Linter.RuleEntry<[]>
1596
1596
  /**
1597
1597
  * Forbid the use of extraneous packages.
1598
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-extraneous-dependencies.md
1598
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-extraneous-dependencies.md
1599
1599
  */
1600
1600
  'import/no-extraneous-dependencies'?: Linter.RuleEntry<ImportNoExtraneousDependencies>
1601
1601
  /**
1602
1602
  * Forbid import statements with CommonJS module.exports.
1603
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-import-module-exports.md
1603
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-import-module-exports.md
1604
1604
  */
1605
1605
  'import/no-import-module-exports'?: Linter.RuleEntry<ImportNoImportModuleExports>
1606
1606
  /**
1607
1607
  * Forbid importing the submodules of other modules.
1608
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-internal-modules.md
1608
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-internal-modules.md
1609
1609
  */
1610
1610
  'import/no-internal-modules'?: Linter.RuleEntry<ImportNoInternalModules>
1611
1611
  /**
1612
1612
  * Forbid the use of mutable exports with `var` or `let`.
1613
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-mutable-exports.md
1613
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-mutable-exports.md
1614
1614
  */
1615
1615
  'import/no-mutable-exports'?: Linter.RuleEntry<[]>
1616
1616
  /**
1617
1617
  * Forbid use of exported name as identifier of default export.
1618
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-named-as-default.md
1618
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-named-as-default.md
1619
1619
  */
1620
1620
  'import/no-named-as-default'?: Linter.RuleEntry<[]>
1621
1621
  /**
1622
1622
  * Forbid use of exported name as property of default export.
1623
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-named-as-default-member.md
1623
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-named-as-default-member.md
1624
1624
  */
1625
1625
  'import/no-named-as-default-member'?: Linter.RuleEntry<[]>
1626
1626
  /**
1627
1627
  * Forbid named default exports.
1628
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-named-default.md
1628
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-named-default.md
1629
1629
  */
1630
1630
  'import/no-named-default'?: Linter.RuleEntry<[]>
1631
1631
  /**
1632
1632
  * Forbid named exports.
1633
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-named-export.md
1633
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-named-export.md
1634
1634
  */
1635
1635
  'import/no-named-export'?: Linter.RuleEntry<[]>
1636
1636
  /**
1637
1637
  * Forbid namespace (a.k.a. "wildcard" `*`) imports.
1638
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-namespace.md
1638
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-namespace.md
1639
1639
  */
1640
1640
  'import/no-namespace'?: Linter.RuleEntry<ImportNoNamespace>
1641
1641
  /**
1642
1642
  * Forbid Node.js builtin modules.
1643
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-nodejs-modules.md
1643
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-nodejs-modules.md
1644
1644
  */
1645
1645
  'import/no-nodejs-modules'?: Linter.RuleEntry<ImportNoNodejsModules>
1646
1646
  /**
1647
1647
  * Forbid importing packages through relative paths.
1648
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-relative-packages.md
1648
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-relative-packages.md
1649
1649
  */
1650
1650
  'import/no-relative-packages'?: Linter.RuleEntry<ImportNoRelativePackages>
1651
1651
  /**
1652
1652
  * Forbid importing modules from parent directories.
1653
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-relative-parent-imports.md
1653
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-relative-parent-imports.md
1654
1654
  */
1655
1655
  'import/no-relative-parent-imports'?: Linter.RuleEntry<ImportNoRelativeParentImports>
1656
1656
  /**
1657
1657
  * Forbid importing a default export by a different name.
1658
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-rename-default.md
1658
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-rename-default.md
1659
1659
  */
1660
1660
  'import/no-rename-default'?: Linter.RuleEntry<ImportNoRenameDefault>
1661
1661
  /**
1662
1662
  * Enforce which files can be imported in a given folder.
1663
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-restricted-paths.md
1663
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-restricted-paths.md
1664
1664
  */
1665
1665
  'import/no-restricted-paths'?: Linter.RuleEntry<ImportNoRestrictedPaths>
1666
1666
  /**
1667
1667
  * Forbid a module from importing itself.
1668
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-self-import.md
1668
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-self-import.md
1669
1669
  */
1670
1670
  'import/no-self-import'?: Linter.RuleEntry<[]>
1671
1671
  /**
1672
1672
  * Forbid unassigned imports.
1673
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-unassigned-import.md
1673
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-unassigned-import.md
1674
1674
  */
1675
1675
  'import/no-unassigned-import'?: Linter.RuleEntry<ImportNoUnassignedImport>
1676
1676
  /**
1677
1677
  * Ensure imports point to a file/module that can be resolved.
1678
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-unresolved.md
1678
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-unresolved.md
1679
1679
  */
1680
1680
  'import/no-unresolved'?: Linter.RuleEntry<ImportNoUnresolved>
1681
1681
  /**
1682
1682
  * Forbid modules without exports, or exports without matching import in another module.
1683
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-unused-modules.md
1683
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-unused-modules.md
1684
1684
  */
1685
1685
  'import/no-unused-modules'?: Linter.RuleEntry<ImportNoUnusedModules>
1686
1686
  /**
1687
1687
  * Forbid unnecessary path segments in import and require statements.
1688
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-useless-path-segments.md
1688
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-useless-path-segments.md
1689
1689
  */
1690
1690
  'import/no-useless-path-segments'?: Linter.RuleEntry<ImportNoUselessPathSegments>
1691
1691
  /**
1692
1692
  * Forbid webpack loader syntax in imports.
1693
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-webpack-loader-syntax.md
1693
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/no-webpack-loader-syntax.md
1694
1694
  */
1695
1695
  'import/no-webpack-loader-syntax'?: Linter.RuleEntry<[]>
1696
1696
  /**
1697
1697
  * Enforce a convention in module import order.
1698
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/order.md
1698
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/order.md
1699
1699
  */
1700
1700
  'import/order'?: Linter.RuleEntry<ImportOrder>
1701
1701
  /**
1702
1702
  * Prefer a default export if module exports a single name or multiple names.
1703
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/prefer-default-export.md
1703
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/prefer-default-export.md
1704
1704
  */
1705
1705
  'import/prefer-default-export'?: Linter.RuleEntry<ImportPreferDefaultExport>
1706
+ /**
1707
+ * Enforce using namespace imports for specific modules, like `react`/`react-dom`, etc.
1708
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/prefer-namespace-import.md
1709
+ */
1710
+ 'import/prefer-namespace-import'?: Linter.RuleEntry<ImportPreferNamespaceImport>
1706
1711
  /**
1707
1712
  * Forbid potentially ambiguous parse goal (`script` vs. `module`).
1708
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/unambiguous.md
1713
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.16.1/docs/rules/unambiguous.md
1709
1714
  */
1710
1715
  'import/unambiguous'?: Linter.RuleEntry<[]>
1711
1716
  /**
@@ -2225,7 +2230,7 @@ interface RuleOptions {
2225
2230
  */
2226
2231
  'no-console'?: Linter.RuleEntry<NoConsole>
2227
2232
  /**
2228
- * Disallow reassigning `const` variables
2233
+ * Disallow reassigning `const`, `using`, and `await using` variables
2229
2234
  * @see https://eslint.org/docs/latest/rules/no-const-assign
2230
2235
  */
2231
2236
  'no-const-assign'?: Linter.RuleEntry<[]>
@@ -3349,670 +3354,690 @@ interface RuleOptions {
3349
3354
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>
3350
3355
  /**
3351
3356
  * Improve regexes by making them shorter, consistent, and safer.
3352
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/better-regex.md
3357
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/better-regex.md
3353
3358
  */
3354
3359
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>
3355
3360
  /**
3356
3361
  * Enforce a specific parameter name in catch clauses.
3357
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/catch-error-name.md
3362
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/catch-error-name.md
3358
3363
  */
3359
3364
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>
3360
3365
  /**
3361
3366
  * Enforce consistent assertion style with `node:assert`.
3362
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-assert.md
3367
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-assert.md
3363
3368
  */
3364
3369
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>
3365
3370
  /**
3366
3371
  * Prefer passing `Date` directly to the constructor when cloning.
3367
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-date-clone.md
3372
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-date-clone.md
3368
3373
  */
3369
3374
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>
3370
3375
  /**
3371
3376
  * Use destructured variables over properties.
3372
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-destructuring.md
3377
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-destructuring.md
3373
3378
  */
3374
3379
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>
3375
3380
  /**
3376
3381
  * Prefer consistent types when spreading a ternary in an array literal.
3377
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-empty-array-spread.md
3382
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-empty-array-spread.md
3378
3383
  */
3379
3384
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>
3380
3385
  /**
3381
3386
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
3382
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-existence-index-check.md
3387
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-existence-index-check.md
3383
3388
  */
3384
3389
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>
3385
3390
  /**
3386
3391
  * Move function definitions to the highest possible scope.
3387
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-function-scoping.md
3392
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-function-scoping.md
3388
3393
  */
3389
3394
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>
3390
3395
  /**
3391
3396
  * Enforce correct `Error` subclassing.
3392
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/custom-error-definition.md
3397
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/custom-error-definition.md
3393
3398
  */
3394
3399
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>
3395
3400
  /**
3396
3401
  * Enforce no spaces between braces.
3397
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/empty-brace-spaces.md
3402
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/empty-brace-spaces.md
3398
3403
  */
3399
3404
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>
3400
3405
  /**
3401
3406
  * Enforce passing a `message` value when creating a built-in error.
3402
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/error-message.md
3407
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/error-message.md
3403
3408
  */
3404
3409
  'unicorn/error-message'?: Linter.RuleEntry<[]>
3405
3410
  /**
3406
3411
  * Require escape sequences to use uppercase or lowercase values.
3407
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/escape-case.md
3412
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/escape-case.md
3408
3413
  */
3409
3414
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>
3410
3415
  /**
3411
3416
  * Add expiration conditions to TODO comments.
3412
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/expiring-todo-comments.md
3417
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/expiring-todo-comments.md
3413
3418
  */
3414
3419
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>
3415
3420
  /**
3416
3421
  * Enforce explicitly comparing the `length` or `size` property of a value.
3417
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/explicit-length-check.md
3422
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/explicit-length-check.md
3418
3423
  */
3419
3424
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>
3420
3425
  /**
3421
3426
  * Enforce a case style for filenames.
3422
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/filename-case.md
3427
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/filename-case.md
3423
3428
  */
3424
3429
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>
3425
3430
  /**
3426
3431
  * Enforce specific import styles per module.
3427
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/import-style.md
3432
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/import-style.md
3428
3433
  */
3429
3434
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>
3430
3435
  /**
3431
3436
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
3432
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/new-for-builtins.md
3437
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/new-for-builtins.md
3433
3438
  */
3434
3439
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>
3435
3440
  /**
3436
3441
  * Enforce specifying rules to disable in `eslint-disable` comments.
3437
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-abusive-eslint-disable.md
3442
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-abusive-eslint-disable.md
3438
3443
  */
3439
3444
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>
3440
3445
  /**
3441
3446
  * Disallow recursive access to `this` within getters and setters.
3442
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-accessor-recursion.md
3447
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-accessor-recursion.md
3443
3448
  */
3444
3449
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>
3445
3450
  /**
3446
3451
  * Disallow anonymous functions and classes as the default export.
3447
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-anonymous-default-export.md
3452
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-anonymous-default-export.md
3448
3453
  */
3449
3454
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>
3450
3455
  /**
3451
3456
  * Prevent passing a function reference directly to iterator methods.
3452
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-callback-reference.md
3457
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-callback-reference.md
3453
3458
  */
3454
3459
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>
3455
3460
  /**
3456
3461
  * Prefer `for…of` over the `forEach` method.
3457
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-for-each.md
3462
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-for-each.md
3458
3463
  */
3459
3464
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>
3460
3465
  /**
3461
3466
  * Disallow using the `this` argument in array methods.
3462
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-method-this-argument.md
3467
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-method-this-argument.md
3463
3468
  */
3464
3469
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>
3465
3470
  /**
3466
3471
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
3467
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-array-push-push
3472
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-array-push-push
3468
3473
  * @deprecated
3469
3474
  */
3470
3475
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>
3471
3476
  /**
3472
3477
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
3473
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-reduce.md
3478
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reduce.md
3474
3479
  */
3475
3480
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>
3481
+ /**
3482
+ * Prefer `Array#toReversed()` over `Array#reverse()`.
3483
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reverse.md
3484
+ */
3485
+ 'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>
3476
3486
  /**
3477
3487
  * Disallow member access from await expression.
3478
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-await-expression-member.md
3488
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-expression-member.md
3479
3489
  */
3480
3490
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>
3481
3491
  /**
3482
3492
  * Disallow using `await` in `Promise` method parameters.
3483
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-await-in-promise-methods.md
3493
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-in-promise-methods.md
3484
3494
  */
3485
3495
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>
3486
3496
  /**
3487
3497
  * Do not use leading/trailing space between `console.log` parameters.
3488
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-console-spaces.md
3498
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-console-spaces.md
3489
3499
  */
3490
3500
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>
3491
3501
  /**
3492
3502
  * Do not use `document.cookie` directly.
3493
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-document-cookie.md
3503
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-document-cookie.md
3494
3504
  */
3495
3505
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>
3496
3506
  /**
3497
3507
  * Disallow empty files.
3498
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-empty-file.md
3508
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-empty-file.md
3499
3509
  */
3500
3510
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>
3501
3511
  /**
3502
3512
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
3503
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-for-loop.md
3513
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-for-loop.md
3504
3514
  */
3505
3515
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>
3506
3516
  /**
3507
3517
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
3508
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-hex-escape.md
3518
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-hex-escape.md
3509
3519
  */
3510
3520
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>
3511
3521
  /**
3512
3522
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
3513
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-instanceof-array
3523
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-instanceof-array
3514
3524
  * @deprecated
3515
3525
  */
3516
3526
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>
3517
3527
  /**
3518
3528
  * Disallow `instanceof` with built-in objects
3519
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-instanceof-builtins.md
3529
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-instanceof-builtins.md
3520
3530
  */
3521
3531
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>
3522
3532
  /**
3523
3533
  * Disallow invalid options in `fetch()` and `new Request()`.
3524
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-invalid-fetch-options.md
3534
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-fetch-options.md
3525
3535
  */
3526
3536
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>
3527
3537
  /**
3528
3538
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
3529
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-invalid-remove-event-listener.md
3539
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-remove-event-listener.md
3530
3540
  */
3531
3541
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>
3532
3542
  /**
3533
3543
  * Disallow identifiers starting with `new` or `class`.
3534
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-keyword-prefix.md
3544
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-keyword-prefix.md
3535
3545
  */
3536
3546
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>
3537
3547
  /**
3538
3548
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
3539
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-length-as-slice-end
3549
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-length-as-slice-end
3540
3550
  * @deprecated
3541
3551
  */
3542
3552
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>
3543
3553
  /**
3544
3554
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
3545
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-lonely-if.md
3555
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-lonely-if.md
3546
3556
  */
3547
3557
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>
3548
3558
  /**
3549
3559
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
3550
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-magic-array-flat-depth.md
3560
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-magic-array-flat-depth.md
3551
3561
  */
3552
3562
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>
3553
3563
  /**
3554
3564
  * Disallow named usage of default import and export.
3555
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-named-default.md
3565
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-named-default.md
3556
3566
  */
3557
3567
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>
3558
3568
  /**
3559
3569
  * Disallow negated conditions.
3560
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-negated-condition.md
3570
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negated-condition.md
3561
3571
  */
3562
3572
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>
3563
3573
  /**
3564
3574
  * Disallow negated expression in equality check.
3565
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-negation-in-equality-check.md
3575
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negation-in-equality-check.md
3566
3576
  */
3567
3577
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>
3568
3578
  /**
3569
3579
  * Disallow nested ternary expressions.
3570
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-nested-ternary.md
3580
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-nested-ternary.md
3571
3581
  */
3572
3582
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>
3573
3583
  /**
3574
3584
  * Disallow `new Array()`.
3575
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-new-array.md
3585
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-array.md
3576
3586
  */
3577
3587
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>
3578
3588
  /**
3579
3589
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
3580
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-new-buffer.md
3590
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-buffer.md
3581
3591
  */
3582
3592
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>
3583
3593
  /**
3584
3594
  * Disallow the use of the `null` literal.
3585
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-null.md
3595
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-null.md
3586
3596
  */
3587
3597
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>
3588
3598
  /**
3589
3599
  * Disallow the use of objects as default parameters.
3590
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-object-as-default-parameter.md
3600
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-object-as-default-parameter.md
3591
3601
  */
3592
3602
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>
3593
3603
  /**
3594
3604
  * Disallow `process.exit()`.
3595
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-process-exit.md
3605
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-process-exit.md
3596
3606
  */
3597
3607
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>
3598
3608
  /**
3599
3609
  * Disallow passing single-element arrays to `Promise` methods.
3600
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-single-promise-in-promise-methods.md
3610
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-single-promise-in-promise-methods.md
3601
3611
  */
3602
3612
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>
3603
3613
  /**
3604
3614
  * Disallow classes that only have static members.
3605
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-static-only-class.md
3615
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-static-only-class.md
3606
3616
  */
3607
3617
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>
3608
3618
  /**
3609
3619
  * Disallow `then` property.
3610
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-thenable.md
3620
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-thenable.md
3611
3621
  */
3612
3622
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>
3613
3623
  /**
3614
3624
  * Disallow assigning `this` to a variable.
3615
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-this-assignment.md
3625
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-this-assignment.md
3616
3626
  */
3617
3627
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>
3618
3628
  /**
3619
3629
  * Disallow comparing `undefined` using `typeof`.
3620
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-typeof-undefined.md
3630
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-typeof-undefined.md
3621
3631
  */
3622
3632
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>
3623
3633
  /**
3624
3634
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
3625
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-array-flat-depth.md
3635
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-flat-depth.md
3626
3636
  */
3627
3637
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>
3628
3638
  /**
3629
3639
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
3630
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-array-splice-count.md
3640
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-splice-count.md
3631
3641
  */
3632
3642
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>
3633
3643
  /**
3634
3644
  * Disallow awaiting non-promise values.
3635
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-await.md
3645
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-await.md
3636
3646
  */
3637
3647
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>
3638
3648
  /**
3639
3649
  * Enforce the use of built-in methods instead of unnecessary polyfills.
3640
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-polyfills.md
3650
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-polyfills.md
3641
3651
  */
3642
3652
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>
3643
3653
  /**
3644
3654
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
3645
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-slice-end.md
3655
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-slice-end.md
3646
3656
  */
3647
3657
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>
3648
3658
  /**
3649
3659
  * Disallow unreadable array destructuring.
3650
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unreadable-array-destructuring.md
3660
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-array-destructuring.md
3651
3661
  */
3652
3662
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>
3653
3663
  /**
3654
3664
  * Disallow unreadable IIFEs.
3655
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unreadable-iife.md
3665
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-iife.md
3656
3666
  */
3657
3667
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>
3658
3668
  /**
3659
3669
  * Disallow unused object properties.
3660
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unused-properties.md
3670
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unused-properties.md
3661
3671
  */
3662
3672
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>
3673
+ /**
3674
+ * Disallow unnecessary `Error.captureStackTrace(…)`.
3675
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-error-capture-stack-trace.md
3676
+ */
3677
+ 'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>
3663
3678
  /**
3664
3679
  * Disallow useless fallback when spreading in object literals.
3665
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-fallback-in-spread.md
3680
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-fallback-in-spread.md
3666
3681
  */
3667
3682
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>
3668
3683
  /**
3669
3684
  * Disallow useless array length check.
3670
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-length-check.md
3685
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-length-check.md
3671
3686
  */
3672
3687
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>
3673
3688
  /**
3674
3689
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
3675
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-promise-resolve-reject.md
3690
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-promise-resolve-reject.md
3676
3691
  */
3677
3692
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>
3678
3693
  /**
3679
3694
  * Disallow unnecessary spread.
3680
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-spread.md
3695
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-spread.md
3681
3696
  */
3682
3697
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>
3683
3698
  /**
3684
3699
  * Disallow useless case in switch statements.
3685
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-switch-case.md
3700
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-switch-case.md
3686
3701
  */
3687
3702
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>
3688
3703
  /**
3689
3704
  * Disallow useless `undefined`.
3690
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-undefined.md
3705
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-undefined.md
3691
3706
  */
3692
3707
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>
3693
3708
  /**
3694
3709
  * Disallow number literals with zero fractions or dangling dots.
3695
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-zero-fractions.md
3710
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-zero-fractions.md
3696
3711
  */
3697
3712
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>
3698
3713
  /**
3699
3714
  * Enforce proper case for numeric literals.
3700
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/number-literal-case.md
3715
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/number-literal-case.md
3701
3716
  */
3702
3717
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>
3703
3718
  /**
3704
3719
  * Enforce the style of numeric separators by correctly grouping digits.
3705
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/numeric-separators-style.md
3720
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/numeric-separators-style.md
3706
3721
  */
3707
3722
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>
3708
3723
  /**
3709
3724
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
3710
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-add-event-listener.md
3725
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-add-event-listener.md
3711
3726
  */
3712
3727
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>
3713
3728
  /**
3714
3729
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
3715
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-find.md
3730
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-find.md
3716
3731
  */
3717
3732
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>
3718
3733
  /**
3719
3734
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
3720
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-flat.md
3735
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat.md
3721
3736
  */
3722
3737
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>
3723
3738
  /**
3724
3739
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
3725
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-flat-map.md
3740
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat-map.md
3726
3741
  */
3727
3742
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>
3728
3743
  /**
3729
3744
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
3730
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-index-of.md
3745
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-index-of.md
3731
3746
  */
3732
3747
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>
3733
3748
  /**
3734
3749
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
3735
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-some.md
3750
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-some.md
3736
3751
  */
3737
3752
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>
3738
3753
  /**
3739
3754
  * Prefer `.at()` method for index access and `String#charAt()`.
3740
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-at.md
3755
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-at.md
3741
3756
  */
3742
3757
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>
3743
3758
  /**
3744
3759
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
3745
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-blob-reading-methods.md
3760
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-blob-reading-methods.md
3746
3761
  */
3747
3762
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>
3763
+ /**
3764
+ * Prefer class field declarations over `this` assignments in constructors.
3765
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-class-fields.md
3766
+ */
3767
+ 'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>
3748
3768
  /**
3749
3769
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
3750
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-code-point.md
3770
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-code-point.md
3751
3771
  */
3752
3772
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>
3753
3773
  /**
3754
3774
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
3755
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-date-now.md
3775
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-date-now.md
3756
3776
  */
3757
3777
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>
3758
3778
  /**
3759
3779
  * Prefer default parameters over reassignment.
3760
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-default-parameters.md
3780
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-default-parameters.md
3761
3781
  */
3762
3782
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>
3763
3783
  /**
3764
3784
  * Prefer `Node#append()` over `Node#appendChild()`.
3765
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-append.md
3785
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-append.md
3766
3786
  */
3767
3787
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>
3768
3788
  /**
3769
3789
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
3770
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-dataset.md
3790
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-dataset.md
3771
3791
  */
3772
3792
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>
3773
3793
  /**
3774
3794
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
3775
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-remove.md
3795
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-remove.md
3776
3796
  */
3777
3797
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>
3778
3798
  /**
3779
3799
  * Prefer `.textContent` over `.innerText`.
3780
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-text-content.md
3800
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-text-content.md
3781
3801
  */
3782
3802
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>
3783
3803
  /**
3784
3804
  * Prefer `EventTarget` over `EventEmitter`.
3785
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-event-target.md
3805
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-event-target.md
3786
3806
  */
3787
3807
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>
3788
3808
  /**
3789
3809
  * Prefer `export…from` when re-exporting.
3790
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-export-from.md
3810
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-export-from.md
3791
3811
  */
3792
3812
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>
3793
3813
  /**
3794
3814
  * Prefer `globalThis` over `window`, `self`, and `global`.
3795
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-global-this.md
3815
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-global-this.md
3796
3816
  */
3797
3817
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>
3798
3818
  /**
3799
3819
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
3800
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-import-meta-properties.md
3820
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-import-meta-properties.md
3801
3821
  */
3802
3822
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>
3803
3823
  /**
3804
3824
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
3805
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-includes.md
3825
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-includes.md
3806
3826
  */
3807
3827
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>
3808
3828
  /**
3809
3829
  * Prefer reading a JSON file as a buffer.
3810
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-json-parse-buffer.md
3830
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-json-parse-buffer.md
3811
3831
  */
3812
3832
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>
3813
3833
  /**
3814
3834
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
3815
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-keyboard-event-key.md
3835
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-keyboard-event-key.md
3816
3836
  */
3817
3837
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>
3818
3838
  /**
3819
3839
  * Prefer using a logical operator over a ternary.
3820
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-logical-operator-over-ternary.md
3840
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-logical-operator-over-ternary.md
3821
3841
  */
3822
3842
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>
3823
3843
  /**
3824
3844
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
3825
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-math-min-max.md
3845
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-min-max.md
3826
3846
  */
3827
3847
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>
3828
3848
  /**
3829
3849
  * Enforce the use of `Math.trunc` instead of bitwise operators.
3830
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-math-trunc.md
3850
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-trunc.md
3831
3851
  */
3832
3852
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>
3833
3853
  /**
3834
3854
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
3835
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-modern-dom-apis.md
3855
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-dom-apis.md
3836
3856
  */
3837
3857
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>
3838
3858
  /**
3839
3859
  * Prefer modern `Math` APIs over legacy patterns.
3840
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-modern-math-apis.md
3860
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-math-apis.md
3841
3861
  */
3842
3862
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>
3843
3863
  /**
3844
3864
  * Prefer JavaScript modules (ESM) over CommonJS.
3845
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-module.md
3865
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-module.md
3846
3866
  */
3847
3867
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>
3848
3868
  /**
3849
3869
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
3850
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-native-coercion-functions.md
3870
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-native-coercion-functions.md
3851
3871
  */
3852
3872
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>
3853
3873
  /**
3854
3874
  * Prefer negative index over `.length - index` when possible.
3855
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-negative-index.md
3875
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-negative-index.md
3856
3876
  */
3857
3877
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>
3858
3878
  /**
3859
3879
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
3860
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-node-protocol.md
3880
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-node-protocol.md
3861
3881
  */
3862
3882
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>
3863
3883
  /**
3864
3884
  * Prefer `Number` static properties over global ones.
3865
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-number-properties.md
3885
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-number-properties.md
3866
3886
  */
3867
3887
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>
3868
3888
  /**
3869
3889
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
3870
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-object-from-entries.md
3890
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-object-from-entries.md
3871
3891
  */
3872
3892
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>
3873
3893
  /**
3874
3894
  * Prefer omitting the `catch` binding parameter.
3875
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-optional-catch-binding.md
3895
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-optional-catch-binding.md
3876
3896
  */
3877
3897
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>
3878
3898
  /**
3879
3899
  * Prefer borrowing methods from the prototype instead of the instance.
3880
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-prototype-methods.md
3900
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-prototype-methods.md
3881
3901
  */
3882
3902
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>
3883
3903
  /**
3884
3904
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
3885
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-query-selector.md
3905
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-query-selector.md
3886
3906
  */
3887
3907
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>
3888
3908
  /**
3889
3909
  * Prefer `Reflect.apply()` over `Function#apply()`.
3890
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-reflect-apply.md
3910
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-reflect-apply.md
3891
3911
  */
3892
3912
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>
3893
3913
  /**
3894
3914
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
3895
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-regexp-test.md
3915
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-regexp-test.md
3896
3916
  */
3897
3917
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>
3898
3918
  /**
3899
3919
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
3900
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-set-has.md
3920
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-has.md
3901
3921
  */
3902
3922
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>
3903
3923
  /**
3904
3924
  * Prefer using `Set#size` instead of `Array#length`.
3905
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-set-size.md
3925
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-size.md
3906
3926
  */
3907
3927
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>
3908
3928
  /**
3909
3929
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
3910
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-single-call.md
3930
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-single-call.md
3911
3931
  */
3912
3932
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>
3913
3933
  /**
3914
3934
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
3915
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-spread.md
3935
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-spread.md
3916
3936
  */
3917
3937
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>
3918
3938
  /**
3919
3939
  * Prefer using the `String.raw` tag to avoid escaping `\`.
3920
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-raw.md
3940
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-raw.md
3921
3941
  */
3922
3942
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>
3923
3943
  /**
3924
3944
  * Prefer `String#replaceAll()` over regex searches with the global flag.
3925
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-replace-all.md
3945
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-replace-all.md
3926
3946
  */
3927
3947
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>
3928
3948
  /**
3929
3949
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
3930
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-slice.md
3950
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-slice.md
3931
3951
  */
3932
3952
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>
3933
3953
  /**
3934
3954
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
3935
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-starts-ends-with.md
3955
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-starts-ends-with.md
3936
3956
  */
3937
3957
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>
3938
3958
  /**
3939
3959
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
3940
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-trim-start-end.md
3960
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-trim-start-end.md
3941
3961
  */
3942
3962
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>
3943
3963
  /**
3944
3964
  * Prefer using `structuredClone` to create a deep clone.
3945
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-structured-clone.md
3965
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-structured-clone.md
3946
3966
  */
3947
3967
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>
3948
3968
  /**
3949
3969
  * Prefer `switch` over multiple `else-if`.
3950
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-switch.md
3970
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-switch.md
3951
3971
  */
3952
3972
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>
3953
3973
  /**
3954
3974
  * Prefer ternary expressions over simple `if-else` statements.
3955
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-ternary.md
3975
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-ternary.md
3956
3976
  */
3957
3977
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>
3958
3978
  /**
3959
3979
  * Prefer top-level await over top-level promises and async function calls.
3960
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-top-level-await.md
3980
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-top-level-await.md
3961
3981
  */
3962
3982
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>
3963
3983
  /**
3964
3984
  * Enforce throwing `TypeError` in type checking conditions.
3965
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-type-error.md
3985
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-type-error.md
3966
3986
  */
3967
3987
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>
3968
3988
  /**
3969
3989
  * Prevent abbreviations.
3970
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prevent-abbreviations.md
3990
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prevent-abbreviations.md
3971
3991
  */
3972
3992
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>
3973
3993
  /**
3974
3994
  * Enforce consistent relative URL style.
3975
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/relative-url-style.md
3995
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/relative-url-style.md
3976
3996
  */
3977
3997
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>
3978
3998
  /**
3979
3999
  * Enforce using the separator argument with `Array#join()`.
3980
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-array-join-separator.md
4000
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-array-join-separator.md
3981
4001
  */
3982
4002
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>
4003
+ /**
4004
+ * Require non-empty specifier list in import and export statements.
4005
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-module-specifiers.md
4006
+ */
4007
+ 'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>
3983
4008
  /**
3984
4009
  * Enforce using the digits argument with `Number#toFixed()`.
3985
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-number-to-fixed-digits-argument.md
4010
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-number-to-fixed-digits-argument.md
3986
4011
  */
3987
4012
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>
3988
4013
  /**
3989
4014
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
3990
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-post-message-target-origin.md
4015
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-post-message-target-origin.md
3991
4016
  */
3992
4017
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>
3993
4018
  /**
3994
4019
  * Enforce better string content.
3995
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/string-content.md
4020
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/string-content.md
3996
4021
  */
3997
4022
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>
3998
4023
  /**
3999
4024
  * Enforce consistent brace style for `case` clauses.
4000
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/switch-case-braces.md
4025
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/switch-case-braces.md
4001
4026
  */
4002
4027
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>
4003
4028
  /**
4004
4029
  * Fix whitespace-insensitive template indentation.
4005
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/template-indent.md
4030
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/template-indent.md
4006
4031
  */
4007
4032
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>
4008
4033
  /**
4009
4034
  * Enforce consistent case for text encoding identifiers.
4010
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/text-encoding-identifier-case.md
4035
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/text-encoding-identifier-case.md
4011
4036
  */
4012
4037
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>
4013
4038
  /**
4014
4039
  * Require `new` when creating an error.
4015
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/throw-new-error.md
4040
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/throw-new-error.md
4016
4041
  */
4017
4042
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>
4018
4043
  /**
@@ -4050,6 +4075,11 @@ interface RuleOptions {
4050
4075
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-it.md
4051
4076
  */
4052
4077
  'vitest/consistent-test-it'?: Linter.RuleEntry<VitestConsistentTestIt>
4078
+ /**
4079
+ * enforce using vitest or vi but not both
4080
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-vitest-vi.md
4081
+ */
4082
+ 'vitest/consistent-vitest-vi'?: Linter.RuleEntry<VitestConsistentVitestVi>
4053
4083
  /**
4054
4084
  * enforce having expectation in test body
4055
4085
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/expect-expect.md
@@ -4126,6 +4156,11 @@ interface RuleOptions {
4126
4156
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-import-node-test.md
4127
4157
  */
4128
4158
  'vitest/no-import-node-test'?: Linter.RuleEntry<[]>
4159
+ /**
4160
+ * disallow importing Vitest globals
4161
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-importing-vitest-globals.md
4162
+ */
4163
+ 'vitest/no-importing-vitest-globals'?: Linter.RuleEntry<[]>
4129
4164
  /**
4130
4165
  * disallow string interpolation in snapshots
4131
4166
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-interpolation-in-snapshots.md
@@ -4157,7 +4192,7 @@ interface RuleOptions {
4157
4192
  */
4158
4193
  'vitest/no-standalone-expect'?: Linter.RuleEntry<VitestNoStandaloneExpect>
4159
4194
  /**
4160
- * Disallow using the `f` and `x` prefixes in favour of `.only` and `.skip`
4195
+ * disallow using the `f` and `x` prefixes in favour of `.only` and `.skip`
4161
4196
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-prefixes.md
4162
4197
  */
4163
4198
  'vitest/no-test-prefixes'?: Linter.RuleEntry<[]>
@@ -4206,6 +4241,16 @@ interface RuleOptions {
4206
4241
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-test-blocks.md
4207
4242
  */
4208
4243
  'vitest/padding-around-test-blocks'?: Linter.RuleEntry<[]>
4244
+ /**
4245
+ * enforce using `toBeCalledOnce()` or `toHaveBeenCalledOnce()`
4246
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-once.md
4247
+ */
4248
+ 'vitest/prefer-called-once'?: Linter.RuleEntry<[]>
4249
+ /**
4250
+ * enforce using `toBeCalledTimes(1)` or `toHaveBeenCalledTimes(1)`
4251
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-times.md
4252
+ */
4253
+ 'vitest/prefer-called-times'?: Linter.RuleEntry<[]>
4209
4254
  /**
4210
4255
  * enforce using `toBeCalledWith()` or `toHaveBeenCalledWith()`
4211
4256
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-with.md
@@ -4251,6 +4296,11 @@ interface RuleOptions {
4251
4296
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-on-top.md
4252
4297
  */
4253
4298
  'vitest/prefer-hooks-on-top'?: Linter.RuleEntry<[]>
4299
+ /**
4300
+ * enforce importing Vitest globals
4301
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-importing-vitest-globals.md
4302
+ */
4303
+ 'vitest/prefer-importing-vitest-globals'?: Linter.RuleEntry<[]>
4254
4304
  /**
4255
4305
  * enforce lowercase titles
4256
4306
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-lowercase-title.md
@@ -4366,6 +4416,11 @@ interface RuleOptions {
4366
4416
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-title.md
4367
4417
  */
4368
4418
  'vitest/valid-title'?: Linter.RuleEntry<VitestValidTitle>
4419
+ /**
4420
+ * disallow `.todo` usage
4421
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/warn-todo.md
4422
+ */
4423
+ 'vitest/warn-todo'?: Linter.RuleEntry<[]>
4369
4424
  /**
4370
4425
  * Require parentheses around immediate `function` invocations
4371
4426
  * @see https://eslint.org/docs/latest/rules/wrap-iife
@@ -4922,6 +4977,8 @@ interface _TypescriptEslintNamingConvention_MatchRegexConfig {
4922
4977
  // ----- @typescript-eslint/no-base-to-string -----
4923
4978
  type TypescriptEslintNoBaseToString = []|[{
4924
4979
 
4980
+ checkUnknown?: boolean
4981
+
4925
4982
  ignoredTypeNames?: string[]
4926
4983
  }]
4927
4984
  // ----- @typescript-eslint/no-confusing-void-expression -----
@@ -5352,7 +5409,6 @@ type TypescriptEslintPreferDestructuring = []|[({
5352
5409
  enforceForDeclarationWithTypeAnnotation?: boolean
5353
5410
 
5354
5411
  enforceForRenamedProperties?: boolean
5355
- [k: string]: unknown | undefined
5356
5412
  }]
5357
5413
  // ----- @typescript-eslint/prefer-literal-enum-member -----
5358
5414
  type TypescriptEslintPreferLiteralEnumMember = []|[{
@@ -5381,7 +5437,6 @@ type TypescriptEslintPreferNullishCoalescing = []|[{
5381
5437
  number?: boolean
5382
5438
 
5383
5439
  string?: boolean
5384
- [k: string]: unknown | undefined
5385
5440
  } | true)
5386
5441
 
5387
5442
  ignoreTernaryTests?: boolean
@@ -5601,6 +5656,7 @@ type AccessorPairs = []|[{
5601
5656
  getWithoutSet?: boolean
5602
5657
  setWithoutGet?: boolean
5603
5658
  enforceForClassMembers?: boolean
5659
+ enforceForTSTypes?: boolean
5604
5660
  }]
5605
5661
  // ----- array-bracket-newline -----
5606
5662
  type ArrayBracketNewline = []|[(("always" | "never" | "consistent") | {
@@ -5791,7 +5847,9 @@ type GetterReturn = []|[{
5791
5847
  allowImplicit?: boolean
5792
5848
  }]
5793
5849
  // ----- grouped-accessor-pairs -----
5794
- type GroupedAccessorPairs = []|[("anyOrder" | "getBeforeSet" | "setBeforeGet")]
5850
+ type GroupedAccessorPairs = []|[("anyOrder" | "getBeforeSet" | "setBeforeGet")]|[("anyOrder" | "getBeforeSet" | "setBeforeGet"), {
5851
+ enforceForTSTypes?: boolean
5852
+ }]
5795
5853
  // ----- handle-callback-err -----
5796
5854
  type HandleCallbackErr = []|[string]
5797
5855
  // ----- id-blacklist -----
@@ -6074,6 +6132,10 @@ type ImportOrder = []|[{
6074
6132
  type ImportPreferDefaultExport = []|[{
6075
6133
  target?: ("single" | "any")
6076
6134
  }]
6135
+ // ----- import/prefer-namespace-import -----
6136
+ type ImportPreferNamespaceImport = []|[{
6137
+ patterns?: string[]
6138
+ }]
6077
6139
  // ----- indent -----
6078
6140
  type Indent = []|[("tab" | number)]|[("tab" | number), {
6079
6141
  SwitchCase?: number
@@ -6259,6 +6321,7 @@ type JsdocLinesBeforeBlock = []|[{
6259
6321
  checkBlockStarts?: boolean
6260
6322
  excludedTags?: string[]
6261
6323
  ignoreSameLine?: boolean
6324
+ ignoreSingleLines?: boolean
6262
6325
  lines?: number
6263
6326
  }]
6264
6327
  // ----- jsdoc/match-description -----
@@ -6289,8 +6352,8 @@ type JsdocMatchName = []|[{
6289
6352
  context?: string
6290
6353
  disallowName?: string
6291
6354
  message?: string
6355
+ replacement?: string
6292
6356
  tags?: string[]
6293
- [k: string]: unknown | undefined
6294
6357
  }[]
6295
6358
  }]
6296
6359
  // ----- jsdoc/multiline-blocks -----
@@ -6302,6 +6365,7 @@ type JsdocMultilineBlocks = []|[{
6302
6365
  noMultilineBlocks?: boolean
6303
6366
  noSingleLineBlocks?: boolean
6304
6367
  noZeroLineText?: boolean
6368
+ requireSingleLineUnderCount?: number
6305
6369
  singleLineTags?: string[]
6306
6370
  }]
6307
6371
  // ----- jsdoc/no-bad-blocks -----
@@ -6363,7 +6427,6 @@ type JsdocRequireAsteriskPrefix = []|[("always" | "never" | "any")]|[("always" |
6363
6427
  always?: string[]
6364
6428
  any?: string[]
6365
6429
  never?: string[]
6366
- [k: string]: unknown | undefined
6367
6430
  }
6368
6431
  }]
6369
6432
  // ----- jsdoc/require-description -----
@@ -6573,7 +6636,6 @@ type JsdocSortTags = []|[{
6573
6636
  reportTagGroupSpacing?: boolean
6574
6637
  tagSequence?: {
6575
6638
  tags?: string[]
6576
- [k: string]: unknown | undefined
6577
6639
  }[]
6578
6640
  }]
6579
6641
  // ----- jsdoc/tag-lines -----
@@ -7152,6 +7214,7 @@ type NoConstantCondition = []|[{
7152
7214
  // ----- no-duplicate-imports -----
7153
7215
  type NoDuplicateImports = []|[{
7154
7216
  includeExports?: boolean
7217
+ allowSeparateTypeImports?: boolean
7155
7218
  }]
7156
7219
  // ----- no-else-return -----
7157
7220
  type NoElseReturn = []|[{
@@ -7465,6 +7528,7 @@ type NoUnusedVars = []|[(("all" | "local") | {
7465
7528
  caughtErrorsIgnorePattern?: string
7466
7529
  destructuredArrayIgnorePattern?: string
7467
7530
  ignoreClassWithStaticInitBlock?: boolean
7531
+ ignoreUsingDeclarations?: boolean
7468
7532
  reportUsedIgnorePattern?: boolean
7469
7533
  })]
7470
7534
  // ----- no-use-before-define -----
@@ -7623,8 +7687,7 @@ type PerfectionistSortArrayIncludes = {
7623
7687
  groupKind?: ("mixed" | "literals-first" | "spreads-first")
7624
7688
 
7625
7689
  customGroups?: ({
7626
-
7627
- newlinesInside?: ("always" | "never")
7690
+ newlinesInside?: (("always" | "never") | number)
7628
7691
 
7629
7692
  fallbackSort?: {
7630
7693
 
@@ -7655,8 +7718,7 @@ type PerfectionistSortArrayIncludes = {
7655
7718
  } | string))
7656
7719
  }[]
7657
7720
  } | {
7658
-
7659
- newlinesInside?: ("always" | "never")
7721
+ newlinesInside?: (("always" | "never") | number)
7660
7722
 
7661
7723
  fallbackSort?: {
7662
7724
 
@@ -7739,12 +7801,10 @@ type PerfectionistSortArrayIncludes = {
7739
7801
  })
7740
7802
 
7741
7803
  partitionByNewLine?: boolean
7742
-
7743
- newlinesBetween?: ("ignore" | "always" | "never")
7804
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
7744
7805
 
7745
7806
  groups?: (string | string[] | {
7746
-
7747
- newlinesBetween?: ("ignore" | "always" | "never")
7807
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
7748
7808
 
7749
7809
  commentAbove?: string
7750
7810
  })[]
@@ -7772,8 +7832,7 @@ type PerfectionistSortClasses = []|[{
7772
7832
  type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
7773
7833
 
7774
7834
  customGroups?: ({
7775
-
7776
- newlinesInside?: ("always" | "never")
7835
+ newlinesInside?: (("always" | "never") | number)
7777
7836
 
7778
7837
  fallbackSort?: {
7779
7838
 
@@ -7830,8 +7889,7 @@ type PerfectionistSortClasses = []|[{
7830
7889
  } | string))
7831
7890
  }[]
7832
7891
  } | {
7833
-
7834
- newlinesInside?: ("always" | "never")
7892
+ newlinesInside?: (("always" | "never") | number)
7835
7893
 
7836
7894
  fallbackSort?: {
7837
7895
 
@@ -7937,12 +7995,10 @@ type PerfectionistSortClasses = []|[{
7937
7995
  })
7938
7996
 
7939
7997
  partitionByNewLine?: boolean
7940
-
7941
- newlinesBetween?: ("ignore" | "always" | "never")
7998
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
7942
7999
 
7943
8000
  groups?: (string | string[] | {
7944
-
7945
- newlinesBetween?: ("ignore" | "always" | "never")
8001
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
7946
8002
 
7947
8003
  commentAbove?: string
7948
8004
  })[]
@@ -8021,8 +8077,7 @@ type PerfectionistSortDecorators = []|[{
8021
8077
  }
8022
8078
 
8023
8079
  groups?: (string | string[] | {
8024
-
8025
- newlinesBetween?: ("ignore" | "always" | "never")
8080
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8026
8081
 
8027
8082
  commentAbove?: string
8028
8083
  })[]
@@ -8051,8 +8106,7 @@ type PerfectionistSortEnums = []|[{
8051
8106
  customGroups?: ({
8052
8107
  [k: string]: (string | string[]) | undefined
8053
8108
  } | ({
8054
-
8055
- newlinesInside?: ("always" | "never")
8109
+ newlinesInside?: (("always" | "never") | number)
8056
8110
 
8057
8111
  fallbackSort?: {
8058
8112
 
@@ -8093,8 +8147,7 @@ type PerfectionistSortEnums = []|[{
8093
8147
  } | string))
8094
8148
  }[]
8095
8149
  } | {
8096
-
8097
- newlinesInside?: ("always" | "never")
8150
+ newlinesInside?: (("always" | "never") | number)
8098
8151
 
8099
8152
  fallbackSort?: {
8100
8153
 
@@ -8176,12 +8229,10 @@ type PerfectionistSortEnums = []|[{
8176
8229
  })
8177
8230
 
8178
8231
  partitionByNewLine?: boolean
8179
-
8180
- newlinesBetween?: ("ignore" | "always" | "never")
8232
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8181
8233
 
8182
8234
  groups?: (string | string[] | {
8183
-
8184
- newlinesBetween?: ("ignore" | "always" | "never")
8235
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8185
8236
 
8186
8237
  commentAbove?: string
8187
8238
  })[]
@@ -8211,8 +8262,7 @@ type PerfectionistSortExports = {
8211
8262
  groupKind?: ("mixed" | "values-first" | "types-first")
8212
8263
 
8213
8264
  customGroups?: ({
8214
-
8215
- newlinesInside?: ("always" | "never")
8265
+ newlinesInside?: (("always" | "never") | number)
8216
8266
 
8217
8267
  fallbackSort?: {
8218
8268
 
@@ -8245,8 +8295,7 @@ type PerfectionistSortExports = {
8245
8295
  } | string))
8246
8296
  }[]
8247
8297
  } | {
8248
-
8249
- newlinesInside?: ("always" | "never")
8298
+ newlinesInside?: (("always" | "never") | number)
8250
8299
 
8251
8300
  fallbackSort?: {
8252
8301
 
@@ -8316,12 +8365,10 @@ type PerfectionistSortExports = {
8316
8365
  })
8317
8366
 
8318
8367
  partitionByNewLine?: boolean
8319
-
8320
- newlinesBetween?: ("ignore" | "always" | "never")
8368
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8321
8369
 
8322
8370
  groups?: (string | string[] | {
8323
-
8324
- newlinesBetween?: ("ignore" | "always" | "never")
8371
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8325
8372
 
8326
8373
  commentAbove?: string
8327
8374
  })[]
@@ -8353,8 +8400,7 @@ type PerfectionistSortHeritageClauses = []|[{
8353
8400
  }
8354
8401
 
8355
8402
  groups?: (string | string[] | {
8356
-
8357
- newlinesBetween?: ("ignore" | "always" | "never")
8403
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8358
8404
 
8359
8405
  commentAbove?: string
8360
8406
  })[]
@@ -8390,8 +8436,7 @@ type PerfectionistSortImports = {
8390
8436
  [k: string]: (string | string[]) | undefined
8391
8437
  }
8392
8438
  } | ({
8393
-
8394
- newlinesInside?: ("always" | "never")
8439
+ newlinesInside?: (("always" | "never") | number)
8395
8440
 
8396
8441
  fallbackSort?: {
8397
8442
 
@@ -8436,8 +8481,7 @@ type PerfectionistSortImports = {
8436
8481
  } | string))
8437
8482
  }[]
8438
8483
  } | {
8439
-
8440
- newlinesInside?: ("always" | "never")
8484
+ newlinesInside?: (("always" | "never") | number)
8441
8485
 
8442
8486
  fallbackSort?: {
8443
8487
 
@@ -8533,8 +8577,7 @@ type PerfectionistSortImports = {
8533
8577
  })
8534
8578
 
8535
8579
  partitionByNewLine?: boolean
8536
-
8537
- newlinesBetween?: ("ignore" | "always" | "never")
8580
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8538
8581
 
8539
8582
  internalPattern?: (({
8540
8583
 
@@ -8549,8 +8592,7 @@ type PerfectionistSortImports = {
8549
8592
  } | string))
8550
8593
 
8551
8594
  groups?: (string | string[] | {
8552
-
8553
- newlinesBetween?: ("ignore" | "always" | "never")
8595
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8554
8596
 
8555
8597
  commentAbove?: string
8556
8598
  })[]
@@ -8580,8 +8622,7 @@ type PerfectionistSortInterfaces = {
8580
8622
  customGroups?: ({
8581
8623
  [k: string]: (string | string[]) | undefined
8582
8624
  } | ({
8583
-
8584
- newlinesInside?: ("always" | "never")
8625
+ newlinesInside?: (("always" | "never") | number)
8585
8626
 
8586
8627
  fallbackSort?: {
8587
8628
 
@@ -8628,8 +8669,7 @@ type PerfectionistSortInterfaces = {
8628
8669
  sortBy?: ("name" | "value")
8629
8670
  }[]
8630
8671
  } | {
8631
-
8632
- newlinesInside?: ("always" | "never")
8672
+ newlinesInside?: (("always" | "never") | number)
8633
8673
 
8634
8674
  fallbackSort?: {
8635
8675
 
@@ -8742,8 +8782,7 @@ type PerfectionistSortInterfaces = {
8742
8782
  })
8743
8783
 
8744
8784
  partitionByNewLine?: boolean
8745
-
8746
- newlinesBetween?: ("ignore" | "always" | "never")
8785
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8747
8786
 
8748
8787
  ignorePattern?: (({
8749
8788
 
@@ -8759,8 +8798,7 @@ type PerfectionistSortInterfaces = {
8759
8798
  sortBy?: ("name" | "value")
8760
8799
 
8761
8800
  groups?: (string | string[] | {
8762
-
8763
- newlinesBetween?: ("ignore" | "always" | "never")
8801
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8764
8802
 
8765
8803
  commentAbove?: string
8766
8804
  })[]
@@ -8788,8 +8826,7 @@ type PerfectionistSortIntersectionTypes = {
8788
8826
  type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8789
8827
 
8790
8828
  customGroups?: ({
8791
-
8792
- newlinesInside?: ("always" | "never")
8829
+ newlinesInside?: (("always" | "never") | number)
8793
8830
 
8794
8831
  fallbackSort?: {
8795
8832
 
@@ -8820,8 +8857,7 @@ type PerfectionistSortIntersectionTypes = {
8820
8857
  } | string))
8821
8858
  }[]
8822
8859
  } | {
8823
-
8824
- newlinesInside?: ("always" | "never")
8860
+ newlinesInside?: (("always" | "never") | number)
8825
8861
 
8826
8862
  fallbackSort?: {
8827
8863
 
@@ -8889,12 +8925,10 @@ type PerfectionistSortIntersectionTypes = {
8889
8925
  })
8890
8926
 
8891
8927
  partitionByNewLine?: boolean
8892
-
8893
- newlinesBetween?: ("ignore" | "always" | "never")
8928
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8894
8929
 
8895
8930
  groups?: (string | string[] | {
8896
-
8897
- newlinesBetween?: ("ignore" | "always" | "never")
8931
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
8898
8932
 
8899
8933
  commentAbove?: string
8900
8934
  })[]
@@ -8923,8 +8957,7 @@ type PerfectionistSortJsxProps = {
8923
8957
  customGroups?: ({
8924
8958
  [k: string]: (string | string[]) | undefined
8925
8959
  } | ({
8926
-
8927
- newlinesInside?: ("always" | "never")
8960
+ newlinesInside?: (("always" | "never") | number)
8928
8961
 
8929
8962
  fallbackSort?: {
8930
8963
 
@@ -8969,8 +9002,7 @@ type PerfectionistSortJsxProps = {
8969
9002
  } | string))
8970
9003
  }[]
8971
9004
  } | {
8972
-
8973
- newlinesInside?: ("always" | "never")
9005
+ newlinesInside?: (("always" | "never") | number)
8974
9006
 
8975
9007
  fallbackSort?: {
8976
9008
 
@@ -9042,8 +9074,7 @@ type PerfectionistSortJsxProps = {
9042
9074
  }
9043
9075
 
9044
9076
  partitionByNewLine?: boolean
9045
-
9046
- newlinesBetween?: ("ignore" | "always" | "never")
9077
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9047
9078
 
9048
9079
  ignorePattern?: (({
9049
9080
 
@@ -9058,8 +9089,7 @@ type PerfectionistSortJsxProps = {
9058
9089
  } | string))
9059
9090
 
9060
9091
  groups?: (string | string[] | {
9061
-
9062
- newlinesBetween?: ("ignore" | "always" | "never")
9092
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9063
9093
 
9064
9094
  commentAbove?: string
9065
9095
  })[]
@@ -9087,8 +9117,7 @@ type PerfectionistSortMaps = {
9087
9117
  type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9088
9118
 
9089
9119
  customGroups?: ({
9090
-
9091
- newlinesInside?: ("always" | "never")
9120
+ newlinesInside?: (("always" | "never") | number)
9092
9121
 
9093
9122
  fallbackSort?: {
9094
9123
 
@@ -9117,8 +9146,7 @@ type PerfectionistSortMaps = {
9117
9146
  } | string))
9118
9147
  }[]
9119
9148
  } | {
9120
-
9121
- newlinesInside?: ("always" | "never")
9149
+ newlinesInside?: (("always" | "never") | number)
9122
9150
 
9123
9151
  fallbackSort?: {
9124
9152
 
@@ -9199,12 +9227,10 @@ type PerfectionistSortMaps = {
9199
9227
  })
9200
9228
 
9201
9229
  partitionByNewLine?: boolean
9202
-
9203
- newlinesBetween?: ("ignore" | "always" | "never")
9230
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9204
9231
 
9205
9232
  groups?: (string | string[] | {
9206
-
9207
- newlinesBetween?: ("ignore" | "always" | "never")
9233
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9208
9234
 
9209
9235
  commentAbove?: string
9210
9236
  })[]
@@ -9232,8 +9258,7 @@ type PerfectionistSortModules = []|[{
9232
9258
  type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9233
9259
 
9234
9260
  customGroups?: ({
9235
-
9236
- newlinesInside?: ("always" | "never")
9261
+ newlinesInside?: (("always" | "never") | number)
9237
9262
 
9238
9263
  fallbackSort?: {
9239
9264
 
@@ -9278,8 +9303,7 @@ type PerfectionistSortModules = []|[{
9278
9303
  } | string))
9279
9304
  }[]
9280
9305
  } | {
9281
-
9282
- newlinesInside?: ("always" | "never")
9306
+ newlinesInside?: (("always" | "never") | number)
9283
9307
 
9284
9308
  fallbackSort?: {
9285
9309
 
@@ -9361,12 +9385,10 @@ type PerfectionistSortModules = []|[{
9361
9385
  })
9362
9386
 
9363
9387
  partitionByNewLine?: boolean
9364
-
9365
- newlinesBetween?: ("ignore" | "always" | "never")
9388
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9366
9389
 
9367
9390
  groups?: (string | string[] | {
9368
-
9369
- newlinesBetween?: ("ignore" | "always" | "never")
9391
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9370
9392
 
9371
9393
  commentAbove?: string
9372
9394
  })[]
@@ -9398,8 +9420,7 @@ type PerfectionistSortNamedExports = {
9398
9420
  ignoreAlias?: boolean
9399
9421
 
9400
9422
  customGroups?: ({
9401
-
9402
- newlinesInside?: ("always" | "never")
9423
+ newlinesInside?: (("always" | "never") | number)
9403
9424
 
9404
9425
  fallbackSort?: {
9405
9426
 
@@ -9432,8 +9453,7 @@ type PerfectionistSortNamedExports = {
9432
9453
  } | string))
9433
9454
  }[]
9434
9455
  } | {
9435
-
9436
- newlinesInside?: ("always" | "never")
9456
+ newlinesInside?: (("always" | "never") | number)
9437
9457
 
9438
9458
  fallbackSort?: {
9439
9459
 
@@ -9503,12 +9523,10 @@ type PerfectionistSortNamedExports = {
9503
9523
  })
9504
9524
 
9505
9525
  partitionByNewLine?: boolean
9506
-
9507
- newlinesBetween?: ("ignore" | "always" | "never")
9526
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9508
9527
 
9509
9528
  groups?: (string | string[] | {
9510
-
9511
- newlinesBetween?: ("ignore" | "always" | "never")
9529
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9512
9530
 
9513
9531
  commentAbove?: string
9514
9532
  })[]
@@ -9540,8 +9558,7 @@ type PerfectionistSortNamedImports = {
9540
9558
  ignoreAlias?: boolean
9541
9559
 
9542
9560
  customGroups?: ({
9543
-
9544
- newlinesInside?: ("always" | "never")
9561
+ newlinesInside?: (("always" | "never") | number)
9545
9562
 
9546
9563
  fallbackSort?: {
9547
9564
 
@@ -9574,8 +9591,7 @@ type PerfectionistSortNamedImports = {
9574
9591
  } | string))
9575
9592
  }[]
9576
9593
  } | {
9577
-
9578
- newlinesInside?: ("always" | "never")
9594
+ newlinesInside?: (("always" | "never") | number)
9579
9595
 
9580
9596
  fallbackSort?: {
9581
9597
 
@@ -9645,12 +9661,10 @@ type PerfectionistSortNamedImports = {
9645
9661
  })
9646
9662
 
9647
9663
  partitionByNewLine?: boolean
9648
-
9649
- newlinesBetween?: ("ignore" | "always" | "never")
9664
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9650
9665
 
9651
9666
  groups?: (string | string[] | {
9652
-
9653
- newlinesBetween?: ("ignore" | "always" | "never")
9667
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9654
9668
 
9655
9669
  commentAbove?: string
9656
9670
  })[]
@@ -9680,8 +9694,7 @@ type PerfectionistSortObjectTypes = {
9680
9694
  customGroups?: ({
9681
9695
  [k: string]: (string | string[]) | undefined
9682
9696
  } | ({
9683
-
9684
- newlinesInside?: ("always" | "never")
9697
+ newlinesInside?: (("always" | "never") | number)
9685
9698
 
9686
9699
  fallbackSort?: {
9687
9700
 
@@ -9728,8 +9741,7 @@ type PerfectionistSortObjectTypes = {
9728
9741
  sortBy?: ("name" | "value")
9729
9742
  }[]
9730
9743
  } | {
9731
-
9732
- newlinesInside?: ("always" | "never")
9744
+ newlinesInside?: (("always" | "never") | number)
9733
9745
 
9734
9746
  fallbackSort?: {
9735
9747
 
@@ -9842,8 +9854,7 @@ type PerfectionistSortObjectTypes = {
9842
9854
  })
9843
9855
 
9844
9856
  partitionByNewLine?: boolean
9845
-
9846
- newlinesBetween?: ("ignore" | "always" | "never")
9857
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9847
9858
 
9848
9859
  ignorePattern?: (({
9849
9860
 
@@ -9859,8 +9870,7 @@ type PerfectionistSortObjectTypes = {
9859
9870
  sortBy?: ("name" | "value")
9860
9871
 
9861
9872
  groups?: (string | string[] | {
9862
-
9863
- newlinesBetween?: ("ignore" | "always" | "never")
9873
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
9864
9874
 
9865
9875
  commentAbove?: string
9866
9876
  })[]
@@ -9894,8 +9904,7 @@ type PerfectionistSortObjects = {
9894
9904
  customGroups?: ({
9895
9905
  [k: string]: (string | string[]) | undefined
9896
9906
  } | ({
9897
-
9898
- newlinesInside?: ("always" | "never")
9907
+ newlinesInside?: (("always" | "never") | number)
9899
9908
 
9900
9909
  fallbackSort?: {
9901
9910
 
@@ -9940,8 +9949,7 @@ type PerfectionistSortObjects = {
9940
9949
  } | string))
9941
9950
  }[]
9942
9951
  } | {
9943
-
9944
- newlinesInside?: ("always" | "never")
9952
+ newlinesInside?: (("always" | "never") | number)
9945
9953
 
9946
9954
  fallbackSort?: {
9947
9955
 
@@ -10056,8 +10064,7 @@ type PerfectionistSortObjects = {
10056
10064
  })
10057
10065
 
10058
10066
  partitionByNewLine?: boolean
10059
-
10060
- newlinesBetween?: ("ignore" | "always" | "never")
10067
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
10061
10068
 
10062
10069
  ignorePattern?: (({
10063
10070
 
@@ -10072,8 +10079,7 @@ type PerfectionistSortObjects = {
10072
10079
  } | string))
10073
10080
 
10074
10081
  groups?: (string | string[] | {
10075
-
10076
- newlinesBetween?: ("ignore" | "always" | "never")
10082
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
10077
10083
 
10078
10084
  commentAbove?: string
10079
10085
  })[]
@@ -10103,8 +10109,7 @@ type PerfectionistSortSets = {
10103
10109
  groupKind?: ("mixed" | "literals-first" | "spreads-first")
10104
10110
 
10105
10111
  customGroups?: ({
10106
-
10107
- newlinesInside?: ("always" | "never")
10112
+ newlinesInside?: (("always" | "never") | number)
10108
10113
 
10109
10114
  fallbackSort?: {
10110
10115
 
@@ -10135,8 +10140,7 @@ type PerfectionistSortSets = {
10135
10140
  } | string))
10136
10141
  }[]
10137
10142
  } | {
10138
-
10139
- newlinesInside?: ("always" | "never")
10143
+ newlinesInside?: (("always" | "never") | number)
10140
10144
 
10141
10145
  fallbackSort?: {
10142
10146
 
@@ -10219,12 +10223,10 @@ type PerfectionistSortSets = {
10219
10223
  })
10220
10224
 
10221
10225
  partitionByNewLine?: boolean
10222
-
10223
- newlinesBetween?: ("ignore" | "always" | "never")
10226
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
10224
10227
 
10225
10228
  groups?: (string | string[] | {
10226
-
10227
- newlinesBetween?: ("ignore" | "always" | "never")
10229
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
10228
10230
 
10229
10231
  commentAbove?: string
10230
10232
  })[]
@@ -10274,8 +10276,7 @@ type PerfectionistSortUnionTypes = {
10274
10276
  type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10275
10277
 
10276
10278
  customGroups?: ({
10277
-
10278
- newlinesInside?: ("always" | "never")
10279
+ newlinesInside?: (("always" | "never") | number)
10279
10280
 
10280
10281
  fallbackSort?: {
10281
10282
 
@@ -10306,8 +10307,7 @@ type PerfectionistSortUnionTypes = {
10306
10307
  } | string))
10307
10308
  }[]
10308
10309
  } | {
10309
-
10310
- newlinesInside?: ("always" | "never")
10310
+ newlinesInside?: (("always" | "never") | number)
10311
10311
 
10312
10312
  fallbackSort?: {
10313
10313
 
@@ -10375,12 +10375,10 @@ type PerfectionistSortUnionTypes = {
10375
10375
  })
10376
10376
 
10377
10377
  partitionByNewLine?: boolean
10378
-
10379
- newlinesBetween?: ("ignore" | "always" | "never")
10378
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
10380
10379
 
10381
10380
  groups?: (string | string[] | {
10382
-
10383
- newlinesBetween?: ("ignore" | "always" | "never")
10381
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
10384
10382
 
10385
10383
  commentAbove?: string
10386
10384
  })[]
@@ -10408,8 +10406,7 @@ type PerfectionistSortVariableDeclarations = []|[{
10408
10406
  type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10409
10407
 
10410
10408
  customGroups?: ({
10411
-
10412
- newlinesInside?: ("always" | "never")
10409
+ newlinesInside?: (("always" | "never") | number)
10413
10410
 
10414
10411
  fallbackSort?: {
10415
10412
 
@@ -10440,8 +10437,7 @@ type PerfectionistSortVariableDeclarations = []|[{
10440
10437
  } | string))
10441
10438
  }[]
10442
10439
  } | {
10443
-
10444
- newlinesInside?: ("always" | "never")
10440
+ newlinesInside?: (("always" | "never") | number)
10445
10441
 
10446
10442
  fallbackSort?: {
10447
10443
 
@@ -10509,12 +10505,10 @@ type PerfectionistSortVariableDeclarations = []|[{
10509
10505
  })
10510
10506
 
10511
10507
  partitionByNewLine?: boolean
10512
-
10513
- newlinesBetween?: ("ignore" | "always" | "never")
10508
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
10514
10509
 
10515
10510
  groups?: (string | string[] | {
10516
-
10517
- newlinesBetween?: ("ignore" | "always" | "never")
10511
+ newlinesBetween?: (("ignore" | "always" | "never") | number)
10518
10512
 
10519
10513
  commentAbove?: string
10520
10514
  })[]
@@ -10756,6 +10750,10 @@ interface _UnicornImportStyle_BooleanObject {
10756
10750
  type UnicornNoArrayReduce = []|[{
10757
10751
  allowSimpleOperations?: boolean
10758
10752
  }]
10753
+ // ----- unicorn/no-array-reverse -----
10754
+ type UnicornNoArrayReverse = []|[{
10755
+ allowExpressionStatement?: boolean
10756
+ }]
10759
10757
  // ----- unicorn/no-instanceof-builtins -----
10760
10758
  type UnicornNoInstanceofBuiltins = []|[{
10761
10759
  useErrorIsError?: boolean
@@ -10970,6 +10968,10 @@ type VitestConsistentTestIt = []|[{
10970
10968
  fn?: ("test" | "it")
10971
10969
  withinDescribe?: ("test" | "it")
10972
10970
  }]
10971
+ // ----- vitest/consistent-vitest-vi -----
10972
+ type VitestConsistentVitestVi = []|[{
10973
+ fn?: ("vi" | "vitest")
10974
+ }]
10973
10975
  // ----- vitest/expect-expect -----
10974
10976
  type VitestExpectExpect = []|[{
10975
10977
  assertFunctionNames?: string[]