@zayne-labs/eslint-config 0.9.14 → 0.9.16

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/dist/index.d.ts CHANGED
@@ -860,9 +860,9 @@ interface Rules {
860
860
  * Reports invalid alignment of JSDoc block asterisks.
861
861
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-alignment.md#repos-sticky-header
862
862
  */
863
- 'jsdoc/check-alignment'?: Linter.RuleEntry<[]>;
863
+ 'jsdoc/check-alignment'?: Linter.RuleEntry<JsdocCheckAlignment>;
864
864
  /**
865
- * Ensures that (JavaScript) examples within JSDoc adhere to ESLint rules.
865
+ * @deprecated - Use `getJsdocProcessorPlugin` processor; ensures that (JavaScript) samples within `@example` tags adhere to ESLint rules.
866
866
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-examples.md#repos-sticky-header
867
867
  */
868
868
  'jsdoc/check-examples'?: Linter.RuleEntry<JsdocCheckExamples>;
@@ -877,7 +877,7 @@ interface Rules {
877
877
  */
878
878
  'jsdoc/check-line-alignment'?: Linter.RuleEntry<JsdocCheckLineAlignment>;
879
879
  /**
880
- * Ensures that parameter names in JSDoc match those in the function declaration.
880
+ * Checks for dupe `@param` names, that nested param names have roots, and that parameter names in function declarations match JSDoc param names.
881
881
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-param-names.md#repos-sticky-header
882
882
  */
883
883
  'jsdoc/check-param-names'?: Linter.RuleEntry<JsdocCheckParamNames>;
@@ -902,7 +902,7 @@ interface Rules {
902
902
  */
903
903
  'jsdoc/check-template-names'?: Linter.RuleEntry<[]>;
904
904
  /**
905
- * Reports invalid types.
905
+ * Reports types deemed invalid (customizable and with defaults, for preventing and/or recommending replacements).
906
906
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-types.md#repos-sticky-header
907
907
  */
908
908
  'jsdoc/check-types'?: Linter.RuleEntry<JsdocCheckTypes>;
@@ -917,12 +917,12 @@ interface Rules {
917
917
  */
918
918
  'jsdoc/convert-to-jsdoc-comments'?: Linter.RuleEntry<JsdocConvertToJsdocComments>;
919
919
  /**
920
- * Expects specific tags to be empty of any content.
920
+ * Checks tags that are expected to be empty (e.g., `@abstract` or `@async`), reporting if they have content
921
921
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/empty-tags.md#repos-sticky-header
922
922
  */
923
923
  'jsdoc/empty-tags'?: Linter.RuleEntry<JsdocEmptyTags>;
924
924
  /**
925
- * Reports an issue with any non-constructor function using `@implements`.
925
+ * Prohibits use of `@implements` on non-constructor functions (to enforce the tag only being used on classes/constructors).
926
926
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/implements-on-classes.md#repos-sticky-header
927
927
  */
928
928
  'jsdoc/implements-on-classes'?: Linter.RuleEntry<JsdocImplementsOnClasses>;
@@ -952,17 +952,17 @@ interface Rules {
952
952
  */
953
953
  'jsdoc/match-name'?: Linter.RuleEntry<JsdocMatchName>;
954
954
  /**
955
- * Controls how and whether jsdoc blocks can be expressed as single or multiple line blocks.
955
+ * Controls how and whether JSDoc blocks can be expressed as single or multiple line blocks.
956
956
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/multiline-blocks.md#repos-sticky-header
957
957
  */
958
958
  'jsdoc/multiline-blocks'?: Linter.RuleEntry<JsdocMultilineBlocks>;
959
959
  /**
960
- * This rule checks for multi-line-style comments which fail to meet the criteria of a jsdoc block.
960
+ * This rule checks for multi-line-style comments which fail to meet the criteria of a JSDoc block.
961
961
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-bad-blocks.md#repos-sticky-header
962
962
  */
963
963
  'jsdoc/no-bad-blocks'?: Linter.RuleEntry<JsdocNoBadBlocks>;
964
964
  /**
965
- * Detects and removes extra lines of a blank block description
965
+ * If tags are present, this rule will prevent empty lines in the block description. If no tags are present, this rule will prevent extra empty lines in the block description.
966
966
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-blank-block-descriptions.md#repos-sticky-header
967
967
  */
968
968
  'jsdoc/no-blank-block-descriptions'?: Linter.RuleEntry<[]>;
@@ -992,22 +992,32 @@ interface Rules {
992
992
  */
993
993
  'jsdoc/no-restricted-syntax'?: Linter.RuleEntry<JsdocNoRestrictedSyntax>;
994
994
  /**
995
- * This rule reports types being used on `@param` or `@returns`.
995
+ * This rule reports types being used on `@param` or `@returns` (redundant with TypeScript).
996
996
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-types.md#repos-sticky-header
997
997
  */
998
998
  'jsdoc/no-types'?: Linter.RuleEntry<JsdocNoTypes>;
999
999
  /**
1000
- * Checks that types in jsdoc comments are defined.
1000
+ * Besides some expected built-in types, prohibits any types not specified as globals or within `@typedef`.
1001
1001
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-undefined-types.md#repos-sticky-header
1002
1002
  */
1003
1003
  'jsdoc/no-undefined-types'?: Linter.RuleEntry<JsdocNoUndefinedTypes>;
1004
+ /**
1005
+ * Reports use of `any` or `*` type
1006
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/reject-any-type.md#repos-sticky-header
1007
+ */
1008
+ 'jsdoc/reject-any-type'?: Linter.RuleEntry<[]>;
1009
+ /**
1010
+ * Reports use of `Function` type
1011
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/reject-function-type.md#repos-sticky-header
1012
+ */
1013
+ 'jsdoc/reject-function-type'?: Linter.RuleEntry<[]>;
1004
1014
  /**
1005
1015
  * Requires that each JSDoc line starts with an `*`.
1006
1016
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-asterisk-prefix.md#repos-sticky-header
1007
1017
  */
1008
1018
  'jsdoc/require-asterisk-prefix'?: Linter.RuleEntry<JsdocRequireAsteriskPrefix>;
1009
1019
  /**
1010
- * Requires that all functions have a description.
1020
+ * Requires that all functions (and potentially other contexts) have a description.
1011
1021
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-description.md#repos-sticky-header
1012
1022
  */
1013
1023
  'jsdoc/require-description'?: Linter.RuleEntry<JsdocRequireDescription>;
@@ -1017,7 +1027,7 @@ interface Rules {
1017
1027
  */
1018
1028
  'jsdoc/require-description-complete-sentence'?: Linter.RuleEntry<JsdocRequireDescriptionCompleteSentence>;
1019
1029
  /**
1020
- * Requires that all functions have examples.
1030
+ * Requires that all functions (and potentially other contexts) have examples.
1021
1031
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-example.md#repos-sticky-header
1022
1032
  */
1023
1033
  'jsdoc/require-example'?: Linter.RuleEntry<JsdocRequireExample>;
@@ -1027,17 +1037,27 @@ interface Rules {
1027
1037
  */
1028
1038
  'jsdoc/require-file-overview'?: Linter.RuleEntry<JsdocRequireFileOverview>;
1029
1039
  /**
1030
- * Requires a hyphen before the `@param` description.
1040
+ * Requires a hyphen before the `@param` description (and optionally before `@property` descriptions).
1031
1041
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-hyphen-before-param-description.md#repos-sticky-header
1032
1042
  */
1033
1043
  'jsdoc/require-hyphen-before-param-description'?: Linter.RuleEntry<JsdocRequireHyphenBeforeParamDescription>;
1034
1044
  /**
1035
- * Require JSDoc comments
1045
+ * Checks for presence of JSDoc comments, on functions and potentially other contexts (optionally limited to exports).
1036
1046
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-jsdoc.md#repos-sticky-header
1037
1047
  */
1038
1048
  'jsdoc/require-jsdoc'?: Linter.RuleEntry<JsdocRequireJsdoc>;
1039
1049
  /**
1040
- * Requires that all function parameters are documented.
1050
+ * Requires a description for `@next` tags
1051
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-description.md#repos-sticky-header
1052
+ */
1053
+ 'jsdoc/require-next-description'?: Linter.RuleEntry<[]>;
1054
+ /**
1055
+ * Requires a type for `@next` tags
1056
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-type.md#repos-sticky-header
1057
+ */
1058
+ 'jsdoc/require-next-type'?: Linter.RuleEntry<[]>;
1059
+ /**
1060
+ * Requires that all function parameters are documented with a `@param` tag.
1041
1061
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param.md#repos-sticky-header
1042
1062
  */
1043
1063
  'jsdoc/require-param'?: Linter.RuleEntry<JsdocRequireParam>;
@@ -1047,12 +1067,12 @@ interface Rules {
1047
1067
  */
1048
1068
  'jsdoc/require-param-description'?: Linter.RuleEntry<JsdocRequireParamDescription>;
1049
1069
  /**
1050
- * Requires that all function parameters have names.
1070
+ * Requires that all `@param` tags have names.
1051
1071
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-name.md#repos-sticky-header
1052
1072
  */
1053
1073
  'jsdoc/require-param-name'?: Linter.RuleEntry<JsdocRequireParamName>;
1054
1074
  /**
1055
- * Requires that each `@param` tag has a `type` value.
1075
+ * Requires that each `@param` tag has a type value (in curly brackets).
1056
1076
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-type.md#repos-sticky-header
1057
1077
  */
1058
1078
  'jsdoc/require-param-type'?: Linter.RuleEntry<JsdocRequireParamType>;
@@ -1067,57 +1087,82 @@ interface Rules {
1067
1087
  */
1068
1088
  'jsdoc/require-property-description'?: Linter.RuleEntry<[]>;
1069
1089
  /**
1070
- * Requires that all function `@property` tags have names.
1090
+ * Requires that all `@property` tags have names.
1071
1091
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-name.md#repos-sticky-header
1072
1092
  */
1073
1093
  'jsdoc/require-property-name'?: Linter.RuleEntry<[]>;
1074
1094
  /**
1075
- * Requires that each `@property` tag has a `type` value.
1095
+ * Requires that each `@property` tag has a type value (in curly brackets).
1076
1096
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-type.md#repos-sticky-header
1077
1097
  */
1078
1098
  'jsdoc/require-property-type'?: Linter.RuleEntry<[]>;
1079
1099
  /**
1080
- * Requires that returns are documented.
1100
+ * Requires that returns are documented with `@returns`.
1081
1101
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns.md#repos-sticky-header
1082
1102
  */
1083
1103
  'jsdoc/require-returns'?: Linter.RuleEntry<JsdocRequireReturns>;
1084
1104
  /**
1085
- * Requires a return statement in function body if a `@returns` tag is specified in jsdoc comment.
1105
+ * Requires a return statement in function body if a `@returns` tag is specified in JSDoc comment(and reports if multiple `@returns` tags are present).
1086
1106
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-check.md#repos-sticky-header
1087
1107
  */
1088
1108
  'jsdoc/require-returns-check'?: Linter.RuleEntry<JsdocRequireReturnsCheck>;
1089
1109
  /**
1090
- * Requires that the `@returns` tag has a `description` value.
1110
+ * Requires that the `@returns` tag has a `description` value (not including `void`/`undefined` type returns).
1091
1111
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-description.md#repos-sticky-header
1092
1112
  */
1093
1113
  'jsdoc/require-returns-description'?: Linter.RuleEntry<JsdocRequireReturnsDescription>;
1094
1114
  /**
1095
- * Requires that `@returns` tag has `type` value.
1115
+ * Requires that `@returns` tag has type value (in curly brackets).
1096
1116
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-type.md#repos-sticky-header
1097
1117
  */
1098
1118
  'jsdoc/require-returns-type'?: Linter.RuleEntry<JsdocRequireReturnsType>;
1099
1119
  /**
1100
- * Requires template tags for each generic type parameter
1120
+ * Requires tags be present, optionally for specific contexts
1121
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-tags.md#repos-sticky-header
1122
+ */
1123
+ 'jsdoc/require-tags'?: Linter.RuleEntry<JsdocRequireTags>;
1124
+ /**
1125
+ * Requires `@template` tags be present when type parameters are used.
1101
1126
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-template.md#repos-sticky-header
1102
1127
  */
1103
1128
  'jsdoc/require-template'?: Linter.RuleEntry<JsdocRequireTemplate>;
1104
1129
  /**
1105
- * Requires that throw statements are documented.
1130
+ * Requires that throw statements are documented with `@throws` tags.
1106
1131
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws.md#repos-sticky-header
1107
1132
  */
1108
1133
  'jsdoc/require-throws'?: Linter.RuleEntry<JsdocRequireThrows>;
1109
1134
  /**
1110
- * Requires yields are documented.
1135
+ * Requires a description for `@throws` tags
1136
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-description.md#repos-sticky-header
1137
+ */
1138
+ 'jsdoc/require-throws-description'?: Linter.RuleEntry<[]>;
1139
+ /**
1140
+ * Requires a type for `@throws` tags
1141
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-type.md#repos-sticky-header
1142
+ */
1143
+ 'jsdoc/require-throws-type'?: Linter.RuleEntry<[]>;
1144
+ /**
1145
+ * Requires yields are documented with `@yields` tags.
1111
1146
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields.md#repos-sticky-header
1112
1147
  */
1113
1148
  'jsdoc/require-yields'?: Linter.RuleEntry<JsdocRequireYields>;
1114
1149
  /**
1115
- * Requires a yield statement in function body if a `@yields` tag is specified in jsdoc comment.
1150
+ * Ensures that if a `@yields` is present that a `yield` (or `yield` with a value) is present in the function body (or that if a `@next` is present that there is a yield with a return value present).
1116
1151
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-check.md#repos-sticky-header
1117
1152
  */
1118
1153
  'jsdoc/require-yields-check'?: Linter.RuleEntry<JsdocRequireYieldsCheck>;
1119
1154
  /**
1120
- * Sorts tags by a specified sequence according to tag name.
1155
+ * Requires a description for `@yields` tags
1156
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-description.md#repos-sticky-header
1157
+ */
1158
+ 'jsdoc/require-yields-description'?: Linter.RuleEntry<[]>;
1159
+ /**
1160
+ * Requires a type for `@yields` tags
1161
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-type.md#repos-sticky-header
1162
+ */
1163
+ 'jsdoc/require-yields-type'?: Linter.RuleEntry<[]>;
1164
+ /**
1165
+ * Sorts tags by a specified sequence according to tag name, optionally adding line breaks between tag groups.
1121
1166
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/sort-tags.md#repos-sticky-header
1122
1167
  */
1123
1168
  'jsdoc/sort-tags'?: Linter.RuleEntry<JsdocSortTags>;
@@ -1132,7 +1177,12 @@ interface Rules {
1132
1177
  */
1133
1178
  'jsdoc/text-escaping'?: Linter.RuleEntry<JsdocTextEscaping>;
1134
1179
  /**
1135
- * Requires all types to be valid JSDoc or Closure compiler types without syntax errors.
1180
+ * Formats JSDoc type values.
1181
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/type-formatting.md#repos-sticky-header
1182
+ */
1183
+ 'jsdoc/type-formatting'?: Linter.RuleEntry<JsdocTypeFormatting>;
1184
+ /**
1185
+ * Requires all types/namepaths to be valid JSDoc, Closure compiler, or TypeScript types (configurable in settings).
1136
1186
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/valid-types.md#repos-sticky-header
1137
1187
  */
1138
1188
  'jsdoc/valid-types'?: Linter.RuleEntry<JsdocValidTypes>;
@@ -2873,6 +2923,11 @@ interface Rules {
2873
2923
  * @see https://eslint.org/docs/latest/rules/prefer-template
2874
2924
  */
2875
2925
  'prefer-template'?: Linter.RuleEntry<[]>;
2926
+ /**
2927
+ * Disallow losing originally caught error when re-throwing custom errors
2928
+ * @see https://eslint.org/docs/latest/rules/preserve-caught-error
2929
+ */
2930
+ 'preserve-caught-error'?: Linter.RuleEntry<PreserveCaughtError>;
2876
2931
  /**
2877
2932
  * Require quotes around object literal property names
2878
2933
  * @see https://eslint.org/docs/latest/rules/quote-props
@@ -3884,8 +3939,9 @@ interface Rules {
3884
3939
  */
3885
3940
  'stylistic/jsx-pascal-case'?: Linter.RuleEntry<StylisticJsxPascalCase>;
3886
3941
  /**
3887
- * Disallow multiple spaces between inline JSX props
3942
+ * Disallow multiple spaces between inline JSX props. Deprecated, use `no-multi-spaces` rule instead.
3888
3943
  * @see https://eslint.style/rules/jsx-props-no-multi-spaces
3944
+ * @deprecated
3889
3945
  */
3890
3946
  'stylistic/jsx-props-no-multi-spaces'?: Linter.RuleEntry<[]>;
3891
3947
  /**
@@ -5088,690 +5144,710 @@ interface Rules {
5088
5144
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>;
5089
5145
  /**
5090
5146
  * Improve regexes by making them shorter, consistent, and safer.
5091
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/better-regex.md
5147
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/better-regex.md
5092
5148
  */
5093
5149
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>;
5094
5150
  /**
5095
5151
  * Enforce a specific parameter name in catch clauses.
5096
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/catch-error-name.md
5152
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/catch-error-name.md
5097
5153
  */
5098
5154
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
5099
5155
  /**
5100
5156
  * Enforce consistent assertion style with `node:assert`.
5101
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-assert.md
5157
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/consistent-assert.md
5102
5158
  */
5103
5159
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
5104
5160
  /**
5105
5161
  * Prefer passing `Date` directly to the constructor when cloning.
5106
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-date-clone.md
5162
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/consistent-date-clone.md
5107
5163
  */
5108
5164
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
5109
5165
  /**
5110
5166
  * Use destructured variables over properties.
5111
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-destructuring.md
5167
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/consistent-destructuring.md
5112
5168
  */
5113
5169
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
5114
5170
  /**
5115
5171
  * Prefer consistent types when spreading a ternary in an array literal.
5116
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-empty-array-spread.md
5172
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/consistent-empty-array-spread.md
5117
5173
  */
5118
5174
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
5119
5175
  /**
5120
5176
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
5121
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-existence-index-check.md
5177
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/consistent-existence-index-check.md
5122
5178
  */
5123
5179
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
5124
5180
  /**
5125
5181
  * Move function definitions to the highest possible scope.
5126
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-function-scoping.md
5182
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/consistent-function-scoping.md
5127
5183
  */
5128
5184
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
5129
5185
  /**
5130
5186
  * Enforce correct `Error` subclassing.
5131
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/custom-error-definition.md
5187
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/custom-error-definition.md
5132
5188
  */
5133
5189
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
5134
5190
  /**
5135
5191
  * Enforce no spaces between braces.
5136
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/empty-brace-spaces.md
5192
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/empty-brace-spaces.md
5137
5193
  */
5138
5194
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
5139
5195
  /**
5140
5196
  * Enforce passing a `message` value when creating a built-in error.
5141
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/error-message.md
5197
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/error-message.md
5142
5198
  */
5143
5199
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
5144
5200
  /**
5145
5201
  * Require escape sequences to use uppercase or lowercase values.
5146
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/escape-case.md
5202
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/escape-case.md
5147
5203
  */
5148
5204
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
5149
5205
  /**
5150
5206
  * Add expiration conditions to TODO comments.
5151
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/expiring-todo-comments.md
5207
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/expiring-todo-comments.md
5152
5208
  */
5153
5209
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
5154
5210
  /**
5155
5211
  * Enforce explicitly comparing the `length` or `size` property of a value.
5156
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/explicit-length-check.md
5212
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/explicit-length-check.md
5157
5213
  */
5158
5214
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
5159
5215
  /**
5160
5216
  * Enforce a case style for filenames.
5161
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/filename-case.md
5217
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/filename-case.md
5162
5218
  */
5163
5219
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
5164
5220
  /**
5165
5221
  * Enforce specific import styles per module.
5166
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/import-style.md
5222
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/import-style.md
5167
5223
  */
5168
5224
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
5169
5225
  /**
5170
5226
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
5171
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/new-for-builtins.md
5227
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/new-for-builtins.md
5172
5228
  */
5173
5229
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
5174
5230
  /**
5175
5231
  * Enforce specifying rules to disable in `eslint-disable` comments.
5176
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-abusive-eslint-disable.md
5232
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-abusive-eslint-disable.md
5177
5233
  */
5178
5234
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
5179
5235
  /**
5180
5236
  * Disallow recursive access to `this` within getters and setters.
5181
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-accessor-recursion.md
5237
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-accessor-recursion.md
5182
5238
  */
5183
5239
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
5184
5240
  /**
5185
5241
  * Disallow anonymous functions and classes as the default export.
5186
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-anonymous-default-export.md
5242
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-anonymous-default-export.md
5187
5243
  */
5188
5244
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
5189
5245
  /**
5190
5246
  * Prevent passing a function reference directly to iterator methods.
5191
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-callback-reference.md
5247
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-array-callback-reference.md
5192
5248
  */
5193
5249
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>;
5194
5250
  /**
5195
5251
  * Prefer `for…of` over the `forEach` method.
5196
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-for-each.md
5252
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-array-for-each.md
5197
5253
  */
5198
5254
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
5199
5255
  /**
5200
5256
  * Disallow using the `this` argument in array methods.
5201
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-method-this-argument.md
5257
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-array-method-this-argument.md
5202
5258
  */
5203
5259
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
5204
5260
  /**
5205
5261
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
5206
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-array-push-push
5262
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/deprecated-rules.md#no-array-push-push
5207
5263
  * @deprecated
5208
5264
  */
5209
5265
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
5210
5266
  /**
5211
5267
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
5212
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reduce.md
5268
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-array-reduce.md
5213
5269
  */
5214
5270
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
5215
5271
  /**
5216
5272
  * Prefer `Array#toReversed()` over `Array#reverse()`.
5217
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reverse.md
5273
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-array-reverse.md
5218
5274
  */
5219
5275
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
5276
+ /**
5277
+ * Prefer `Array#toSorted()` over `Array#sort()`.
5278
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-array-sort.md
5279
+ */
5280
+ 'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
5220
5281
  /**
5221
5282
  * Disallow member access from await expression.
5222
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-expression-member.md
5283
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-await-expression-member.md
5223
5284
  */
5224
5285
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
5225
5286
  /**
5226
5287
  * Disallow using `await` in `Promise` method parameters.
5227
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-in-promise-methods.md
5288
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-await-in-promise-methods.md
5228
5289
  */
5229
5290
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
5230
5291
  /**
5231
5292
  * Do not use leading/trailing space between `console.log` parameters.
5232
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-console-spaces.md
5293
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-console-spaces.md
5233
5294
  */
5234
5295
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
5235
5296
  /**
5236
5297
  * Do not use `document.cookie` directly.
5237
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-document-cookie.md
5298
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-document-cookie.md
5238
5299
  */
5239
5300
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
5240
5301
  /**
5241
5302
  * Disallow empty files.
5242
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-empty-file.md
5303
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-empty-file.md
5243
5304
  */
5244
5305
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>;
5245
5306
  /**
5246
5307
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
5247
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-for-loop.md
5308
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-for-loop.md
5248
5309
  */
5249
5310
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
5250
5311
  /**
5251
5312
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
5252
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-hex-escape.md
5313
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-hex-escape.md
5253
5314
  */
5254
5315
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
5255
5316
  /**
5256
5317
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
5257
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-instanceof-array
5318
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/deprecated-rules.md#no-instanceof-array
5258
5319
  * @deprecated
5259
5320
  */
5260
5321
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
5261
5322
  /**
5262
5323
  * Disallow `instanceof` with built-in objects
5263
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-instanceof-builtins.md
5324
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-instanceof-builtins.md
5264
5325
  */
5265
5326
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
5266
5327
  /**
5267
5328
  * Disallow invalid options in `fetch()` and `new Request()`.
5268
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-fetch-options.md
5329
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-invalid-fetch-options.md
5269
5330
  */
5270
5331
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
5271
5332
  /**
5272
5333
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
5273
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-remove-event-listener.md
5334
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-invalid-remove-event-listener.md
5274
5335
  */
5275
5336
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
5276
5337
  /**
5277
5338
  * Disallow identifiers starting with `new` or `class`.
5278
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-keyword-prefix.md
5339
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-keyword-prefix.md
5279
5340
  */
5280
5341
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
5281
5342
  /**
5282
5343
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
5283
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-length-as-slice-end
5344
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/deprecated-rules.md#no-length-as-slice-end
5284
5345
  * @deprecated
5285
5346
  */
5286
5347
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
5287
5348
  /**
5288
5349
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
5289
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-lonely-if.md
5350
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-lonely-if.md
5290
5351
  */
5291
5352
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
5292
5353
  /**
5293
5354
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
5294
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-magic-array-flat-depth.md
5355
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-magic-array-flat-depth.md
5295
5356
  */
5296
5357
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
5297
5358
  /**
5298
5359
  * Disallow named usage of default import and export.
5299
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-named-default.md
5360
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-named-default.md
5300
5361
  */
5301
5362
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
5302
5363
  /**
5303
5364
  * Disallow negated conditions.
5304
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negated-condition.md
5365
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-negated-condition.md
5305
5366
  */
5306
5367
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
5307
5368
  /**
5308
5369
  * Disallow negated expression in equality check.
5309
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negation-in-equality-check.md
5370
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-negation-in-equality-check.md
5310
5371
  */
5311
5372
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
5312
5373
  /**
5313
5374
  * Disallow nested ternary expressions.
5314
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-nested-ternary.md
5375
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-nested-ternary.md
5315
5376
  */
5316
5377
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
5317
5378
  /**
5318
5379
  * Disallow `new Array()`.
5319
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-array.md
5380
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-new-array.md
5320
5381
  */
5321
5382
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
5322
5383
  /**
5323
5384
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
5324
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-buffer.md
5385
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-new-buffer.md
5325
5386
  */
5326
5387
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
5327
5388
  /**
5328
5389
  * Disallow the use of the `null` literal.
5329
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-null.md
5390
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-null.md
5330
5391
  */
5331
5392
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
5332
5393
  /**
5333
5394
  * Disallow the use of objects as default parameters.
5334
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-object-as-default-parameter.md
5395
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-object-as-default-parameter.md
5335
5396
  */
5336
5397
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
5337
5398
  /**
5338
5399
  * Disallow `process.exit()`.
5339
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-process-exit.md
5400
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-process-exit.md
5340
5401
  */
5341
5402
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
5342
5403
  /**
5343
5404
  * Disallow passing single-element arrays to `Promise` methods.
5344
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-single-promise-in-promise-methods.md
5405
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-single-promise-in-promise-methods.md
5345
5406
  */
5346
5407
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
5347
5408
  /**
5348
5409
  * Disallow classes that only have static members.
5349
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-static-only-class.md
5410
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-static-only-class.md
5350
5411
  */
5351
5412
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
5352
5413
  /**
5353
5414
  * Disallow `then` property.
5354
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-thenable.md
5415
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-thenable.md
5355
5416
  */
5356
5417
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
5357
5418
  /**
5358
5419
  * Disallow assigning `this` to a variable.
5359
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-this-assignment.md
5420
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-this-assignment.md
5360
5421
  */
5361
5422
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
5362
5423
  /**
5363
5424
  * Disallow comparing `undefined` using `typeof`.
5364
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-typeof-undefined.md
5425
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-typeof-undefined.md
5365
5426
  */
5366
5427
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
5367
5428
  /**
5368
5429
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
5369
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-flat-depth.md
5430
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-unnecessary-array-flat-depth.md
5370
5431
  */
5371
5432
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
5372
5433
  /**
5373
5434
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
5374
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-splice-count.md
5435
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-unnecessary-array-splice-count.md
5375
5436
  */
5376
5437
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
5377
5438
  /**
5378
5439
  * Disallow awaiting non-promise values.
5379
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-await.md
5440
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-unnecessary-await.md
5380
5441
  */
5381
5442
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
5382
5443
  /**
5383
5444
  * Enforce the use of built-in methods instead of unnecessary polyfills.
5384
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-polyfills.md
5445
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-unnecessary-polyfills.md
5385
5446
  */
5386
5447
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
5387
5448
  /**
5388
5449
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
5389
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-slice-end.md
5450
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-unnecessary-slice-end.md
5390
5451
  */
5391
5452
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
5392
5453
  /**
5393
5454
  * Disallow unreadable array destructuring.
5394
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-array-destructuring.md
5455
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-unreadable-array-destructuring.md
5395
5456
  */
5396
5457
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
5397
5458
  /**
5398
5459
  * Disallow unreadable IIFEs.
5399
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-iife.md
5460
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-unreadable-iife.md
5400
5461
  */
5401
5462
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
5402
5463
  /**
5403
5464
  * Disallow unused object properties.
5404
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unused-properties.md
5465
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-unused-properties.md
5405
5466
  */
5406
5467
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
5407
5468
  /**
5408
5469
  * Disallow unnecessary `Error.captureStackTrace(…)`.
5409
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-error-capture-stack-trace.md
5470
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-useless-error-capture-stack-trace.md
5410
5471
  */
5411
5472
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
5412
5473
  /**
5413
5474
  * Disallow useless fallback when spreading in object literals.
5414
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-fallback-in-spread.md
5475
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-useless-fallback-in-spread.md
5415
5476
  */
5416
5477
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
5417
5478
  /**
5418
5479
  * Disallow useless array length check.
5419
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-length-check.md
5480
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-useless-length-check.md
5420
5481
  */
5421
5482
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
5422
5483
  /**
5423
5484
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
5424
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-promise-resolve-reject.md
5485
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-useless-promise-resolve-reject.md
5425
5486
  */
5426
5487
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
5427
5488
  /**
5428
5489
  * Disallow unnecessary spread.
5429
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-spread.md
5490
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-useless-spread.md
5430
5491
  */
5431
5492
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
5432
5493
  /**
5433
5494
  * Disallow useless case in switch statements.
5434
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-switch-case.md
5495
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-useless-switch-case.md
5435
5496
  */
5436
5497
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
5437
5498
  /**
5438
5499
  * Disallow useless `undefined`.
5439
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-undefined.md
5500
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-useless-undefined.md
5440
5501
  */
5441
5502
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
5442
5503
  /**
5443
5504
  * Disallow number literals with zero fractions or dangling dots.
5444
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-zero-fractions.md
5505
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/no-zero-fractions.md
5445
5506
  */
5446
5507
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
5447
5508
  /**
5448
5509
  * Enforce proper case for numeric literals.
5449
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/number-literal-case.md
5510
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/number-literal-case.md
5450
5511
  */
5451
5512
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
5452
5513
  /**
5453
5514
  * Enforce the style of numeric separators by correctly grouping digits.
5454
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/numeric-separators-style.md
5515
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/numeric-separators-style.md
5455
5516
  */
5456
5517
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
5457
5518
  /**
5458
5519
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
5459
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-add-event-listener.md
5520
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-add-event-listener.md
5460
5521
  */
5461
5522
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
5462
5523
  /**
5463
5524
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
5464
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-find.md
5525
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-array-find.md
5465
5526
  */
5466
5527
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
5467
5528
  /**
5468
5529
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
5469
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat.md
5530
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-array-flat.md
5470
5531
  */
5471
5532
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
5472
5533
  /**
5473
5534
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
5474
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat-map.md
5535
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-array-flat-map.md
5475
5536
  */
5476
5537
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
5477
5538
  /**
5478
5539
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
5479
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-index-of.md
5540
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-array-index-of.md
5480
5541
  */
5481
5542
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
5482
5543
  /**
5483
5544
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
5484
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-some.md
5545
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-array-some.md
5485
5546
  */
5486
5547
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
5487
5548
  /**
5488
5549
  * Prefer `.at()` method for index access and `String#charAt()`.
5489
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-at.md
5550
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-at.md
5490
5551
  */
5491
5552
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
5553
+ /**
5554
+ * Prefer `BigInt` literals over the constructor.
5555
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-bigint-literals.md
5556
+ */
5557
+ 'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
5492
5558
  /**
5493
5559
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
5494
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-blob-reading-methods.md
5560
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-blob-reading-methods.md
5495
5561
  */
5496
5562
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
5497
5563
  /**
5498
5564
  * Prefer class field declarations over `this` assignments in constructors.
5499
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-class-fields.md
5565
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-class-fields.md
5500
5566
  */
5501
5567
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
5568
+ /**
5569
+ * Prefer using `Element#classList.toggle()` to toggle class names.
5570
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-classlist-toggle.md
5571
+ */
5572
+ 'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
5502
5573
  /**
5503
5574
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
5504
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-code-point.md
5575
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-code-point.md
5505
5576
  */
5506
5577
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
5507
5578
  /**
5508
5579
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
5509
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-date-now.md
5580
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-date-now.md
5510
5581
  */
5511
5582
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
5512
5583
  /**
5513
5584
  * Prefer default parameters over reassignment.
5514
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-default-parameters.md
5585
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-default-parameters.md
5515
5586
  */
5516
5587
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
5517
5588
  /**
5518
5589
  * Prefer `Node#append()` over `Node#appendChild()`.
5519
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-append.md
5590
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-dom-node-append.md
5520
5591
  */
5521
5592
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
5522
5593
  /**
5523
5594
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
5524
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-dataset.md
5595
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-dom-node-dataset.md
5525
5596
  */
5526
5597
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
5527
5598
  /**
5528
5599
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
5529
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-remove.md
5600
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-dom-node-remove.md
5530
5601
  */
5531
5602
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
5532
5603
  /**
5533
5604
  * Prefer `.textContent` over `.innerText`.
5534
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-text-content.md
5605
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-dom-node-text-content.md
5535
5606
  */
5536
5607
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
5537
5608
  /**
5538
5609
  * Prefer `EventTarget` over `EventEmitter`.
5539
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-event-target.md
5610
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-event-target.md
5540
5611
  */
5541
5612
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
5542
5613
  /**
5543
5614
  * Prefer `export…from` when re-exporting.
5544
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-export-from.md
5615
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-export-from.md
5545
5616
  */
5546
5617
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
5547
5618
  /**
5548
5619
  * Prefer `globalThis` over `window`, `self`, and `global`.
5549
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-global-this.md
5620
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-global-this.md
5550
5621
  */
5551
5622
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
5552
5623
  /**
5553
5624
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
5554
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-import-meta-properties.md
5625
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-import-meta-properties.md
5555
5626
  */
5556
5627
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
5557
5628
  /**
5558
5629
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
5559
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-includes.md
5630
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-includes.md
5560
5631
  */
5561
5632
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
5562
5633
  /**
5563
5634
  * Prefer reading a JSON file as a buffer.
5564
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-json-parse-buffer.md
5635
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-json-parse-buffer.md
5565
5636
  */
5566
5637
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
5567
5638
  /**
5568
5639
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
5569
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-keyboard-event-key.md
5640
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-keyboard-event-key.md
5570
5641
  */
5571
5642
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
5572
5643
  /**
5573
5644
  * Prefer using a logical operator over a ternary.
5574
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-logical-operator-over-ternary.md
5645
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-logical-operator-over-ternary.md
5575
5646
  */
5576
5647
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
5577
5648
  /**
5578
5649
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
5579
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-min-max.md
5650
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-math-min-max.md
5580
5651
  */
5581
5652
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
5582
5653
  /**
5583
5654
  * Enforce the use of `Math.trunc` instead of bitwise operators.
5584
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-trunc.md
5655
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-math-trunc.md
5585
5656
  */
5586
5657
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
5587
5658
  /**
5588
5659
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
5589
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-dom-apis.md
5660
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-modern-dom-apis.md
5590
5661
  */
5591
5662
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
5592
5663
  /**
5593
5664
  * Prefer modern `Math` APIs over legacy patterns.
5594
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-math-apis.md
5665
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-modern-math-apis.md
5595
5666
  */
5596
5667
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
5597
5668
  /**
5598
5669
  * Prefer JavaScript modules (ESM) over CommonJS.
5599
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-module.md
5670
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-module.md
5600
5671
  */
5601
5672
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
5602
5673
  /**
5603
5674
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
5604
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-native-coercion-functions.md
5675
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-native-coercion-functions.md
5605
5676
  */
5606
5677
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
5607
5678
  /**
5608
5679
  * Prefer negative index over `.length - index` when possible.
5609
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-negative-index.md
5680
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-negative-index.md
5610
5681
  */
5611
5682
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
5612
5683
  /**
5613
5684
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
5614
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-node-protocol.md
5685
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-node-protocol.md
5615
5686
  */
5616
5687
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
5617
5688
  /**
5618
5689
  * Prefer `Number` static properties over global ones.
5619
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-number-properties.md
5690
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-number-properties.md
5620
5691
  */
5621
5692
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
5622
5693
  /**
5623
5694
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
5624
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-object-from-entries.md
5695
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-object-from-entries.md
5625
5696
  */
5626
5697
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
5627
5698
  /**
5628
5699
  * Prefer omitting the `catch` binding parameter.
5629
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-optional-catch-binding.md
5700
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-optional-catch-binding.md
5630
5701
  */
5631
5702
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
5632
5703
  /**
5633
5704
  * Prefer borrowing methods from the prototype instead of the instance.
5634
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-prototype-methods.md
5705
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-prototype-methods.md
5635
5706
  */
5636
5707
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
5637
5708
  /**
5638
5709
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
5639
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-query-selector.md
5710
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-query-selector.md
5640
5711
  */
5641
5712
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>;
5642
5713
  /**
5643
5714
  * Prefer `Reflect.apply()` over `Function#apply()`.
5644
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-reflect-apply.md
5715
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-reflect-apply.md
5645
5716
  */
5646
5717
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
5647
5718
  /**
5648
5719
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
5649
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-regexp-test.md
5720
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-regexp-test.md
5650
5721
  */
5651
5722
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
5652
5723
  /**
5653
5724
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
5654
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-has.md
5725
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-set-has.md
5655
5726
  */
5656
5727
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>;
5657
5728
  /**
5658
5729
  * Prefer using `Set#size` instead of `Array#length`.
5659
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-size.md
5730
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-set-size.md
5660
5731
  */
5661
5732
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
5662
5733
  /**
5663
5734
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
5664
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-single-call.md
5735
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-single-call.md
5665
5736
  */
5666
5737
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
5667
5738
  /**
5668
5739
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
5669
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-spread.md
5740
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-spread.md
5670
5741
  */
5671
5742
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
5672
5743
  /**
5673
5744
  * Prefer using the `String.raw` tag to avoid escaping `\`.
5674
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-raw.md
5745
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-string-raw.md
5675
5746
  */
5676
5747
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
5677
5748
  /**
5678
5749
  * Prefer `String#replaceAll()` over regex searches with the global flag.
5679
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-replace-all.md
5750
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-string-replace-all.md
5680
5751
  */
5681
5752
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
5682
5753
  /**
5683
5754
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
5684
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-slice.md
5755
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-string-slice.md
5685
5756
  */
5686
5757
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
5687
5758
  /**
5688
5759
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
5689
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-starts-ends-with.md
5760
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-string-starts-ends-with.md
5690
5761
  */
5691
5762
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
5692
5763
  /**
5693
5764
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
5694
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-trim-start-end.md
5765
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-string-trim-start-end.md
5695
5766
  */
5696
5767
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
5697
5768
  /**
5698
5769
  * Prefer using `structuredClone` to create a deep clone.
5699
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-structured-clone.md
5770
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-structured-clone.md
5700
5771
  */
5701
5772
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
5702
5773
  /**
5703
5774
  * Prefer `switch` over multiple `else-if`.
5704
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-switch.md
5775
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-switch.md
5705
5776
  */
5706
5777
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
5707
5778
  /**
5708
5779
  * Prefer ternary expressions over simple `if-else` statements.
5709
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-ternary.md
5780
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-ternary.md
5710
5781
  */
5711
5782
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
5712
5783
  /**
5713
5784
  * Prefer top-level await over top-level promises and async function calls.
5714
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-top-level-await.md
5785
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-top-level-await.md
5715
5786
  */
5716
5787
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
5717
5788
  /**
5718
5789
  * Enforce throwing `TypeError` in type checking conditions.
5719
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-type-error.md
5790
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prefer-type-error.md
5720
5791
  */
5721
5792
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
5722
5793
  /**
5723
5794
  * Prevent abbreviations.
5724
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prevent-abbreviations.md
5795
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/prevent-abbreviations.md
5725
5796
  */
5726
5797
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
5727
5798
  /**
5728
5799
  * Enforce consistent relative URL style.
5729
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/relative-url-style.md
5800
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/relative-url-style.md
5730
5801
  */
5731
5802
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
5732
5803
  /**
5733
5804
  * Enforce using the separator argument with `Array#join()`.
5734
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-array-join-separator.md
5805
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/require-array-join-separator.md
5735
5806
  */
5736
5807
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
5808
+ /**
5809
+ * Require non-empty module attributes for imports and exports
5810
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/require-module-attributes.md
5811
+ */
5812
+ 'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
5737
5813
  /**
5738
5814
  * Require non-empty specifier list in import and export statements.
5739
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-module-specifiers.md
5815
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/require-module-specifiers.md
5740
5816
  */
5741
5817
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
5742
5818
  /**
5743
5819
  * Enforce using the digits argument with `Number#toFixed()`.
5744
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-number-to-fixed-digits-argument.md
5820
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/require-number-to-fixed-digits-argument.md
5745
5821
  */
5746
5822
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
5747
5823
  /**
5748
5824
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
5749
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-post-message-target-origin.md
5825
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/require-post-message-target-origin.md
5750
5826
  */
5751
5827
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
5752
5828
  /**
5753
5829
  * Enforce better string content.
5754
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/string-content.md
5830
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/string-content.md
5755
5831
  */
5756
5832
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
5757
5833
  /**
5758
5834
  * Enforce consistent brace style for `case` clauses.
5759
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/switch-case-braces.md
5835
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/switch-case-braces.md
5760
5836
  */
5761
5837
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
5762
5838
  /**
5763
5839
  * Fix whitespace-insensitive template indentation.
5764
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/template-indent.md
5840
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/template-indent.md
5765
5841
  */
5766
5842
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
5767
5843
  /**
5768
5844
  * Enforce consistent case for text encoding identifiers.
5769
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/text-encoding-identifier-case.md
5845
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/text-encoding-identifier-case.md
5770
5846
  */
5771
5847
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>;
5772
5848
  /**
5773
5849
  * Require `new` when creating an error.
5774
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/throw-new-error.md
5850
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.0/docs/rules/throw-new-error.md
5775
5851
  */
5776
5852
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
5777
5853
  /**
@@ -7761,6 +7837,10 @@ type IndentLegacy = [] | [("tab" | number)] | [("tab" | number), {
7761
7837
  type InitDeclarations = ([] | ["always"] | [] | ["never"] | ["never", {
7762
7838
  ignoreForLoopInit?: boolean;
7763
7839
  }]);
7840
+ // ----- jsdoc/check-alignment -----
7841
+ type JsdocCheckAlignment = [] | [{
7842
+ innerIndent?: number;
7843
+ }];
7764
7844
  // ----- jsdoc/check-examples -----
7765
7845
  type JsdocCheckExamples = [] | [{
7766
7846
  allowInlineConfig?: boolean;
@@ -8050,6 +8130,7 @@ type JsdocRequireJsdoc = [] | [{
8050
8130
  enableFixer?: boolean;
8051
8131
  exemptEmptyConstructors?: boolean;
8052
8132
  exemptEmptyFunctions?: boolean;
8133
+ exemptOverloadedImplementations?: boolean;
8053
8134
  fixerMessage?: string;
8054
8135
  minLineCount?: number;
8055
8136
  publicOnly?: (boolean | {
@@ -8066,6 +8147,7 @@ type JsdocRequireJsdoc = [] | [{
8066
8147
  FunctionExpression?: boolean;
8067
8148
  MethodDefinition?: boolean;
8068
8149
  };
8150
+ skipInterveningOverloadedDeclarations?: boolean;
8069
8151
  }];
8070
8152
  // ----- jsdoc/require-param -----
8071
8153
  type JsdocRequireParam = [] | [{
@@ -8086,6 +8168,7 @@ type JsdocRequireParam = [] | [{
8086
8168
  enableRootFixer?: boolean;
8087
8169
  exemptedBy?: string[];
8088
8170
  ignoreWhenAllParamsMissing?: boolean;
8171
+ interfaceExemptsParamsCheck?: boolean;
8089
8172
  unnamedRootBase?: string[];
8090
8173
  useDefaultObjectProperties?: boolean;
8091
8174
  }];
@@ -8154,8 +8237,17 @@ type JsdocRequireReturnsType = [] | [{
8154
8237
  context?: string;
8155
8238
  })[];
8156
8239
  }];
8240
+ // ----- jsdoc/require-tags -----
8241
+ type JsdocRequireTags = [] | [{
8242
+ tags?: (string | {
8243
+ context?: string;
8244
+ tag?: string;
8245
+ [k: string]: unknown | undefined;
8246
+ })[];
8247
+ }];
8157
8248
  // ----- jsdoc/require-template -----
8158
8249
  type JsdocRequireTemplate = [] | [{
8250
+ exemptedBy?: string[];
8159
8251
  requireSeparateTemplates?: boolean;
8160
8252
  }];
8161
8253
  // ----- jsdoc/require-throws -----
@@ -8186,7 +8278,6 @@ type JsdocRequireYieldsCheck = [] | [{
8186
8278
  comment?: string;
8187
8279
  context?: string;
8188
8280
  })[];
8189
- exemptedBy?: string[];
8190
8281
  next?: boolean;
8191
8282
  }];
8192
8283
  // ----- jsdoc/sort-tags -----
@@ -8217,6 +8308,21 @@ type JsdocTextEscaping = [] | [{
8217
8308
  escapeHTML?: boolean;
8218
8309
  escapeMarkdown?: boolean;
8219
8310
  }];
8311
+ // ----- jsdoc/type-formatting -----
8312
+ type JsdocTypeFormatting = [] | [{
8313
+ arrayBrackets?: ("angle" | "square");
8314
+ enableFixer?: boolean;
8315
+ genericDot?: boolean;
8316
+ objectFieldIndent?: string;
8317
+ objectFieldQuote?: ("double" | "single" | null);
8318
+ objectFieldSeparator?: ("comma" | "comma-and-linebreak" | "linebreak" | "semicolon" | "semicolon-and-linebreak");
8319
+ objectFieldSeparatorOptionalLinebreak?: boolean;
8320
+ objectFieldSeparatorTrailingPunctuation?: boolean;
8321
+ separatorForSingleObjectField?: boolean;
8322
+ stringQuotes?: ("double" | "single");
8323
+ typeBracketSpacing?: string;
8324
+ unionSpacing?: string;
8325
+ }];
8220
8326
  // ----- jsdoc/valid-types -----
8221
8327
  type JsdocValidTypes = [] | [{
8222
8328
  allowEmptyNamepaths?: boolean;
@@ -11549,6 +11655,10 @@ type PreferReflect = [] | [{
11549
11655
  type PreferRegexLiterals = [] | [{
11550
11656
  disallowRedundantWrapping?: boolean;
11551
11657
  }];
11658
+ // ----- preserve-caught-error -----
11659
+ type PreserveCaughtError = [] | [{
11660
+ requireCatchParameter?: boolean;
11661
+ }];
11552
11662
  // ----- quote-props -----
11553
11663
  type QuoteProps = ([] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [("always" | "as-needed" | "consistent" | "consistent-as-needed"), {
11554
11664
  keywords?: boolean;
@@ -11575,8 +11685,6 @@ type ReactHooksExhaustiveDeps = [] | [{
11575
11685
  // ----- react-naming-convention/component-name -----
11576
11686
  type ReactNamingConventionComponentName = [] | [(("PascalCase" | "CONSTANT_CASE") | {
11577
11687
  allowAllCaps?: boolean;
11578
- allowLeadingUnderscore?: boolean;
11579
- allowNamespace?: boolean;
11580
11688
  excepts?: string[];
11581
11689
  rule?: ("PascalCase" | "CONSTANT_CASE");
11582
11690
  })];
@@ -11944,6 +12052,10 @@ type StylisticGeneratorStarSpacing = [] | [(("before" | "after" | "both" | "neit
11944
12052
  before?: boolean;
11945
12053
  after?: boolean;
11946
12054
  });
12055
+ shorthand?: (("before" | "after" | "both" | "neither") | {
12056
+ before?: boolean;
12057
+ after?: boolean;
12058
+ });
11947
12059
  })];
11948
12060
  // ----- stylistic/implicit-arrow-linebreak -----
11949
12061
  type StylisticImplicitArrowLinebreak = [] | [("beside" | "below")];
@@ -11956,6 +12068,7 @@ type StylisticIndent = [] | [("tab" | number)] | [("tab" | number), {
11956
12068
  const?: (number | ("first" | "off"));
11957
12069
  using?: (number | ("first" | "off"));
11958
12070
  });
12071
+ assignmentOperator?: (number | "off");
11959
12072
  outerIIFEBody?: (number | "off");
11960
12073
  MemberExpression?: (number | "off");
11961
12074
  FunctionDeclaration?: {
@@ -12420,7 +12533,7 @@ type StylisticKeywordSpacing = [] | [{
12420
12533
  before?: boolean;
12421
12534
  after?: boolean;
12422
12535
  };
12423
- accessor?: {
12536
+ arguments?: {
12424
12537
  before?: boolean;
12425
12538
  after?: boolean;
12426
12539
  };
@@ -12436,6 +12549,10 @@ type StylisticKeywordSpacing = [] | [{
12436
12549
  before?: boolean;
12437
12550
  after?: boolean;
12438
12551
  };
12552
+ eval?: {
12553
+ before?: boolean;
12554
+ after?: boolean;
12555
+ };
12439
12556
  from?: {
12440
12557
  before?: boolean;
12441
12558
  after?: boolean;
@@ -12452,11 +12569,11 @@ type StylisticKeywordSpacing = [] | [{
12452
12569
  before?: boolean;
12453
12570
  after?: boolean;
12454
12571
  };
12455
- satisfies?: {
12572
+ set?: {
12456
12573
  before?: boolean;
12457
12574
  after?: boolean;
12458
12575
  };
12459
- set?: {
12576
+ type?: {
12460
12577
  before?: boolean;
12461
12578
  after?: boolean;
12462
12579
  };
@@ -12468,7 +12585,11 @@ type StylisticKeywordSpacing = [] | [{
12468
12585
  before?: boolean;
12469
12586
  after?: boolean;
12470
12587
  };
12471
- type?: {
12588
+ accessor?: {
12589
+ before?: boolean;
12590
+ after?: boolean;
12591
+ };
12592
+ satisfies?: {
12472
12593
  before?: boolean;
12473
12594
  after?: boolean;
12474
12595
  };
@@ -12671,6 +12792,7 @@ type StylisticNoExtraParens = ([] | ["functions"] | [] | ["all"] | ["all", {
12671
12792
  LogicalExpression?: boolean;
12672
12793
  AwaitExpression?: boolean;
12673
12794
  };
12795
+ ignoredNodes?: string[];
12674
12796
  }]);
12675
12797
  // ----- stylistic/no-mixed-operators -----
12676
12798
  type StylisticNoMixedOperators = [] | [{
@@ -12758,6 +12880,18 @@ type StylisticObjectCurlyNewline = [] | [((("always" | "never") | {
12758
12880
  type StylisticObjectCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), {
12759
12881
  arraysInObjects?: boolean;
12760
12882
  objectsInObjects?: boolean;
12883
+ overrides?: {
12884
+ ObjectPattern?: ("always" | "never");
12885
+ ObjectExpression?: ("always" | "never");
12886
+ ImportDeclaration?: ("always" | "never");
12887
+ ImportAttributes?: ("always" | "never");
12888
+ ExportNamedDeclaration?: ("always" | "never");
12889
+ ExportAllDeclaration?: ("always" | "never");
12890
+ TSMappedType?: ("always" | "never");
12891
+ TSTypeLiteral?: ("always" | "never");
12892
+ TSInterfaceBody?: ("always" | "never");
12893
+ TSEnumBody?: ("always" | "never");
12894
+ };
12761
12895
  }];
12762
12896
  // ----- stylistic/object-property-newline -----
12763
12897
  type StylisticObjectPropertyNewline = [] | [{
@@ -12786,7 +12920,7 @@ type StylisticPaddedBlocks = [] | [(("always" | "never" | "start" | "end") | {
12786
12920
  // ----- stylistic/padding-line-between-statements -----
12787
12921
  type _StylisticPaddingLineBetweenStatementsPaddingType = ("any" | "never" | "always");
12788
12922
  type _StylisticPaddingLineBetweenStatementsStatementOption = (_StylisticPaddingLineBetweenStatementsStatementType | [_StylisticPaddingLineBetweenStatementsStatementType, ...(_StylisticPaddingLineBetweenStatementsStatementType)[]]);
12789
- type _StylisticPaddingLineBetweenStatementsStatementType = ("*" | "exports" | "require" | "directive" | "iife" | "block" | "empty" | "function" | "ts-method" | "break" | "case" | "class" | "continue" | "debugger" | "default" | "do" | "for" | "if" | "import" | "return" | "switch" | "throw" | "try" | "while" | "with" | "cjs-export" | "cjs-import" | "enum" | "interface" | "type" | "function-overload" | "block-like" | "singleline-block-like" | "multiline-block-like" | "expression" | "singleline-expression" | "multiline-expression" | "export" | "singleline-export" | "multiline-export" | "var" | "singleline-var" | "multiline-var" | "let" | "singleline-let" | "multiline-let" | "const" | "singleline-const" | "multiline-const" | "using" | "singleline-using" | "multiline-using");
12923
+ type _StylisticPaddingLineBetweenStatementsStatementType = ("*" | "exports" | "require" | "directive" | "iife" | "block" | "empty" | "function" | "ts-method" | "break" | "case" | "class" | "continue" | "debugger" | "default" | "do" | "for" | "if" | "import" | "switch" | "throw" | "try" | "while" | "with" | "cjs-export" | "cjs-import" | "enum" | "interface" | "function-overload" | "block-like" | "singleline-block-like" | "multiline-block-like" | "expression" | "singleline-expression" | "multiline-expression" | "return" | "singleline-return" | "multiline-return" | "export" | "singleline-export" | "multiline-export" | "var" | "singleline-var" | "multiline-var" | "let" | "singleline-let" | "multiline-let" | "const" | "singleline-const" | "multiline-const" | "using" | "singleline-using" | "multiline-using" | "type" | "singleline-type" | "multiline-type");
12790
12924
  type StylisticPaddingLineBetweenStatements = {
12791
12925
  blankLine: _StylisticPaddingLineBetweenStatementsPaddingType;
12792
12926
  prev: _StylisticPaddingLineBetweenStatementsStatementOption;
@@ -14603,6 +14737,10 @@ type UnicornNoArrayReduce = [] | [{
14603
14737
  type UnicornNoArrayReverse = [] | [{
14604
14738
  allowExpressionStatement?: boolean;
14605
14739
  }];
14740
+ // ----- unicorn/no-array-sort -----
14741
+ type UnicornNoArraySort = [] | [{
14742
+ allowExpressionStatement?: boolean;
14743
+ }];
14606
14744
  // ----- unicorn/no-instanceof-builtins -----
14607
14745
  type UnicornNoInstanceofBuiltins = [] | [{
14608
14746
  useErrorIsError?: boolean;