@vinicunca/eslint-config 3.11.0 → 3.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.d.ts +546 -379
  2. package/dist/index.js +16 -14
  3. package/package.json +15 -15
package/dist/index.d.ts CHANGED
@@ -661,233 +661,233 @@ interface RuleOptions {
661
661
  'implicit-arrow-linebreak'?: Linter.RuleEntry<ImplicitArrowLinebreak>
662
662
  /**
663
663
  * Enforce or ban the use of inline type-only markers for named imports.
664
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/consistent-type-specifier-style.md
664
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/consistent-type-specifier-style.md
665
665
  */
666
666
  'import/consistent-type-specifier-style'?: Linter.RuleEntry<ImportConsistentTypeSpecifierStyle>
667
667
  /**
668
668
  * Ensure a default export is present, given a default import.
669
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/default.md
669
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/default.md
670
670
  */
671
671
  'import/default'?: Linter.RuleEntry<[]>
672
672
  /**
673
673
  * Enforce a leading comment with the webpackChunkName for dynamic imports.
674
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/dynamic-import-chunkname.md
674
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/dynamic-import-chunkname.md
675
675
  */
676
676
  'import/dynamic-import-chunkname'?: Linter.RuleEntry<ImportDynamicImportChunkname>
677
677
  /**
678
678
  * Forbid any invalid exports, i.e. re-export of the same name.
679
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/export.md
679
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/export.md
680
680
  */
681
681
  'import/export'?: Linter.RuleEntry<[]>
682
682
  /**
683
683
  * Ensure all exports appear after other statements.
684
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/exports-last.md
684
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/exports-last.md
685
685
  */
686
686
  'import/exports-last'?: Linter.RuleEntry<[]>
687
687
  /**
688
688
  * Ensure consistent use of file extension within the import path.
689
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/extensions.md
689
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/extensions.md
690
690
  */
691
691
  'import/extensions'?: Linter.RuleEntry<ImportExtensions>
692
692
  /**
693
693
  * Ensure all imports appear before other statements.
694
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/first.md
694
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/first.md
695
695
  */
696
696
  'import/first'?: Linter.RuleEntry<ImportFirst>
697
697
  /**
698
698
  * Prefer named exports to be grouped together in a single export declaration.
699
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/group-exports.md
699
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/group-exports.md
700
700
  */
701
701
  'import/group-exports'?: Linter.RuleEntry<[]>
702
702
  /**
703
703
  * Replaced by `import-x/first`.
704
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/imports-first.md
704
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/imports-first.md
705
705
  * @deprecated
706
706
  */
707
707
  'import/imports-first'?: Linter.RuleEntry<ImportImportsFirst>
708
708
  /**
709
709
  * Enforce the maximum number of dependencies a module can have.
710
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/max-dependencies.md
710
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/max-dependencies.md
711
711
  */
712
712
  'import/max-dependencies'?: Linter.RuleEntry<ImportMaxDependencies>
713
713
  /**
714
714
  * Ensure named imports correspond to a named export in the remote file.
715
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/named.md
715
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/named.md
716
716
  */
717
717
  'import/named'?: Linter.RuleEntry<ImportNamed>
718
718
  /**
719
719
  * Ensure imported namespaces contain dereferenced properties as they are dereferenced.
720
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/namespace.md
720
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/namespace.md
721
721
  */
722
722
  'import/namespace'?: Linter.RuleEntry<ImportNamespace>
723
723
  /**
724
724
  * Enforce a newline after import statements.
725
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/newline-after-import.md
725
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/newline-after-import.md
726
726
  */
727
727
  'import/newline-after-import'?: Linter.RuleEntry<ImportNewlineAfterImport>
728
728
  /**
729
729
  * Forbid import of modules using absolute paths.
730
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-absolute-path.md
730
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-absolute-path.md
731
731
  */
732
732
  'import/no-absolute-path'?: Linter.RuleEntry<ImportNoAbsolutePath>
733
733
  /**
734
734
  * Forbid AMD `require` and `define` calls.
735
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-amd.md
735
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-amd.md
736
736
  */
737
737
  'import/no-amd'?: Linter.RuleEntry<[]>
738
738
  /**
739
739
  * Forbid anonymous values as default exports.
740
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-anonymous-default-export.md
740
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-anonymous-default-export.md
741
741
  */
742
742
  'import/no-anonymous-default-export'?: Linter.RuleEntry<ImportNoAnonymousDefaultExport>
743
743
  /**
744
744
  * Forbid CommonJS `require` calls and `module.exports` or `exports.*`.
745
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-commonjs.md
745
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-commonjs.md
746
746
  */
747
747
  'import/no-commonjs'?: Linter.RuleEntry<ImportNoCommonjs>
748
748
  /**
749
749
  * Forbid a module from importing a module with a dependency path back to itself.
750
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-cycle.md
750
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-cycle.md
751
751
  */
752
752
  'import/no-cycle'?: Linter.RuleEntry<ImportNoCycle>
753
753
  /**
754
754
  * Forbid default exports.
755
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-default-export.md
755
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-default-export.md
756
756
  */
757
757
  'import/no-default-export'?: Linter.RuleEntry<[]>
758
758
  /**
759
759
  * Forbid imported names marked with `@deprecated` documentation tag.
760
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-deprecated.md
760
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-deprecated.md
761
761
  */
762
762
  'import/no-deprecated'?: Linter.RuleEntry<[]>
763
763
  /**
764
764
  * Forbid repeated import of the same module in multiple places.
765
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-duplicates.md
765
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-duplicates.md
766
766
  */
767
767
  'import/no-duplicates'?: Linter.RuleEntry<ImportNoDuplicates>
768
768
  /**
769
769
  * Forbid `require()` calls with expressions.
770
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-dynamic-require.md
770
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-dynamic-require.md
771
771
  */
772
772
  'import/no-dynamic-require'?: Linter.RuleEntry<ImportNoDynamicRequire>
773
773
  /**
774
774
  * Forbid empty named import blocks.
775
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-empty-named-blocks.md
775
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-empty-named-blocks.md
776
776
  */
777
777
  'import/no-empty-named-blocks'?: Linter.RuleEntry<[]>
778
778
  /**
779
779
  * Forbid the use of extraneous packages.
780
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-extraneous-dependencies.md
780
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-extraneous-dependencies.md
781
781
  */
782
782
  'import/no-extraneous-dependencies'?: Linter.RuleEntry<ImportNoExtraneousDependencies>
783
783
  /**
784
784
  * Forbid import statements with CommonJS module.exports.
785
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-import-module-exports.md
785
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-import-module-exports.md
786
786
  */
787
787
  'import/no-import-module-exports'?: Linter.RuleEntry<ImportNoImportModuleExports>
788
788
  /**
789
789
  * Forbid importing the submodules of other modules.
790
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-internal-modules.md
790
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-internal-modules.md
791
791
  */
792
792
  'import/no-internal-modules'?: Linter.RuleEntry<ImportNoInternalModules>
793
793
  /**
794
794
  * Forbid the use of mutable exports with `var` or `let`.
795
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-mutable-exports.md
795
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-mutable-exports.md
796
796
  */
797
797
  'import/no-mutable-exports'?: Linter.RuleEntry<[]>
798
798
  /**
799
799
  * Forbid use of exported name as identifier of default export.
800
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-named-as-default.md
800
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-named-as-default.md
801
801
  */
802
802
  'import/no-named-as-default'?: Linter.RuleEntry<[]>
803
803
  /**
804
804
  * Forbid use of exported name as property of default export.
805
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-named-as-default-member.md
805
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-named-as-default-member.md
806
806
  */
807
807
  'import/no-named-as-default-member'?: Linter.RuleEntry<[]>
808
808
  /**
809
809
  * Forbid named default exports.
810
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-named-default.md
810
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-named-default.md
811
811
  */
812
812
  'import/no-named-default'?: Linter.RuleEntry<[]>
813
813
  /**
814
814
  * Forbid named exports.
815
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-named-export.md
815
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-named-export.md
816
816
  */
817
817
  'import/no-named-export'?: Linter.RuleEntry<[]>
818
818
  /**
819
819
  * Forbid namespace (a.k.a. "wildcard" `*`) imports.
820
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-namespace.md
820
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-namespace.md
821
821
  */
822
822
  'import/no-namespace'?: Linter.RuleEntry<ImportNoNamespace>
823
823
  /**
824
824
  * Forbid Node.js builtin modules.
825
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-nodejs-modules.md
825
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-nodejs-modules.md
826
826
  */
827
827
  'import/no-nodejs-modules'?: Linter.RuleEntry<ImportNoNodejsModules>
828
828
  /**
829
829
  * Forbid importing packages through relative paths.
830
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-relative-packages.md
830
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-relative-packages.md
831
831
  */
832
832
  'import/no-relative-packages'?: Linter.RuleEntry<ImportNoRelativePackages>
833
833
  /**
834
834
  * Forbid importing modules from parent directories.
835
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-relative-parent-imports.md
835
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-relative-parent-imports.md
836
836
  */
837
837
  'import/no-relative-parent-imports'?: Linter.RuleEntry<ImportNoRelativeParentImports>
838
838
  /**
839
839
  * Forbid importing a default export by a different name.
840
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-rename-default.md
840
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-rename-default.md
841
841
  */
842
842
  'import/no-rename-default'?: Linter.RuleEntry<ImportNoRenameDefault>
843
843
  /**
844
844
  * Enforce which files can be imported in a given folder.
845
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-restricted-paths.md
845
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-restricted-paths.md
846
846
  */
847
847
  'import/no-restricted-paths'?: Linter.RuleEntry<ImportNoRestrictedPaths>
848
848
  /**
849
849
  * Forbid a module from importing itself.
850
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-self-import.md
850
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-self-import.md
851
851
  */
852
852
  'import/no-self-import'?: Linter.RuleEntry<[]>
853
853
  /**
854
854
  * Forbid unassigned imports.
855
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-unassigned-import.md
855
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-unassigned-import.md
856
856
  */
857
857
  'import/no-unassigned-import'?: Linter.RuleEntry<ImportNoUnassignedImport>
858
858
  /**
859
859
  * Ensure imports point to a file/module that can be resolved.
860
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-unresolved.md
860
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-unresolved.md
861
861
  */
862
862
  'import/no-unresolved'?: Linter.RuleEntry<ImportNoUnresolved>
863
863
  /**
864
864
  * Forbid modules without exports, or exports without matching import in another module.
865
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-unused-modules.md
865
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-unused-modules.md
866
866
  */
867
867
  'import/no-unused-modules'?: Linter.RuleEntry<ImportNoUnusedModules>
868
868
  /**
869
869
  * Forbid unnecessary path segments in import and require statements.
870
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-useless-path-segments.md
870
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-useless-path-segments.md
871
871
  */
872
872
  'import/no-useless-path-segments'?: Linter.RuleEntry<ImportNoUselessPathSegments>
873
873
  /**
874
874
  * Forbid webpack loader syntax in imports.
875
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/no-webpack-loader-syntax.md
875
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-webpack-loader-syntax.md
876
876
  */
877
877
  'import/no-webpack-loader-syntax'?: Linter.RuleEntry<[]>
878
878
  /**
879
879
  * Enforce a convention in module import order.
880
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/order.md
880
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/order.md
881
881
  */
882
882
  'import/order'?: Linter.RuleEntry<ImportOrder>
883
883
  /**
884
884
  * Prefer a default export if module exports a single name or multiple names.
885
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/prefer-default-export.md
885
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/prefer-default-export.md
886
886
  */
887
887
  'import/prefer-default-export'?: Linter.RuleEntry<ImportPreferDefaultExport>
888
888
  /**
889
889
  * Forbid potentially ambiguous parse goal (`script` vs. `module`).
890
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.2/docs/rules/unambiguous.md
890
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/unambiguous.md
891
891
  */
892
892
  'import/unambiguous'?: Linter.RuleEntry<[]>
893
893
  /**
@@ -1467,30 +1467,37 @@ interface RuleOptions {
1467
1467
  'logical-assignment-operators'?: Linter.RuleEntry<LogicalAssignmentOperators>
1468
1468
  /**
1469
1469
  * Require languages for fenced code blocks
1470
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/fenced-code-language.md
1470
1471
  */
1471
1472
  'markdown/fenced-code-language'?: Linter.RuleEntry<MarkdownFencedCodeLanguage>
1472
1473
  /**
1473
1474
  * Enforce heading levels increment by one
1475
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/heading-increment.md
1474
1476
  */
1475
1477
  'markdown/heading-increment'?: Linter.RuleEntry<[]>
1476
1478
  /**
1477
1479
  * Disallow duplicate headings in the same document
1480
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-headings.md
1478
1481
  */
1479
1482
  'markdown/no-duplicate-headings'?: Linter.RuleEntry<[]>
1480
1483
  /**
1481
1484
  * Disallow empty links
1485
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-links.md
1482
1486
  */
1483
1487
  'markdown/no-empty-links'?: Linter.RuleEntry<[]>
1484
1488
  /**
1485
1489
  * Disallow HTML tags
1490
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-html.md
1486
1491
  */
1487
1492
  'markdown/no-html'?: Linter.RuleEntry<MarkdownNoHtml>
1488
1493
  /**
1489
1494
  * Disallow invalid label references
1495
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-invalid-label-refs.md
1490
1496
  */
1491
1497
  'markdown/no-invalid-label-refs'?: Linter.RuleEntry<[]>
1492
1498
  /**
1493
1499
  * Disallow missing label references
1500
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-label-refs.md
1494
1501
  */
1495
1502
  'markdown/no-missing-label-refs'?: Linter.RuleEntry<[]>
1496
1503
  /**
@@ -2171,7 +2178,7 @@ interface RuleOptions {
2171
2178
  * Disallow identifiers from shadowing restricted names
2172
2179
  * @see https://eslint.org/docs/latest/rules/no-shadow-restricted-names
2173
2180
  */
2174
- 'no-shadow-restricted-names'?: Linter.RuleEntry<[]>
2181
+ 'no-shadow-restricted-names'?: Linter.RuleEntry<NoShadowRestrictedNames>
2175
2182
  /**
2176
2183
  * Disallow spacing between function identifiers and their applications (deprecated)
2177
2184
  * @see https://eslint.org/docs/latest/rules/no-spaced-func
@@ -2836,117 +2843,142 @@ interface RuleOptions {
2836
2843
  */
2837
2844
  'radix'?: Linter.RuleEntry<Radix>
2838
2845
  /**
2839
- * disallow void elements (AKA self-closing elements) from having children
2846
+ * Disallow `children` in void DOM elements.
2840
2847
  * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
2841
2848
  */
2842
2849
  'react-dom/no-children-in-void-dom-elements'?: Linter.RuleEntry<[]>
2843
2850
  /**
2844
- * disallow when a DOM component is using 'dangerouslySetInnerHTML'
2851
+ * Disallow `dangerouslySetInnerHTML`.
2845
2852
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml
2846
2853
  */
2847
2854
  'react-dom/no-dangerously-set-innerhtml'?: Linter.RuleEntry<[]>
2848
2855
  /**
2849
- * disallow when a DOM component is using both 'children' and 'dangerouslySetInnerHTML'
2856
+ * Disallow `dangerouslySetInnerHTML` and `children` at the same time.
2850
2857
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml-with-children
2851
2858
  */
2852
2859
  'react-dom/no-dangerously-set-innerhtml-with-children'?: Linter.RuleEntry<[]>
2853
2860
  /**
2854
- * disallow 'findDOMNode'
2861
+ * Disallow `findDOMNode`.
2855
2862
  * @see https://eslint-react.xyz/docs/rules/dom-no-find-dom-node
2856
2863
  */
2857
2864
  'react-dom/no-find-dom-node'?: Linter.RuleEntry<[]>
2858
2865
  /**
2859
- * enforce that button component have an explicit 'type' attribute
2866
+ * Disallow `flushSync`.
2867
+ * @see https://eslint-react.xyz/docs/rules/dom-no-flush-sync
2868
+ */
2869
+ 'react-dom/no-flush-sync'?: Linter.RuleEntry<[]>
2870
+ /**
2871
+ * Replaces usages of `ReactDom.hydrate()` with `hydrateRoot()`.
2872
+ * @see https://eslint-react.xyz/docs/rules/dom-no-hydrate
2873
+ */
2874
+ 'react-dom/no-hydrate'?: Linter.RuleEntry<[]>
2875
+ /**
2876
+ * Enforces explicit `type` attribute for `button` elements.
2860
2877
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-button-type
2861
2878
  */
2862
2879
  'react-dom/no-missing-button-type'?: Linter.RuleEntry<[]>
2863
2880
  /**
2864
- * enforce that 'iframe' component have an explicit 'sandbox' attribute
2881
+ * Enforces explicit `sandbox` attribute for `iframe` elements.
2865
2882
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox
2866
2883
  */
2867
2884
  'react-dom/no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>
2868
2885
  /**
2869
- * enforce that namespaces are not used in React elements
2886
+ * Enforces the absence of a `namespace` in React elements.
2870
2887
  * @see https://eslint-react.xyz/docs/rules/dom-no-namespace
2871
2888
  */
2872
2889
  'react-dom/no-namespace'?: Linter.RuleEntry<[]>
2873
2890
  /**
2874
- * disallow usage of the return value of 'ReactDOM.render'
2891
+ * Replaces usages of `ReactDom.render()` with `createRoot(node).render()`.
2892
+ * @see https://eslint-react.xyz/docs/rules/dom-no-render
2893
+ */
2894
+ 'react-dom/no-render'?: Linter.RuleEntry<[]>
2895
+ /**
2896
+ * Disallow the return value of `ReactDOM.render`.
2875
2897
  * @see https://eslint-react.xyz/docs/rules/dom-no-render-return-value
2876
2898
  */
2877
2899
  'react-dom/no-render-return-value'?: Linter.RuleEntry<[]>
2878
2900
  /**
2879
- * disallow 'javascript:' URLs as JSX event handler prop's value
2901
+ * Disallow `javascript:` URLs as attribute values.
2880
2902
  * @see https://eslint-react.xyz/docs/rules/dom-no-script-url
2881
2903
  */
2882
2904
  'react-dom/no-script-url'?: Linter.RuleEntry<[]>
2883
2905
  /**
2884
- * disallow usage of unknown DOM property
2906
+ * Disallow unknown `DOM` property.
2885
2907
  * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property
2886
2908
  */
2887
2909
  'react-dom/no-unknown-property'?: Linter.RuleEntry<ReactDomNoUnknownProperty>
2888
2910
  /**
2889
- * disallow unsafe iframe 'sandbox' attribute combinations
2911
+ * Enforces `sandbox` attribute for `iframe` elements is not set to unsafe combinations.
2890
2912
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox
2891
2913
  */
2892
2914
  'react-dom/no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>
2893
2915
  /**
2894
- * disallow 'target="_blank"' on an external link without 'rel="noreferrer noopener"'
2916
+ * Disallow `target="_blank"` without `rel="noreferrer noopener"`.
2895
2917
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-target-blank
2896
2918
  */
2897
2919
  'react-dom/no-unsafe-target-blank'?: Linter.RuleEntry<[]>
2898
2920
  /**
2899
- * disallow void elements (AKA self-closing elements) from having children
2921
+ * Replaces usages of `useFormState` with `useActionState`.
2922
+ * @see https://eslint-react.xyz/docs/rules/dom-no-use-form-state
2923
+ */
2924
+ 'react-dom/no-use-form-state'?: Linter.RuleEntry<[]>
2925
+ /**
2926
+ * Disallow `children` in void DOM elements.
2900
2927
  * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
2901
2928
  */
2902
2929
  'react-dom/no-void-elements-with-children'?: Linter.RuleEntry<[]>
2903
2930
  /**
2904
- * enforce custom Hooks to use at least one other hook inside
2905
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-useless-custom-hooks
2931
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2932
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2906
2933
  */
2907
2934
  'react-hooks-extra/ensure-custom-hooks-using-other-hooks'?: Linter.RuleEntry<[]>
2908
2935
  /**
2909
- * disallow unnecessary usage of 'useCallback'
2936
+ * Disallow unnecessary usage of `useCallback`.
2910
2937
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-callback
2911
2938
  */
2912
2939
  'react-hooks-extra/ensure-use-callback-has-non-empty-deps'?: Linter.RuleEntry<[]>
2913
2940
  /**
2914
- * disallow unnecessary usage of 'useMemo'
2941
+ * Disallow unnecessary usage of `useMemo`.
2915
2942
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-memo
2916
2943
  */
2917
2944
  'react-hooks-extra/ensure-use-memo-has-non-empty-deps'?: Linter.RuleEntry<[]>
2918
2945
  /**
2919
- * disallow direct calls to the 'set' function of 'useState' in 'useEffect'
2946
+ * Disallow direct calls to the `set` function of `useState` in `useEffect`.
2920
2947
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
2921
2948
  */
2922
2949
  'react-hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>
2923
2950
  /**
2924
- * disallow direct calls to the 'set' function of 'useState' in 'useLayoutEffect'
2951
+ * Disallow direct calls to the `set` function of `useState` in `useLayoutEffect`.
2925
2952
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-layout-effect
2926
2953
  */
2927
2954
  'react-hooks-extra/no-direct-set-state-in-use-layout-effect'?: Linter.RuleEntry<[]>
2928
2955
  /**
2929
- * enforce custom Hooks to use at least one other hook inside
2930
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-useless-custom-hooks
2956
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2957
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2931
2958
  */
2932
2959
  'react-hooks-extra/no-redundant-custom-hook'?: Linter.RuleEntry<[]>
2933
2960
  /**
2934
- * disallow unnecessary usage of 'useCallback'
2961
+ * Disallow unnecessary usage of `useCallback`.
2935
2962
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-callback
2936
2963
  */
2937
2964
  'react-hooks-extra/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>
2938
2965
  /**
2939
- * disallow unnecessary usage of 'useMemo'
2966
+ * Disallow unnecessary usage of `useMemo`.
2940
2967
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-memo
2941
2968
  */
2942
2969
  'react-hooks-extra/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>
2943
2970
  /**
2944
- * enforce custom Hooks to use at least one other hook inside
2945
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-useless-custom-hooks
2971
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2972
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2973
+ */
2974
+ 'react-hooks-extra/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>
2975
+ /**
2976
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2977
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2946
2978
  */
2947
2979
  'react-hooks-extra/no-useless-custom-hooks'?: Linter.RuleEntry<[]>
2948
2980
  /**
2949
- * disallow function calls in 'useState' that aren't wrapped in an initializer function
2981
+ * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
2950
2982
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-prefer-use-state-lazy-initialization
2951
2983
  */
2952
2984
  'react-hooks-extra/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>
@@ -2961,314 +2993,344 @@ interface RuleOptions {
2961
2993
  */
2962
2994
  'react-hooks/rules-of-hooks'?: Linter.RuleEntry<[]>
2963
2995
  /**
2964
- * enforce component naming convention to 'PascalCase' or 'CONSTANT_CASE'
2996
+ * Enforces naming conventions for components.
2965
2997
  * @see https://eslint-react.xyz/docs/rules/naming-convention-component-name
2966
2998
  */
2967
2999
  'react-naming-convention/component-name'?: Linter.RuleEntry<ReactNamingConventionComponentName>
2968
3000
  /**
2969
- * enforce naming convention for JSX filenames
3001
+ * Enforces context name to be a valid component name with the suffix `Context`.
3002
+ * @see https://eslint-react.xyz/docs/rules/naming-convention-context-name
3003
+ */
3004
+ 'react-naming-convention/context-name'?: Linter.RuleEntry<[]>
3005
+ /**
3006
+ * Enforces consistent file naming conventions.
2970
3007
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename
2971
3008
  */
2972
3009
  'react-naming-convention/filename'?: Linter.RuleEntry<ReactNamingConventionFilename>
2973
3010
  /**
2974
- * enforce naming convention for JSX file extensions
3011
+ * Enforces consistent file naming conventions.
2975
3012
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename-extension
2976
3013
  */
2977
3014
  'react-naming-convention/filename-extension'?: Linter.RuleEntry<ReactNamingConventionFilenameExtension>
2978
3015
  /**
2979
- * enforce destructuring and symmetric naming of 'useState' hook value and setter variables
3016
+ * Enforces destructuring and symmetric naming of `useState` hook value and setter.
2980
3017
  * @see https://eslint-react.xyz/docs/rules/naming-convention-use-state
2981
3018
  */
2982
3019
  'react-naming-convention/use-state'?: Linter.RuleEntry<[]>
2983
3020
  'react-refresh/only-export-components'?: Linter.RuleEntry<ReactRefreshOnlyExportComponents>
2984
3021
  /**
2985
- * enforce that every 'addEventListener' in a component or custom Hook has a corresponding 'removeEventListener'.
3022
+ * Prevents leaked `addEventListener` in a component or custom Hook.
2986
3023
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-event-listener
2987
3024
  */
2988
3025
  'react-web-api/no-leaked-event-listener'?: Linter.RuleEntry<[]>
2989
3026
  /**
2990
- * enforce that every 'setInterval' in a component or custom Hook has a corresponding 'clearInterval'.
3027
+ * Prevents leaked `setInterval` in a component or custom Hook.
2991
3028
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-interval
2992
3029
  */
2993
3030
  'react-web-api/no-leaked-interval'?: Linter.RuleEntry<[]>
2994
3031
  /**
2995
- * enforce cleanup of 'ResizeObserver' instances in components and custom Hooks.
3032
+ * Prevents leaked `ResizeObserver` in a component or custom Hook.
2996
3033
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-resize-observer
2997
3034
  */
2998
3035
  'react-web-api/no-leaked-resize-observer'?: Linter.RuleEntry<[]>
2999
3036
  /**
3000
- * enforce that every 'setTimeout' in a component or custom Hook has a corresponding 'clearTimeout'.
3037
+ * Prevents leaked `setTimeout` in a component or custom Hook.
3001
3038
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-timeout
3002
3039
  */
3003
3040
  'react-web-api/no-leaked-timeout'?: Linter.RuleEntry<[]>
3004
3041
  /**
3005
- * disallow using shorthand boolean attributes
3042
+ * Enforces explicit boolean values for boolean attributes.
3006
3043
  * @see https://eslint-react.xyz/docs/rules/avoid-shorthand-boolean
3007
3044
  */
3008
3045
  'react/avoid-shorthand-boolean'?: Linter.RuleEntry<[]>
3009
3046
  /**
3010
- * disallow using shorthand fragment syntax
3047
+ * Enforces explicit `<Fragment>` components instead of the shorthand `<>` or `</>` syntax.
3011
3048
  * @see https://eslint-react.xyz/docs/rules/avoid-shorthand-fragment
3012
3049
  */
3013
3050
  'react/avoid-shorthand-fragment'?: Linter.RuleEntry<[]>
3014
3051
  /**
3015
- * require a 'ref' parameter to be set when using 'forwardRef'
3016
- * @see https://eslint-react.xyz/docs/rules/ensure-forward-ref-using-ref
3052
+ * Disallow useless `forwardRef` calls on components that don't use `ref`s.
3053
+ * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
3017
3054
  */
3018
3055
  'react/ensure-forward-ref-using-ref'?: Linter.RuleEntry<[]>
3019
3056
  /**
3020
- * disallow duplicate props
3021
- * @see https://eslint-react.xyz/docs/rules/no-duplicate-jsx-props
3057
+ * Disallow duplicate props in JSX elements.
3058
+ * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
3022
3059
  */
3023
3060
  'react/jsx-no-duplicate-props'?: Linter.RuleEntry<[]>
3024
3061
  /**
3025
- * helpes `eslint/no-unused-vars` to correctly mark JSX variables as used.
3026
- * @see https://eslint-react.xyz/docs/rules/use-jsx-vars
3062
+ * Disallow undefined variables in JSX.
3063
+ * @see https://eslint-react.xyz/docs/rules/jsx-no-undef
3064
+ */
3065
+ 'react/jsx-no-undef'?: Linter.RuleEntry<[]>
3066
+ /**
3067
+ * Marks React variables as used when JSX is used.
3068
+ * @see https://eslint-react.xyz/docs/rules/jsx-uses-react
3069
+ */
3070
+ 'react/jsx-uses-react'?: Linter.RuleEntry<[]>
3071
+ /**
3072
+ * Marks variables used in JSX elements as used.
3073
+ * @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
3027
3074
  */
3028
3075
  'react/jsx-uses-vars'?: Linter.RuleEntry<[]>
3029
3076
  /**
3030
- * disallow accessing 'this.state' within 'setState'
3077
+ * Disallow accessing `this.state` inside `setState` calls.
3031
3078
  * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate
3032
3079
  */
3033
3080
  'react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>
3034
3081
  /**
3035
- * disallow using Array index as 'key'
3082
+ * Disallow an item's index in the array as its key.
3036
3083
  * @see https://eslint-react.xyz/docs/rules/no-array-index-key
3037
3084
  */
3038
3085
  'react/no-array-index-key'?: Linter.RuleEntry<[]>
3039
3086
  /**
3040
- * disallow using 'Children.count'
3087
+ * Disallow `Children.count`.
3041
3088
  * @see https://eslint-react.xyz/docs/rules/no-children-count
3042
3089
  */
3043
3090
  'react/no-children-count'?: Linter.RuleEntry<[]>
3044
3091
  /**
3045
- * disallow using 'Children.forEach'
3092
+ * Disallow 'Children.forEach'.
3046
3093
  * @see https://eslint-react.xyz/docs/rules/no-children-for-each
3047
3094
  */
3048
3095
  'react/no-children-for-each'?: Linter.RuleEntry<[]>
3049
3096
  /**
3050
- * disallow using 'Children.map'
3097
+ * Disallow `Children.map`.
3051
3098
  * @see https://eslint-react.xyz/docs/rules/no-children-map
3052
3099
  */
3053
3100
  'react/no-children-map'?: Linter.RuleEntry<[]>
3054
3101
  /**
3055
- * disallow using 'Children.only'
3102
+ * Disallow `Children.only`.
3056
3103
  * @see https://eslint-react.xyz/docs/rules/no-children-only
3057
3104
  */
3058
3105
  'react/no-children-only'?: Linter.RuleEntry<[]>
3059
3106
  /**
3060
- * disallow passing 'children' as props
3107
+ * Disallow passing `children` as a prop.
3061
3108
  * @see https://eslint-react.xyz/docs/rules/no-children-prop
3062
3109
  */
3063
3110
  'react/no-children-prop'?: Linter.RuleEntry<[]>
3064
3111
  /**
3065
- * disallow using 'Children.toArray'
3112
+ * Disallow `Children.toArray`.
3066
3113
  * @see https://eslint-react.xyz/docs/rules/no-children-to-array
3067
3114
  */
3068
3115
  'react/no-children-to-array'?: Linter.RuleEntry<[]>
3069
3116
  /**
3070
- * disallow using class components
3117
+ * Disallow class components.
3071
3118
  * @see https://eslint-react.xyz/docs/rules/no-class-component
3072
3119
  */
3073
3120
  'react/no-class-component'?: Linter.RuleEntry<[]>
3074
3121
  /**
3075
- * disallow using 'cloneElement'
3122
+ * Disallow `cloneElement`.
3076
3123
  * @see https://eslint-react.xyz/docs/rules/no-clone-element
3077
3124
  */
3078
3125
  'react/no-clone-element'?: Linter.RuleEntry<[]>
3079
3126
  /**
3080
- * disallow comments from being inserted as text nodes
3127
+ * Prevents comments from being inserted as text nodes.
3081
3128
  * @see https://eslint-react.xyz/docs/rules/no-comment-textnodes
3082
3129
  */
3083
3130
  'react/no-comment-textnodes'?: Linter.RuleEntry<[]>
3084
3131
  /**
3085
- * disallow complex conditional rendering
3132
+ * Disallow complex conditional rendering in JSX expressions.
3086
3133
  * @see https://eslint-react.xyz/docs/rules/no-complex-conditional-rendering
3087
3134
  */
3088
3135
  'react/no-complex-conditional-rendering'?: Linter.RuleEntry<[]>
3089
3136
  /**
3090
- * disallow complex conditional rendering
3137
+ * Disallow complex conditional rendering in JSX expressions.
3091
3138
  * @see https://eslint-react.xyz/docs/rules/no-complex-conditional-rendering
3092
3139
  */
3093
3140
  'react/no-complicated-conditional-rendering'?: Linter.RuleEntry<[]>
3094
3141
  /**
3095
- * disallow using 'componentWillMount'
3142
+ * Replace usages of `componentWillMount` with `UNSAFE_componentWillMount`.
3096
3143
  * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
3097
3144
  */
3098
3145
  'react/no-component-will-mount'?: Linter.RuleEntry<[]>
3099
3146
  /**
3100
- * disallow using 'componentWillReceiveProps'
3147
+ * Replace usages of `componentWillReceiveProps` with `UNSAFE_componentWillReceiveProps`.
3101
3148
  * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props
3102
3149
  */
3103
3150
  'react/no-component-will-receive-props'?: Linter.RuleEntry<[]>
3104
3151
  /**
3105
- * disallow using 'componentWillReceiveProps'
3152
+ * Replace usages of `componentWillUpdate` with `UNSAFE_componentWillUpdate`.
3106
3153
  * @see https://eslint-react.xyz/docs/rules/no-component-will-update
3107
3154
  */
3108
3155
  'react/no-component-will-update'?: Linter.RuleEntry<[]>
3109
3156
  /**
3110
- * disallow the use of '<Context.Provider>'
3157
+ * Replace usages of `<Context.Provider>` with `<Context>`.
3111
3158
  * @see https://eslint-react.xyz/docs/rules/no-context-provider
3112
3159
  */
3113
3160
  'react/no-context-provider'?: Linter.RuleEntry<[]>
3114
3161
  /**
3115
- * disallow using 'createRef' in function components
3162
+ * Disallow `createRef` in function components.
3116
3163
  * @see https://eslint-react.xyz/docs/rules/no-create-ref
3117
3164
  */
3118
3165
  'react/no-create-ref'?: Linter.RuleEntry<[]>
3119
3166
  /**
3120
- * disallow using 'defaultProps' property in components
3167
+ * Disallow `defaultProps` property in favor of ES6 default parameters.
3121
3168
  * @see https://eslint-react.xyz/docs/rules/no-default-props
3122
3169
  */
3123
3170
  'react/no-default-props'?: Linter.RuleEntry<[]>
3124
3171
  /**
3125
- * disallow direct mutation of state
3172
+ * Disallow direct mutation of `this.state`.
3126
3173
  * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
3127
3174
  */
3128
3175
  'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>
3129
3176
  /**
3130
- * disallow duplicate props
3131
- * @see https://eslint-react.xyz/docs/rules/no-duplicate-jsx-props
3177
+ * Disallow duplicate props in JSX elements.
3178
+ * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
3132
3179
  */
3133
3180
  'react/no-duplicate-jsx-props'?: Linter.RuleEntry<[]>
3134
3181
  /**
3135
- * disallow duplicate keys when rendering list
3182
+ * Disallow duplicate `key` on elements in the same array or a list of `children`.
3136
3183
  * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
3137
3184
  */
3138
3185
  'react/no-duplicate-key'?: Linter.RuleEntry<[]>
3139
3186
  /**
3140
- * disallow the use of 'forwardRef'
3187
+ * Replaces usages of `forwardRef` with passing `ref` as a prop.
3141
3188
  * @see https://eslint-react.xyz/docs/rules/no-forward-ref
3142
3189
  */
3143
3190
  'react/no-forward-ref'?: Linter.RuleEntry<[]>
3144
3191
  /**
3145
- * disallow implicit 'key' props
3192
+ * Prevents `key` from not being explicitly specified (e.g. spreading `key` from objects).
3146
3193
  * @see https://eslint-react.xyz/docs/rules/no-implicit-key
3147
3194
  */
3148
3195
  'react/no-implicit-key'?: Linter.RuleEntry<[]>
3149
3196
  /**
3150
- * disallow problematic leaked values from being rendered
3197
+ * Prevents problematic leaked values from being rendered.
3151
3198
  * @see https://eslint-react.xyz/docs/rules/no-leaked-conditional-rendering
3152
3199
  */
3153
3200
  'react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
3154
3201
  /**
3155
- * require 'displayName' for 'memo' and 'forwardRef' components
3202
+ * Enforces that all components have a `displayName` which can be used in devtools.
3156
3203
  * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
3157
3204
  */
3158
3205
  'react/no-missing-component-display-name'?: Linter.RuleEntry<[]>
3159
3206
  /**
3160
- * require 'key' when rendering list
3207
+ * Enforces that all contexts have a `displayName` which can be used in devtools.
3208
+ * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
3209
+ */
3210
+ 'react/no-missing-context-display-name'?: Linter.RuleEntry<[]>
3211
+ /**
3212
+ * Disallow missing `key` on items in list rendering.
3161
3213
  * @see https://eslint-react.xyz/docs/rules/no-missing-key
3162
3214
  */
3163
3215
  'react/no-missing-key'?: Linter.RuleEntry<[]>
3164
3216
  /**
3165
- * disallow using unstable nested components
3166
- * @see https://eslint-react.xyz/docs/rules/no-nested-components
3217
+ * Disallow nesting component definitions inside other components.
3218
+ * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
3219
+ */
3220
+ 'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>
3221
+ /**
3222
+ * Disallow nesting component definitions inside other components.
3223
+ * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
3167
3224
  */
3168
3225
  'react/no-nested-components'?: Linter.RuleEntry<[]>
3169
3226
  /**
3170
- * disallow using 'propTypes' property in components
3227
+ * Disallow `propTypes` in favor of TypeScript or another type-checking solution.
3171
3228
  * @see https://eslint-react.xyz/docs/rules/no-prop-types
3172
3229
  */
3173
3230
  'react/no-prop-types'?: Linter.RuleEntry<[]>
3174
3231
  /**
3175
- * disallow using 'shouldComponentUpdate' in class component extends 'React.PureComponent'
3232
+ * Disallow `shouldComponentUpdate` when extending `React.PureComponent`.
3176
3233
  * @see https://eslint-react.xyz/docs/rules/no-redundant-should-component-update
3177
3234
  */
3178
3235
  'react/no-redundant-should-component-update'?: Linter.RuleEntry<[]>
3179
3236
  /**
3180
- * disallow using 'setState' in 'componentDidMount'
3237
+ * Disallow calling `this.setState` in `componentDidMount` outside of functions, such as callbacks.
3181
3238
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount
3182
3239
  */
3183
3240
  'react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>
3184
3241
  /**
3185
- * disallow using 'setState' in 'componentDidUpdate'
3242
+ * Disallows calling `this.setState` in `componentDidUpdate` outside of functions, such as callbacks.
3186
3243
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update
3187
3244
  */
3188
3245
  'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>
3189
3246
  /**
3190
- * disallow using 'setState' in 'componentWillUpdate'
3247
+ * Disallows calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
3191
3248
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
3192
3249
  */
3193
3250
  'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>
3194
3251
  /**
3195
- * disallow using deprecated string refs
3252
+ * Disallow deprecated string `refs`.
3196
3253
  * @see https://eslint-react.xyz/docs/rules/no-string-refs
3197
3254
  */
3198
3255
  'react/no-string-refs'?: Linter.RuleEntry<[]>
3199
3256
  /**
3200
- * disallow using 'UNSAFE_componentWillMount'
3257
+ * Warns the usage of `UNSAFE_componentWillMount` in class components.
3201
3258
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
3202
3259
  */
3203
3260
  'react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>
3204
3261
  /**
3205
- * disallow using 'UNSAFE_componentWillReceiveProps'
3262
+ * Warns the usage of `UNSAFE_componentWillReceiveProps` in class components.
3206
3263
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props
3207
3264
  */
3208
3265
  'react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>
3209
3266
  /**
3210
- * disallow using 'UNSAFE_componentWillUpdate'
3267
+ * Warns the usage of `UNSAFE_componentWillUpdate` in class components.
3211
3268
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update
3212
3269
  */
3213
3270
  'react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>
3214
3271
  /**
3215
- * disallow passing constructed values to context providers
3272
+ * Prevents non-stable values (i.e. object literals) from being used as a value for `Context.Provider`.
3216
3273
  * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value
3217
3274
  */
3218
3275
  'react/no-unstable-context-value'?: Linter.RuleEntry<[]>
3219
3276
  /**
3220
- * disallow using unstable value as default param in function component
3277
+ * Prevents using referential-type values as default props in object destructuring.
3221
3278
  * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
3222
3279
  */
3223
3280
  'react/no-unstable-default-props'?: Linter.RuleEntry<[]>
3224
3281
  /**
3225
- * disallow unused class component members
3282
+ * Warns unused class component methods and properties.
3226
3283
  * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
3227
3284
  */
3228
3285
  'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>
3229
3286
  /**
3230
- * disallow unused state of class component
3287
+ * Warns unused class component state.
3231
3288
  * @see https://eslint-react.xyz/docs/rules/no-unused-state
3232
3289
  */
3233
3290
  'react/no-unused-state'?: Linter.RuleEntry<[]>
3234
3291
  /**
3235
- * disallow the use of 'useContext'
3292
+ * Replaces usages of `useContext` with `use`.
3236
3293
  * @see https://eslint-react.xyz/docs/rules/no-use-context
3237
3294
  */
3238
3295
  'react/no-use-context'?: Linter.RuleEntry<[]>
3239
3296
  /**
3240
- * disallow unnecessary fragments
3297
+ * Disallow useless `forwardRef` calls on components that don't use `ref`s.
3298
+ * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
3299
+ */
3300
+ 'react/no-useless-forward-ref'?: Linter.RuleEntry<[]>
3301
+ /**
3302
+ * Disallow useless fragment elements.
3241
3303
  * @see https://eslint-react.xyz/docs/rules/no-useless-fragment
3242
3304
  */
3243
3305
  'react/no-useless-fragment'?: Linter.RuleEntry<ReactNoUselessFragment>
3244
3306
  /**
3245
- * enforce using destructuring assignment in component props and context
3307
+ * Enforces destructuring assignment for component props and context.
3246
3308
  * @see https://eslint-react.xyz/docs/rules/prefer-destructuring-assignment
3247
3309
  */
3248
3310
  'react/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>
3249
3311
  /**
3250
- * enforce React is imported via a namespace import
3312
+ * Enforces React is imported via a namespace import.
3251
3313
  * @see https://eslint-react.xyz/docs/rules/prefer-react-namespace-import
3252
3314
  */
3253
3315
  'react/prefer-react-namespace-import'?: Linter.RuleEntry<[]>
3254
3316
  /**
3255
- * enforce read-only props in components
3317
+ * Enforces read-only props in components.
3256
3318
  * @see https://eslint-react.xyz/docs/rules/prefer-read-only-props
3257
3319
  */
3258
3320
  'react/prefer-read-only-props'?: Linter.RuleEntry<[]>
3259
3321
  /**
3260
- * enforce using shorthand boolean attributes
3322
+ * Enforces shorthand syntax for boolean attributes.
3261
3323
  * @see https://eslint-react.xyz/docs/rules/prefer-shorthand-boolean
3262
3324
  */
3263
3325
  'react/prefer-shorthand-boolean'?: Linter.RuleEntry<[]>
3264
3326
  /**
3265
- * enforce using fragment syntax instead of 'Fragment' component
3327
+ * Enforces shorthand syntax for fragments.
3266
3328
  * @see https://eslint-react.xyz/docs/rules/prefer-shorthand-fragment
3267
3329
  */
3268
3330
  'react/prefer-shorthand-fragment'?: Linter.RuleEntry<[]>
3269
3331
  /**
3270
- * helpes `eslint/no-unused-vars` to correctly mark JSX variables as used.
3271
- * @see https://eslint-react.xyz/docs/rules/use-jsx-vars
3332
+ * Marks variables used in JSX elements as used.
3333
+ * @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
3272
3334
  */
3273
3335
  'react/use-jsx-vars'?: Linter.RuleEntry<[]>
3274
3336
  /**
@@ -6191,7 +6253,7 @@ interface RuleOptions {
6191
6253
  */
6192
6254
  'test/no-standalone-expect'?: Linter.RuleEntry<TestNoStandaloneExpect>
6193
6255
  /**
6194
- * disallow using `test` as a prefix
6256
+ * Disallow using the `f` and `x` prefixes in favour of `.only` and `.skip`
6195
6257
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-prefixes.md
6196
6258
  */
6197
6259
  'test/no-test-prefixes'?: Linter.RuleEntry<[]>
@@ -6250,6 +6312,11 @@ interface RuleOptions {
6250
6312
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-comparison-matcher.md
6251
6313
  */
6252
6314
  'test/prefer-comparison-matcher'?: Linter.RuleEntry<[]>
6315
+ /**
6316
+ * enforce using a function as a describe title over an equivalent string
6317
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-describe-function-title.md
6318
+ */
6319
+ 'test/prefer-describe-function-title'?: Linter.RuleEntry<[]>
6253
6320
  /**
6254
6321
  * enforce using `each` rather than manual loops
6255
6322
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-each.md
@@ -6884,6 +6951,11 @@ interface RuleOptions {
6884
6951
  * @see https://typescript-eslint.io/rules/no-unnecessary-type-constraint
6885
6952
  */
6886
6953
  'ts/no-unnecessary-type-constraint'?: Linter.RuleEntry<[]>
6954
+ /**
6955
+ * Disallow conversion idioms when they do not change the type or value of the expression
6956
+ * @see https://typescript-eslint.io/rules/no-unnecessary-type-conversion
6957
+ */
6958
+ 'ts/no-unnecessary-type-conversion'?: Linter.RuleEntry<[]>
6887
6959
  /**
6888
6960
  * Disallow type parameters that aren't used multiple times
6889
6961
  * @see https://typescript-eslint.io/rules/no-unnecessary-type-parameters
@@ -7169,643 +7241,670 @@ interface RuleOptions {
7169
7241
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>
7170
7242
  /**
7171
7243
  * Improve regexes by making them shorter, consistent, and safer.
7172
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/better-regex.md
7244
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/better-regex.md
7173
7245
  */
7174
7246
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>
7175
7247
  /**
7176
7248
  * Enforce a specific parameter name in catch clauses.
7177
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/catch-error-name.md
7249
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/catch-error-name.md
7178
7250
  */
7179
7251
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>
7180
7252
  /**
7181
7253
  * Enforce consistent assertion style with `node:assert`.
7182
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-assert.md
7254
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-assert.md
7183
7255
  */
7184
7256
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>
7185
7257
  /**
7186
7258
  * Prefer passing `Date` directly to the constructor when cloning.
7187
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-date-clone.md
7259
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-date-clone.md
7188
7260
  */
7189
7261
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>
7190
7262
  /**
7191
7263
  * Use destructured variables over properties.
7192
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-destructuring.md
7264
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-destructuring.md
7193
7265
  */
7194
7266
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>
7195
7267
  /**
7196
7268
  * Prefer consistent types when spreading a ternary in an array literal.
7197
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-empty-array-spread.md
7269
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-empty-array-spread.md
7198
7270
  */
7199
7271
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>
7200
7272
  /**
7201
7273
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
7202
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-existence-index-check.md
7274
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-existence-index-check.md
7203
7275
  */
7204
7276
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>
7205
7277
  /**
7206
7278
  * Move function definitions to the highest possible scope.
7207
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-function-scoping.md
7279
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-function-scoping.md
7208
7280
  */
7209
7281
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>
7210
7282
  /**
7211
7283
  * Enforce correct `Error` subclassing.
7212
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/custom-error-definition.md
7284
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/custom-error-definition.md
7213
7285
  */
7214
7286
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>
7215
7287
  /**
7216
7288
  * Enforce no spaces between braces.
7217
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/empty-brace-spaces.md
7289
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/empty-brace-spaces.md
7218
7290
  */
7219
7291
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>
7220
7292
  /**
7221
7293
  * Enforce passing a `message` value when creating a built-in error.
7222
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/error-message.md
7294
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/error-message.md
7223
7295
  */
7224
7296
  'unicorn/error-message'?: Linter.RuleEntry<[]>
7225
7297
  /**
7226
7298
  * Require escape sequences to use uppercase or lowercase values.
7227
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/escape-case.md
7299
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/escape-case.md
7228
7300
  */
7229
7301
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>
7230
7302
  /**
7231
7303
  * Add expiration conditions to TODO comments.
7232
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/expiring-todo-comments.md
7304
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/expiring-todo-comments.md
7233
7305
  */
7234
7306
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>
7235
7307
  /**
7236
7308
  * Enforce explicitly comparing the `length` or `size` property of a value.
7237
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/explicit-length-check.md
7309
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/explicit-length-check.md
7238
7310
  */
7239
7311
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>
7240
7312
  /**
7241
7313
  * Enforce a case style for filenames.
7242
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/filename-case.md
7314
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/filename-case.md
7243
7315
  */
7244
7316
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>
7245
7317
  /**
7246
7318
  * Enforce specific import styles per module.
7247
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/import-style.md
7319
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/import-style.md
7248
7320
  */
7249
7321
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>
7250
7322
  /**
7251
7323
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
7252
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/new-for-builtins.md
7324
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/new-for-builtins.md
7253
7325
  */
7254
7326
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>
7255
7327
  /**
7256
7328
  * Enforce specifying rules to disable in `eslint-disable` comments.
7257
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-abusive-eslint-disable.md
7329
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-abusive-eslint-disable.md
7258
7330
  */
7259
7331
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>
7260
7332
  /**
7261
7333
  * Disallow recursive access to `this` within getters and setters.
7262
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-accessor-recursion.md
7334
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-accessor-recursion.md
7263
7335
  */
7264
7336
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>
7265
7337
  /**
7266
7338
  * Disallow anonymous functions and classes as the default export.
7267
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-anonymous-default-export.md
7339
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-anonymous-default-export.md
7268
7340
  */
7269
7341
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>
7270
7342
  /**
7271
7343
  * Prevent passing a function reference directly to iterator methods.
7272
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-callback-reference.md
7344
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-callback-reference.md
7273
7345
  */
7274
7346
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>
7275
7347
  /**
7276
7348
  * Prefer `for…of` over the `forEach` method.
7277
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-for-each.md
7349
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-for-each.md
7278
7350
  */
7279
7351
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>
7280
7352
  /**
7281
7353
  * Disallow using the `this` argument in array methods.
7282
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-method-this-argument.md
7354
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-method-this-argument.md
7283
7355
  */
7284
7356
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>
7285
7357
  /**
7286
- * Enforce combining multiple `Array#push()` into one call.
7287
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-push-push.md
7358
+ * Replaced by `unicorn/prefer-single-call` which covers more cases.
7359
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-array-push-push
7360
+ * @deprecated
7288
7361
  */
7289
- 'unicorn/no-array-push-push'?: Linter.RuleEntry<UnicornNoArrayPushPush>
7362
+ 'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>
7290
7363
  /**
7291
7364
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
7292
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-reduce.md
7365
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-reduce.md
7293
7366
  */
7294
7367
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>
7295
7368
  /**
7296
7369
  * Disallow member access from await expression.
7297
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-await-expression-member.md
7370
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-await-expression-member.md
7298
7371
  */
7299
7372
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>
7300
7373
  /**
7301
7374
  * Disallow using `await` in `Promise` method parameters.
7302
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-await-in-promise-methods.md
7375
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-await-in-promise-methods.md
7303
7376
  */
7304
7377
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>
7305
7378
  /**
7306
7379
  * Do not use leading/trailing space between `console.log` parameters.
7307
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-console-spaces.md
7380
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-console-spaces.md
7308
7381
  */
7309
7382
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>
7310
7383
  /**
7311
7384
  * Do not use `document.cookie` directly.
7312
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-document-cookie.md
7385
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-document-cookie.md
7313
7386
  */
7314
7387
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>
7315
7388
  /**
7316
7389
  * Disallow empty files.
7317
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-empty-file.md
7390
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-empty-file.md
7318
7391
  */
7319
7392
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>
7320
7393
  /**
7321
7394
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
7322
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-for-loop.md
7395
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-for-loop.md
7323
7396
  */
7324
7397
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>
7325
7398
  /**
7326
7399
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
7327
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-hex-escape.md
7400
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-hex-escape.md
7328
7401
  */
7329
7402
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>
7330
7403
  /**
7331
7404
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
7332
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/deprecated-rules.md#no-instanceof-array
7405
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-instanceof-array
7333
7406
  * @deprecated
7334
7407
  */
7335
7408
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>
7336
7409
  /**
7337
7410
  * Disallow `instanceof` with built-in objects
7338
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-instanceof-builtins.md
7411
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-instanceof-builtins.md
7339
7412
  */
7340
7413
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>
7341
7414
  /**
7342
7415
  * Disallow invalid options in `fetch()` and `new Request()`.
7343
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-invalid-fetch-options.md
7416
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-invalid-fetch-options.md
7344
7417
  */
7345
7418
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>
7346
7419
  /**
7347
7420
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
7348
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-invalid-remove-event-listener.md
7421
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-invalid-remove-event-listener.md
7349
7422
  */
7350
7423
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>
7351
7424
  /**
7352
7425
  * Disallow identifiers starting with `new` or `class`.
7353
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-keyword-prefix.md
7426
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-keyword-prefix.md
7354
7427
  */
7355
7428
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>
7356
7429
  /**
7357
- * Disallow using `.length` as the `end` argument of `{Array,String,TypedArray}#slice()`.
7358
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-length-as-slice-end.md
7430
+ * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
7431
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-length-as-slice-end
7432
+ * @deprecated
7359
7433
  */
7360
7434
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>
7361
7435
  /**
7362
7436
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
7363
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-lonely-if.md
7437
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-lonely-if.md
7364
7438
  */
7365
7439
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>
7366
7440
  /**
7367
7441
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
7368
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-magic-array-flat-depth.md
7442
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-magic-array-flat-depth.md
7369
7443
  */
7370
7444
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>
7371
7445
  /**
7372
7446
  * Disallow named usage of default import and export.
7373
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-named-default.md
7447
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-named-default.md
7374
7448
  */
7375
7449
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>
7376
7450
  /**
7377
7451
  * Disallow negated conditions.
7378
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-negated-condition.md
7452
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-negated-condition.md
7379
7453
  */
7380
7454
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>
7381
7455
  /**
7382
7456
  * Disallow negated expression in equality check.
7383
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-negation-in-equality-check.md
7457
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-negation-in-equality-check.md
7384
7458
  */
7385
7459
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>
7386
7460
  /**
7387
7461
  * Disallow nested ternary expressions.
7388
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-nested-ternary.md
7462
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-nested-ternary.md
7389
7463
  */
7390
7464
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>
7391
7465
  /**
7392
7466
  * Disallow `new Array()`.
7393
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-new-array.md
7467
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-new-array.md
7394
7468
  */
7395
7469
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>
7396
7470
  /**
7397
7471
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
7398
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-new-buffer.md
7472
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-new-buffer.md
7399
7473
  */
7400
7474
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>
7401
7475
  /**
7402
7476
  * Disallow the use of the `null` literal.
7403
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-null.md
7477
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-null.md
7404
7478
  */
7405
7479
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>
7406
7480
  /**
7407
7481
  * Disallow the use of objects as default parameters.
7408
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-object-as-default-parameter.md
7482
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-object-as-default-parameter.md
7409
7483
  */
7410
7484
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>
7411
7485
  /**
7412
7486
  * Disallow `process.exit()`.
7413
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-process-exit.md
7487
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-process-exit.md
7414
7488
  */
7415
7489
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>
7416
7490
  /**
7417
7491
  * Disallow passing single-element arrays to `Promise` methods.
7418
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-single-promise-in-promise-methods.md
7492
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-single-promise-in-promise-methods.md
7419
7493
  */
7420
7494
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>
7421
7495
  /**
7422
7496
  * Disallow classes that only have static members.
7423
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-static-only-class.md
7497
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-static-only-class.md
7424
7498
  */
7425
7499
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>
7426
7500
  /**
7427
7501
  * Disallow `then` property.
7428
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-thenable.md
7502
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-thenable.md
7429
7503
  */
7430
7504
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>
7431
7505
  /**
7432
7506
  * Disallow assigning `this` to a variable.
7433
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-this-assignment.md
7507
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-this-assignment.md
7434
7508
  */
7435
7509
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>
7436
7510
  /**
7437
7511
  * Disallow comparing `undefined` using `typeof`.
7438
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-typeof-undefined.md
7512
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-typeof-undefined.md
7439
7513
  */
7440
7514
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>
7515
+ /**
7516
+ * Disallow using `1` as the `depth` argument of `Array#flat()`.
7517
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-array-flat-depth.md
7518
+ */
7519
+ 'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>
7520
+ /**
7521
+ * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
7522
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-array-splice-count.md
7523
+ */
7524
+ 'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>
7441
7525
  /**
7442
7526
  * Disallow awaiting non-promise values.
7443
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unnecessary-await.md
7527
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-await.md
7444
7528
  */
7445
7529
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>
7446
7530
  /**
7447
7531
  * Enforce the use of built-in methods instead of unnecessary polyfills.
7448
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unnecessary-polyfills.md
7532
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-polyfills.md
7449
7533
  */
7450
7534
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>
7535
+ /**
7536
+ * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
7537
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-slice-end.md
7538
+ */
7539
+ 'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>
7451
7540
  /**
7452
7541
  * Disallow unreadable array destructuring.
7453
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unreadable-array-destructuring.md
7542
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unreadable-array-destructuring.md
7454
7543
  */
7455
7544
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>
7456
7545
  /**
7457
7546
  * Disallow unreadable IIFEs.
7458
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unreadable-iife.md
7547
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unreadable-iife.md
7459
7548
  */
7460
7549
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>
7461
7550
  /**
7462
7551
  * Disallow unused object properties.
7463
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unused-properties.md
7552
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unused-properties.md
7464
7553
  */
7465
7554
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>
7466
7555
  /**
7467
7556
  * Disallow useless fallback when spreading in object literals.
7468
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-fallback-in-spread.md
7557
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-fallback-in-spread.md
7469
7558
  */
7470
7559
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>
7471
7560
  /**
7472
7561
  * Disallow useless array length check.
7473
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-length-check.md
7562
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-length-check.md
7474
7563
  */
7475
7564
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>
7476
7565
  /**
7477
7566
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
7478
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-promise-resolve-reject.md
7567
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-promise-resolve-reject.md
7479
7568
  */
7480
7569
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>
7481
7570
  /**
7482
7571
  * Disallow unnecessary spread.
7483
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-spread.md
7572
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-spread.md
7484
7573
  */
7485
7574
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>
7486
7575
  /**
7487
7576
  * Disallow useless case in switch statements.
7488
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-switch-case.md
7577
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-switch-case.md
7489
7578
  */
7490
7579
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>
7491
7580
  /**
7492
7581
  * Disallow useless `undefined`.
7493
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-undefined.md
7582
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-undefined.md
7494
7583
  */
7495
7584
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>
7496
7585
  /**
7497
7586
  * Disallow number literals with zero fractions or dangling dots.
7498
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-zero-fractions.md
7587
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-zero-fractions.md
7499
7588
  */
7500
7589
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>
7501
7590
  /**
7502
7591
  * Enforce proper case for numeric literals.
7503
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/number-literal-case.md
7592
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/number-literal-case.md
7504
7593
  */
7505
7594
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>
7506
7595
  /**
7507
7596
  * Enforce the style of numeric separators by correctly grouping digits.
7508
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/numeric-separators-style.md
7597
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/numeric-separators-style.md
7509
7598
  */
7510
7599
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>
7511
7600
  /**
7512
7601
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
7513
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-add-event-listener.md
7602
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-add-event-listener.md
7514
7603
  */
7515
7604
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>
7516
7605
  /**
7517
7606
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
7518
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-find.md
7607
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-find.md
7519
7608
  */
7520
7609
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>
7521
7610
  /**
7522
7611
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
7523
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-flat.md
7612
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-flat.md
7524
7613
  */
7525
7614
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>
7526
7615
  /**
7527
7616
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
7528
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-flat-map.md
7617
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-flat-map.md
7529
7618
  */
7530
7619
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>
7531
7620
  /**
7532
7621
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
7533
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-index-of.md
7622
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-index-of.md
7534
7623
  */
7535
7624
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>
7536
7625
  /**
7537
7626
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
7538
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-some.md
7627
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-some.md
7539
7628
  */
7540
7629
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>
7541
7630
  /**
7542
7631
  * Prefer `.at()` method for index access and `String#charAt()`.
7543
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-at.md
7632
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-at.md
7544
7633
  */
7545
7634
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>
7546
7635
  /**
7547
7636
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
7548
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-blob-reading-methods.md
7637
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-blob-reading-methods.md
7549
7638
  */
7550
7639
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>
7551
7640
  /**
7552
7641
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
7553
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-code-point.md
7642
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-code-point.md
7554
7643
  */
7555
7644
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>
7556
7645
  /**
7557
7646
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
7558
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-date-now.md
7647
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-date-now.md
7559
7648
  */
7560
7649
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>
7561
7650
  /**
7562
7651
  * Prefer default parameters over reassignment.
7563
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-default-parameters.md
7652
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-default-parameters.md
7564
7653
  */
7565
7654
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>
7566
7655
  /**
7567
7656
  * Prefer `Node#append()` over `Node#appendChild()`.
7568
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-append.md
7657
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-append.md
7569
7658
  */
7570
7659
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>
7571
7660
  /**
7572
7661
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
7573
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-dataset.md
7662
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-dataset.md
7574
7663
  */
7575
7664
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>
7576
7665
  /**
7577
7666
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
7578
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-remove.md
7667
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-remove.md
7579
7668
  */
7580
7669
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>
7581
7670
  /**
7582
7671
  * Prefer `.textContent` over `.innerText`.
7583
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-text-content.md
7672
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-text-content.md
7584
7673
  */
7585
7674
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>
7586
7675
  /**
7587
7676
  * Prefer `EventTarget` over `EventEmitter`.
7588
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-event-target.md
7677
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-event-target.md
7589
7678
  */
7590
7679
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>
7591
7680
  /**
7592
7681
  * Prefer `export…from` when re-exporting.
7593
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-export-from.md
7682
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-export-from.md
7594
7683
  */
7595
7684
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>
7596
7685
  /**
7597
7686
  * Prefer `globalThis` over `window`, `self`, and `global`.
7598
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-global-this.md
7687
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-global-this.md
7599
7688
  */
7600
7689
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>
7690
+ /**
7691
+ * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
7692
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-import-meta-properties.md
7693
+ */
7694
+ 'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>
7601
7695
  /**
7602
7696
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
7603
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-includes.md
7697
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-includes.md
7604
7698
  */
7605
7699
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>
7606
7700
  /**
7607
7701
  * Prefer reading a JSON file as a buffer.
7608
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-json-parse-buffer.md
7702
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-json-parse-buffer.md
7609
7703
  */
7610
7704
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>
7611
7705
  /**
7612
7706
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
7613
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-keyboard-event-key.md
7707
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-keyboard-event-key.md
7614
7708
  */
7615
7709
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>
7616
7710
  /**
7617
7711
  * Prefer using a logical operator over a ternary.
7618
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-logical-operator-over-ternary.md
7712
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-logical-operator-over-ternary.md
7619
7713
  */
7620
7714
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>
7621
7715
  /**
7622
7716
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
7623
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-math-min-max.md
7717
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-math-min-max.md
7624
7718
  */
7625
7719
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>
7626
7720
  /**
7627
7721
  * Enforce the use of `Math.trunc` instead of bitwise operators.
7628
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-math-trunc.md
7722
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-math-trunc.md
7629
7723
  */
7630
7724
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>
7631
7725
  /**
7632
7726
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
7633
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-modern-dom-apis.md
7727
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-modern-dom-apis.md
7634
7728
  */
7635
7729
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>
7636
7730
  /**
7637
7731
  * Prefer modern `Math` APIs over legacy patterns.
7638
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-modern-math-apis.md
7732
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-modern-math-apis.md
7639
7733
  */
7640
7734
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>
7641
7735
  /**
7642
7736
  * Prefer JavaScript modules (ESM) over CommonJS.
7643
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-module.md
7737
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-module.md
7644
7738
  */
7645
7739
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>
7646
7740
  /**
7647
7741
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
7648
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-native-coercion-functions.md
7742
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-native-coercion-functions.md
7649
7743
  */
7650
7744
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>
7651
7745
  /**
7652
7746
  * Prefer negative index over `.length - index` when possible.
7653
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-negative-index.md
7747
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-negative-index.md
7654
7748
  */
7655
7749
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>
7656
7750
  /**
7657
7751
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
7658
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-node-protocol.md
7752
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-node-protocol.md
7659
7753
  */
7660
7754
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>
7661
7755
  /**
7662
7756
  * Prefer `Number` static properties over global ones.
7663
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-number-properties.md
7757
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-number-properties.md
7664
7758
  */
7665
7759
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>
7666
7760
  /**
7667
7761
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
7668
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-object-from-entries.md
7762
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-object-from-entries.md
7669
7763
  */
7670
7764
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>
7671
7765
  /**
7672
7766
  * Prefer omitting the `catch` binding parameter.
7673
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-optional-catch-binding.md
7767
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-optional-catch-binding.md
7674
7768
  */
7675
7769
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>
7676
7770
  /**
7677
7771
  * Prefer borrowing methods from the prototype instead of the instance.
7678
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-prototype-methods.md
7772
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-prototype-methods.md
7679
7773
  */
7680
7774
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>
7681
7775
  /**
7682
7776
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
7683
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-query-selector.md
7777
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-query-selector.md
7684
7778
  */
7685
7779
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>
7686
7780
  /**
7687
7781
  * Prefer `Reflect.apply()` over `Function#apply()`.
7688
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-reflect-apply.md
7782
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-reflect-apply.md
7689
7783
  */
7690
7784
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>
7691
7785
  /**
7692
7786
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
7693
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-regexp-test.md
7787
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-regexp-test.md
7694
7788
  */
7695
7789
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>
7696
7790
  /**
7697
7791
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
7698
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-set-has.md
7792
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-set-has.md
7699
7793
  */
7700
7794
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>
7701
7795
  /**
7702
7796
  * Prefer using `Set#size` instead of `Array#length`.
7703
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-set-size.md
7797
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-set-size.md
7704
7798
  */
7705
7799
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>
7800
+ /**
7801
+ * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
7802
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-single-call.md
7803
+ */
7804
+ 'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>
7706
7805
  /**
7707
7806
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
7708
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-spread.md
7807
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-spread.md
7709
7808
  */
7710
7809
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>
7711
7810
  /**
7712
7811
  * Prefer using the `String.raw` tag to avoid escaping `\`.
7713
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-raw.md
7812
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-raw.md
7714
7813
  */
7715
7814
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>
7716
7815
  /**
7717
7816
  * Prefer `String#replaceAll()` over regex searches with the global flag.
7718
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-replace-all.md
7817
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-replace-all.md
7719
7818
  */
7720
7819
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>
7721
7820
  /**
7722
7821
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
7723
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-slice.md
7822
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-slice.md
7724
7823
  */
7725
7824
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>
7726
7825
  /**
7727
7826
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
7728
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-starts-ends-with.md
7827
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-starts-ends-with.md
7729
7828
  */
7730
7829
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>
7731
7830
  /**
7732
7831
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
7733
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-trim-start-end.md
7832
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-trim-start-end.md
7734
7833
  */
7735
7834
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>
7736
7835
  /**
7737
7836
  * Prefer using `structuredClone` to create a deep clone.
7738
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-structured-clone.md
7837
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-structured-clone.md
7739
7838
  */
7740
7839
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>
7741
7840
  /**
7742
7841
  * Prefer `switch` over multiple `else-if`.
7743
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-switch.md
7842
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-switch.md
7744
7843
  */
7745
7844
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>
7746
7845
  /**
7747
7846
  * Prefer ternary expressions over simple `if-else` statements.
7748
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-ternary.md
7847
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-ternary.md
7749
7848
  */
7750
7849
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>
7751
7850
  /**
7752
7851
  * Prefer top-level await over top-level promises and async function calls.
7753
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-top-level-await.md
7852
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-top-level-await.md
7754
7853
  */
7755
7854
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>
7756
7855
  /**
7757
7856
  * Enforce throwing `TypeError` in type checking conditions.
7758
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-type-error.md
7857
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-type-error.md
7759
7858
  */
7760
7859
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>
7761
7860
  /**
7762
7861
  * Prevent abbreviations.
7763
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prevent-abbreviations.md
7862
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prevent-abbreviations.md
7764
7863
  */
7765
7864
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>
7766
7865
  /**
7767
7866
  * Enforce consistent relative URL style.
7768
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/relative-url-style.md
7867
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/relative-url-style.md
7769
7868
  */
7770
7869
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>
7771
7870
  /**
7772
7871
  * Enforce using the separator argument with `Array#join()`.
7773
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-array-join-separator.md
7872
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-array-join-separator.md
7774
7873
  */
7775
7874
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>
7776
7875
  /**
7777
7876
  * Enforce using the digits argument with `Number#toFixed()`.
7778
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-number-to-fixed-digits-argument.md
7877
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-number-to-fixed-digits-argument.md
7779
7878
  */
7780
7879
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>
7781
7880
  /**
7782
7881
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
7783
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-post-message-target-origin.md
7882
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-post-message-target-origin.md
7784
7883
  */
7785
7884
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>
7786
7885
  /**
7787
7886
  * Enforce better string content.
7788
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/string-content.md
7887
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/string-content.md
7789
7888
  */
7790
7889
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>
7791
7890
  /**
7792
7891
  * Enforce consistent brace style for `case` clauses.
7793
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/switch-case-braces.md
7892
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/switch-case-braces.md
7794
7893
  */
7795
7894
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>
7796
7895
  /**
7797
7896
  * Fix whitespace-insensitive template indentation.
7798
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/template-indent.md
7897
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/template-indent.md
7799
7898
  */
7800
7899
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>
7801
7900
  /**
7802
7901
  * Enforce consistent case for text encoding identifiers.
7803
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/text-encoding-identifier-case.md
7902
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/text-encoding-identifier-case.md
7804
7903
  */
7805
7904
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>
7806
7905
  /**
7807
7906
  * Require `new` when creating an error.
7808
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/throw-new-error.md
7907
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/throw-new-error.md
7809
7908
  */
7810
7909
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>
7811
7910
  /**
@@ -7973,6 +8072,11 @@ interface RuleOptions {
7973
8072
  * @see https://eslint.vuejs.org/rules/define-props-declaration.html
7974
8073
  */
7975
8074
  'vue/define-props-declaration'?: Linter.RuleEntry<VueDefinePropsDeclaration>
8075
+ /**
8076
+ * enforce consistent style for props destructuring
8077
+ * @see https://eslint.vuejs.org/rules/define-props-destructuring.html
8078
+ */
8079
+ 'vue/define-props-destructuring'?: Linter.RuleEntry<VueDefinePropsDestructuring>
7976
8080
  /**
7977
8081
  * Enforce consistent newlines before and after dots in `<template>`
7978
8082
  * @see https://eslint.vuejs.org/rules/dot-location.html
@@ -8377,7 +8481,7 @@ interface RuleOptions {
8377
8481
  * disallow adding multiple root nodes to the template
8378
8482
  * @see https://eslint.vuejs.org/rules/no-multiple-template-root.html
8379
8483
  */
8380
- 'vue/no-multiple-template-root'?: Linter.RuleEntry<[]>
8484
+ 'vue/no-multiple-template-root'?: Linter.RuleEntry<VueNoMultipleTemplateRoot>
8381
8485
  /**
8382
8486
  * disallow mutation of component props
8383
8487
  * @see https://eslint.vuejs.org/rules/no-mutating-props.html
@@ -11137,7 +11241,7 @@ type NoEmpty = []|[{
11137
11241
  }]
11138
11242
  // ----- no-empty-function -----
11139
11243
  type NoEmptyFunction = []|[{
11140
- allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "asyncFunctions" | "asyncMethods")[]
11244
+ allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "asyncFunctions" | "asyncMethods" | "privateConstructors" | "protectedConstructors" | "decoratedFunctions" | "overrideMethods")[]
11141
11245
  }]
11142
11246
  // ----- no-empty-pattern -----
11143
11247
  type NoEmptyPattern = []|[{
@@ -11339,13 +11443,9 @@ type NoRestrictedModules = ((string | {
11339
11443
  }[])
11340
11444
  // ----- no-restricted-properties -----
11341
11445
  type NoRestrictedProperties = ({
11342
- object: string
11343
- property?: string
11344
- message?: string
11446
+ [k: string]: unknown | undefined
11345
11447
  } | {
11346
- object?: string
11347
- property: string
11348
- message?: string
11448
+ [k: string]: unknown | undefined
11349
11449
  })[]
11350
11450
  // ----- no-restricted-syntax -----
11351
11451
  type NoRestrictedSyntax = (string | {
@@ -11369,6 +11469,10 @@ type NoShadow = []|[{
11369
11469
  allow?: string[]
11370
11470
  ignoreOnInitialization?: boolean
11371
11471
  }]
11472
+ // ----- no-shadow-restricted-names -----
11473
+ type NoShadowRestrictedNames = []|[{
11474
+ reportGlobalThis?: boolean
11475
+ }]
11372
11476
  // ----- no-sync -----
11373
11477
  type NoSync = []|[{
11374
11478
  allowAtRootLevel?: boolean
@@ -11420,6 +11524,7 @@ type NoUnusedExpressions = []|[{
11420
11524
  allowTernary?: boolean
11421
11525
  allowTaggedTemplates?: boolean
11422
11526
  enforceForJSX?: boolean
11527
+ ignoreDirectives?: boolean
11423
11528
  }]
11424
11529
  // ----- no-unused-vars -----
11425
11530
  type NoUnusedVars = []|[(("all" | "local") | {
@@ -12461,96 +12566,6 @@ type PerfectionistSortHeritageClauses = []|[{
12461
12566
  newlinesBetween?: ("ignore" | "always" | "never")
12462
12567
  })[]
12463
12568
  }]
12464
- // ----- perfectionist/sort-imports -----
12465
- type PerfectionistSortImports = []|[_PerfectionistSortImportsSortImports]
12466
- type _PerfectionistSortImportsSortImports = (_PerfectionistSortImportsMaxLineLengthRequiresLineLengthType & {
12467
-
12468
- fallbackSort?: {
12469
-
12470
- order?: ("asc" | "desc")
12471
-
12472
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12473
- [k: string]: unknown | undefined
12474
- }
12475
-
12476
- specialCharacters?: ("remove" | "trim" | "keep")
12477
-
12478
- ignoreCase?: boolean
12479
-
12480
- alphabet?: string
12481
-
12482
- locales?: (string | string[])
12483
-
12484
- order?: ("asc" | "desc")
12485
-
12486
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12487
-
12488
- customGroups?: {
12489
-
12490
- value?: {
12491
- [k: string]: unknown | undefined
12492
- }
12493
-
12494
- type?: {
12495
- [k: string]: unknown | undefined
12496
- }
12497
- }
12498
-
12499
- maxLineLength?: number
12500
-
12501
- sortSideEffects?: boolean
12502
-
12503
- environment?: ("node" | "bun")
12504
-
12505
- tsconfigRootDir?: string
12506
-
12507
- partitionByComment?: (boolean | (({
12508
- pattern?: string
12509
- flags?: string
12510
- } | string)[] | ({
12511
- pattern?: string
12512
- flags?: string
12513
- } | string)) | {
12514
- block?: (boolean | (({
12515
- pattern?: string
12516
- flags?: string
12517
- } | string)[] | ({
12518
- pattern?: string
12519
- flags?: string
12520
- } | string)))
12521
- line?: (boolean | (({
12522
- pattern?: string
12523
- flags?: string
12524
- } | string)[] | ({
12525
- pattern?: string
12526
- flags?: string
12527
- } | string)))
12528
- })
12529
-
12530
- partitionByNewLine?: boolean
12531
-
12532
- newlinesBetween?: ("ignore" | "always" | "never")
12533
-
12534
- internalPattern?: (({
12535
- pattern?: string
12536
- flags?: string
12537
- } | string)[] | ({
12538
- pattern?: string
12539
- flags?: string
12540
- } | string))
12541
-
12542
- groups?: (string | string[] | {
12543
-
12544
- newlinesBetween?: ("ignore" | "always" | "never")
12545
- })[]
12546
- })
12547
- type _PerfectionistSortImportsMaxLineLengthRequiresLineLengthType = ({
12548
- [k: string]: unknown | undefined
12549
- } | _PerfectionistSortImports_IsLineLength)
12550
- interface _PerfectionistSortImports_IsLineLength {
12551
- type: "line-length"
12552
- [k: string]: unknown | undefined
12553
- }
12554
12569
  // ----- perfectionist/sort-interfaces -----
12555
12570
  type PerfectionistSortInterfaces = {
12556
12571
 
@@ -13163,7 +13178,7 @@ type PerfectionistSortModules = []|[{
13163
13178
  })[]
13164
13179
  }]
13165
13180
  // ----- perfectionist/sort-named-exports -----
13166
- type PerfectionistSortNamedExports = []|[{
13181
+ type PerfectionistSortNamedExports = {
13167
13182
 
13168
13183
  fallbackSort?: {
13169
13184
 
@@ -13189,6 +13204,68 @@ type PerfectionistSortNamedExports = []|[{
13189
13204
 
13190
13205
  ignoreAlias?: boolean
13191
13206
 
13207
+ customGroups?: ({
13208
+
13209
+ newlinesInside?: ("always" | "never")
13210
+
13211
+ fallbackSort?: {
13212
+
13213
+ order?: ("asc" | "desc")
13214
+
13215
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
13216
+ [k: string]: unknown | undefined
13217
+ }
13218
+
13219
+ groupName?: string
13220
+
13221
+ order?: ("asc" | "desc")
13222
+
13223
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
13224
+ anyOf?: {
13225
+
13226
+ modifiers?: ("value" | "type")[]
13227
+
13228
+ selector?: "export"
13229
+
13230
+ elementNamePattern?: (({
13231
+ pattern?: string
13232
+ flags?: string
13233
+ } | string)[] | ({
13234
+ pattern?: string
13235
+ flags?: string
13236
+ } | string))
13237
+ }[]
13238
+ } | {
13239
+
13240
+ newlinesInside?: ("always" | "never")
13241
+
13242
+ fallbackSort?: {
13243
+
13244
+ order?: ("asc" | "desc")
13245
+
13246
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
13247
+ [k: string]: unknown | undefined
13248
+ }
13249
+
13250
+ groupName?: string
13251
+
13252
+ order?: ("asc" | "desc")
13253
+
13254
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
13255
+
13256
+ modifiers?: ("value" | "type")[]
13257
+
13258
+ selector?: "export"
13259
+
13260
+ elementNamePattern?: (({
13261
+ pattern?: string
13262
+ flags?: string
13263
+ } | string)[] | ({
13264
+ pattern?: string
13265
+ flags?: string
13266
+ } | string))
13267
+ })[]
13268
+
13192
13269
  partitionByComment?: (boolean | (({
13193
13270
  pattern?: string
13194
13271
  flags?: string
@@ -13213,9 +13290,16 @@ type PerfectionistSortNamedExports = []|[{
13213
13290
  })
13214
13291
 
13215
13292
  partitionByNewLine?: boolean
13216
- }]
13293
+
13294
+ newlinesBetween?: ("ignore" | "always" | "never")
13295
+
13296
+ groups?: (string | string[] | {
13297
+
13298
+ newlinesBetween?: ("ignore" | "always" | "never")
13299
+ })[]
13300
+ }[]
13217
13301
  // ----- perfectionist/sort-named-imports -----
13218
- type PerfectionistSortNamedImports = []|[{
13302
+ type PerfectionistSortNamedImports = {
13219
13303
 
13220
13304
  fallbackSort?: {
13221
13305
 
@@ -13241,6 +13325,68 @@ type PerfectionistSortNamedImports = []|[{
13241
13325
 
13242
13326
  ignoreAlias?: boolean
13243
13327
 
13328
+ customGroups?: ({
13329
+
13330
+ newlinesInside?: ("always" | "never")
13331
+
13332
+ fallbackSort?: {
13333
+
13334
+ order?: ("asc" | "desc")
13335
+
13336
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
13337
+ [k: string]: unknown | undefined
13338
+ }
13339
+
13340
+ groupName?: string
13341
+
13342
+ order?: ("asc" | "desc")
13343
+
13344
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
13345
+ anyOf?: {
13346
+
13347
+ modifiers?: ("value" | "type")[]
13348
+
13349
+ selector?: "import"
13350
+
13351
+ elementNamePattern?: (({
13352
+ pattern?: string
13353
+ flags?: string
13354
+ } | string)[] | ({
13355
+ pattern?: string
13356
+ flags?: string
13357
+ } | string))
13358
+ }[]
13359
+ } | {
13360
+
13361
+ newlinesInside?: ("always" | "never")
13362
+
13363
+ fallbackSort?: {
13364
+
13365
+ order?: ("asc" | "desc")
13366
+
13367
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
13368
+ [k: string]: unknown | undefined
13369
+ }
13370
+
13371
+ groupName?: string
13372
+
13373
+ order?: ("asc" | "desc")
13374
+
13375
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
13376
+
13377
+ modifiers?: ("value" | "type")[]
13378
+
13379
+ selector?: "import"
13380
+
13381
+ elementNamePattern?: (({
13382
+ pattern?: string
13383
+ flags?: string
13384
+ } | string)[] | ({
13385
+ pattern?: string
13386
+ flags?: string
13387
+ } | string))
13388
+ })[]
13389
+
13244
13390
  partitionByComment?: (boolean | (({
13245
13391
  pattern?: string
13246
13392
  flags?: string
@@ -13265,7 +13411,14 @@ type PerfectionistSortNamedImports = []|[{
13265
13411
  })
13266
13412
 
13267
13413
  partitionByNewLine?: boolean
13268
- }]
13414
+
13415
+ newlinesBetween?: ("ignore" | "always" | "never")
13416
+
13417
+ groups?: (string | string[] | {
13418
+
13419
+ newlinesBetween?: ("ignore" | "always" | "never")
13420
+ })[]
13421
+ }[]
13269
13422
  // ----- perfectionist/sort-object-types -----
13270
13423
  type PerfectionistSortObjectTypes = {
13271
13424
 
@@ -16839,6 +16992,8 @@ type TsNoUnnecessaryCondition = []|[{
16839
16992
  // ----- ts/no-unnecessary-type-assertion -----
16840
16993
  type TsNoUnnecessaryTypeAssertion = []|[{
16841
16994
 
16995
+ checkLiteralConstAssertions?: boolean
16996
+
16842
16997
  typesToIgnore?: string[]
16843
16998
  }]
16844
16999
  // ----- ts/no-unused-expressions -----
@@ -16847,6 +17002,7 @@ type TsNoUnusedExpressions = []|[{
16847
17002
  allowTernary?: boolean
16848
17003
  allowTaggedTemplates?: boolean
16849
17004
  enforceForJSX?: boolean
17005
+ ignoreDirectives?: boolean
16850
17006
  }]
16851
17007
  // ----- ts/no-unused-vars -----
16852
17008
  type TsNoUnusedVars = []|[(("all" | "local") | {
@@ -16909,6 +17065,8 @@ type TsOnlyThrowError = []|[{
16909
17065
  package: string
16910
17066
  })[]
16911
17067
 
17068
+ allowRethrowing?: boolean
17069
+
16912
17070
  allowThrowingAny?: boolean
16913
17071
 
16914
17072
  allowThrowingUnknown?: boolean
@@ -17254,10 +17412,6 @@ interface _UnicornImportStyle_ModuleStyles {
17254
17412
  interface _UnicornImportStyle_BooleanObject {
17255
17413
  [k: string]: boolean | undefined
17256
17414
  }
17257
- // ----- unicorn/no-array-push-push -----
17258
- type UnicornNoArrayPushPush = []|[{
17259
- ignore?: unknown[]
17260
- }]
17261
17415
  // ----- unicorn/no-array-reduce -----
17262
17416
  type UnicornNoArrayReduce = []|[{
17263
17417
  allowSimpleOperations?: boolean
@@ -17353,6 +17507,10 @@ type UnicornPreferNumberProperties = []|[{
17353
17507
  type UnicornPreferObjectFromEntries = []|[{
17354
17508
  functions?: unknown[]
17355
17509
  }]
17510
+ // ----- unicorn/prefer-single-call -----
17511
+ type UnicornPreferSingleCall = []|[{
17512
+ ignore?: unknown[]
17513
+ }]
17356
17514
  // ----- unicorn/prefer-structured-clone -----
17357
17515
  type UnicornPreferStructuredClone = []|[{
17358
17516
  functions?: unknown[]
@@ -17595,6 +17753,10 @@ type VueDefineMacrosOrder = []|[{
17595
17753
  }]
17596
17754
  // ----- vue/define-props-declaration -----
17597
17755
  type VueDefinePropsDeclaration = []|[("type-based" | "runtime")]
17756
+ // ----- vue/define-props-destructuring -----
17757
+ type VueDefinePropsDestructuring = []|[{
17758
+ destructure?: ("always" | "never")
17759
+ }]
17598
17760
  // ----- vue/dot-location -----
17599
17761
  type VueDotLocation = []|[("object" | "property")]
17600
17762
  // ----- vue/dot-notation -----
@@ -18241,6 +18403,10 @@ type VueNoLoneTemplate = []|[{
18241
18403
  type VueNoMultiSpaces = []|[{
18242
18404
  ignoreProperties?: boolean
18243
18405
  }]
18406
+ // ----- vue/no-multiple-template-root -----
18407
+ type VueNoMultipleTemplateRoot = []|[{
18408
+ disallowComments?: boolean
18409
+ }]
18244
18410
  // ----- vue/no-mutating-props -----
18245
18411
  type VueNoMutatingProps = []|[{
18246
18412
  shallowOnly?: boolean
@@ -18697,6 +18863,7 @@ type YamlFlowSequenceBracketSpacing = []|[("always" | "never")]|[("always" | "ne
18697
18863
  type YamlIndent = []|[number]|[number, {
18698
18864
  indentBlockSequences?: boolean
18699
18865
  indicatorValueIndent?: number
18866
+ alignMultilineFlowScalars?: boolean
18700
18867
  }]
18701
18868
  // ----- yaml/key-name-casing -----
18702
18869
  type YamlKeyNameCasing = []|[{