@2digits/eslint-config 4.8.6 → 4.8.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.d.mts +125 -81
  2. package/package.json +14 -14
package/dist/index.d.mts CHANGED
@@ -940,7 +940,7 @@ interface RuleOptions {
940
940
  */
941
941
  'jsdoc/check-alignment'?: Linter.RuleEntry<JsdocCheckAlignment>;
942
942
  /**
943
- * Ensures that (JavaScript) examples within JSDoc adhere to ESLint rules.
943
+ * @deprecated - Use `getJsdocProcessorPlugin` processor; ensures that (JavaScript) samples within `@example` tags adhere to ESLint rules.
944
944
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-examples.md#repos-sticky-header
945
945
  */
946
946
  'jsdoc/check-examples'?: Linter.RuleEntry<JsdocCheckExamples>;
@@ -955,7 +955,7 @@ interface RuleOptions {
955
955
  */
956
956
  'jsdoc/check-line-alignment'?: Linter.RuleEntry<JsdocCheckLineAlignment>;
957
957
  /**
958
- * Ensures that parameter names in JSDoc match those in the function declaration.
958
+ * Checks for dupe `@param` names, that nested param names have roots, and that parameter names in function declarations match JSDoc param names.
959
959
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-param-names.md#repos-sticky-header
960
960
  */
961
961
  'jsdoc/check-param-names'?: Linter.RuleEntry<JsdocCheckParamNames>;
@@ -980,7 +980,7 @@ interface RuleOptions {
980
980
  */
981
981
  'jsdoc/check-template-names'?: Linter.RuleEntry<[]>;
982
982
  /**
983
- * Reports invalid types.
983
+ * Reports types deemed invalid (customizable and with defaults, for preventing and/or recommending replacements).
984
984
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-types.md#repos-sticky-header
985
985
  */
986
986
  'jsdoc/check-types'?: Linter.RuleEntry<JsdocCheckTypes>;
@@ -995,12 +995,12 @@ interface RuleOptions {
995
995
  */
996
996
  'jsdoc/convert-to-jsdoc-comments'?: Linter.RuleEntry<JsdocConvertToJsdocComments>;
997
997
  /**
998
- * Expects specific tags to be empty of any content.
998
+ * Checks tags that are expected to be empty (e.g., `@abstract` or `@async`), reporting if they have content
999
999
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/empty-tags.md#repos-sticky-header
1000
1000
  */
1001
1001
  'jsdoc/empty-tags'?: Linter.RuleEntry<JsdocEmptyTags>;
1002
1002
  /**
1003
- * Reports an issue with any non-constructor function using `@implements`.
1003
+ * Prohibits use of `@implements` on non-constructor functions (to enforce the tag only being used on classes/constructors).
1004
1004
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/implements-on-classes.md#repos-sticky-header
1005
1005
  */
1006
1006
  'jsdoc/implements-on-classes'?: Linter.RuleEntry<JsdocImplementsOnClasses>;
@@ -1030,17 +1030,17 @@ interface RuleOptions {
1030
1030
  */
1031
1031
  'jsdoc/match-name'?: Linter.RuleEntry<JsdocMatchName>;
1032
1032
  /**
1033
- * Controls how and whether jsdoc blocks can be expressed as single or multiple line blocks.
1033
+ * Controls how and whether JSDoc blocks can be expressed as single or multiple line blocks.
1034
1034
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/multiline-blocks.md#repos-sticky-header
1035
1035
  */
1036
1036
  'jsdoc/multiline-blocks'?: Linter.RuleEntry<JsdocMultilineBlocks>;
1037
1037
  /**
1038
- * This rule checks for multi-line-style comments which fail to meet the criteria of a jsdoc block.
1038
+ * This rule checks for multi-line-style comments which fail to meet the criteria of a JSDoc block.
1039
1039
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-bad-blocks.md#repos-sticky-header
1040
1040
  */
1041
1041
  'jsdoc/no-bad-blocks'?: Linter.RuleEntry<JsdocNoBadBlocks>;
1042
1042
  /**
1043
- * Detects and removes extra lines of a blank block description
1043
+ * 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.
1044
1044
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-blank-block-descriptions.md#repos-sticky-header
1045
1045
  */
1046
1046
  'jsdoc/no-blank-block-descriptions'?: Linter.RuleEntry<[]>;
@@ -1070,12 +1070,12 @@ interface RuleOptions {
1070
1070
  */
1071
1071
  'jsdoc/no-restricted-syntax'?: Linter.RuleEntry<JsdocNoRestrictedSyntax>;
1072
1072
  /**
1073
- * This rule reports types being used on `@param` or `@returns`.
1073
+ * This rule reports types being used on `@param` or `@returns` (redundant with TypeScript).
1074
1074
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-types.md#repos-sticky-header
1075
1075
  */
1076
1076
  'jsdoc/no-types'?: Linter.RuleEntry<JsdocNoTypes>;
1077
1077
  /**
1078
- * Checks that types in jsdoc comments are defined.
1078
+ * Besides some expected built-in types, prohibits any types not specified as globals or within `@typedef`.
1079
1079
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-undefined-types.md#repos-sticky-header
1080
1080
  */
1081
1081
  'jsdoc/no-undefined-types'?: Linter.RuleEntry<JsdocNoUndefinedTypes>;
@@ -1095,7 +1095,7 @@ interface RuleOptions {
1095
1095
  */
1096
1096
  'jsdoc/require-asterisk-prefix'?: Linter.RuleEntry<JsdocRequireAsteriskPrefix>;
1097
1097
  /**
1098
- * Requires that all functions have a description.
1098
+ * Requires that all functions (and potentially other contexts) have a description.
1099
1099
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-description.md#repos-sticky-header
1100
1100
  */
1101
1101
  'jsdoc/require-description'?: Linter.RuleEntry<JsdocRequireDescription>;
@@ -1105,7 +1105,7 @@ interface RuleOptions {
1105
1105
  */
1106
1106
  'jsdoc/require-description-complete-sentence'?: Linter.RuleEntry<JsdocRequireDescriptionCompleteSentence>;
1107
1107
  /**
1108
- * Requires that all functions have examples.
1108
+ * Requires that all functions (and potentially other contexts) have examples.
1109
1109
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-example.md#repos-sticky-header
1110
1110
  */
1111
1111
  'jsdoc/require-example'?: Linter.RuleEntry<JsdocRequireExample>;
@@ -1115,22 +1115,27 @@ interface RuleOptions {
1115
1115
  */
1116
1116
  'jsdoc/require-file-overview'?: Linter.RuleEntry<JsdocRequireFileOverview>;
1117
1117
  /**
1118
- * Requires a hyphen before the `@param` description.
1118
+ * Requires a hyphen before the `@param` description (and optionally before `@property` descriptions).
1119
1119
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-hyphen-before-param-description.md#repos-sticky-header
1120
1120
  */
1121
1121
  'jsdoc/require-hyphen-before-param-description'?: Linter.RuleEntry<JsdocRequireHyphenBeforeParamDescription>;
1122
1122
  /**
1123
- * Require JSDoc comments
1123
+ * Checks for presence of JSDoc comments, on functions and potentially other contexts (optionally limited to exports).
1124
1124
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-jsdoc.md#repos-sticky-header
1125
1125
  */
1126
1126
  'jsdoc/require-jsdoc'?: Linter.RuleEntry<JsdocRequireJsdoc>;
1127
+ /**
1128
+ * Requires a description for `@next` tags
1129
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-description.md#repos-sticky-header
1130
+ */
1131
+ 'jsdoc/require-next-description'?: Linter.RuleEntry<[]>;
1127
1132
  /**
1128
1133
  * Requires a type for `@next` tags
1129
1134
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-type.md#repos-sticky-header
1130
1135
  */
1131
1136
  'jsdoc/require-next-type'?: Linter.RuleEntry<[]>;
1132
1137
  /**
1133
- * Requires that all function parameters are documented.
1138
+ * Requires that all function parameters are documented with a `@param` tag.
1134
1139
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param.md#repos-sticky-header
1135
1140
  */
1136
1141
  'jsdoc/require-param'?: Linter.RuleEntry<JsdocRequireParam>;
@@ -1140,12 +1145,12 @@ interface RuleOptions {
1140
1145
  */
1141
1146
  'jsdoc/require-param-description'?: Linter.RuleEntry<JsdocRequireParamDescription>;
1142
1147
  /**
1143
- * Requires that all function parameters have names.
1148
+ * Requires that all `@param` tags have names.
1144
1149
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-name.md#repos-sticky-header
1145
1150
  */
1146
1151
  'jsdoc/require-param-name'?: Linter.RuleEntry<JsdocRequireParamName>;
1147
1152
  /**
1148
- * Requires that each `@param` tag has a `type` value.
1153
+ * Requires that each `@param` tag has a type value (in curly brackets).
1149
1154
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-type.md#repos-sticky-header
1150
1155
  */
1151
1156
  'jsdoc/require-param-type'?: Linter.RuleEntry<JsdocRequireParamType>;
@@ -1160,72 +1165,87 @@ interface RuleOptions {
1160
1165
  */
1161
1166
  'jsdoc/require-property-description'?: Linter.RuleEntry<[]>;
1162
1167
  /**
1163
- * Requires that all function `@property` tags have names.
1168
+ * Requires that all `@property` tags have names.
1164
1169
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-name.md#repos-sticky-header
1165
1170
  */
1166
1171
  'jsdoc/require-property-name'?: Linter.RuleEntry<[]>;
1167
1172
  /**
1168
- * Requires that each `@property` tag has a `type` value.
1173
+ * Requires that each `@property` tag has a type value (in curly brackets).
1169
1174
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-type.md#repos-sticky-header
1170
1175
  */
1171
1176
  'jsdoc/require-property-type'?: Linter.RuleEntry<[]>;
1172
1177
  /**
1173
- * Requires that returns are documented.
1178
+ * Requires that returns are documented with `@returns`.
1174
1179
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns.md#repos-sticky-header
1175
1180
  */
1176
1181
  'jsdoc/require-returns'?: Linter.RuleEntry<JsdocRequireReturns>;
1177
1182
  /**
1178
- * Requires a return statement in function body if a `@returns` tag is specified in jsdoc comment.
1183
+ * Requires a return statement in function body if a `@returns` tag is specified in JSDoc comment(and reports if multiple `@returns` tags are present).
1179
1184
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-check.md#repos-sticky-header
1180
1185
  */
1181
1186
  'jsdoc/require-returns-check'?: Linter.RuleEntry<JsdocRequireReturnsCheck>;
1182
1187
  /**
1183
- * Requires that the `@returns` tag has a `description` value.
1188
+ * Requires that the `@returns` tag has a `description` value (not including `void`/`undefined` type returns).
1184
1189
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-description.md#repos-sticky-header
1185
1190
  */
1186
1191
  'jsdoc/require-returns-description'?: Linter.RuleEntry<JsdocRequireReturnsDescription>;
1187
1192
  /**
1188
- * Requires that `@returns` tag has `type` value.
1193
+ * Requires that `@returns` tag has type value (in curly brackets).
1189
1194
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-type.md#repos-sticky-header
1190
1195
  */
1191
1196
  'jsdoc/require-returns-type'?: Linter.RuleEntry<JsdocRequireReturnsType>;
1192
1197
  /**
1193
- * Requires template tags for each generic type parameter
1198
+ * Requires tags be present, optionally for specific contexts
1199
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-tags.md#repos-sticky-header
1200
+ */
1201
+ 'jsdoc/require-tags'?: Linter.RuleEntry<JsdocRequireTags>;
1202
+ /**
1203
+ * Requires `@template` tags be present when type parameters are used.
1194
1204
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-template.md#repos-sticky-header
1195
1205
  */
1196
1206
  'jsdoc/require-template'?: Linter.RuleEntry<JsdocRequireTemplate>;
1197
1207
  /**
1198
- * Requires that throw statements are documented.
1208
+ * Requires that throw statements are documented with `@throws` tags.
1199
1209
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws.md#repos-sticky-header
1200
1210
  */
1201
1211
  'jsdoc/require-throws'?: Linter.RuleEntry<JsdocRequireThrows>;
1212
+ /**
1213
+ * Requires a description for `@throws` tags
1214
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-description.md#repos-sticky-header
1215
+ */
1216
+ 'jsdoc/require-throws-description'?: Linter.RuleEntry<[]>;
1202
1217
  /**
1203
1218
  * Requires a type for `@throws` tags
1204
1219
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-type.md#repos-sticky-header
1205
1220
  */
1206
1221
  'jsdoc/require-throws-type'?: Linter.RuleEntry<[]>;
1207
1222
  /**
1208
- * Requires yields are documented.
1223
+ * Requires yields are documented with `@yields` tags.
1209
1224
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields.md#repos-sticky-header
1210
1225
  */
1211
1226
  'jsdoc/require-yields'?: Linter.RuleEntry<JsdocRequireYields>;
1212
1227
  /**
1213
- * Requires a yield statement in function body if a `@yields` tag is specified in jsdoc comment.
1228
+ * 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).
1214
1229
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-check.md#repos-sticky-header
1215
1230
  */
1216
1231
  'jsdoc/require-yields-check'?: Linter.RuleEntry<JsdocRequireYieldsCheck>;
1232
+ /**
1233
+ * Requires a description for `@yields` tags
1234
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-description.md#repos-sticky-header
1235
+ */
1236
+ 'jsdoc/require-yields-description'?: Linter.RuleEntry<[]>;
1217
1237
  /**
1218
1238
  * Requires a type for `@yields` tags
1219
1239
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-type.md#repos-sticky-header
1220
1240
  */
1221
1241
  'jsdoc/require-yields-type'?: Linter.RuleEntry<[]>;
1222
1242
  /**
1223
- * Sorts tags by a specified sequence according to tag name.
1243
+ * Sorts tags by a specified sequence according to tag name, optionally adding line breaks between tag groups.
1224
1244
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/sort-tags.md#repos-sticky-header
1225
1245
  */
1226
1246
  'jsdoc/sort-tags'?: Linter.RuleEntry<JsdocSortTags>;
1227
1247
  /**
1228
- * Enforces lines (or no lines) between tags.
1248
+ * Enforces lines (or no lines) before, after, or between tags.
1229
1249
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/tag-lines.md#repos-sticky-header
1230
1250
  */
1231
1251
  'jsdoc/tag-lines'?: Linter.RuleEntry<JsdocTagLines>;
@@ -1240,7 +1260,7 @@ interface RuleOptions {
1240
1260
  */
1241
1261
  'jsdoc/type-formatting'?: Linter.RuleEntry<JsdocTypeFormatting>;
1242
1262
  /**
1243
- * Requires all types to be valid JSDoc or Closure compiler types without syntax errors.
1263
+ * Requires all types/namepaths to be valid JSDoc, Closure compiler, or TypeScript types (configurable in settings).
1244
1264
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/valid-types.md#repos-sticky-header
1245
1265
  */
1246
1266
  'jsdoc/valid-types'?: Linter.RuleEntry<JsdocValidTypes>;
@@ -2672,12 +2692,12 @@ interface RuleOptions {
2672
2692
  */
2673
2693
  'node/no-hide-core-modules'?: Linter.RuleEntry<NodeNoHideCoreModules>;
2674
2694
  /**
2675
- * disallow `import` declarations which import non-existence modules
2695
+ * disallow `import` declarations which import missing modules
2676
2696
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-missing-import.md
2677
2697
  */
2678
2698
  'node/no-missing-import'?: Linter.RuleEntry<NodeNoMissingImport>;
2679
2699
  /**
2680
- * disallow `require()` expressions which import non-existence modules
2700
+ * disallow `require()` expressions which import missing modules
2681
2701
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-missing-require.md
2682
2702
  */
2683
2703
  'node/no-missing-require'?: Linter.RuleEntry<NodeNoMissingRequire>;
@@ -8543,6 +8563,14 @@ type JsdocRequireReturnsType = [] | [{
8543
8563
  context?: string;
8544
8564
  })[];
8545
8565
  }];
8566
+ // ----- jsdoc/require-tags -----
8567
+ type JsdocRequireTags = [] | [{
8568
+ tags?: (string | {
8569
+ context?: string;
8570
+ tag?: string;
8571
+ [k: string]: unknown | undefined;
8572
+ })[];
8573
+ }];
8546
8574
  // ----- jsdoc/require-template -----
8547
8575
  type JsdocRequireTemplate = [] | [{
8548
8576
  exemptedBy?: string[];
@@ -8576,7 +8604,6 @@ type JsdocRequireYieldsCheck = [] | [{
8576
8604
  comment?: string;
8577
8605
  context?: string;
8578
8606
  })[];
8579
- exemptedBy?: string[];
8580
8607
  next?: boolean;
8581
8608
  }];
8582
8609
  // ----- jsdoc/sort-tags -----
@@ -8594,6 +8621,7 @@ type JsdocTagLines = [] | [("always" | "any" | "never")] | [("always" | "any" |
8594
8621
  applyToEndTag?: boolean;
8595
8622
  count?: number;
8596
8623
  endLines?: (number | null);
8624
+ maxBlockLines?: (number | null);
8597
8625
  startLines?: (number | null);
8598
8626
  tags?: {
8599
8627
  [k: string]: {
@@ -10885,6 +10913,10 @@ type StylisticGeneratorStarSpacing = [] | [(("before" | "after" | "both" | "neit
10885
10913
  before?: boolean;
10886
10914
  after?: boolean;
10887
10915
  });
10916
+ shorthand?: (("before" | "after" | "both" | "neither") | {
10917
+ before?: boolean;
10918
+ after?: boolean;
10919
+ });
10888
10920
  })];
10889
10921
  // ----- stylistic/implicit-arrow-linebreak -----
10890
10922
  type StylisticImplicitArrowLinebreak = [] | [("beside" | "below")];
@@ -11130,22 +11162,6 @@ type StylisticKeywordSpacing = [] | [{
11130
11162
  before?: boolean;
11131
11163
  after?: boolean;
11132
11164
  };
11133
- arguments?: {
11134
- before?: boolean;
11135
- after?: boolean;
11136
- };
11137
- as?: {
11138
- before?: boolean;
11139
- after?: boolean;
11140
- };
11141
- async?: {
11142
- before?: boolean;
11143
- after?: boolean;
11144
- };
11145
- await?: {
11146
- before?: boolean;
11147
- after?: boolean;
11148
- };
11149
11165
  boolean?: {
11150
11166
  before?: boolean;
11151
11167
  after?: boolean;
@@ -11210,10 +11226,6 @@ type StylisticKeywordSpacing = [] | [{
11210
11226
  before?: boolean;
11211
11227
  after?: boolean;
11212
11228
  };
11213
- eval?: {
11214
- before?: boolean;
11215
- after?: boolean;
11216
- };
11217
11229
  export?: {
11218
11230
  before?: boolean;
11219
11231
  after?: boolean;
@@ -11242,18 +11254,10 @@ type StylisticKeywordSpacing = [] | [{
11242
11254
  before?: boolean;
11243
11255
  after?: boolean;
11244
11256
  };
11245
- from?: {
11246
- before?: boolean;
11247
- after?: boolean;
11248
- };
11249
11257
  function?: {
11250
11258
  before?: boolean;
11251
11259
  after?: boolean;
11252
11260
  };
11253
- get?: {
11254
- before?: boolean;
11255
- after?: boolean;
11256
- };
11257
11261
  goto?: {
11258
11262
  before?: boolean;
11259
11263
  after?: boolean;
@@ -11286,10 +11290,6 @@ type StylisticKeywordSpacing = [] | [{
11286
11290
  before?: boolean;
11287
11291
  after?: boolean;
11288
11292
  };
11289
- let?: {
11290
- before?: boolean;
11291
- after?: boolean;
11292
- };
11293
11293
  long?: {
11294
11294
  before?: boolean;
11295
11295
  after?: boolean;
@@ -11306,10 +11306,6 @@ type StylisticKeywordSpacing = [] | [{
11306
11306
  before?: boolean;
11307
11307
  after?: boolean;
11308
11308
  };
11309
- of?: {
11310
- before?: boolean;
11311
- after?: boolean;
11312
- };
11313
11309
  package?: {
11314
11310
  before?: boolean;
11315
11311
  after?: boolean;
@@ -11330,10 +11326,6 @@ type StylisticKeywordSpacing = [] | [{
11330
11326
  before?: boolean;
11331
11327
  after?: boolean;
11332
11328
  };
11333
- set?: {
11334
- before?: boolean;
11335
- after?: boolean;
11336
- };
11337
11329
  short?: {
11338
11330
  before?: boolean;
11339
11331
  after?: boolean;
@@ -11378,18 +11370,10 @@ type StylisticKeywordSpacing = [] | [{
11378
11370
  before?: boolean;
11379
11371
  after?: boolean;
11380
11372
  };
11381
- type?: {
11382
- before?: boolean;
11383
- after?: boolean;
11384
- };
11385
11373
  typeof?: {
11386
11374
  before?: boolean;
11387
11375
  after?: boolean;
11388
11376
  };
11389
- using?: {
11390
- before?: boolean;
11391
- after?: boolean;
11392
- };
11393
11377
  var?: {
11394
11378
  before?: boolean;
11395
11379
  after?: boolean;
@@ -11410,6 +11394,54 @@ type StylisticKeywordSpacing = [] | [{
11410
11394
  before?: boolean;
11411
11395
  after?: boolean;
11412
11396
  };
11397
+ arguments?: {
11398
+ before?: boolean;
11399
+ after?: boolean;
11400
+ };
11401
+ as?: {
11402
+ before?: boolean;
11403
+ after?: boolean;
11404
+ };
11405
+ async?: {
11406
+ before?: boolean;
11407
+ after?: boolean;
11408
+ };
11409
+ await?: {
11410
+ before?: boolean;
11411
+ after?: boolean;
11412
+ };
11413
+ eval?: {
11414
+ before?: boolean;
11415
+ after?: boolean;
11416
+ };
11417
+ from?: {
11418
+ before?: boolean;
11419
+ after?: boolean;
11420
+ };
11421
+ get?: {
11422
+ before?: boolean;
11423
+ after?: boolean;
11424
+ };
11425
+ let?: {
11426
+ before?: boolean;
11427
+ after?: boolean;
11428
+ };
11429
+ of?: {
11430
+ before?: boolean;
11431
+ after?: boolean;
11432
+ };
11433
+ set?: {
11434
+ before?: boolean;
11435
+ after?: boolean;
11436
+ };
11437
+ type?: {
11438
+ before?: boolean;
11439
+ after?: boolean;
11440
+ };
11441
+ using?: {
11442
+ before?: boolean;
11443
+ after?: boolean;
11444
+ };
11413
11445
  yield?: {
11414
11446
  before?: boolean;
11415
11447
  after?: boolean;
@@ -11709,6 +11741,18 @@ type StylisticObjectCurlyNewline = [] | [((("always" | "never") | {
11709
11741
  type StylisticObjectCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), {
11710
11742
  arraysInObjects?: boolean;
11711
11743
  objectsInObjects?: boolean;
11744
+ overrides?: {
11745
+ ObjectPattern?: ("always" | "never");
11746
+ ObjectExpression?: ("always" | "never");
11747
+ ImportDeclaration?: ("always" | "never");
11748
+ ImportAttributes?: ("always" | "never");
11749
+ ExportNamedDeclaration?: ("always" | "never");
11750
+ ExportAllDeclaration?: ("always" | "never");
11751
+ TSMappedType?: ("always" | "never");
11752
+ TSTypeLiteral?: ("always" | "never");
11753
+ TSInterfaceBody?: ("always" | "never");
11754
+ TSEnumBody?: ("always" | "never");
11755
+ };
11712
11756
  }];
11713
11757
  // ----- stylistic/object-property-newline -----
11714
11758
  type StylisticObjectPropertyNewline = [] | [{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@2digits/eslint-config",
3
- "version": "4.8.6",
3
+ "version": "4.8.7",
4
4
  "description": "Effortlessly enforce best practices and catch errors with this comprehensive ESLint configuration for TypeScript, featuring popular plugins like @typescript-eslint, eslint-plugin-react, and eslint-plugin-unicorn.",
5
5
  "homepage": "https://2d-configs.vercel.app/",
6
6
  "repository": {
@@ -30,31 +30,31 @@
30
30
  "@eslint-react/eslint-plugin": "1.53.1",
31
31
  "@eslint/compat": "1.3.2",
32
32
  "@eslint/css": "0.11.0",
33
- "@eslint/js": "9.35.0",
33
+ "@eslint/js": "9.36.0",
34
34
  "@eslint/markdown": "7.2.0",
35
35
  "@graphql-eslint/eslint-plugin": "4.4.0",
36
36
  "@next/eslint-plugin-next": "15.5.3",
37
- "@stylistic/eslint-plugin": "5.3.1",
38
- "@tanstack/eslint-plugin-query": "5.89.0",
37
+ "@stylistic/eslint-plugin": "5.4.0",
38
+ "@tanstack/eslint-plugin-query": "5.90.1",
39
39
  "@typescript-eslint/parser": "8.44.0",
40
40
  "@typescript-eslint/utils": "8.44.0",
41
41
  "eslint-config-flat-gitignore": "2.1.0",
42
42
  "eslint-config-prettier": "10.1.8",
43
- "eslint-flat-config-utils": "2.1.1",
43
+ "eslint-flat-config-utils": "2.1.4",
44
44
  "eslint-merge-processors": "2.0.0",
45
45
  "eslint-plugin-antfu": "3.1.1",
46
46
  "eslint-plugin-de-morgan": "1.3.1",
47
47
  "eslint-plugin-drizzle": "0.2.3",
48
48
  "eslint-plugin-github-action": "0.0.16",
49
- "eslint-plugin-jsdoc": "58.1.1",
49
+ "eslint-plugin-jsdoc": "60.1.1",
50
50
  "eslint-plugin-jsonc": "2.20.1",
51
- "eslint-plugin-n": "17.23.0",
51
+ "eslint-plugin-n": "17.23.1",
52
52
  "eslint-plugin-pnpm": "1.1.1",
53
53
  "eslint-plugin-react-compiler": "19.1.0-rc.2",
54
54
  "eslint-plugin-react-hooks": "5.2.0",
55
55
  "eslint-plugin-regexp": "2.10.0",
56
56
  "eslint-plugin-sonarjs": "3.0.5",
57
- "eslint-plugin-storybook": "9.1.6",
57
+ "eslint-plugin-storybook": "9.1.7",
58
58
  "eslint-plugin-tailwindcss": "3.18.2",
59
59
  "eslint-plugin-turbo": "2.5.6",
60
60
  "eslint-plugin-unicorn": "61.0.2",
@@ -62,24 +62,24 @@
62
62
  "find-up": "8.0.0",
63
63
  "globals": "16.4.0",
64
64
  "graphql-config": "5.1.5",
65
- "jsonc-eslint-parser": "2.4.0",
65
+ "jsonc-eslint-parser": "2.4.1",
66
66
  "local-pkg": "1.1.2",
67
67
  "tailwind-csstree": "0.1.4",
68
68
  "typescript-eslint": "8.44.0",
69
69
  "yaml-eslint-parser": "1.3.0",
70
- "@2digits/constants": "1.1.9",
71
- "@2digits/eslint-plugin": "3.1.20"
70
+ "@2digits/eslint-plugin": "3.1.21",
71
+ "@2digits/constants": "1.1.9"
72
72
  },
73
73
  "devDependencies": {
74
- "@eslint/config-inspector": "1.2.0",
74
+ "@eslint/config-inspector": "1.3.0",
75
75
  "@types/react": "19.1.13",
76
76
  "dedent": "1.7.0",
77
- "eslint": "9.35.0",
77
+ "eslint": "9.36.0",
78
78
  "eslint-typegen": "2.3.0",
79
79
  "execa": "9.6.0",
80
80
  "react": "19.1.1",
81
81
  "tinyglobby": "0.2.15",
82
- "tsdown": "0.15.2",
82
+ "tsdown": "0.15.4",
83
83
  "typescript": "5.9.2",
84
84
  "vitest": "3.2.4",
85
85
  "@2digits/tsconfig": "0.8.2"