@bfra.me/eslint-config 0.27.1 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.ts CHANGED
@@ -723,6 +723,271 @@ interface Rules {
723
723
  * @deprecated
724
724
  */
725
725
  'arrow-spacing'?: Linter.RuleEntry<ArrowSpacing>
726
+ /**
727
+ * apply `jsx-a11y/alt-text` rule to Astro components
728
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/alt-text/
729
+ */
730
+ 'astro/jsx-a11y/alt-text'?: Linter.RuleEntry<[]>
731
+ /**
732
+ * apply `jsx-a11y/anchor-ambiguous-text` rule to Astro components
733
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-ambiguous-text/
734
+ */
735
+ 'astro/jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<[]>
736
+ /**
737
+ * apply `jsx-a11y/anchor-has-content` rule to Astro components
738
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-has-content/
739
+ */
740
+ 'astro/jsx-a11y/anchor-has-content'?: Linter.RuleEntry<[]>
741
+ /**
742
+ * apply `jsx-a11y/anchor-is-valid` rule to Astro components
743
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-is-valid/
744
+ */
745
+ 'astro/jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<[]>
746
+ /**
747
+ * apply `jsx-a11y/aria-activedescendant-has-tabindex` rule to Astro components
748
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-activedescendant-has-tabindex/
749
+ */
750
+ 'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<[]>
751
+ /**
752
+ * apply `jsx-a11y/aria-props` rule to Astro components
753
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-props/
754
+ */
755
+ 'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<[]>
756
+ /**
757
+ * apply `jsx-a11y/aria-proptypes` rule to Astro components
758
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-proptypes/
759
+ */
760
+ 'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<[]>
761
+ /**
762
+ * apply `jsx-a11y/aria-role` rule to Astro components
763
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-role/
764
+ */
765
+ 'astro/jsx-a11y/aria-role'?: Linter.RuleEntry<[]>
766
+ /**
767
+ * apply `jsx-a11y/aria-unsupported-elements` rule to Astro components
768
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-unsupported-elements/
769
+ */
770
+ 'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<[]>
771
+ /**
772
+ * apply `jsx-a11y/autocomplete-valid` rule to Astro components
773
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/autocomplete-valid/
774
+ */
775
+ 'astro/jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<[]>
776
+ /**
777
+ * apply `jsx-a11y/click-events-have-key-events` rule to Astro components
778
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/click-events-have-key-events/
779
+ */
780
+ 'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<[]>
781
+ /**
782
+ * apply `jsx-a11y/control-has-associated-label` rule to Astro components
783
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/control-has-associated-label/
784
+ */
785
+ 'astro/jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<[]>
786
+ /**
787
+ * apply `jsx-a11y/heading-has-content` rule to Astro components
788
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/heading-has-content/
789
+ */
790
+ 'astro/jsx-a11y/heading-has-content'?: Linter.RuleEntry<[]>
791
+ /**
792
+ * apply `jsx-a11y/html-has-lang` rule to Astro components
793
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/html-has-lang/
794
+ */
795
+ 'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<[]>
796
+ /**
797
+ * apply `jsx-a11y/iframe-has-title` rule to Astro components
798
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/iframe-has-title/
799
+ */
800
+ 'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<[]>
801
+ /**
802
+ * apply `jsx-a11y/img-redundant-alt` rule to Astro components
803
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/img-redundant-alt/
804
+ */
805
+ 'astro/jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<[]>
806
+ /**
807
+ * apply `jsx-a11y/interactive-supports-focus` rule to Astro components
808
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/interactive-supports-focus/
809
+ */
810
+ 'astro/jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<[]>
811
+ /**
812
+ * apply `jsx-a11y/label-has-associated-control` rule to Astro components
813
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/label-has-associated-control/
814
+ */
815
+ 'astro/jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<[]>
816
+ /**
817
+ * apply `jsx-a11y/lang` rule to Astro components
818
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/lang/
819
+ */
820
+ 'astro/jsx-a11y/lang'?: Linter.RuleEntry<[]>
821
+ /**
822
+ * apply `jsx-a11y/media-has-caption` rule to Astro components
823
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/media-has-caption/
824
+ */
825
+ 'astro/jsx-a11y/media-has-caption'?: Linter.RuleEntry<[]>
826
+ /**
827
+ * apply `jsx-a11y/mouse-events-have-key-events` rule to Astro components
828
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/mouse-events-have-key-events/
829
+ */
830
+ 'astro/jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<[]>
831
+ /**
832
+ * apply `jsx-a11y/no-access-key` rule to Astro components
833
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-access-key/
834
+ */
835
+ 'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<[]>
836
+ /**
837
+ * apply `jsx-a11y/no-aria-hidden-on-focusable` rule to Astro components
838
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-aria-hidden-on-focusable/
839
+ */
840
+ 'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<[]>
841
+ /**
842
+ * apply `jsx-a11y/no-autofocus` rule to Astro components
843
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-autofocus/
844
+ */
845
+ 'astro/jsx-a11y/no-autofocus'?: Linter.RuleEntry<[]>
846
+ /**
847
+ * apply `jsx-a11y/no-distracting-elements` rule to Astro components
848
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-distracting-elements/
849
+ */
850
+ 'astro/jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<[]>
851
+ /**
852
+ * apply `jsx-a11y/no-interactive-element-to-noninteractive-role` rule to Astro components
853
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-interactive-element-to-noninteractive-role/
854
+ */
855
+ 'astro/jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<[]>
856
+ /**
857
+ * apply `jsx-a11y/no-noninteractive-element-interactions` rule to Astro components
858
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-element-interactions/
859
+ */
860
+ 'astro/jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<[]>
861
+ /**
862
+ * apply `jsx-a11y/no-noninteractive-element-to-interactive-role` rule to Astro components
863
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-element-to-interactive-role/
864
+ */
865
+ 'astro/jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<[]>
866
+ /**
867
+ * apply `jsx-a11y/no-noninteractive-tabindex` rule to Astro components
868
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-tabindex/
869
+ */
870
+ 'astro/jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<[]>
871
+ /**
872
+ * apply `jsx-a11y/no-redundant-roles` rule to Astro components
873
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-redundant-roles/
874
+ */
875
+ 'astro/jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<[]>
876
+ /**
877
+ * apply `jsx-a11y/no-static-element-interactions` rule to Astro components
878
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-static-element-interactions/
879
+ */
880
+ 'astro/jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<[]>
881
+ /**
882
+ * apply `jsx-a11y/prefer-tag-over-role` rule to Astro components
883
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/prefer-tag-over-role/
884
+ */
885
+ 'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<[]>
886
+ /**
887
+ * apply `jsx-a11y/role-has-required-aria-props` rule to Astro components
888
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-has-required-aria-props/
889
+ */
890
+ 'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<[]>
891
+ /**
892
+ * apply `jsx-a11y/role-supports-aria-props` rule to Astro components
893
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-supports-aria-props/
894
+ */
895
+ 'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<[]>
896
+ /**
897
+ * apply `jsx-a11y/scope` rule to Astro components
898
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/scope/
899
+ */
900
+ 'astro/jsx-a11y/scope'?: Linter.RuleEntry<[]>
901
+ /**
902
+ * apply `jsx-a11y/tabindex-no-positive` rule to Astro components
903
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/tabindex-no-positive/
904
+ */
905
+ 'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<[]>
906
+ /**
907
+ * the client:only directive is missing the correct component's framework value
908
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/missing-client-only-directive-value/
909
+ */
910
+ 'astro/missing-client-only-directive-value'?: Linter.RuleEntry<[]>
911
+ /**
912
+ * disallow conflicting set directives and child contents
913
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-conflict-set-directives/
914
+ */
915
+ 'astro/no-conflict-set-directives'?: Linter.RuleEntry<[]>
916
+ /**
917
+ * disallow using deprecated `Astro.canonicalURL`
918
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-deprecated-astro-canonicalurl/
919
+ */
920
+ 'astro/no-deprecated-astro-canonicalurl'?: Linter.RuleEntry<[]>
921
+ /**
922
+ * disallow using deprecated `Astro.fetchContent()`
923
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-deprecated-astro-fetchcontent/
924
+ */
925
+ 'astro/no-deprecated-astro-fetchcontent'?: Linter.RuleEntry<[]>
926
+ /**
927
+ * disallow using deprecated `Astro.resolve()`
928
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-deprecated-astro-resolve/
929
+ */
930
+ 'astro/no-deprecated-astro-resolve'?: Linter.RuleEntry<[]>
931
+ /**
932
+ * disallow using deprecated `getEntryBySlug()`
933
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-deprecated-getentrybyslug/
934
+ */
935
+ 'astro/no-deprecated-getentrybyslug'?: Linter.RuleEntry<[]>
936
+ /**
937
+ * disallow value export
938
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-exports-from-components/
939
+ */
940
+ 'astro/no-exports-from-components'?: Linter.RuleEntry<[]>
941
+ /**
942
+ * disallow use of `set:html` to prevent XSS attack
943
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-set-html-directive/
944
+ */
945
+ 'astro/no-set-html-directive'?: Linter.RuleEntry<[]>
946
+ /**
947
+ * disallow use of `set:text`
948
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-set-text-directive/
949
+ */
950
+ 'astro/no-set-text-directive'?: Linter.RuleEntry<[]>
951
+ /**
952
+ * disallow selectors defined in `style` tag that don't use in HTML
953
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-unused-css-selector/
954
+ */
955
+ 'astro/no-unused-css-selector'?: Linter.RuleEntry<[]>
956
+ /**
957
+ * disallow unused `define:vars={...}` in `style` tag
958
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/no-unused-define-vars-in-style/
959
+ */
960
+ 'astro/no-unused-define-vars-in-style'?: Linter.RuleEntry<[]>
961
+ /**
962
+ * require `class:list` directives instead of `class` with expressions
963
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/prefer-class-list-directive/
964
+ */
965
+ 'astro/prefer-class-list-directive'?: Linter.RuleEntry<[]>
966
+ /**
967
+ * require use object instead of ternary expression in `class:list`
968
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/prefer-object-class-list/
969
+ */
970
+ 'astro/prefer-object-class-list'?: Linter.RuleEntry<[]>
971
+ /**
972
+ * require use split array elements in `class:list`
973
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/prefer-split-class-list/
974
+ */
975
+ 'astro/prefer-split-class-list'?: Linter.RuleEntry<AstroPreferSplitClassList>
976
+ /**
977
+ * Require or disallow semicolons instead of ASI
978
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/semi/
979
+ */
980
+ 'astro/semi'?: Linter.RuleEntry<AstroSemi>
981
+ /**
982
+ * enforce sorting of attributes
983
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/sort-attributes/
984
+ */
985
+ 'astro/sort-attributes'?: Linter.RuleEntry<AstroSortAttributes>
986
+ /**
987
+ * disallow warnings when compiling.
988
+ * @see https://ota-meshi.github.io/eslint-plugin-astro/rules/valid-compile/
989
+ */
990
+ 'astro/valid-compile'?: Linter.RuleEntry<[]>
726
991
  /**
727
992
  * Enforce the use of variables within the scope they are defined
728
993
  * @see https://eslint.org/docs/latest/rules/block-scoped-var
@@ -1820,7 +2085,7 @@ interface Rules {
1820
2085
  * Enforce heading levels increment by one
1821
2086
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/heading-increment.md
1822
2087
  */
1823
- 'markdown/heading-increment'?: Linter.RuleEntry<[]>
2088
+ 'markdown/heading-increment'?: Linter.RuleEntry<MarkdownHeadingIncrement>
1824
2089
  /**
1825
2090
  * Disallow bare URLs
1826
2091
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-bare-urls.md
@@ -1865,7 +2130,7 @@ interface Rules {
1865
2130
  * Disallow headings without a space after the hash characters
1866
2131
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-atx-heading-space.md
1867
2132
  */
1868
- 'markdown/no-missing-atx-heading-space'?: Linter.RuleEntry<[]>
2133
+ 'markdown/no-missing-atx-heading-space'?: Linter.RuleEntry<MarkdownNoMissingAtxHeadingSpace>
1869
2134
  /**
1870
2135
  * Disallow missing label references
1871
2136
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-label-refs.md
@@ -1886,6 +2151,11 @@ interface Rules {
1886
2151
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reversed-media-syntax.md
1887
2152
  */
1888
2153
  'markdown/no-reversed-media-syntax'?: Linter.RuleEntry<[]>
2154
+ /**
2155
+ * Disallow spaces around emphasis markers
2156
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-space-in-emphasis.md
2157
+ */
2158
+ 'markdown/no-space-in-emphasis'?: Linter.RuleEntry<MarkdownNoSpaceInEmphasis>
1889
2159
  /**
1890
2160
  * Disallow unused definitions
1891
2161
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-unused-definitions.md
@@ -3979,670 +4249,690 @@ interface Rules {
3979
4249
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>
3980
4250
  /**
3981
4251
  * Improve regexes by making them shorter, consistent, and safer.
3982
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/better-regex.md
4252
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/better-regex.md
3983
4253
  */
3984
4254
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>
3985
4255
  /**
3986
4256
  * Enforce a specific parameter name in catch clauses.
3987
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/catch-error-name.md
4257
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/catch-error-name.md
3988
4258
  */
3989
4259
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>
3990
4260
  /**
3991
4261
  * Enforce consistent assertion style with `node:assert`.
3992
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-assert.md
4262
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-assert.md
3993
4263
  */
3994
4264
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>
3995
4265
  /**
3996
4266
  * Prefer passing `Date` directly to the constructor when cloning.
3997
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-date-clone.md
4267
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-date-clone.md
3998
4268
  */
3999
4269
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>
4000
4270
  /**
4001
4271
  * Use destructured variables over properties.
4002
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-destructuring.md
4272
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-destructuring.md
4003
4273
  */
4004
4274
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>
4005
4275
  /**
4006
4276
  * Prefer consistent types when spreading a ternary in an array literal.
4007
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-empty-array-spread.md
4277
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-empty-array-spread.md
4008
4278
  */
4009
4279
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>
4010
4280
  /**
4011
4281
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
4012
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-existence-index-check.md
4282
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-existence-index-check.md
4013
4283
  */
4014
4284
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>
4015
4285
  /**
4016
4286
  * Move function definitions to the highest possible scope.
4017
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/consistent-function-scoping.md
4287
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-function-scoping.md
4018
4288
  */
4019
4289
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>
4020
4290
  /**
4021
4291
  * Enforce correct `Error` subclassing.
4022
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/custom-error-definition.md
4292
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/custom-error-definition.md
4023
4293
  */
4024
4294
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>
4025
4295
  /**
4026
4296
  * Enforce no spaces between braces.
4027
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/empty-brace-spaces.md
4297
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/empty-brace-spaces.md
4028
4298
  */
4029
4299
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>
4030
4300
  /**
4031
4301
  * Enforce passing a `message` value when creating a built-in error.
4032
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/error-message.md
4302
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/error-message.md
4033
4303
  */
4034
4304
  'unicorn/error-message'?: Linter.RuleEntry<[]>
4035
4305
  /**
4036
4306
  * Require escape sequences to use uppercase or lowercase values.
4037
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/escape-case.md
4307
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/escape-case.md
4038
4308
  */
4039
4309
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>
4040
4310
  /**
4041
4311
  * Add expiration conditions to TODO comments.
4042
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/expiring-todo-comments.md
4312
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/expiring-todo-comments.md
4043
4313
  */
4044
4314
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>
4045
4315
  /**
4046
4316
  * Enforce explicitly comparing the `length` or `size` property of a value.
4047
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/explicit-length-check.md
4317
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/explicit-length-check.md
4048
4318
  */
4049
4319
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>
4050
4320
  /**
4051
4321
  * Enforce a case style for filenames.
4052
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/filename-case.md
4322
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/filename-case.md
4053
4323
  */
4054
4324
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>
4055
4325
  /**
4056
4326
  * Enforce specific import styles per module.
4057
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/import-style.md
4327
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/import-style.md
4058
4328
  */
4059
4329
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>
4060
4330
  /**
4061
4331
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
4062
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/new-for-builtins.md
4332
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/new-for-builtins.md
4063
4333
  */
4064
4334
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>
4065
4335
  /**
4066
4336
  * Enforce specifying rules to disable in `eslint-disable` comments.
4067
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-abusive-eslint-disable.md
4337
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-abusive-eslint-disable.md
4068
4338
  */
4069
4339
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>
4070
4340
  /**
4071
4341
  * Disallow recursive access to `this` within getters and setters.
4072
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-accessor-recursion.md
4342
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-accessor-recursion.md
4073
4343
  */
4074
4344
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>
4075
4345
  /**
4076
4346
  * Disallow anonymous functions and classes as the default export.
4077
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-anonymous-default-export.md
4347
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-anonymous-default-export.md
4078
4348
  */
4079
4349
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>
4080
4350
  /**
4081
4351
  * Prevent passing a function reference directly to iterator methods.
4082
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-callback-reference.md
4352
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-callback-reference.md
4083
4353
  */
4084
4354
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>
4085
4355
  /**
4086
4356
  * Prefer `for…of` over the `forEach` method.
4087
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-for-each.md
4357
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-for-each.md
4088
4358
  */
4089
4359
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>
4090
4360
  /**
4091
4361
  * Disallow using the `this` argument in array methods.
4092
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-method-this-argument.md
4362
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-method-this-argument.md
4093
4363
  */
4094
4364
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>
4095
4365
  /**
4096
4366
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
4097
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-array-push-push
4367
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-array-push-push
4098
4368
  * @deprecated
4099
4369
  */
4100
4370
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>
4101
4371
  /**
4102
4372
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
4103
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-array-reduce.md
4373
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reduce.md
4104
4374
  */
4105
4375
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>
4376
+ /**
4377
+ * Prefer `Array#toReversed()` over `Array#reverse()`.
4378
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reverse.md
4379
+ */
4380
+ 'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>
4106
4381
  /**
4107
4382
  * Disallow member access from await expression.
4108
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-await-expression-member.md
4383
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-expression-member.md
4109
4384
  */
4110
4385
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>
4111
4386
  /**
4112
4387
  * Disallow using `await` in `Promise` method parameters.
4113
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-await-in-promise-methods.md
4388
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-in-promise-methods.md
4114
4389
  */
4115
4390
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>
4116
4391
  /**
4117
4392
  * Do not use leading/trailing space between `console.log` parameters.
4118
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-console-spaces.md
4393
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-console-spaces.md
4119
4394
  */
4120
4395
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>
4121
4396
  /**
4122
4397
  * Do not use `document.cookie` directly.
4123
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-document-cookie.md
4398
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-document-cookie.md
4124
4399
  */
4125
4400
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>
4126
4401
  /**
4127
4402
  * Disallow empty files.
4128
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-empty-file.md
4403
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-empty-file.md
4129
4404
  */
4130
4405
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>
4131
4406
  /**
4132
4407
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
4133
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-for-loop.md
4408
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-for-loop.md
4134
4409
  */
4135
4410
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>
4136
4411
  /**
4137
4412
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
4138
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-hex-escape.md
4413
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-hex-escape.md
4139
4414
  */
4140
4415
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>
4141
4416
  /**
4142
4417
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
4143
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-instanceof-array
4418
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-instanceof-array
4144
4419
  * @deprecated
4145
4420
  */
4146
4421
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>
4147
4422
  /**
4148
4423
  * Disallow `instanceof` with built-in objects
4149
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-instanceof-builtins.md
4424
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-instanceof-builtins.md
4150
4425
  */
4151
4426
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>
4152
4427
  /**
4153
4428
  * Disallow invalid options in `fetch()` and `new Request()`.
4154
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-invalid-fetch-options.md
4429
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-fetch-options.md
4155
4430
  */
4156
4431
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>
4157
4432
  /**
4158
4433
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
4159
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-invalid-remove-event-listener.md
4434
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-remove-event-listener.md
4160
4435
  */
4161
4436
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>
4162
4437
  /**
4163
4438
  * Disallow identifiers starting with `new` or `class`.
4164
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-keyword-prefix.md
4439
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-keyword-prefix.md
4165
4440
  */
4166
4441
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>
4167
4442
  /**
4168
4443
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
4169
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/deprecated-rules.md#no-length-as-slice-end
4444
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-length-as-slice-end
4170
4445
  * @deprecated
4171
4446
  */
4172
4447
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>
4173
4448
  /**
4174
4449
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
4175
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-lonely-if.md
4450
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-lonely-if.md
4176
4451
  */
4177
4452
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>
4178
4453
  /**
4179
4454
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
4180
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-magic-array-flat-depth.md
4455
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-magic-array-flat-depth.md
4181
4456
  */
4182
4457
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>
4183
4458
  /**
4184
4459
  * Disallow named usage of default import and export.
4185
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-named-default.md
4460
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-named-default.md
4186
4461
  */
4187
4462
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>
4188
4463
  /**
4189
4464
  * Disallow negated conditions.
4190
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-negated-condition.md
4465
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negated-condition.md
4191
4466
  */
4192
4467
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>
4193
4468
  /**
4194
4469
  * Disallow negated expression in equality check.
4195
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-negation-in-equality-check.md
4470
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negation-in-equality-check.md
4196
4471
  */
4197
4472
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>
4198
4473
  /**
4199
4474
  * Disallow nested ternary expressions.
4200
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-nested-ternary.md
4475
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-nested-ternary.md
4201
4476
  */
4202
4477
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>
4203
4478
  /**
4204
4479
  * Disallow `new Array()`.
4205
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-new-array.md
4480
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-array.md
4206
4481
  */
4207
4482
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>
4208
4483
  /**
4209
4484
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
4210
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-new-buffer.md
4485
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-buffer.md
4211
4486
  */
4212
4487
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>
4213
4488
  /**
4214
4489
  * Disallow the use of the `null` literal.
4215
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-null.md
4490
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-null.md
4216
4491
  */
4217
4492
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>
4218
4493
  /**
4219
4494
  * Disallow the use of objects as default parameters.
4220
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-object-as-default-parameter.md
4495
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-object-as-default-parameter.md
4221
4496
  */
4222
4497
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>
4223
4498
  /**
4224
4499
  * Disallow `process.exit()`.
4225
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-process-exit.md
4500
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-process-exit.md
4226
4501
  */
4227
4502
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>
4228
4503
  /**
4229
4504
  * Disallow passing single-element arrays to `Promise` methods.
4230
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-single-promise-in-promise-methods.md
4505
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-single-promise-in-promise-methods.md
4231
4506
  */
4232
4507
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>
4233
4508
  /**
4234
4509
  * Disallow classes that only have static members.
4235
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-static-only-class.md
4510
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-static-only-class.md
4236
4511
  */
4237
4512
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>
4238
4513
  /**
4239
4514
  * Disallow `then` property.
4240
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-thenable.md
4515
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-thenable.md
4241
4516
  */
4242
4517
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>
4243
4518
  /**
4244
4519
  * Disallow assigning `this` to a variable.
4245
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-this-assignment.md
4520
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-this-assignment.md
4246
4521
  */
4247
4522
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>
4248
4523
  /**
4249
4524
  * Disallow comparing `undefined` using `typeof`.
4250
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-typeof-undefined.md
4525
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-typeof-undefined.md
4251
4526
  */
4252
4527
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>
4253
4528
  /**
4254
4529
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
4255
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-array-flat-depth.md
4530
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-flat-depth.md
4256
4531
  */
4257
4532
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>
4258
4533
  /**
4259
4534
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
4260
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-array-splice-count.md
4535
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-splice-count.md
4261
4536
  */
4262
4537
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>
4263
4538
  /**
4264
4539
  * Disallow awaiting non-promise values.
4265
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-await.md
4540
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-await.md
4266
4541
  */
4267
4542
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>
4268
4543
  /**
4269
4544
  * Enforce the use of built-in methods instead of unnecessary polyfills.
4270
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-polyfills.md
4545
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-polyfills.md
4271
4546
  */
4272
4547
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>
4273
4548
  /**
4274
4549
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
4275
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unnecessary-slice-end.md
4550
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-slice-end.md
4276
4551
  */
4277
4552
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>
4278
4553
  /**
4279
4554
  * Disallow unreadable array destructuring.
4280
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unreadable-array-destructuring.md
4555
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-array-destructuring.md
4281
4556
  */
4282
4557
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>
4283
4558
  /**
4284
4559
  * Disallow unreadable IIFEs.
4285
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unreadable-iife.md
4560
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-iife.md
4286
4561
  */
4287
4562
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>
4288
4563
  /**
4289
4564
  * Disallow unused object properties.
4290
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-unused-properties.md
4565
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unused-properties.md
4291
4566
  */
4292
4567
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>
4568
+ /**
4569
+ * Disallow unnecessary `Error.captureStackTrace(…)`.
4570
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-error-capture-stack-trace.md
4571
+ */
4572
+ 'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>
4293
4573
  /**
4294
4574
  * Disallow useless fallback when spreading in object literals.
4295
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-fallback-in-spread.md
4575
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-fallback-in-spread.md
4296
4576
  */
4297
4577
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>
4298
4578
  /**
4299
4579
  * Disallow useless array length check.
4300
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-length-check.md
4580
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-length-check.md
4301
4581
  */
4302
4582
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>
4303
4583
  /**
4304
4584
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
4305
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-promise-resolve-reject.md
4585
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-promise-resolve-reject.md
4306
4586
  */
4307
4587
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>
4308
4588
  /**
4309
4589
  * Disallow unnecessary spread.
4310
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-spread.md
4590
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-spread.md
4311
4591
  */
4312
4592
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>
4313
4593
  /**
4314
4594
  * Disallow useless case in switch statements.
4315
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-switch-case.md
4595
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-switch-case.md
4316
4596
  */
4317
4597
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>
4318
4598
  /**
4319
4599
  * Disallow useless `undefined`.
4320
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-useless-undefined.md
4600
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-undefined.md
4321
4601
  */
4322
4602
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>
4323
4603
  /**
4324
4604
  * Disallow number literals with zero fractions or dangling dots.
4325
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/no-zero-fractions.md
4605
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-zero-fractions.md
4326
4606
  */
4327
4607
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>
4328
4608
  /**
4329
4609
  * Enforce proper case for numeric literals.
4330
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/number-literal-case.md
4610
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/number-literal-case.md
4331
4611
  */
4332
4612
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>
4333
4613
  /**
4334
4614
  * Enforce the style of numeric separators by correctly grouping digits.
4335
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/numeric-separators-style.md
4615
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/numeric-separators-style.md
4336
4616
  */
4337
4617
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>
4338
4618
  /**
4339
4619
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
4340
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-add-event-listener.md
4620
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-add-event-listener.md
4341
4621
  */
4342
4622
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>
4343
4623
  /**
4344
4624
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
4345
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-find.md
4625
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-find.md
4346
4626
  */
4347
4627
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>
4348
4628
  /**
4349
4629
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
4350
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-flat.md
4630
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat.md
4351
4631
  */
4352
4632
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>
4353
4633
  /**
4354
4634
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
4355
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-flat-map.md
4635
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat-map.md
4356
4636
  */
4357
4637
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>
4358
4638
  /**
4359
4639
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
4360
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-index-of.md
4640
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-index-of.md
4361
4641
  */
4362
4642
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>
4363
4643
  /**
4364
4644
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
4365
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-array-some.md
4645
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-some.md
4366
4646
  */
4367
4647
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>
4368
4648
  /**
4369
4649
  * Prefer `.at()` method for index access and `String#charAt()`.
4370
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-at.md
4650
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-at.md
4371
4651
  */
4372
4652
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>
4373
4653
  /**
4374
4654
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
4375
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-blob-reading-methods.md
4655
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-blob-reading-methods.md
4376
4656
  */
4377
4657
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>
4658
+ /**
4659
+ * Prefer class field declarations over `this` assignments in constructors.
4660
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-class-fields.md
4661
+ */
4662
+ 'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>
4378
4663
  /**
4379
4664
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
4380
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-code-point.md
4665
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-code-point.md
4381
4666
  */
4382
4667
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>
4383
4668
  /**
4384
4669
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
4385
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-date-now.md
4670
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-date-now.md
4386
4671
  */
4387
4672
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>
4388
4673
  /**
4389
4674
  * Prefer default parameters over reassignment.
4390
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-default-parameters.md
4675
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-default-parameters.md
4391
4676
  */
4392
4677
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>
4393
4678
  /**
4394
4679
  * Prefer `Node#append()` over `Node#appendChild()`.
4395
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-append.md
4680
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-append.md
4396
4681
  */
4397
4682
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>
4398
4683
  /**
4399
4684
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
4400
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-dataset.md
4685
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-dataset.md
4401
4686
  */
4402
4687
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>
4403
4688
  /**
4404
4689
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
4405
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-remove.md
4690
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-remove.md
4406
4691
  */
4407
4692
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>
4408
4693
  /**
4409
4694
  * Prefer `.textContent` over `.innerText`.
4410
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-dom-node-text-content.md
4695
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-text-content.md
4411
4696
  */
4412
4697
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>
4413
4698
  /**
4414
4699
  * Prefer `EventTarget` over `EventEmitter`.
4415
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-event-target.md
4700
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-event-target.md
4416
4701
  */
4417
4702
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>
4418
4703
  /**
4419
4704
  * Prefer `export…from` when re-exporting.
4420
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-export-from.md
4705
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-export-from.md
4421
4706
  */
4422
4707
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>
4423
4708
  /**
4424
4709
  * Prefer `globalThis` over `window`, `self`, and `global`.
4425
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-global-this.md
4710
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-global-this.md
4426
4711
  */
4427
4712
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>
4428
4713
  /**
4429
4714
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
4430
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-import-meta-properties.md
4715
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-import-meta-properties.md
4431
4716
  */
4432
4717
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>
4433
4718
  /**
4434
4719
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
4435
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-includes.md
4720
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-includes.md
4436
4721
  */
4437
4722
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>
4438
4723
  /**
4439
4724
  * Prefer reading a JSON file as a buffer.
4440
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-json-parse-buffer.md
4725
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-json-parse-buffer.md
4441
4726
  */
4442
4727
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>
4443
4728
  /**
4444
4729
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
4445
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-keyboard-event-key.md
4730
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-keyboard-event-key.md
4446
4731
  */
4447
4732
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>
4448
4733
  /**
4449
4734
  * Prefer using a logical operator over a ternary.
4450
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-logical-operator-over-ternary.md
4735
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-logical-operator-over-ternary.md
4451
4736
  */
4452
4737
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>
4453
4738
  /**
4454
4739
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
4455
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-math-min-max.md
4740
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-min-max.md
4456
4741
  */
4457
4742
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>
4458
4743
  /**
4459
4744
  * Enforce the use of `Math.trunc` instead of bitwise operators.
4460
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-math-trunc.md
4745
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-trunc.md
4461
4746
  */
4462
4747
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>
4463
4748
  /**
4464
4749
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
4465
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-modern-dom-apis.md
4750
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-dom-apis.md
4466
4751
  */
4467
4752
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>
4468
4753
  /**
4469
4754
  * Prefer modern `Math` APIs over legacy patterns.
4470
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-modern-math-apis.md
4755
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-math-apis.md
4471
4756
  */
4472
4757
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>
4473
4758
  /**
4474
4759
  * Prefer JavaScript modules (ESM) over CommonJS.
4475
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-module.md
4760
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-module.md
4476
4761
  */
4477
4762
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>
4478
4763
  /**
4479
4764
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
4480
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-native-coercion-functions.md
4765
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-native-coercion-functions.md
4481
4766
  */
4482
4767
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>
4483
4768
  /**
4484
4769
  * Prefer negative index over `.length - index` when possible.
4485
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-negative-index.md
4770
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-negative-index.md
4486
4771
  */
4487
4772
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>
4488
4773
  /**
4489
4774
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
4490
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-node-protocol.md
4775
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-node-protocol.md
4491
4776
  */
4492
4777
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>
4493
4778
  /**
4494
4779
  * Prefer `Number` static properties over global ones.
4495
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-number-properties.md
4780
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-number-properties.md
4496
4781
  */
4497
4782
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>
4498
4783
  /**
4499
4784
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
4500
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-object-from-entries.md
4785
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-object-from-entries.md
4501
4786
  */
4502
4787
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>
4503
4788
  /**
4504
4789
  * Prefer omitting the `catch` binding parameter.
4505
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-optional-catch-binding.md
4790
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-optional-catch-binding.md
4506
4791
  */
4507
4792
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>
4508
4793
  /**
4509
4794
  * Prefer borrowing methods from the prototype instead of the instance.
4510
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-prototype-methods.md
4795
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-prototype-methods.md
4511
4796
  */
4512
4797
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>
4513
4798
  /**
4514
4799
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
4515
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-query-selector.md
4800
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-query-selector.md
4516
4801
  */
4517
4802
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>
4518
4803
  /**
4519
4804
  * Prefer `Reflect.apply()` over `Function#apply()`.
4520
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-reflect-apply.md
4805
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-reflect-apply.md
4521
4806
  */
4522
4807
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>
4523
4808
  /**
4524
4809
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
4525
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-regexp-test.md
4810
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-regexp-test.md
4526
4811
  */
4527
4812
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>
4528
4813
  /**
4529
4814
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
4530
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-set-has.md
4815
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-has.md
4531
4816
  */
4532
4817
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>
4533
4818
  /**
4534
4819
  * Prefer using `Set#size` instead of `Array#length`.
4535
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-set-size.md
4820
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-size.md
4536
4821
  */
4537
4822
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>
4538
4823
  /**
4539
4824
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
4540
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-single-call.md
4825
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-single-call.md
4541
4826
  */
4542
4827
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>
4543
4828
  /**
4544
4829
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
4545
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-spread.md
4830
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-spread.md
4546
4831
  */
4547
4832
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>
4548
4833
  /**
4549
4834
  * Prefer using the `String.raw` tag to avoid escaping `\`.
4550
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-raw.md
4835
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-raw.md
4551
4836
  */
4552
4837
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>
4553
4838
  /**
4554
4839
  * Prefer `String#replaceAll()` over regex searches with the global flag.
4555
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-replace-all.md
4840
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-replace-all.md
4556
4841
  */
4557
4842
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>
4558
4843
  /**
4559
4844
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
4560
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-slice.md
4845
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-slice.md
4561
4846
  */
4562
4847
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>
4563
4848
  /**
4564
4849
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
4565
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-starts-ends-with.md
4850
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-starts-ends-with.md
4566
4851
  */
4567
4852
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>
4568
4853
  /**
4569
4854
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
4570
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-string-trim-start-end.md
4855
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-trim-start-end.md
4571
4856
  */
4572
4857
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>
4573
4858
  /**
4574
4859
  * Prefer using `structuredClone` to create a deep clone.
4575
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-structured-clone.md
4860
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-structured-clone.md
4576
4861
  */
4577
4862
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>
4578
4863
  /**
4579
4864
  * Prefer `switch` over multiple `else-if`.
4580
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-switch.md
4865
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-switch.md
4581
4866
  */
4582
4867
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>
4583
4868
  /**
4584
4869
  * Prefer ternary expressions over simple `if-else` statements.
4585
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-ternary.md
4870
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-ternary.md
4586
4871
  */
4587
4872
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>
4588
4873
  /**
4589
4874
  * Prefer top-level await over top-level promises and async function calls.
4590
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-top-level-await.md
4875
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-top-level-await.md
4591
4876
  */
4592
4877
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>
4593
4878
  /**
4594
4879
  * Enforce throwing `TypeError` in type checking conditions.
4595
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prefer-type-error.md
4880
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-type-error.md
4596
4881
  */
4597
4882
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>
4598
4883
  /**
4599
4884
  * Prevent abbreviations.
4600
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/prevent-abbreviations.md
4885
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prevent-abbreviations.md
4601
4886
  */
4602
4887
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>
4603
4888
  /**
4604
4889
  * Enforce consistent relative URL style.
4605
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/relative-url-style.md
4890
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/relative-url-style.md
4606
4891
  */
4607
4892
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>
4608
4893
  /**
4609
4894
  * Enforce using the separator argument with `Array#join()`.
4610
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-array-join-separator.md
4895
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-array-join-separator.md
4611
4896
  */
4612
4897
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>
4898
+ /**
4899
+ * Require non-empty specifier list in import and export statements.
4900
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-module-specifiers.md
4901
+ */
4902
+ 'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>
4613
4903
  /**
4614
4904
  * Enforce using the digits argument with `Number#toFixed()`.
4615
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-number-to-fixed-digits-argument.md
4905
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-number-to-fixed-digits-argument.md
4616
4906
  */
4617
4907
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>
4618
4908
  /**
4619
4909
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
4620
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/require-post-message-target-origin.md
4910
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-post-message-target-origin.md
4621
4911
  */
4622
4912
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>
4623
4913
  /**
4624
4914
  * Enforce better string content.
4625
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/string-content.md
4915
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/string-content.md
4626
4916
  */
4627
4917
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>
4628
4918
  /**
4629
4919
  * Enforce consistent brace style for `case` clauses.
4630
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/switch-case-braces.md
4920
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/switch-case-braces.md
4631
4921
  */
4632
4922
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>
4633
4923
  /**
4634
4924
  * Fix whitespace-insensitive template indentation.
4635
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/template-indent.md
4925
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/template-indent.md
4636
4926
  */
4637
4927
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>
4638
4928
  /**
4639
4929
  * Enforce consistent case for text encoding identifiers.
4640
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/text-encoding-identifier-case.md
4930
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/text-encoding-identifier-case.md
4641
4931
  */
4642
4932
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>
4643
4933
  /**
4644
4934
  * Require `new` when creating an error.
4645
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v59.0.1/docs/rules/throw-new-error.md
4935
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/throw-new-error.md
4646
4936
  */
4647
4937
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>
4648
4938
  /**
@@ -6414,6 +6704,23 @@ type ArrowSpacing = []|[{
6414
6704
  before?: boolean
6415
6705
  after?: boolean
6416
6706
  }]
6707
+ // ----- astro/prefer-split-class-list -----
6708
+ type AstroPreferSplitClassList = []|[{
6709
+ splitLiteral?: boolean
6710
+ }]
6711
+ // ----- astro/semi -----
6712
+ type AstroSemi = ([]|["never"]|["never", {
6713
+ beforeStatementContinuationChars?: ("always" | "any" | "never")
6714
+ }] | []|["always"]|["always", {
6715
+ omitLastInOneLineBlock?: boolean
6716
+ omitLastInOneLineClassBody?: boolean
6717
+ }])
6718
+ // ----- astro/sort-attributes -----
6719
+ type AstroSortAttributes = []|[{
6720
+ type?: ("alphabetical" | "line-length")
6721
+ ignoreCase?: boolean
6722
+ order?: ("asc" | "desc")
6723
+ }]
6417
6724
  // ----- block-spacing -----
6418
6725
  type BlockSpacing = []|[("always" | "never")]
6419
6726
  // ----- brace-style -----
@@ -8064,6 +8371,10 @@ type LogicalAssignmentOperators = (([]|["always"]|["always", {
8064
8371
  type MarkdownFencedCodeLanguage = []|[{
8065
8372
  required?: string[]
8066
8373
  }]
8374
+ // ----- markdown/heading-increment -----
8375
+ type MarkdownHeadingIncrement = []|[{
8376
+ frontmatterTitle?: string
8377
+ }]
8067
8378
  // ----- markdown/no-duplicate-definitions -----
8068
8379
  type MarkdownNoDuplicateDefinitions = []|[{
8069
8380
  allowDefinitions?: string[]
@@ -8082,6 +8393,11 @@ type MarkdownNoEmptyDefinitions = []|[{
8082
8393
  // ----- markdown/no-html -----
8083
8394
  type MarkdownNoHtml = []|[{
8084
8395
  allowed?: string[]
8396
+ allowedIgnoreCase?: boolean
8397
+ }]
8398
+ // ----- markdown/no-missing-atx-heading-space -----
8399
+ type MarkdownNoMissingAtxHeadingSpace = []|[{
8400
+ checkClosedHeadings?: boolean
8085
8401
  }]
8086
8402
  // ----- markdown/no-missing-link-fragments -----
8087
8403
  type MarkdownNoMissingLinkFragments = []|[{
@@ -8092,6 +8408,10 @@ type MarkdownNoMissingLinkFragments = []|[{
8092
8408
  type MarkdownNoMultipleH1 = []|[{
8093
8409
  frontmatterTitle?: string
8094
8410
  }]
8411
+ // ----- markdown/no-space-in-emphasis -----
8412
+ type MarkdownNoSpaceInEmphasis = []|[{
8413
+ checkStrikethrough?: boolean
8414
+ }]
8095
8415
  // ----- markdown/no-unused-definitions -----
8096
8416
  type MarkdownNoUnusedDefinitions = []|[{
8097
8417
  allowDefinitions?: string[]
@@ -12438,6 +12758,10 @@ interface _UnicornImportStyle_BooleanObject {
12438
12758
  type UnicornNoArrayReduce = []|[{
12439
12759
  allowSimpleOperations?: boolean
12440
12760
  }]
12761
+ // ----- unicorn/no-array-reverse -----
12762
+ type UnicornNoArrayReverse = []|[{
12763
+ allowExpressionStatement?: boolean
12764
+ }]
12441
12765
  // ----- unicorn/no-instanceof-builtins -----
12442
12766
  type UnicornNoInstanceofBuiltins = []|[{
12443
12767
  useErrorIsError?: boolean
@@ -13005,6 +13329,8 @@ type ConfigNames =
13005
13329
  | '@bfra.me/regexp'
13006
13330
  | '@bfra.me/vitest/plugins'
13007
13331
  | '@bfra.me/vitest'
13332
+ | '@bfra.me/astro/setup'
13333
+ | '@bfra.me/astro/rules'
13008
13334
  | '@bfra.me/jsonc/plugins'
13009
13335
  | '@bfra.me/jsonc/unnamed1'
13010
13336
  | '@bfra.me/jsonc/json-schema/plugins'
@@ -13046,6 +13372,190 @@ type ConfigNames =
13046
13372
  | '@bfra.me/epilogue/dts'
13047
13373
  | '@bfra.me/epilogue'
13048
13374
 
13375
+ /**
13376
+ * Represents the options for configuring the Astro ESLint configuration.
13377
+ * This type is a flattened union of the {@link OptionsFiles} and {@link OptionsOverrides} types.
13378
+ */
13379
+ interface AstroOptions extends Flatten<OptionsFiles & OptionsOverrides> {
13380
+ }
13381
+ /**
13382
+ * Configures the Astro ESLint plugin.
13383
+ * @param options - Options to configure the Astro ESLint plugin.
13384
+ * @returns A promise that resolves to an array of ESLint configurations.
13385
+ */
13386
+ declare function astro(options?: AstroOptions): Promise<Config[]>;
13387
+
13388
+ declare function command(): Promise<Config[]>;
13389
+
13390
+ declare function epilogue(): Promise<Config[]>;
13391
+
13392
+ declare function eslintComments(): Config[];
13393
+
13394
+ interface FallbackOptions {
13395
+ files?: Config['files'];
13396
+ languageOptions?: Config['languageOptions'];
13397
+ name?: Config['name'];
13398
+ }
13399
+ declare function fallback(missingList: string[], options?: FallbackOptions): Promise<Config[]>;
13400
+
13401
+ declare function ignores(ignores?: string[]): Promise<Config[]>;
13402
+
13403
+ declare function imports(): Promise<Config[]>;
13404
+
13405
+ /**
13406
+ * Represents the options for configuring the JavaScript ESLint configuration.
13407
+ */
13408
+ type JavaScriptOptions = Flatten<OptionsIsInEditor & OptionsOverrides & {
13409
+ jsx?: boolean;
13410
+ }>;
13411
+ /**
13412
+ * Configures the JavaScript ESLint configuration with the specified options.
13413
+ *
13414
+ * @param options - The options for configuring the JavaScript ESLint configuration.
13415
+ * @param options.isInEditor - Indicates whether the code is being edited in an editor.
13416
+ * @param options.overrides - Additional overrides for the ESLint rules.
13417
+ * @returns An array of ESLint configurations.
13418
+ */
13419
+ declare function javascript(options?: JavaScriptOptions): Promise<Config[]>;
13420
+
13421
+ declare function jsdoc(): Promise<Config[]>;
13422
+
13423
+ /**
13424
+ * Represents the options for configuring JSONC files in the ESLint configuration.
13425
+ */
13426
+ type JsoncOptions = Flatten<OptionsFiles & OptionsOverrides>;
13427
+ declare const jsoncFiles: string[];
13428
+ /**
13429
+ * Configures the ESLint rules for JSONC files.
13430
+ * @param options - The configuration options for JSONC files.
13431
+ * @see https://ota-meshi.github.io/eslint-plugin-jsonc/
13432
+ */
13433
+ declare function jsonc(options?: JsoncOptions): Promise<Config[]>;
13434
+
13435
+ /**
13436
+ * Represents the options for configuring Markdown files in the ESLint configuration.
13437
+ */
13438
+ type MarkdownOptions = Flatten<OptionsFiles & OptionsOverrides>;
13439
+ declare const mdFiles: string[];
13440
+ declare const codeInMdFiles: string[];
13441
+ declare const extInMdFiles: string[];
13442
+ /**
13443
+ * Configures the ESLint rules for Markdown files.
13444
+ * @param options - The configuration options for Markdown files.
13445
+ * @see https://eslint.github.io/eslint-plugin-markdown/
13446
+ */
13447
+ declare function markdown(options?: MarkdownOptions): Promise<Config[]>;
13448
+
13449
+ declare function node(): Promise<Config[]>;
13450
+
13451
+ type PackageJsonOptions = Flatten<OptionsFiles>;
13452
+ declare const packageJsonFiles: string[];
13453
+ declare function packageJson(options?: PackageJsonOptions): Promise<Config[]>;
13454
+
13455
+ /**
13456
+ * Represents the combined options for the Perfectionist ESLint plugin, including options for editor integration, overrides, and the Perfectionist plugin itself.
13457
+ */
13458
+ type PerfectionistOptions = Flatten<OptionsIsInEditor & OptionsOverrides & OptionsPerfectionist>;
13459
+ /**
13460
+ * Perfectionist plugin for sorting items and properties.
13461
+ *
13462
+ * @see https://github.com/azat-io/eslint-plugin-perfectionist
13463
+ */
13464
+ declare function perfectionist(options?: PerfectionistOptions): Promise<Config[]>;
13465
+
13466
+ /**
13467
+ * Configures the ESLint rules for pnpm package management.
13468
+ * @see https://github.com/antfu/pnpm-workspace-utils#readme
13469
+ */
13470
+ declare function pnpm(): Promise<Config[]>;
13471
+
13472
+ /**
13473
+ * Represents the options for the ESLint Prettier configuration.
13474
+ */
13475
+ type PrettierOptions = Flatten<OptionsIsInEditor & OptionsOverrides>;
13476
+ /**
13477
+ * Generates an ESLint configuration for Prettier.
13478
+ * @param options - The options for the Prettier configuration.
13479
+ * @returns An array of ESLint configurations.
13480
+ */
13481
+ declare function prettier(options?: PrettierOptions): Promise<Config[]>;
13482
+
13483
+ /**
13484
+ * Represents the options for configuring RegExp linting rules.
13485
+ */
13486
+ type RegexpOptions = OptionsOverrides;
13487
+ /**
13488
+ * Configures the ESLint rules for RegExp linting.
13489
+ * @param options - The configuration options for RegExp linting.
13490
+ * @see https://ota-meshi.github.io/eslint-plugin-regexp/
13491
+ */
13492
+ declare function regexp(options?: RegexpOptions): Promise<Config[]>;
13493
+
13494
+ /**
13495
+ * Represents the options for configuring TOML files in the ESLint configuration.
13496
+ */
13497
+ type TomlOptions = Flatten<OptionsFiles & OptionsOverrides>;
13498
+ declare const tomlFiles: string[];
13499
+ /**
13500
+ * Configures the ESLint rules for TOML files.
13501
+ * @param options - The configuration options for TOML files.
13502
+ * @see https://ota-meshi.github.io/eslint-plugin-toml/
13503
+ */
13504
+ declare function toml(options?: TomlOptions): Promise<Config[]>;
13505
+
13506
+ /**
13507
+ * Represents the options for configuring the TypeScript ESLint configuration.
13508
+ * This type is a union of several other option types, including:
13509
+ * - {@link OptionsFiles}: Options related to the files to be linted
13510
+ * - {@link OptionsOverrides}: Options for overriding the default configuration
13511
+ * - {@link OptionsTypeScriptParserOptions}: Options for the TypeScript parser
13512
+ * - {@link OptionsTypeScriptWithTypes}: Options related to type-aware linting
13513
+ */
13514
+ type TypeScriptOptions = Flatten<OptionsFiles & OptionsOverrides & OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes>;
13515
+ /**
13516
+ * Generates a TypeScript ESLint configuration based on the provided options.
13517
+ *
13518
+ * The configuration includes:
13519
+ * - TypeScript-specific plugins and rules
13520
+ * - Options for type-aware linting (if a tsconfig.json file is provided)
13521
+ * - Overrides for the default configuration
13522
+ *
13523
+ * @param options - The options for configuring the TypeScript ESLint configuration.
13524
+ * @returns An array of ESLint configurations.
13525
+ */
13526
+ declare function typescript(options?: TypeScriptOptions): Promise<Config[]>;
13527
+
13528
+ type UnicornOptions = OptionsOverrides;
13529
+ declare function unicorn(options?: UnicornOptions): Promise<Config[]>;
13530
+
13531
+ /**
13532
+ * Represents the options for the Vitest ESLint configuration.
13533
+ * This type is a flattened union of the {@link OptionsFiles}, {@link OptionsIsInEditor}, and {@link OptionsOverrides} types.
13534
+ */
13535
+ type VitestOptions = Flatten<OptionsFiles & OptionsIsInEditor & OptionsOverrides>;
13536
+ /**
13537
+ * Generates an ESLint configuration for the Vitest testing framework.
13538
+ *
13539
+ * @param options - The options for configuring the Vitest ESLint configuration.
13540
+ * @param options.files - The glob pattern(s) to match test files.
13541
+ * @param options.isInEditor - Whether the code is being executed in an editor environment.
13542
+ * @param options.overrides - Additional rule overrides to apply.
13543
+ * @returns An array of ESLint configurations for the Vitest testing framework.
13544
+ */
13545
+ declare function vitest(options?: VitestOptions): Promise<Config[]>;
13546
+
13547
+ /**
13548
+ * Represents the options for configuring YAML files in the ESLint configuration.
13549
+ */
13550
+ type YamlOptions = Flatten<OptionsFiles & OptionsOverrides>;
13551
+ declare const yamlFiles: string[];
13552
+ /**
13553
+ * Configures the ESLint rules for YAML files.
13554
+ * @param options - The configuration options for YAML files.
13555
+ * @see https://ota-meshi.github.io/eslint-plugin-yml/
13556
+ */
13557
+ declare function yaml(options?: YamlOptions): Promise<Config[]>;
13558
+
13049
13559
  /**
13050
13560
  Flattens an object type to a mapped type with the same keys and values.
13051
13561
  */
@@ -13180,6 +13690,12 @@ type OptionsTypeScript = (OptionsTypeScriptParserOptions & OptionsOverrides) | (
13180
13690
  * ```
13181
13691
  */
13182
13692
  type Options = Flatten<{
13693
+ /**
13694
+ * Enable Astro support.
13695
+ *
13696
+ * @default false
13697
+ */
13698
+ astro?: boolean | AstroOptions;
13183
13699
  /**
13184
13700
  * Enable gitignore support.
13185
13701
  *
@@ -13287,177 +13803,6 @@ declare function defineConfig<C extends Config = Config, CN extends ConfigNames
13287
13803
  */
13288
13804
  declare const composeConfig: <C extends Config = Config, CN extends ConfigNames = ConfigNames>(...configs: ResolvableFlatConfig<Config extends C ? C : Config>[]) => FlatConfigComposer<Config extends C ? C : Config, CN>;
13289
13805
 
13290
- declare function command(): Promise<Config[]>;
13291
-
13292
- declare function epilogue(): Promise<Config[]>;
13293
-
13294
- declare function eslintComments(): Config[];
13295
-
13296
- interface FallbackOptions {
13297
- files?: Config['files'];
13298
- languageOptions?: Config['languageOptions'];
13299
- name?: Config['name'];
13300
- }
13301
- declare function fallback(missingList: string[], options?: FallbackOptions): Promise<Config[]>;
13302
-
13303
- declare function ignores(ignores?: string[]): Promise<Config[]>;
13304
-
13305
- declare function imports(): Promise<Config[]>;
13306
-
13307
- /**
13308
- * Represents the options for configuring the JavaScript ESLint configuration.
13309
- */
13310
- type JavaScriptOptions = Flatten<OptionsIsInEditor & OptionsOverrides & {
13311
- jsx?: boolean;
13312
- }>;
13313
- /**
13314
- * Configures the JavaScript ESLint configuration with the specified options.
13315
- *
13316
- * @param options - The options for configuring the JavaScript ESLint configuration.
13317
- * @param options.isInEditor - Indicates whether the code is being edited in an editor.
13318
- * @param options.overrides - Additional overrides for the ESLint rules.
13319
- * @returns An array of ESLint configurations.
13320
- */
13321
- declare function javascript(options?: JavaScriptOptions): Promise<Config[]>;
13322
-
13323
- declare function jsdoc(): Promise<Config[]>;
13324
-
13325
- /**
13326
- * Represents the options for configuring JSONC files in the ESLint configuration.
13327
- */
13328
- type JsoncOptions = Flatten<OptionsFiles & OptionsOverrides>;
13329
- declare const jsoncFiles: string[];
13330
- /**
13331
- * Configures the ESLint rules for JSONC files.
13332
- * @param options - The configuration options for JSONC files.
13333
- * @see https://ota-meshi.github.io/eslint-plugin-jsonc/
13334
- */
13335
- declare function jsonc(options?: JsoncOptions): Promise<Config[]>;
13336
-
13337
- /**
13338
- * Represents the options for configuring Markdown files in the ESLint configuration.
13339
- */
13340
- type MarkdownOptions = Flatten<OptionsFiles & OptionsOverrides>;
13341
- declare const mdFiles: string[];
13342
- declare const codeInMdFiles: string[];
13343
- declare const extInMdFiles: string[];
13344
- /**
13345
- * Configures the ESLint rules for Markdown files.
13346
- * @param options - The configuration options for Markdown files.
13347
- * @see https://eslint.github.io/eslint-plugin-markdown/
13348
- */
13349
- declare function markdown(options?: MarkdownOptions): Promise<Config[]>;
13350
-
13351
- declare function node(): Promise<Config[]>;
13352
-
13353
- type PackageJsonOptions = Flatten<OptionsFiles>;
13354
- declare const packageJsonFiles: string[];
13355
- declare function packageJson(options?: PackageJsonOptions): Promise<Config[]>;
13356
-
13357
- /**
13358
- * Represents the combined options for the Perfectionist ESLint plugin, including options for editor integration, overrides, and the Perfectionist plugin itself.
13359
- */
13360
- type PerfectionistOptions = Flatten<OptionsIsInEditor & OptionsOverrides & OptionsPerfectionist>;
13361
- /**
13362
- * Perfectionist plugin for sorting items and properties.
13363
- *
13364
- * @see https://github.com/azat-io/eslint-plugin-perfectionist
13365
- */
13366
- declare function perfectionist(options?: PerfectionistOptions): Promise<Config[]>;
13367
-
13368
- /**
13369
- * Configures the ESLint rules for pnpm package management.
13370
- * @see https://github.com/antfu/pnpm-workspace-utils#readme
13371
- */
13372
- declare function pnpm(): Promise<Config[]>;
13373
-
13374
- /**
13375
- * Represents the options for the ESLint Prettier configuration.
13376
- */
13377
- type PrettierOptions = Flatten<OptionsIsInEditor & OptionsOverrides>;
13378
- /**
13379
- * Generates an ESLint configuration for Prettier.
13380
- * @param options - The options for the Prettier configuration.
13381
- * @returns An array of ESLint configurations.
13382
- */
13383
- declare function prettier(options?: PrettierOptions): Promise<Config[]>;
13384
-
13385
- /**
13386
- * Represents the options for configuring RegExp linting rules.
13387
- */
13388
- type RegexpOptions = OptionsOverrides;
13389
- /**
13390
- * Configures the ESLint rules for RegExp linting.
13391
- * @param options - The configuration options for RegExp linting.
13392
- * @see https://ota-meshi.github.io/eslint-plugin-regexp/
13393
- */
13394
- declare function regexp(options?: RegexpOptions): Promise<Config[]>;
13395
-
13396
- /**
13397
- * Represents the options for configuring TOML files in the ESLint configuration.
13398
- */
13399
- type TomlOptions = Flatten<OptionsFiles & OptionsOverrides>;
13400
- declare const tomlFiles: string[];
13401
- /**
13402
- * Configures the ESLint rules for TOML files.
13403
- * @param options - The configuration options for TOML files.
13404
- * @see https://ota-meshi.github.io/eslint-plugin-toml/
13405
- */
13406
- declare function toml(options?: TomlOptions): Promise<Config[]>;
13407
-
13408
- /**
13409
- * Represents the options for configuring the TypeScript ESLint configuration.
13410
- * This type is a union of several other option types, including:
13411
- * - {@link OptionsFiles}: Options related to the files to be linted
13412
- * - {@link OptionsOverrides}: Options for overriding the default configuration
13413
- * - {@link OptionsTypeScriptParserOptions}: Options for the TypeScript parser
13414
- * - {@link OptionsTypeScriptWithTypes}: Options related to type-aware linting
13415
- */
13416
- type TypeScriptOptions = Flatten<OptionsFiles & OptionsOverrides & OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes>;
13417
- /**
13418
- * Generates a TypeScript ESLint configuration based on the provided options.
13419
- *
13420
- * The configuration includes:
13421
- * - TypeScript-specific plugins and rules
13422
- * - Options for type-aware linting (if a tsconfig.json file is provided)
13423
- * - Overrides for the default configuration
13424
- *
13425
- * @param options - The options for configuring the TypeScript ESLint configuration.
13426
- * @returns An array of ESLint configurations.
13427
- */
13428
- declare function typescript(options?: TypeScriptOptions): Promise<Config[]>;
13429
-
13430
- type UnicornOptions = OptionsOverrides;
13431
- declare function unicorn(options?: UnicornOptions): Promise<Config[]>;
13432
-
13433
- /**
13434
- * Represents the options for the Vitest ESLint configuration.
13435
- * This type is a flattened union of the {@link OptionsFiles}, {@link OptionsIsInEditor}, and {@link OptionsOverrides} types.
13436
- */
13437
- type VitestOptions = Flatten<OptionsFiles & OptionsIsInEditor & OptionsOverrides>;
13438
- /**
13439
- * Generates an ESLint configuration for the Vitest testing framework.
13440
- *
13441
- * @param options - The options for configuring the Vitest ESLint configuration.
13442
- * @param options.files - The glob pattern(s) to match test files.
13443
- * @param options.isInEditor - Whether the code is being executed in an editor environment.
13444
- * @param options.overrides - Additional rule overrides to apply.
13445
- * @returns An array of ESLint configurations for the Vitest testing framework.
13446
- */
13447
- declare function vitest(options?: VitestOptions): Promise<Config[]>;
13448
-
13449
- /**
13450
- * Represents the options for configuring YAML files in the ESLint configuration.
13451
- */
13452
- type YamlOptions = Flatten<OptionsFiles & OptionsOverrides>;
13453
- declare const yamlFiles: string[];
13454
- /**
13455
- * Configures the ESLint rules for YAML files.
13456
- * @param options - The configuration options for YAML files.
13457
- * @see https://ota-meshi.github.io/eslint-plugin-yml/
13458
- */
13459
- declare function yaml(options?: YamlOptions): Promise<Config[]>;
13460
-
13461
13806
  /**
13462
13807
  * Check if the process is running in a Git hook or under lint-staged.
13463
13808
  *
@@ -13495,11 +13840,13 @@ declare const GLOB_JSONC = "**/*.jsonc";
13495
13840
  declare const GLOB_TOML = "**/*.toml";
13496
13841
  declare const GLOB_YAML = "**/*.y?(a)ml";
13497
13842
  declare const GLOB_MARKDOWN = "**/*.md";
13498
- declare const GLOB_MARKDOWN_IN_MARKDOWN = "**/*.md/*.md";
13499
13843
  declare const GLOB_MARKDOWN_CODE = "**/*.md/**/*.?([cm])[jt]s?(x)";
13844
+ declare const GLOB_MARKDOWN_IN_MARKDOWN = "**/*.md/*.md";
13845
+ declare const GLOB_ASTRO = "**/*.astro";
13846
+ declare const GLOB_ASTRO_TS = "**/*.astro/*.ts";
13500
13847
  declare const GLOB_TESTS: string[];
13501
13848
  declare const GLOB_EXCLUDE: string[];
13502
13849
 
13503
13850
  declare const config: eslint_flat_config_utils.FlatConfigComposer<Config, ConfigNames>;
13504
13851
 
13505
- export { type Config, type ConfigNames, type FallbackOptions, type Flatten, GLOB_EXCLUDE, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_SRC, GLOB_SRC_EXT, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_YAML, type JavaScriptOptions, type JsoncOptions, type MarkdownOptions, type Options, type OptionsFiles, type OptionsIsInEditor, type OptionsOverrides, type OptionsPerfectionist, type OptionsTypeScript, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type PackageJsonOptions, type PerfectionistOptions, type PrettierOptions, type RegexpOptions, type Rules, type TomlOptions, type TypeScriptOptions, type UnicornOptions, type VitestOptions, type YamlOptions, codeInMdFiles, command, composeConfig, config, config as default, defineConfig, epilogue, eslintComments, extInMdFiles, fallback, ignores, imports, isInEditor, isInGitLifecycle, javascript, jsdoc, jsonc, jsoncFiles, markdown, mdFiles, node, packageJson, packageJsonFiles, perfectionist, pnpm, prettier, regexp, toml, tomlFiles, typescript, unicorn, vitest, yaml, yamlFiles };
13852
+ export { type AstroOptions, type Config, type ConfigNames, type FallbackOptions, type Flatten, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_EXCLUDE, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_SRC, GLOB_SRC_EXT, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_YAML, type JavaScriptOptions, type JsoncOptions, type MarkdownOptions, type Options, type OptionsFiles, type OptionsIsInEditor, type OptionsOverrides, type OptionsPerfectionist, type OptionsTypeScript, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type PackageJsonOptions, type PerfectionistOptions, type PrettierOptions, type RegexpOptions, type Rules, type TomlOptions, type TypeScriptOptions, type UnicornOptions, type VitestOptions, type YamlOptions, astro, codeInMdFiles, command, composeConfig, config, config as default, defineConfig, epilogue, eslintComments, extInMdFiles, fallback, ignores, imports, isInEditor, isInGitLifecycle, javascript, jsdoc, jsonc, jsoncFiles, markdown, mdFiles, node, packageJson, packageJsonFiles, perfectionist, pnpm, prettier, regexp, toml, tomlFiles, typescript, unicorn, vitest, yaml, yamlFiles };