@biomejs/biome 2.1.4 → 2.2.2

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.
@@ -163,6 +163,15 @@
163
163
  { "type": "null" }
164
164
  ]
165
165
  },
166
+ "noNoninteractiveElementInteractions": {
167
+ "description": "Disallow use event handlers on non-interactive elements.",
168
+ "anyOf": [
169
+ {
170
+ "$ref": "#/definitions/NoNoninteractiveElementInteractionsConfiguration"
171
+ },
172
+ { "type": "null" }
173
+ ]
174
+ },
166
175
  "noNoninteractiveElementToInteractiveRole": {
167
176
  "description": "Enforce that interactive ARIA roles are not assigned to non-interactive HTML elements.",
168
177
  "anyOf": [
@@ -466,6 +475,15 @@
466
475
  { "type": "null" }
467
476
  ]
468
477
  },
478
+ "noExcessiveLinesPerFunction": {
479
+ "description": "Restrict the number of lines of code in a function.",
480
+ "anyOf": [
481
+ {
482
+ "$ref": "#/definitions/NoExcessiveLinesPerFunctionConfiguration"
483
+ },
484
+ { "type": "null" }
485
+ ]
486
+ },
469
487
  "noExcessiveNestedTestSuites": {
470
488
  "description": "This rule enforces a maximum depth to nested describe() in test files.",
471
489
  "anyOf": [
@@ -496,6 +514,20 @@
496
514
  { "type": "null" }
497
515
  ]
498
516
  },
517
+ "noImplicitCoercions": {
518
+ "description": "Disallow shorthand type conversions.",
519
+ "anyOf": [
520
+ { "$ref": "#/definitions/NoImplicitCoercionsConfiguration" },
521
+ { "type": "null" }
522
+ ]
523
+ },
524
+ "noImportantStyles": {
525
+ "description": "Disallow the use of the !important style.",
526
+ "anyOf": [
527
+ { "$ref": "#/definitions/NoImportantStylesConfiguration" },
528
+ { "type": "null" }
529
+ ]
530
+ },
499
531
  "noStaticOnlyClass": {
500
532
  "description": "This rule reports when a class has no non-static members, such as for a class used exclusively as a static namespace.",
501
533
  "anyOf": [
@@ -658,6 +690,13 @@
658
690
  { "type": "null" }
659
691
  ]
660
692
  },
693
+ "useIndexOf": {
694
+ "description": "Prefer Array#{indexOf,lastIndexOf}() over Array#{findIndex,findLastIndex}() when looking for the index of an item.",
695
+ "anyOf": [
696
+ { "$ref": "#/definitions/UseIndexOfConfiguration" },
697
+ { "type": "null" }
698
+ ]
699
+ },
661
700
  "useLiteralKeys": {
662
701
  "description": "Enforce the usage of a literal access to properties over computed property access.",
663
702
  "anyOf": [
@@ -813,6 +852,13 @@
813
852
  { "type": "null" }
814
853
  ]
815
854
  },
855
+ "noGlobalDirnameFilename": {
856
+ "description": "Disallow the use of __dirname and __filename in the global scope.",
857
+ "anyOf": [
858
+ { "$ref": "#/definitions/NoGlobalDirnameFilenameConfiguration" },
859
+ { "type": "null" }
860
+ ]
861
+ },
816
862
  "noGlobalObjectCalls": {
817
863
  "description": "Disallow calling global object properties as functions",
818
864
  "anyOf": [
@@ -884,6 +930,15 @@
884
930
  { "type": "null" }
885
931
  ]
886
932
  },
933
+ "noNestedComponentDefinitions": {
934
+ "description": "Disallows defining React components inside other components.",
935
+ "anyOf": [
936
+ {
937
+ "$ref": "#/definitions/NoNestedComponentDefinitionsConfiguration"
938
+ },
939
+ { "type": "null" }
940
+ ]
941
+ },
887
942
  "noNodejsModules": {
888
943
  "description": "Forbid the use of Node.js builtin modules.",
889
944
  "anyOf": [
@@ -912,6 +967,20 @@
912
967
  { "type": "null" }
913
968
  ]
914
969
  },
970
+ "noProcessGlobal": {
971
+ "description": "Disallow the use of process global.",
972
+ "anyOf": [
973
+ { "$ref": "#/definitions/NoProcessGlobalConfiguration" },
974
+ { "type": "null" }
975
+ ]
976
+ },
977
+ "noReactPropAssignments": {
978
+ "description": "Disallow assigning to React component props.",
979
+ "anyOf": [
980
+ { "$ref": "#/definitions/NoReactPropAssignmentsConfiguration" },
981
+ { "type": "null" }
982
+ ]
983
+ },
915
984
  "noRenderReturnValue": {
916
985
  "description": "Prevent the usage of the return value of React.render.",
917
986
  "anyOf": [
@@ -919,6 +988,13 @@
919
988
  { "type": "null" }
920
989
  ]
921
990
  },
991
+ "noRestrictedElements": {
992
+ "description": "Disallow the use of configured elements.",
993
+ "anyOf": [
994
+ { "$ref": "#/definitions/NoRestrictedElementsConfiguration" },
995
+ { "type": "null" }
996
+ ]
997
+ },
922
998
  "noSelfAssign": {
923
999
  "description": "Disallow assignments where both sides are exactly the same.",
924
1000
  "anyOf": [
@@ -933,6 +1009,13 @@
933
1009
  { "type": "null" }
934
1010
  ]
935
1011
  },
1012
+ "noSolidDestructuredProps": {
1013
+ "description": "Disallow destructuring props inside JSX components in Solid projects.",
1014
+ "anyOf": [
1015
+ { "$ref": "#/definitions/NoSolidDestructuredPropsConfiguration" },
1016
+ { "type": "null" }
1017
+ ]
1018
+ },
936
1019
  "noStringCaseMismatch": {
937
1020
  "description": "Disallow comparison of expressions modifying the string case with non-compliant value.",
938
1021
  "anyOf": [
@@ -1107,6 +1190,13 @@
1107
1190
  { "type": "null" }
1108
1191
  ]
1109
1192
  },
1193
+ "useGraphqlNamedOperations": {
1194
+ "description": "Enforce specifying the name of GraphQL operations.",
1195
+ "anyOf": [
1196
+ { "$ref": "#/definitions/UseGraphqlNamedOperationsConfiguration" },
1197
+ { "type": "null" }
1198
+ ]
1199
+ },
1110
1200
  "useHookAtTopLevel": {
1111
1201
  "description": "Enforce that all React hooks are being called from the Top Level component functions.",
1112
1202
  "anyOf": [
@@ -1128,6 +1218,13 @@
1128
1218
  { "type": "null" }
1129
1219
  ]
1130
1220
  },
1221
+ "useJsonImportAttributes": {
1222
+ "description": "Enforces the use of with { type: \"json\" } for JSON module imports.",
1223
+ "anyOf": [
1224
+ { "$ref": "#/definitions/UseJsonImportAttributesConfiguration" },
1225
+ { "type": "null" }
1226
+ ]
1227
+ },
1131
1228
  "useJsxKeyInIterable": {
1132
1229
  "description": "Disallow missing key props in iterators/collection literals.",
1133
1230
  "anyOf": [
@@ -1135,6 +1232,27 @@
1135
1232
  { "type": "null" }
1136
1233
  ]
1137
1234
  },
1235
+ "useParseIntRadix": {
1236
+ "description": "Enforce the consistent use of the radix argument when using parseInt().",
1237
+ "anyOf": [
1238
+ { "$ref": "#/definitions/UseParseIntRadixConfiguration" },
1239
+ { "type": "null" }
1240
+ ]
1241
+ },
1242
+ "useSingleJsDocAsterisk": {
1243
+ "description": "Enforce JSDoc comment lines to start with a single asterisk, except for the first one.",
1244
+ "anyOf": [
1245
+ { "$ref": "#/definitions/UseSingleJsDocAsteriskConfiguration" },
1246
+ { "type": "null" }
1247
+ ]
1248
+ },
1249
+ "useUniqueElementIds": {
1250
+ "description": "Prevent the usage of static string literal id attribute on elements.",
1251
+ "anyOf": [
1252
+ { "$ref": "#/definitions/UseUniqueElementIdsConfiguration" },
1253
+ { "type": "null" }
1254
+ ]
1255
+ },
1138
1256
  "useValidForDirection": {
1139
1257
  "description": "Enforce \"for\" loop update clause moving the counter in the right direction.",
1140
1258
  "anyOf": [
@@ -1279,38 +1397,6 @@
1279
1397
  "minProperties": 1,
1280
1398
  "additionalProperties": { "type": "string" }
1281
1399
  },
1282
- "CustomRestrictedImport": {
1283
- "anyOf": [
1284
- {
1285
- "description": "The message to display when this module is imported.",
1286
- "type": "string"
1287
- },
1288
- {
1289
- "description": "Additional options to configure the message and allowed/disallowed import names.",
1290
- "allOf": [{ "$ref": "#/definitions/CustomRestrictedImportOptions" }]
1291
- }
1292
- ]
1293
- },
1294
- "CustomRestrictedImportOptions": {
1295
- "type": "object",
1296
- "properties": {
1297
- "allowImportNames": {
1298
- "description": "Names of the exported members that allowed to be not be used.",
1299
- "type": "array",
1300
- "items": { "type": "string" }
1301
- },
1302
- "importNames": {
1303
- "description": "Names of the exported members that should not be used.",
1304
- "type": "array",
1305
- "items": { "type": "string" }
1306
- },
1307
- "message": {
1308
- "description": "The message to display when this module is imported.",
1309
- "type": "string"
1310
- }
1311
- },
1312
- "additionalProperties": false
1313
- },
1314
1400
  "CustomRestrictedType": {
1315
1401
  "anyOf": [
1316
1402
  { "type": "string" },
@@ -1838,7 +1924,14 @@
1838
1924
  },
1839
1925
  "HtmlParserConfiguration": {
1840
1926
  "description": "Options that changes how the HTML parser behaves",
1841
- "type": "null"
1927
+ "type": "object",
1928
+ "properties": {
1929
+ "interpolation": {
1930
+ "description": "Enables the parsing of double text expressions such as `{{ expression }}` inside `.html` files",
1931
+ "anyOf": [{ "$ref": "#/definitions/Bool" }, { "type": "null" }]
1932
+ }
1933
+ },
1934
+ "additionalProperties": false
1842
1935
  },
1843
1936
  "ImportGroup": {
1844
1937
  "anyOf": [
@@ -1994,6 +2087,13 @@
1994
2087
  "description": "What's the max width of a line applied to JavaScript (and its super languages) files. Defaults to 80.",
1995
2088
  "anyOf": [{ "$ref": "#/definitions/LineWidth" }, { "type": "null" }]
1996
2089
  },
2090
+ "operatorLinebreak": {
2091
+ "description": "When breaking binary expressions into multiple lines, whether to break them before or after the binary operator. Defaults to \"after\".",
2092
+ "anyOf": [
2093
+ { "$ref": "#/definitions/OperatorLinebreak" },
2094
+ { "type": "null" }
2095
+ ]
2096
+ },
1997
2097
  "quoteProperties": {
1998
2098
  "description": "When properties in objects are quoted. Defaults to asNeeded.",
1999
2099
  "anyOf": [
@@ -2466,13 +2566,16 @@
2466
2566
  ]
2467
2567
  },
2468
2568
  "NoAutofocusOptions": { "type": "object", "additionalProperties": false },
2469
- "NoAwaitInLoopConfiguration": {
2569
+ "NoAwaitInLoopsConfiguration": {
2470
2570
  "anyOf": [
2471
2571
  { "$ref": "#/definitions/RulePlainConfiguration" },
2472
- { "$ref": "#/definitions/RuleWithNoAwaitInLoopOptions" }
2572
+ { "$ref": "#/definitions/RuleWithNoAwaitInLoopsOptions" }
2473
2573
  ]
2474
2574
  },
2475
- "NoAwaitInLoopOptions": { "type": "object", "additionalProperties": false },
2575
+ "NoAwaitInLoopsOptions": {
2576
+ "type": "object",
2577
+ "additionalProperties": false
2578
+ },
2476
2579
  "NoBannedTypesConfiguration": {
2477
2580
  "anyOf": [
2478
2581
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -2487,6 +2590,16 @@
2487
2590
  ]
2488
2591
  },
2489
2592
  "NoBarrelFileOptions": { "type": "object", "additionalProperties": false },
2593
+ "NoBiomeFirstExceptionConfiguration": {
2594
+ "anyOf": [
2595
+ { "$ref": "#/definitions/RulePlainConfiguration" },
2596
+ { "$ref": "#/definitions/RuleWithNoBiomeFirstExceptionOptions" }
2597
+ ]
2598
+ },
2599
+ "NoBiomeFirstExceptionOptions": {
2600
+ "type": "object",
2601
+ "additionalProperties": false
2602
+ },
2490
2603
  "NoBitwiseOperatorsConfiguration": {
2491
2604
  "anyOf": [
2492
2605
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -2642,13 +2755,13 @@
2642
2755
  ]
2643
2756
  },
2644
2757
  "NoConstEnumOptions": { "type": "object", "additionalProperties": false },
2645
- "NoConstantBinaryExpressionConfiguration": {
2758
+ "NoConstantBinaryExpressionsConfiguration": {
2646
2759
  "anyOf": [
2647
2760
  { "$ref": "#/definitions/RulePlainConfiguration" },
2648
- { "$ref": "#/definitions/RuleWithNoConstantBinaryExpressionOptions" }
2761
+ { "$ref": "#/definitions/RuleWithNoConstantBinaryExpressionsOptions" }
2649
2762
  ]
2650
2763
  },
2651
- "NoConstantBinaryExpressionOptions": {
2764
+ "NoConstantBinaryExpressionsOptions": {
2652
2765
  "type": "object",
2653
2766
  "additionalProperties": false
2654
2767
  },
@@ -2748,16 +2861,6 @@
2748
2861
  "type": "object",
2749
2862
  "additionalProperties": false
2750
2863
  },
2751
- "NoDestructuredPropsConfiguration": {
2752
- "anyOf": [
2753
- { "$ref": "#/definitions/RulePlainConfiguration" },
2754
- { "$ref": "#/definitions/RuleWithNoDestructuredPropsOptions" }
2755
- ]
2756
- },
2757
- "NoDestructuredPropsOptions": {
2758
- "type": "object",
2759
- "additionalProperties": false
2760
- },
2761
2864
  "NoDistractingElementsConfiguration": {
2762
2865
  "anyOf": [
2763
2866
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -3312,13 +3415,13 @@
3312
3415
  "type": "object",
3313
3416
  "additionalProperties": false
3314
3417
  },
3315
- "NoImplicitCoercionConfiguration": {
3418
+ "NoImplicitCoercionsConfiguration": {
3316
3419
  "anyOf": [
3317
3420
  { "$ref": "#/definitions/RulePlainConfiguration" },
3318
- { "$ref": "#/definitions/RuleWithNoImplicitCoercionOptions" }
3421
+ { "$ref": "#/definitions/RuleWithNoImplicitCoercionsOptions" }
3319
3422
  ]
3320
3423
  },
3321
- "NoImplicitCoercionOptions": {
3424
+ "NoImplicitCoercionsOptions": {
3322
3425
  "type": "object",
3323
3426
  "additionalProperties": false
3324
3427
  },
@@ -3629,6 +3732,16 @@
3629
3732
  "type": "object",
3630
3733
  "additionalProperties": false
3631
3734
  },
3735
+ "NoNextAsyncClientComponentConfiguration": {
3736
+ "anyOf": [
3737
+ { "$ref": "#/definitions/RulePlainConfiguration" },
3738
+ { "$ref": "#/definitions/RuleWithNoNextAsyncClientComponentOptions" }
3739
+ ]
3740
+ },
3741
+ "NoNextAsyncClientComponentOptions": {
3742
+ "type": "object",
3743
+ "additionalProperties": false
3744
+ },
3632
3745
  "NoNodejsModulesConfiguration": {
3633
3746
  "anyOf": [
3634
3747
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -3838,13 +3951,13 @@
3838
3951
  ]
3839
3952
  },
3840
3953
  "NoReExportAllOptions": { "type": "object", "additionalProperties": false },
3841
- "NoReactPropAssignConfiguration": {
3954
+ "NoReactPropAssignmentsConfiguration": {
3842
3955
  "anyOf": [
3843
3956
  { "$ref": "#/definitions/RulePlainConfiguration" },
3844
- { "$ref": "#/definitions/RuleWithNoReactPropAssignOptions" }
3957
+ { "$ref": "#/definitions/RuleWithNoReactPropAssignmentsOptions" }
3845
3958
  ]
3846
3959
  },
3847
- "NoReactPropAssignOptions": {
3960
+ "NoReactPropAssignmentsOptions": {
3848
3961
  "type": "object",
3849
3962
  "additionalProperties": false
3850
3963
  },
@@ -3950,9 +4063,12 @@
3950
4063
  "paths": {
3951
4064
  "description": "A list of import paths that should trigger the rule.",
3952
4065
  "type": "object",
3953
- "additionalProperties": {
3954
- "$ref": "#/definitions/CustomRestrictedImport"
3955
- }
4066
+ "additionalProperties": { "$ref": "#/definitions/Paths" }
4067
+ },
4068
+ "patterns": {
4069
+ "description": "gitignore-style patterns that should trigger the rule.",
4070
+ "type": ["array", "null"],
4071
+ "items": { "$ref": "#/definitions/Patterns" }
3956
4072
  }
3957
4073
  },
3958
4074
  "additionalProperties": false
@@ -4066,6 +4182,16 @@
4066
4182
  "type": "object",
4067
4183
  "additionalProperties": false
4068
4184
  },
4185
+ "NoSolidDestructuredPropsConfiguration": {
4186
+ "anyOf": [
4187
+ { "$ref": "#/definitions/RulePlainConfiguration" },
4188
+ { "$ref": "#/definitions/RuleWithNoSolidDestructuredPropsOptions" }
4189
+ ]
4190
+ },
4191
+ "NoSolidDestructuredPropsOptions": {
4192
+ "type": "object",
4193
+ "additionalProperties": false
4194
+ },
4069
4195
  "NoSparseArrayConfiguration": {
4070
4196
  "anyOf": [
4071
4197
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -4231,13 +4357,13 @@
4231
4357
  },
4232
4358
  "additionalProperties": false
4233
4359
  },
4234
- "NoUnknownAtRuleConfiguration": {
4360
+ "NoUnknownAtRulesConfiguration": {
4235
4361
  "anyOf": [
4236
4362
  { "$ref": "#/definitions/RulePlainConfiguration" },
4237
- { "$ref": "#/definitions/RuleWithNoUnknownAtRuleOptions" }
4363
+ { "$ref": "#/definitions/RuleWithNoUnknownAtRulesOptions" }
4238
4364
  ]
4239
4365
  },
4240
- "NoUnknownAtRuleOptions": {
4366
+ "NoUnknownAtRulesOptions": {
4241
4367
  "type": "object",
4242
4368
  "additionalProperties": false
4243
4369
  },
@@ -4479,16 +4605,6 @@
4479
4605
  "type": "object",
4480
4606
  "additionalProperties": false
4481
4607
  },
4482
- "NoUselessBackrefInRegexConfiguration": {
4483
- "anyOf": [
4484
- { "$ref": "#/definitions/RulePlainConfiguration" },
4485
- { "$ref": "#/definitions/RuleWithNoUselessBackrefInRegexOptions" }
4486
- ]
4487
- },
4488
- "NoUselessBackrefInRegexOptions": {
4489
- "type": "object",
4490
- "additionalProperties": false
4491
- },
4492
4608
  "NoUselessCatchConfiguration": {
4493
4609
  "anyOf": [
4494
4610
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -4586,6 +4702,16 @@
4586
4702
  "type": "object",
4587
4703
  "additionalProperties": false
4588
4704
  },
4705
+ "NoUselessRegexBackrefsConfiguration": {
4706
+ "anyOf": [
4707
+ { "$ref": "#/definitions/RulePlainConfiguration" },
4708
+ { "$ref": "#/definitions/RuleWithNoUselessRegexBackrefsOptions" }
4709
+ ]
4710
+ },
4711
+ "NoUselessRegexBackrefsOptions": {
4712
+ "type": "object",
4713
+ "additionalProperties": false
4714
+ },
4589
4715
  "NoUselessRenameConfiguration": {
4590
4716
  "anyOf": [
4591
4717
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -4774,233 +4900,87 @@
4774
4900
  "description": "A list of rules that belong to this group",
4775
4901
  "type": "object",
4776
4902
  "properties": {
4777
- "noAwaitInLoop": {
4778
- "description": "Disallow await inside loops.",
4903
+ "noFloatingPromises": {
4904
+ "description": "Require Promise-like statements to be handled appropriately.",
4779
4905
  "anyOf": [
4780
- { "$ref": "#/definitions/NoAwaitInLoopConfiguration" },
4906
+ { "$ref": "#/definitions/NoFloatingPromisesConfiguration" },
4781
4907
  { "type": "null" }
4782
4908
  ]
4783
4909
  },
4784
- "noBitwiseOperators": {
4785
- "description": "Disallow bitwise operators.",
4910
+ "noImportCycles": {
4911
+ "description": "Prevent import cycles.",
4786
4912
  "anyOf": [
4787
- { "$ref": "#/definitions/NoBitwiseOperatorsConfiguration" },
4913
+ { "$ref": "#/definitions/NoImportCyclesConfiguration" },
4788
4914
  { "type": "null" }
4789
4915
  ]
4790
4916
  },
4791
- "noConstantBinaryExpression": {
4792
- "description": "Disallow expressions where the operation doesn't affect the value",
4917
+ "noMisusedPromises": {
4918
+ "description": "Disallow Promises to be used in places where they are almost certainly a mistake.",
4793
4919
  "anyOf": [
4794
- { "$ref": "#/definitions/NoConstantBinaryExpressionConfiguration" },
4920
+ { "$ref": "#/definitions/NoMisusedPromisesConfiguration" },
4795
4921
  { "type": "null" }
4796
4922
  ]
4797
4923
  },
4798
- "noDestructuredProps": {
4799
- "description": "Disallow destructuring props inside JSX components in Solid projects.",
4924
+ "noNextAsyncClientComponent": {
4925
+ "description": "Prevent client components from being async functions.",
4800
4926
  "anyOf": [
4801
- { "$ref": "#/definitions/NoDestructuredPropsConfiguration" },
4927
+ { "$ref": "#/definitions/NoNextAsyncClientComponentConfiguration" },
4802
4928
  { "type": "null" }
4803
4929
  ]
4804
4930
  },
4805
- "noExcessiveLinesPerFunction": {
4806
- "description": "Restrict the number of lines of code in a function.",
4931
+ "noNonNullAssertedOptionalChain": {
4932
+ "description": "Disallow non-null assertions after optional chaining expressions.",
4807
4933
  "anyOf": [
4808
4934
  {
4809
- "$ref": "#/definitions/NoExcessiveLinesPerFunctionConfiguration"
4935
+ "$ref": "#/definitions/NoNonNullAssertedOptionalChainConfiguration"
4810
4936
  },
4811
4937
  { "type": "null" }
4812
4938
  ]
4813
4939
  },
4814
- "noFloatingPromises": {
4815
- "description": "Require Promise-like statements to be handled appropriately.",
4940
+ "noQwikUseVisibleTask": {
4941
+ "description": "Disallow useVisibleTask$() functions in Qwik components.",
4816
4942
  "anyOf": [
4817
- { "$ref": "#/definitions/NoFloatingPromisesConfiguration" },
4943
+ { "$ref": "#/definitions/NoQwikUseVisibleTaskConfiguration" },
4818
4944
  { "type": "null" }
4819
4945
  ]
4820
4946
  },
4821
- "noGlobalDirnameFilename": {
4822
- "description": "Disallow the use of __dirname and __filename in the global scope.",
4947
+ "noSecrets": {
4948
+ "description": "Disallow usage of sensitive data such as API keys and tokens.",
4823
4949
  "anyOf": [
4824
- { "$ref": "#/definitions/NoGlobalDirnameFilenameConfiguration" },
4950
+ { "$ref": "#/definitions/NoSecretsConfiguration" },
4825
4951
  { "type": "null" }
4826
4952
  ]
4827
4953
  },
4828
- "noImplicitCoercion": {
4829
- "description": "Disallow shorthand type conversions.",
4954
+ "noShadow": {
4955
+ "description": "Disallow variable declarations from shadowing variables declared in the outer scope.",
4830
4956
  "anyOf": [
4831
- { "$ref": "#/definitions/NoImplicitCoercionConfiguration" },
4957
+ { "$ref": "#/definitions/NoShadowConfiguration" },
4832
4958
  { "type": "null" }
4833
4959
  ]
4834
4960
  },
4835
- "noImportCycles": {
4836
- "description": "Prevent import cycles.",
4961
+ "noUnnecessaryConditions": {
4962
+ "description": "Disallow unnecessary type-based conditions that can be statically determined as redundant.",
4837
4963
  "anyOf": [
4838
- { "$ref": "#/definitions/NoImportCyclesConfiguration" },
4964
+ { "$ref": "#/definitions/NoUnnecessaryConditionsConfiguration" },
4839
4965
  { "type": "null" }
4840
4966
  ]
4841
4967
  },
4842
- "noImportantStyles": {
4843
- "description": "Disallow the use of the !important style.",
4968
+ "noUnresolvedImports": {
4969
+ "description": "Warn when importing non-existing exports.",
4844
4970
  "anyOf": [
4845
- { "$ref": "#/definitions/NoImportantStylesConfiguration" },
4971
+ { "$ref": "#/definitions/NoUnresolvedImportsConfiguration" },
4846
4972
  { "type": "null" }
4847
4973
  ]
4848
4974
  },
4849
- "noMagicNumbers": {
4850
- "description": "Reports usage of \"magic numbers\" — numbers used directly instead of being assigned to named constants.",
4975
+ "noUselessUndefined": {
4976
+ "description": "Disallow the use of useless undefined.",
4851
4977
  "anyOf": [
4852
- { "$ref": "#/definitions/NoMagicNumbersConfiguration" },
4978
+ { "$ref": "#/definitions/NoUselessUndefinedConfiguration" },
4853
4979
  { "type": "null" }
4854
4980
  ]
4855
4981
  },
4856
- "noMisusedPromises": {
4857
- "description": "Disallow Promises to be used in places where they are almost certainly a mistake.",
4858
- "anyOf": [
4859
- { "$ref": "#/definitions/NoMisusedPromisesConfiguration" },
4860
- { "type": "null" }
4861
- ]
4862
- },
4863
- "noNestedComponentDefinitions": {
4864
- "description": "Disallows defining React components inside other components.",
4865
- "anyOf": [
4866
- {
4867
- "$ref": "#/definitions/NoNestedComponentDefinitionsConfiguration"
4868
- },
4869
- { "type": "null" }
4870
- ]
4871
- },
4872
- "noNonNullAssertedOptionalChain": {
4873
- "description": "Disallow non-null assertions after optional chaining expressions.",
4874
- "anyOf": [
4875
- {
4876
- "$ref": "#/definitions/NoNonNullAssertedOptionalChainConfiguration"
4877
- },
4878
- { "type": "null" }
4879
- ]
4880
- },
4881
- "noNoninteractiveElementInteractions": {
4882
- "description": "Disallow use event handlers on non-interactive elements.",
4883
- "anyOf": [
4884
- {
4885
- "$ref": "#/definitions/NoNoninteractiveElementInteractionsConfiguration"
4886
- },
4887
- { "type": "null" }
4888
- ]
4889
- },
4890
- "noProcessGlobal": {
4891
- "description": "Disallow the use of process global.",
4892
- "anyOf": [
4893
- { "$ref": "#/definitions/NoProcessGlobalConfiguration" },
4894
- { "type": "null" }
4895
- ]
4896
- },
4897
- "noQuickfixBiome": {
4898
- "description": "Disallow the use if quickfix.biome inside editor settings file.",
4899
- "anyOf": [
4900
- { "$ref": "#/definitions/NoQuickfixBiomeConfiguration" },
4901
- { "type": "null" }
4902
- ]
4903
- },
4904
- "noQwikUseVisibleTask": {
4905
- "description": "Disallow useVisibleTask$() functions in Qwik components.",
4906
- "anyOf": [
4907
- { "$ref": "#/definitions/NoQwikUseVisibleTaskConfiguration" },
4908
- { "type": "null" }
4909
- ]
4910
- },
4911
- "noReactPropAssign": {
4912
- "description": "Disallow assigning to React component props.",
4913
- "anyOf": [
4914
- { "$ref": "#/definitions/NoReactPropAssignConfiguration" },
4915
- { "type": "null" }
4916
- ]
4917
- },
4918
- "noRestrictedElements": {
4919
- "description": "Disallow the use of configured elements.",
4920
- "anyOf": [
4921
- { "$ref": "#/definitions/NoRestrictedElementsConfiguration" },
4922
- { "type": "null" }
4923
- ]
4924
- },
4925
- "noSecrets": {
4926
- "description": "Disallow usage of sensitive data such as API keys and tokens.",
4927
- "anyOf": [
4928
- { "$ref": "#/definitions/NoSecretsConfiguration" },
4929
- { "type": "null" }
4930
- ]
4931
- },
4932
- "noShadow": {
4933
- "description": "Disallow variable declarations from shadowing variables declared in the outer scope.",
4934
- "anyOf": [
4935
- { "$ref": "#/definitions/NoShadowConfiguration" },
4936
- { "type": "null" }
4937
- ]
4938
- },
4939
- "noTsIgnore": {
4940
- "description": "Prevents the use of the TypeScript directive @ts-ignore.",
4941
- "anyOf": [
4942
- { "$ref": "#/definitions/NoTsIgnoreConfiguration" },
4943
- { "type": "null" }
4944
- ]
4945
- },
4946
- "noUnassignedVariables": {
4947
- "description": "Disallow let or var variables that are read but never assigned.",
4948
- "anyOf": [
4949
- { "$ref": "#/definitions/NoUnassignedVariablesConfiguration" },
4950
- { "type": "null" }
4951
- ]
4952
- },
4953
- "noUnknownAtRule": {
4954
- "description": "Disallow unknown at-rules.",
4955
- "anyOf": [
4956
- { "$ref": "#/definitions/NoUnknownAtRuleConfiguration" },
4957
- { "type": "null" }
4958
- ]
4959
- },
4960
- "noUnnecessaryConditions": {
4961
- "description": "Disallow unnecessary type-based conditions that can be statically determined as redundant.",
4962
- "anyOf": [
4963
- { "$ref": "#/definitions/NoUnnecessaryConditionsConfiguration" },
4964
- { "type": "null" }
4965
- ]
4966
- },
4967
- "noUnresolvedImports": {
4968
- "description": "Warn when importing non-existing exports.",
4969
- "anyOf": [
4970
- { "$ref": "#/definitions/NoUnresolvedImportsConfiguration" },
4971
- { "type": "null" }
4972
- ]
4973
- },
4974
- "noUnwantedPolyfillio": {
4975
- "description": "Prevent duplicate polyfills from Polyfill.io.",
4976
- "anyOf": [
4977
- { "$ref": "#/definitions/NoUnwantedPolyfillioConfiguration" },
4978
- { "type": "null" }
4979
- ]
4980
- },
4981
- "noUselessBackrefInRegex": {
4982
- "description": "Disallow useless backreferences in regular expression literals that always match an empty string.",
4983
- "anyOf": [
4984
- { "$ref": "#/definitions/NoUselessBackrefInRegexConfiguration" },
4985
- { "type": "null" }
4986
- ]
4987
- },
4988
- "noUselessEscapeInString": {
4989
- "description": "Disallow unnecessary escapes in string literals.",
4990
- "anyOf": [
4991
- { "$ref": "#/definitions/NoUselessEscapeInStringConfiguration" },
4992
- { "type": "null" }
4993
- ]
4994
- },
4995
- "noUselessUndefined": {
4996
- "description": "Disallow the use of useless undefined.",
4997
- "anyOf": [
4998
- { "$ref": "#/definitions/NoUselessUndefinedConfiguration" },
4999
- { "type": "null" }
5000
- ]
5001
- },
5002
- "noVueDataObjectDeclaration": {
5003
- "description": "Enforce that Vue component data options are declared as functions.",
4982
+ "noVueDataObjectDeclaration": {
4983
+ "description": "Enforce that Vue component data options are declared as functions.",
5004
4984
  "anyOf": [
5005
4985
  { "$ref": "#/definitions/NoVueDataObjectDeclarationConfiguration" },
5006
4986
  { "type": "null" }
@@ -5024,13 +5004,6 @@
5024
5004
  "description": "It enables the recommended rules for this group",
5025
5005
  "type": ["boolean", "null"]
5026
5006
  },
5027
- "useAdjacentGetterSetter": {
5028
- "description": "Enforce that getters and setters for the same property are adjacent in class and object definitions.",
5029
- "anyOf": [
5030
- { "$ref": "#/definitions/UseAdjacentGetterSetterConfiguration" },
5031
- { "type": "null" }
5032
- ]
5033
- },
5034
5007
  "useAnchorHref": {
5035
5008
  "description": "Enforces href attribute for \\<a> elements.",
5036
5009
  "anyOf": [
@@ -5038,22 +5011,6 @@
5038
5011
  { "type": "null" }
5039
5012
  ]
5040
5013
  },
5041
- "useConsistentObjectDefinition": {
5042
- "description": "Require the consistent declaration of object literals. Defaults to explicit definitions.",
5043
- "anyOf": [
5044
- {
5045
- "$ref": "#/definitions/UseConsistentObjectDefinitionConfiguration"
5046
- },
5047
- { "type": "null" }
5048
- ]
5049
- },
5050
- "useConsistentResponse": {
5051
- "description": "Use static Response methods instead of new Response() constructor when possible.",
5052
- "anyOf": [
5053
- { "$ref": "#/definitions/UseConsistentResponseConfiguration" },
5054
- { "type": "null" }
5055
- ]
5056
- },
5057
5014
  "useConsistentTypeDefinitions": {
5058
5015
  "description": "Enforce type definitions to consistently use either interface or type.",
5059
5016
  "anyOf": [
@@ -5077,27 +5034,6 @@
5077
5034
  { "type": "null" }
5078
5035
  ]
5079
5036
  },
5080
- "useExportsLast": {
5081
- "description": "Require that all exports are declared after all non-export statements.",
5082
- "anyOf": [
5083
- { "$ref": "#/definitions/UseExportsLastConfiguration" },
5084
- { "type": "null" }
5085
- ]
5086
- },
5087
- "useForComponent": {
5088
- "description": "Enforce using Solid's \\<For /> component for mapping an array to JSX elements.",
5089
- "anyOf": [
5090
- { "$ref": "#/definitions/UseForComponentConfiguration" },
5091
- { "type": "null" }
5092
- ]
5093
- },
5094
- "useGoogleFontPreconnect": {
5095
- "description": "Ensure the preconnect attribute is used when using Google Fonts.",
5096
- "anyOf": [
5097
- { "$ref": "#/definitions/UseGoogleFontPreconnectConfiguration" },
5098
- { "type": "null" }
5099
- ]
5100
- },
5101
5037
  "useImageSize": {
5102
5038
  "description": "Enforces that \\<img> elements have both width and height attributes.",
5103
5039
  "anyOf": [
@@ -5105,59 +5041,10 @@
5105
5041
  { "type": "null" }
5106
5042
  ]
5107
5043
  },
5108
- "useIndexOf": {
5109
- "description": "Prefer Array#{indexOf,lastIndexOf}() over Array#{findIndex,findLastIndex}() when looking for the index of an item.",
5110
- "anyOf": [
5111
- { "$ref": "#/definitions/UseIndexOfConfiguration" },
5112
- { "type": "null" }
5113
- ]
5114
- },
5115
- "useIterableCallbackReturn": {
5116
- "description": "Enforce consistent return values in iterable callbacks.",
5044
+ "useMaxParams": {
5045
+ "description": "Enforce a maximum number of parameters in function definitions.",
5117
5046
  "anyOf": [
5118
- { "$ref": "#/definitions/UseIterableCallbackReturnConfiguration" },
5119
- { "type": "null" }
5120
- ]
5121
- },
5122
- "useJsonImportAttribute": {
5123
- "description": "Enforces the use of with { type: \"json\" } for JSON module imports.",
5124
- "anyOf": [
5125
- { "$ref": "#/definitions/UseJsonImportAttributeConfiguration" },
5126
- { "type": "null" }
5127
- ]
5128
- },
5129
- "useNamedOperation": {
5130
- "description": "Enforce specifying the name of GraphQL operations.",
5131
- "anyOf": [
5132
- { "$ref": "#/definitions/UseNamedOperationConfiguration" },
5133
- { "type": "null" }
5134
- ]
5135
- },
5136
- "useNamingConvention": {
5137
- "description": "Validates that all enum values are capitalized.",
5138
- "anyOf": [
5139
- { "$ref": "#/definitions/UseNamingConventionConfiguration" },
5140
- { "type": "null" }
5141
- ]
5142
- },
5143
- "useNumericSeparators": {
5144
- "description": "Enforce the use of numeric separators in numeric literals.",
5145
- "anyOf": [
5146
- { "$ref": "#/definitions/UseNumericSeparatorsConfiguration" },
5147
- { "type": "null" }
5148
- ]
5149
- },
5150
- "useObjectSpread": {
5151
- "description": "Prefer object spread over Object.assign() when constructing new objects.",
5152
- "anyOf": [
5153
- { "$ref": "#/definitions/UseObjectSpreadConfiguration" },
5154
- { "type": "null" }
5155
- ]
5156
- },
5157
- "useParseIntRadix": {
5158
- "description": "Enforce the consistent use of the radix argument when using parseInt().",
5159
- "anyOf": [
5160
- { "$ref": "#/definitions/UseParseIntRadixConfiguration" },
5047
+ { "$ref": "#/definitions/UseMaxParamsConfiguration" },
5161
5048
  { "type": "null" }
5162
5049
  ]
5163
5050
  },
@@ -5175,47 +5062,12 @@
5175
5062
  { "type": "null" }
5176
5063
  ]
5177
5064
  },
5178
- "useReadonlyClassProperties": {
5179
- "description": "Enforce marking members as readonly if they are never modified outside the constructor.",
5180
- "anyOf": [
5181
- { "$ref": "#/definitions/UseReadonlyClassPropertiesConfiguration" },
5182
- { "type": "null" }
5183
- ]
5184
- },
5185
- "useSingleJsDocAsterisk": {
5186
- "description": "Enforce JSDoc comment lines to start with a single asterisk, except for the first one.",
5187
- "anyOf": [
5188
- { "$ref": "#/definitions/UseSingleJsDocAsteriskConfiguration" },
5189
- { "type": "null" }
5190
- ]
5191
- },
5192
5065
  "useSortedClasses": {
5193
5066
  "description": "Enforce the sorting of CSS utility classes.",
5194
5067
  "anyOf": [
5195
5068
  { "$ref": "#/definitions/UseSortedClassesConfiguration" },
5196
5069
  { "type": "null" }
5197
5070
  ]
5198
- },
5199
- "useSymbolDescription": {
5200
- "description": "Require a description parameter for the Symbol().",
5201
- "anyOf": [
5202
- { "$ref": "#/definitions/UseSymbolDescriptionConfiguration" },
5203
- { "type": "null" }
5204
- ]
5205
- },
5206
- "useUnifiedTypeSignature": {
5207
- "description": "Disallow overload signatures that can be unified into a single signature.",
5208
- "anyOf": [
5209
- { "$ref": "#/definitions/UseUnifiedTypeSignatureConfiguration" },
5210
- { "type": "null" }
5211
- ]
5212
- },
5213
- "useUniqueElementIds": {
5214
- "description": "Prevent the usage of static string literal id attribute on elements.",
5215
- "anyOf": [
5216
- { "$ref": "#/definitions/UseUniqueElementIdsConfiguration" },
5217
- { "type": "null" }
5218
- ]
5219
5071
  }
5220
5072
  },
5221
5073
  "additionalProperties": false
@@ -5230,12 +5082,30 @@
5230
5082
  { "description": "`{foo}`", "type": "string", "enum": ["shorthand"] }
5231
5083
  ]
5232
5084
  },
5085
+ "OperatorLinebreak": {
5086
+ "oneOf": [
5087
+ {
5088
+ "description": "The operator is placed after the expression",
5089
+ "type": "string",
5090
+ "enum": ["after"]
5091
+ },
5092
+ {
5093
+ "description": "The operator is placed before the expression",
5094
+ "type": "string",
5095
+ "enum": ["before"]
5096
+ }
5097
+ ]
5098
+ },
5233
5099
  "OrganizeImportsOptions": {
5234
5100
  "type": "object",
5235
5101
  "properties": {
5236
5102
  "groups": {
5237
5103
  "default": [],
5238
5104
  "allOf": [{ "$ref": "#/definitions/ImportGroups" }]
5105
+ },
5106
+ "identifierOrder": {
5107
+ "default": "natural",
5108
+ "allOf": [{ "$ref": "#/definitions/SortOrder" }]
5239
5109
  }
5240
5110
  },
5241
5111
  "additionalProperties": false
@@ -5435,6 +5305,65 @@
5435
5305
  "type": "array",
5436
5306
  "items": { "$ref": "#/definitions/OverridePattern" }
5437
5307
  },
5308
+ "PathOptions": {
5309
+ "type": "object",
5310
+ "properties": {
5311
+ "allowImportNames": {
5312
+ "description": "Names of the exported members that allowed to be not be used.",
5313
+ "type": "array",
5314
+ "items": { "type": "string" }
5315
+ },
5316
+ "importNames": {
5317
+ "description": "Names of the exported members that should not be used.",
5318
+ "type": "array",
5319
+ "items": { "type": "string" }
5320
+ },
5321
+ "message": {
5322
+ "description": "The message to display when this module is imported.",
5323
+ "type": "string"
5324
+ }
5325
+ },
5326
+ "additionalProperties": false
5327
+ },
5328
+ "Paths": {
5329
+ "anyOf": [
5330
+ {
5331
+ "description": "The message to display when this module is imported.",
5332
+ "type": "string"
5333
+ },
5334
+ {
5335
+ "description": "Additional options to configure the message and allowed/disallowed import names.",
5336
+ "allOf": [{ "$ref": "#/definitions/PathOptions" }]
5337
+ }
5338
+ ]
5339
+ },
5340
+ "PatternOptions": {
5341
+ "type": "object",
5342
+ "properties": {
5343
+ "group": {
5344
+ "description": "An array of gitignore-style patterns.",
5345
+ "anyOf": [
5346
+ { "$ref": "#/definitions/SourcesMatcher" },
5347
+ { "type": "null" }
5348
+ ]
5349
+ },
5350
+ "importNamePattern": {
5351
+ "description": "A regex pattern for import names to forbid within the matched modules.",
5352
+ "anyOf": [{ "$ref": "#/definitions/Regex" }, { "type": "null" }]
5353
+ },
5354
+ "invertImportNamePattern": {
5355
+ "description": "If true, the matched patterns in the importNamePattern will be allowed. Defaults to `false`.",
5356
+ "default": false,
5357
+ "type": "boolean"
5358
+ },
5359
+ "message": {
5360
+ "description": "A custom message for diagnostics related to this pattern.",
5361
+ "type": ["string", "null"]
5362
+ }
5363
+ },
5364
+ "additionalProperties": false
5365
+ },
5366
+ "Patterns": { "anyOf": [{ "$ref": "#/definitions/PatternOptions" }] },
5438
5367
  "Performance": {
5439
5368
  "description": "A list of rules that belong to this group",
5440
5369
  "type": "object",
@@ -5446,6 +5375,13 @@
5446
5375
  { "type": "null" }
5447
5376
  ]
5448
5377
  },
5378
+ "noAwaitInLoops": {
5379
+ "description": "Disallow await inside loops.",
5380
+ "anyOf": [
5381
+ { "$ref": "#/definitions/NoAwaitInLoopsConfiguration" },
5382
+ { "type": "null" }
5383
+ ]
5384
+ },
5449
5385
  "noBarrelFile": {
5450
5386
  "description": "Disallow the use of barrel file.",
5451
5387
  "anyOf": [
@@ -5476,24 +5412,45 @@
5476
5412
  { "type": "null" }
5477
5413
  ]
5478
5414
  },
5479
- "noNamespaceImport": {
5480
- "description": "Disallow the use of namespace imports.",
5415
+ "noNamespaceImport": {
5416
+ "description": "Disallow the use of namespace imports.",
5417
+ "anyOf": [
5418
+ { "$ref": "#/definitions/NoNamespaceImportConfiguration" },
5419
+ { "type": "null" }
5420
+ ]
5421
+ },
5422
+ "noReExportAll": {
5423
+ "description": "Avoid re-export all.",
5424
+ "anyOf": [
5425
+ { "$ref": "#/definitions/NoReExportAllConfiguration" },
5426
+ { "type": "null" }
5427
+ ]
5428
+ },
5429
+ "noUnwantedPolyfillio": {
5430
+ "description": "Prevent duplicate polyfills from Polyfill.io.",
5431
+ "anyOf": [
5432
+ { "$ref": "#/definitions/NoUnwantedPolyfillioConfiguration" },
5433
+ { "type": "null" }
5434
+ ]
5435
+ },
5436
+ "recommended": {
5437
+ "description": "It enables the recommended rules for this group",
5438
+ "type": ["boolean", "null"]
5439
+ },
5440
+ "useGoogleFontPreconnect": {
5441
+ "description": "Ensure the preconnect attribute is used when using Google Fonts.",
5481
5442
  "anyOf": [
5482
- { "$ref": "#/definitions/NoNamespaceImportConfiguration" },
5443
+ { "$ref": "#/definitions/UseGoogleFontPreconnectConfiguration" },
5483
5444
  { "type": "null" }
5484
5445
  ]
5485
5446
  },
5486
- "noReExportAll": {
5487
- "description": "Avoid re-export all.",
5447
+ "useSolidForComponent": {
5448
+ "description": "Enforce using Solid's \\<For /> component for mapping an array to JSX elements.",
5488
5449
  "anyOf": [
5489
- { "$ref": "#/definitions/NoReExportAllConfiguration" },
5450
+ { "$ref": "#/definitions/UseSolidForComponentConfiguration" },
5490
5451
  { "type": "null" }
5491
5452
  ]
5492
5453
  },
5493
- "recommended": {
5494
- "description": "It enables the recommended rules for this group",
5495
- "type": ["boolean", "null"]
5496
- },
5497
5454
  "useTopLevelRegex": {
5498
5455
  "description": "Require regex literals to be declared at the top level.",
5499
5456
  "anyOf": [
@@ -5922,7 +5879,7 @@
5922
5879
  },
5923
5880
  "additionalProperties": false
5924
5881
  },
5925
- "RuleWithNoAwaitInLoopOptions": {
5882
+ "RuleWithNoAwaitInLoopsOptions": {
5926
5883
  "type": "object",
5927
5884
  "required": ["level"],
5928
5885
  "properties": {
@@ -5932,7 +5889,7 @@
5932
5889
  },
5933
5890
  "options": {
5934
5891
  "description": "Rule's options",
5935
- "allOf": [{ "$ref": "#/definitions/NoAwaitInLoopOptions" }]
5892
+ "allOf": [{ "$ref": "#/definitions/NoAwaitInLoopsOptions" }]
5936
5893
  }
5937
5894
  },
5938
5895
  "additionalProperties": false
@@ -5971,6 +5928,25 @@
5971
5928
  },
5972
5929
  "additionalProperties": false
5973
5930
  },
5931
+ "RuleWithNoBiomeFirstExceptionOptions": {
5932
+ "type": "object",
5933
+ "required": ["level"],
5934
+ "properties": {
5935
+ "fix": {
5936
+ "description": "The kind of the code actions emitted by the rule",
5937
+ "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
5938
+ },
5939
+ "level": {
5940
+ "description": "The severity of the emitted diagnostics by the rule",
5941
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
5942
+ },
5943
+ "options": {
5944
+ "description": "Rule's options",
5945
+ "allOf": [{ "$ref": "#/definitions/NoBiomeFirstExceptionOptions" }]
5946
+ }
5947
+ },
5948
+ "additionalProperties": false
5949
+ },
5974
5950
  "RuleWithNoBitwiseOperatorsOptions": {
5975
5951
  "type": "object",
5976
5952
  "required": ["level"],
@@ -6209,7 +6185,7 @@
6209
6185
  },
6210
6186
  "additionalProperties": false
6211
6187
  },
6212
- "RuleWithNoConstantBinaryExpressionOptions": {
6188
+ "RuleWithNoConstantBinaryExpressionsOptions": {
6213
6189
  "type": "object",
6214
6190
  "required": ["level"],
6215
6191
  "properties": {
@@ -6220,7 +6196,7 @@
6220
6196
  "options": {
6221
6197
  "description": "Rule's options",
6222
6198
  "allOf": [
6223
- { "$ref": "#/definitions/NoConstantBinaryExpressionOptions" }
6199
+ { "$ref": "#/definitions/NoConstantBinaryExpressionsOptions" }
6224
6200
  ]
6225
6201
  }
6226
6202
  },
@@ -6398,21 +6374,6 @@
6398
6374
  },
6399
6375
  "additionalProperties": false
6400
6376
  },
6401
- "RuleWithNoDestructuredPropsOptions": {
6402
- "type": "object",
6403
- "required": ["level"],
6404
- "properties": {
6405
- "level": {
6406
- "description": "The severity of the emitted diagnostics by the rule",
6407
- "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
6408
- },
6409
- "options": {
6410
- "description": "Rule's options",
6411
- "allOf": [{ "$ref": "#/definitions/NoDestructuredPropsOptions" }]
6412
- }
6413
- },
6414
- "additionalProperties": false
6415
- },
6416
6377
  "RuleWithNoDistractingElementsOptions": {
6417
6378
  "type": "object",
6418
6379
  "required": ["level"],
@@ -7276,7 +7237,7 @@
7276
7237
  },
7277
7238
  "additionalProperties": false
7278
7239
  },
7279
- "RuleWithNoImplicitCoercionOptions": {
7240
+ "RuleWithNoImplicitCoercionsOptions": {
7280
7241
  "type": "object",
7281
7242
  "required": ["level"],
7282
7243
  "properties": {
@@ -7290,7 +7251,7 @@
7290
7251
  },
7291
7252
  "options": {
7292
7253
  "description": "Rule's options",
7293
- "allOf": [{ "$ref": "#/definitions/NoImplicitCoercionOptions" }]
7254
+ "allOf": [{ "$ref": "#/definitions/NoImplicitCoercionsOptions" }]
7294
7255
  }
7295
7256
  },
7296
7257
  "additionalProperties": false
@@ -7769,6 +7730,23 @@
7769
7730
  },
7770
7731
  "additionalProperties": false
7771
7732
  },
7733
+ "RuleWithNoNextAsyncClientComponentOptions": {
7734
+ "type": "object",
7735
+ "required": ["level"],
7736
+ "properties": {
7737
+ "level": {
7738
+ "description": "The severity of the emitted diagnostics by the rule",
7739
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
7740
+ },
7741
+ "options": {
7742
+ "description": "Rule's options",
7743
+ "allOf": [
7744
+ { "$ref": "#/definitions/NoNextAsyncClientComponentOptions" }
7745
+ ]
7746
+ }
7747
+ },
7748
+ "additionalProperties": false
7749
+ },
7772
7750
  "RuleWithNoNodejsModulesOptions": {
7773
7751
  "type": "object",
7774
7752
  "required": ["level"],
@@ -8100,7 +8078,7 @@
8100
8078
  },
8101
8079
  "additionalProperties": false
8102
8080
  },
8103
- "RuleWithNoReactPropAssignOptions": {
8081
+ "RuleWithNoReactPropAssignmentsOptions": {
8104
8082
  "type": "object",
8105
8083
  "required": ["level"],
8106
8084
  "properties": {
@@ -8110,7 +8088,7 @@
8110
8088
  },
8111
8089
  "options": {
8112
8090
  "description": "Rule's options",
8113
- "allOf": [{ "$ref": "#/definitions/NoReactPropAssignOptions" }]
8091
+ "allOf": [{ "$ref": "#/definitions/NoReactPropAssignmentsOptions" }]
8114
8092
  }
8115
8093
  },
8116
8094
  "additionalProperties": false
@@ -8426,6 +8404,21 @@
8426
8404
  },
8427
8405
  "additionalProperties": false
8428
8406
  },
8407
+ "RuleWithNoSolidDestructuredPropsOptions": {
8408
+ "type": "object",
8409
+ "required": ["level"],
8410
+ "properties": {
8411
+ "level": {
8412
+ "description": "The severity of the emitted diagnostics by the rule",
8413
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
8414
+ },
8415
+ "options": {
8416
+ "description": "Rule's options",
8417
+ "allOf": [{ "$ref": "#/definitions/NoSolidDestructuredPropsOptions" }]
8418
+ }
8419
+ },
8420
+ "additionalProperties": false
8421
+ },
8429
8422
  "RuleWithNoSparseArrayOptions": {
8430
8423
  "type": "object",
8431
8424
  "required": ["level"],
@@ -8679,7 +8672,7 @@
8679
8672
  },
8680
8673
  "additionalProperties": false
8681
8674
  },
8682
- "RuleWithNoUnknownAtRuleOptions": {
8675
+ "RuleWithNoUnknownAtRulesOptions": {
8683
8676
  "type": "object",
8684
8677
  "required": ["level"],
8685
8678
  "properties": {
@@ -8689,7 +8682,7 @@
8689
8682
  },
8690
8683
  "options": {
8691
8684
  "description": "Rule's options",
8692
- "allOf": [{ "$ref": "#/definitions/NoUnknownAtRuleOptions" }]
8685
+ "allOf": [{ "$ref": "#/definitions/NoUnknownAtRulesOptions" }]
8693
8686
  }
8694
8687
  },
8695
8688
  "additionalProperties": false
@@ -9075,21 +9068,6 @@
9075
9068
  },
9076
9069
  "additionalProperties": false
9077
9070
  },
9078
- "RuleWithNoUselessBackrefInRegexOptions": {
9079
- "type": "object",
9080
- "required": ["level"],
9081
- "properties": {
9082
- "level": {
9083
- "description": "The severity of the emitted diagnostics by the rule",
9084
- "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
9085
- },
9086
- "options": {
9087
- "description": "Rule's options",
9088
- "allOf": [{ "$ref": "#/definitions/NoUselessBackrefInRegexOptions" }]
9089
- }
9090
- },
9091
- "additionalProperties": false
9092
- },
9093
9071
  "RuleWithNoUselessCatchOptions": {
9094
9072
  "type": "object",
9095
9073
  "required": ["level"],
@@ -9282,6 +9260,21 @@
9282
9260
  },
9283
9261
  "additionalProperties": false
9284
9262
  },
9263
+ "RuleWithNoUselessRegexBackrefsOptions": {
9264
+ "type": "object",
9265
+ "required": ["level"],
9266
+ "properties": {
9267
+ "level": {
9268
+ "description": "The severity of the emitted diagnostics by the rule",
9269
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
9270
+ },
9271
+ "options": {
9272
+ "description": "Rule's options",
9273
+ "allOf": [{ "$ref": "#/definitions/NoUselessRegexBackrefsOptions" }]
9274
+ }
9275
+ },
9276
+ "additionalProperties": false
9277
+ },
9285
9278
  "RuleWithNoUselessRenameOptions": {
9286
9279
  "type": "object",
9287
9280
  "required": ["level"],
@@ -9621,21 +9614,6 @@
9621
9614
  },
9622
9615
  "additionalProperties": false
9623
9616
  },
9624
- "RuleWithUseAdjacentGetterSetterOptions": {
9625
- "type": "object",
9626
- "required": ["level"],
9627
- "properties": {
9628
- "level": {
9629
- "description": "The severity of the emitted diagnostics by the rule",
9630
- "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
9631
- },
9632
- "options": {
9633
- "description": "Rule's options",
9634
- "allOf": [{ "$ref": "#/definitions/UseAdjacentGetterSetterOptions" }]
9635
- }
9636
- },
9637
- "additionalProperties": false
9638
- },
9639
9617
  "RuleWithUseAdjacentOverloadSignaturesOptions": {
9640
9618
  "type": "object",
9641
9619
  "required": ["level"],
@@ -9848,6 +9826,25 @@
9848
9826
  },
9849
9827
  "additionalProperties": false
9850
9828
  },
9829
+ "RuleWithUseBiomeIgnoreFolderOptions": {
9830
+ "type": "object",
9831
+ "required": ["level"],
9832
+ "properties": {
9833
+ "fix": {
9834
+ "description": "The kind of the code actions emitted by the rule",
9835
+ "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
9836
+ },
9837
+ "level": {
9838
+ "description": "The severity of the emitted diagnostics by the rule",
9839
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
9840
+ },
9841
+ "options": {
9842
+ "description": "Rule's options",
9843
+ "allOf": [{ "$ref": "#/definitions/UseBiomeIgnoreFolderOptions" }]
9844
+ }
9845
+ },
9846
+ "additionalProperties": false
9847
+ },
9851
9848
  "RuleWithUseBlockStatementsOptions": {
9852
9849
  "type": "object",
9853
9850
  "required": ["level"],
@@ -10013,7 +10010,7 @@
10013
10010
  },
10014
10011
  "additionalProperties": false
10015
10012
  },
10016
- "RuleWithUseConsistentObjectDefinitionOptions": {
10013
+ "RuleWithUseConsistentObjectDefinitionsOptions": {
10017
10014
  "type": "object",
10018
10015
  "required": ["level"],
10019
10016
  "properties": {
@@ -10028,31 +10025,12 @@
10028
10025
  "options": {
10029
10026
  "description": "Rule's options",
10030
10027
  "allOf": [
10031
- { "$ref": "#/definitions/UseConsistentObjectDefinitionOptions" }
10028
+ { "$ref": "#/definitions/UseConsistentObjectDefinitionsOptions" }
10032
10029
  ]
10033
10030
  }
10034
10031
  },
10035
10032
  "additionalProperties": false
10036
10033
  },
10037
- "RuleWithUseConsistentResponseOptions": {
10038
- "type": "object",
10039
- "required": ["level"],
10040
- "properties": {
10041
- "fix": {
10042
- "description": "The kind of the code actions emitted by the rule",
10043
- "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
10044
- },
10045
- "level": {
10046
- "description": "The severity of the emitted diagnostics by the rule",
10047
- "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
10048
- },
10049
- "options": {
10050
- "description": "Rule's options",
10051
- "allOf": [{ "$ref": "#/definitions/UseConsistentResponseOptions" }]
10052
- }
10053
- },
10054
- "additionalProperties": false
10055
- },
10056
10034
  "RuleWithUseConsistentTypeDefinitionsOptions": {
10057
10035
  "type": "object",
10058
10036
  "required": ["level"],
@@ -10390,21 +10368,6 @@
10390
10368
  },
10391
10369
  "additionalProperties": false
10392
10370
  },
10393
- "RuleWithUseForComponentOptions": {
10394
- "type": "object",
10395
- "required": ["level"],
10396
- "properties": {
10397
- "level": {
10398
- "description": "The severity of the emitted diagnostics by the rule",
10399
- "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
10400
- },
10401
- "options": {
10402
- "description": "Rule's options",
10403
- "allOf": [{ "$ref": "#/definitions/UseForComponentOptions" }]
10404
- }
10405
- },
10406
- "additionalProperties": false
10407
- },
10408
10371
  "RuleWithUseForOfOptions": {
10409
10372
  "type": "object",
10410
10373
  "required": ["level"],
@@ -10503,6 +10466,59 @@
10503
10466
  },
10504
10467
  "additionalProperties": false
10505
10468
  },
10469
+ "RuleWithUseGraphqlNamedOperationsOptions": {
10470
+ "type": "object",
10471
+ "required": ["level"],
10472
+ "properties": {
10473
+ "fix": {
10474
+ "description": "The kind of the code actions emitted by the rule",
10475
+ "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
10476
+ },
10477
+ "level": {
10478
+ "description": "The severity of the emitted diagnostics by the rule",
10479
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
10480
+ },
10481
+ "options": {
10482
+ "description": "Rule's options",
10483
+ "allOf": [
10484
+ { "$ref": "#/definitions/UseGraphqlNamedOperationsOptions" }
10485
+ ]
10486
+ }
10487
+ },
10488
+ "additionalProperties": false
10489
+ },
10490
+ "RuleWithUseGraphqlNamingConventionOptions": {
10491
+ "type": "object",
10492
+ "required": ["level"],
10493
+ "properties": {
10494
+ "level": {
10495
+ "description": "The severity of the emitted diagnostics by the rule",
10496
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
10497
+ },
10498
+ "options": {
10499
+ "description": "Rule's options",
10500
+ "allOf": [
10501
+ { "$ref": "#/definitions/UseGraphqlNamingConventionOptions" }
10502
+ ]
10503
+ }
10504
+ },
10505
+ "additionalProperties": false
10506
+ },
10507
+ "RuleWithUseGroupedAccessorPairsOptions": {
10508
+ "type": "object",
10509
+ "required": ["level"],
10510
+ "properties": {
10511
+ "level": {
10512
+ "description": "The severity of the emitted diagnostics by the rule",
10513
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
10514
+ },
10515
+ "options": {
10516
+ "description": "Rule's options",
10517
+ "allOf": [{ "$ref": "#/definitions/UseGroupedAccessorPairsOptions" }]
10518
+ }
10519
+ },
10520
+ "additionalProperties": false
10521
+ },
10506
10522
  "RuleWithUseGuardForInOptions": {
10507
10523
  "type": "object",
10508
10524
  "required": ["level"],
@@ -10705,7 +10721,7 @@
10705
10721
  },
10706
10722
  "additionalProperties": false
10707
10723
  },
10708
- "RuleWithUseJsonImportAttributeOptions": {
10724
+ "RuleWithUseJsonImportAttributesOptions": {
10709
10725
  "type": "object",
10710
10726
  "required": ["level"],
10711
10727
  "properties": {
@@ -10719,7 +10735,7 @@
10719
10735
  },
10720
10736
  "options": {
10721
10737
  "description": "Rule's options",
10722
- "allOf": [{ "$ref": "#/definitions/UseJsonImportAttributeOptions" }]
10738
+ "allOf": [{ "$ref": "#/definitions/UseJsonImportAttributesOptions" }]
10723
10739
  }
10724
10740
  },
10725
10741
  "additionalProperties": false
@@ -10803,7 +10819,7 @@
10803
10819
  },
10804
10820
  "additionalProperties": false
10805
10821
  },
10806
- "RuleWithUseMediaCaptionOptions": {
10822
+ "RuleWithUseMaxParamsOptions": {
10807
10823
  "type": "object",
10808
10824
  "required": ["level"],
10809
10825
  "properties": {
@@ -10813,26 +10829,22 @@
10813
10829
  },
10814
10830
  "options": {
10815
10831
  "description": "Rule's options",
10816
- "allOf": [{ "$ref": "#/definitions/UseMediaCaptionOptions" }]
10832
+ "allOf": [{ "$ref": "#/definitions/UseMaxParamsOptions" }]
10817
10833
  }
10818
10834
  },
10819
10835
  "additionalProperties": false
10820
10836
  },
10821
- "RuleWithUseNamedOperationOptions": {
10837
+ "RuleWithUseMediaCaptionOptions": {
10822
10838
  "type": "object",
10823
10839
  "required": ["level"],
10824
10840
  "properties": {
10825
- "fix": {
10826
- "description": "The kind of the code actions emitted by the rule",
10827
- "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
10828
- },
10829
10841
  "level": {
10830
10842
  "description": "The severity of the emitted diagnostics by the rule",
10831
10843
  "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
10832
10844
  },
10833
10845
  "options": {
10834
10846
  "description": "Rule's options",
10835
- "allOf": [{ "$ref": "#/definitions/UseNamedOperationOptions" }]
10847
+ "allOf": [{ "$ref": "#/definitions/UseMediaCaptionOptions" }]
10836
10848
  }
10837
10849
  },
10838
10850
  "additionalProperties": false
@@ -10860,6 +10872,10 @@
10860
10872
  "type": "object",
10861
10873
  "required": ["level"],
10862
10874
  "properties": {
10875
+ "fix": {
10876
+ "description": "The kind of the code actions emitted by the rule",
10877
+ "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
10878
+ },
10863
10879
  "level": {
10864
10880
  "description": "The severity of the emitted diagnostics by the rule",
10865
10881
  "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
@@ -11169,7 +11185,45 @@
11169
11185
  },
11170
11186
  "additionalProperties": false
11171
11187
  },
11172
- "RuleWithUseShorthandFunctionTypeOptions": {
11188
+ "RuleWithUseShorthandFunctionTypeOptions": {
11189
+ "type": "object",
11190
+ "required": ["level"],
11191
+ "properties": {
11192
+ "fix": {
11193
+ "description": "The kind of the code actions emitted by the rule",
11194
+ "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
11195
+ },
11196
+ "level": {
11197
+ "description": "The severity of the emitted diagnostics by the rule",
11198
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
11199
+ },
11200
+ "options": {
11201
+ "description": "Rule's options",
11202
+ "allOf": [{ "$ref": "#/definitions/UseShorthandFunctionTypeOptions" }]
11203
+ }
11204
+ },
11205
+ "additionalProperties": false
11206
+ },
11207
+ "RuleWithUseSimpleNumberKeysOptions": {
11208
+ "type": "object",
11209
+ "required": ["level"],
11210
+ "properties": {
11211
+ "fix": {
11212
+ "description": "The kind of the code actions emitted by the rule",
11213
+ "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
11214
+ },
11215
+ "level": {
11216
+ "description": "The severity of the emitted diagnostics by the rule",
11217
+ "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
11218
+ },
11219
+ "options": {
11220
+ "description": "Rule's options",
11221
+ "allOf": [{ "$ref": "#/definitions/UseSimpleNumberKeysOptions" }]
11222
+ }
11223
+ },
11224
+ "additionalProperties": false
11225
+ },
11226
+ "RuleWithUseSimplifiedLogicExpressionOptions": {
11173
11227
  "type": "object",
11174
11228
  "required": ["level"],
11175
11229
  "properties": {
@@ -11183,12 +11237,14 @@
11183
11237
  },
11184
11238
  "options": {
11185
11239
  "description": "Rule's options",
11186
- "allOf": [{ "$ref": "#/definitions/UseShorthandFunctionTypeOptions" }]
11240
+ "allOf": [
11241
+ { "$ref": "#/definitions/UseSimplifiedLogicExpressionOptions" }
11242
+ ]
11187
11243
  }
11188
11244
  },
11189
11245
  "additionalProperties": false
11190
11246
  },
11191
- "RuleWithUseSimpleNumberKeysOptions": {
11247
+ "RuleWithUseSingleJsDocAsteriskOptions": {
11192
11248
  "type": "object",
11193
11249
  "required": ["level"],
11194
11250
  "properties": {
@@ -11202,12 +11258,12 @@
11202
11258
  },
11203
11259
  "options": {
11204
11260
  "description": "Rule's options",
11205
- "allOf": [{ "$ref": "#/definitions/UseSimpleNumberKeysOptions" }]
11261
+ "allOf": [{ "$ref": "#/definitions/UseSingleJsDocAsteriskOptions" }]
11206
11262
  }
11207
11263
  },
11208
11264
  "additionalProperties": false
11209
11265
  },
11210
- "RuleWithUseSimplifiedLogicExpressionOptions": {
11266
+ "RuleWithUseSingleVarDeclaratorOptions": {
11211
11267
  "type": "object",
11212
11268
  "required": ["level"],
11213
11269
  "properties": {
@@ -11221,33 +11277,27 @@
11221
11277
  },
11222
11278
  "options": {
11223
11279
  "description": "Rule's options",
11224
- "allOf": [
11225
- { "$ref": "#/definitions/UseSimplifiedLogicExpressionOptions" }
11226
- ]
11280
+ "allOf": [{ "$ref": "#/definitions/UseSingleVarDeclaratorOptions" }]
11227
11281
  }
11228
11282
  },
11229
11283
  "additionalProperties": false
11230
11284
  },
11231
- "RuleWithUseSingleJsDocAsteriskOptions": {
11285
+ "RuleWithUseSolidForComponentOptions": {
11232
11286
  "type": "object",
11233
11287
  "required": ["level"],
11234
11288
  "properties": {
11235
- "fix": {
11236
- "description": "The kind of the code actions emitted by the rule",
11237
- "anyOf": [{ "$ref": "#/definitions/FixKind" }, { "type": "null" }]
11238
- },
11239
11289
  "level": {
11240
11290
  "description": "The severity of the emitted diagnostics by the rule",
11241
11291
  "allOf": [{ "$ref": "#/definitions/RulePlainConfiguration" }]
11242
11292
  },
11243
11293
  "options": {
11244
11294
  "description": "Rule's options",
11245
- "allOf": [{ "$ref": "#/definitions/UseSingleJsDocAsteriskOptions" }]
11295
+ "allOf": [{ "$ref": "#/definitions/UseSolidForComponentOptions" }]
11246
11296
  }
11247
11297
  },
11248
11298
  "additionalProperties": false
11249
11299
  },
11250
- "RuleWithUseSingleVarDeclaratorOptions": {
11300
+ "RuleWithUseSortedClassesOptions": {
11251
11301
  "type": "object",
11252
11302
  "required": ["level"],
11253
11303
  "properties": {
@@ -11261,12 +11311,12 @@
11261
11311
  },
11262
11312
  "options": {
11263
11313
  "description": "Rule's options",
11264
- "allOf": [{ "$ref": "#/definitions/UseSingleVarDeclaratorOptions" }]
11314
+ "allOf": [{ "$ref": "#/definitions/UseSortedClassesOptions" }]
11265
11315
  }
11266
11316
  },
11267
11317
  "additionalProperties": false
11268
11318
  },
11269
- "RuleWithUseSortedClassesOptions": {
11319
+ "RuleWithUseStaticResponseMethodsOptions": {
11270
11320
  "type": "object",
11271
11321
  "required": ["level"],
11272
11322
  "properties": {
@@ -11280,7 +11330,7 @@
11280
11330
  },
11281
11331
  "options": {
11282
11332
  "description": "Rule's options",
11283
- "allOf": [{ "$ref": "#/definitions/UseSortedClassesOptions" }]
11333
+ "allOf": [{ "$ref": "#/definitions/UseStaticResponseMethodsOptions" }]
11284
11334
  }
11285
11335
  },
11286
11336
  "additionalProperties": false
@@ -11406,7 +11456,7 @@
11406
11456
  },
11407
11457
  "additionalProperties": false
11408
11458
  },
11409
- "RuleWithUseUnifiedTypeSignatureOptions": {
11459
+ "RuleWithUseUnifiedTypeSignaturesOptions": {
11410
11460
  "type": "object",
11411
11461
  "required": ["level"],
11412
11462
  "properties": {
@@ -11420,7 +11470,7 @@
11420
11470
  },
11421
11471
  "options": {
11422
11472
  "description": "Rule's options",
11423
- "allOf": [{ "$ref": "#/definitions/UseUnifiedTypeSignatureOptions" }]
11473
+ "allOf": [{ "$ref": "#/definitions/UseUnifiedTypeSignaturesOptions" }]
11424
11474
  }
11425
11475
  },
11426
11476
  "additionalProperties": false
@@ -11789,6 +11839,7 @@
11789
11839
  { "$ref": "#/definitions/Suspicious" }
11790
11840
  ]
11791
11841
  },
11842
+ "SortOrder": { "type": "string", "enum": ["natural", "lexicographic"] },
11792
11843
  "Source": {
11793
11844
  "description": "A list of rules that belong to this group",
11794
11845
  "type": "object",
@@ -11864,6 +11915,12 @@
11864
11915
  "minimum": 0.0
11865
11916
  },
11866
11917
  "minItems": 1
11918
+ },
11919
+ {
11920
+ "description": "Used to indicate the hook returns an object and some of its properties have stable identities.",
11921
+ "type": "array",
11922
+ "items": { "type": "string" },
11923
+ "minItems": 1
11867
11924
  }
11868
11925
  ]
11869
11926
  },
@@ -11934,6 +11991,13 @@
11934
11991
  { "type": "null" }
11935
11992
  ]
11936
11993
  },
11994
+ "noMagicNumbers": {
11995
+ "description": "Reports usage of \"magic numbers\" — numbers used directly instead of being assigned to named constants.",
11996
+ "anyOf": [
11997
+ { "$ref": "#/definitions/NoMagicNumbersConfiguration" },
11998
+ { "type": "null" }
11999
+ ]
12000
+ },
11937
12001
  "noNamespace": {
11938
12002
  "description": "Disallow the use of TypeScript's namespaces.",
11939
12003
  "anyOf": [
@@ -12133,6 +12197,15 @@
12133
12197
  { "type": "null" }
12134
12198
  ]
12135
12199
  },
12200
+ "useConsistentObjectDefinitions": {
12201
+ "description": "Require the consistent declaration of object literals. Defaults to explicit definitions.",
12202
+ "anyOf": [
12203
+ {
12204
+ "$ref": "#/definitions/UseConsistentObjectDefinitionsConfiguration"
12205
+ },
12206
+ { "type": "null" }
12207
+ ]
12208
+ },
12136
12209
  "useConst": {
12137
12210
  "description": "Require const declarations for variables that are only assigned once.",
12138
12211
  "anyOf": [
@@ -12189,6 +12262,13 @@
12189
12262
  { "type": "null" }
12190
12263
  ]
12191
12264
  },
12265
+ "useExportsLast": {
12266
+ "description": "Require that all exports are declared after all non-export statements.",
12267
+ "anyOf": [
12268
+ { "$ref": "#/definitions/UseExportsLastConfiguration" },
12269
+ { "type": "null" }
12270
+ ]
12271
+ },
12192
12272
  "useFilenamingConvention": {
12193
12273
  "description": "Enforce naming conventions for JavaScript and TypeScript filenames.",
12194
12274
  "anyOf": [
@@ -12197,7 +12277,7 @@
12197
12277
  ]
12198
12278
  },
12199
12279
  "useForOf": {
12200
- "description": "This rule recommends a for-of loop when in a for loop, the index used to extract an item from the iterated array.",
12280
+ "description": "Prefer using for...of loops over standard for loops where possible.",
12201
12281
  "anyOf": [
12202
12282
  { "$ref": "#/definitions/UseForOfConfiguration" },
12203
12283
  { "type": "null" }
@@ -12210,6 +12290,20 @@
12210
12290
  { "type": "null" }
12211
12291
  ]
12212
12292
  },
12293
+ "useGraphqlNamingConvention": {
12294
+ "description": "Validates that all enum values are capitalized.",
12295
+ "anyOf": [
12296
+ { "$ref": "#/definitions/UseGraphqlNamingConventionConfiguration" },
12297
+ { "type": "null" }
12298
+ ]
12299
+ },
12300
+ "useGroupedAccessorPairs": {
12301
+ "description": "Enforce that getters and setters for the same property are adjacent in class and object definitions.",
12302
+ "anyOf": [
12303
+ { "$ref": "#/definitions/UseGroupedAccessorPairsConfiguration" },
12304
+ { "type": "null" }
12305
+ ]
12306
+ },
12213
12307
  "useImportType": {
12214
12308
  "description": "Promotes the use of import type for types.",
12215
12309
  "anyOf": [
@@ -12252,6 +12346,27 @@
12252
12346
  { "type": "null" }
12253
12347
  ]
12254
12348
  },
12349
+ "useNumericSeparators": {
12350
+ "description": "Enforce the use of numeric separators in numeric literals.",
12351
+ "anyOf": [
12352
+ { "$ref": "#/definitions/UseNumericSeparatorsConfiguration" },
12353
+ { "type": "null" }
12354
+ ]
12355
+ },
12356
+ "useObjectSpread": {
12357
+ "description": "Prefer object spread over Object.assign() when constructing new objects.",
12358
+ "anyOf": [
12359
+ { "$ref": "#/definitions/UseObjectSpreadConfiguration" },
12360
+ { "type": "null" }
12361
+ ]
12362
+ },
12363
+ "useReadonlyClassProperties": {
12364
+ "description": "Enforce marking members as readonly if they are never modified outside the constructor.",
12365
+ "anyOf": [
12366
+ { "$ref": "#/definitions/UseReadonlyClassPropertiesConfiguration" },
12367
+ { "type": "null" }
12368
+ ]
12369
+ },
12255
12370
  "useSelfClosingElements": {
12256
12371
  "description": "Prevent extra closing tags for components without children.",
12257
12372
  "anyOf": [
@@ -12280,6 +12395,13 @@
12280
12395
  { "type": "null" }
12281
12396
  ]
12282
12397
  },
12398
+ "useSymbolDescription": {
12399
+ "description": "Require a description parameter for the Symbol().",
12400
+ "anyOf": [
12401
+ { "$ref": "#/definitions/UseSymbolDescriptionConfiguration" },
12402
+ { "type": "null" }
12403
+ ]
12404
+ },
12283
12405
  "useTemplate": {
12284
12406
  "description": "Prefer template literals over string concatenation.",
12285
12407
  "anyOf": [
@@ -12307,6 +12429,13 @@
12307
12429
  { "$ref": "#/definitions/UseTrimStartEndConfiguration" },
12308
12430
  { "type": "null" }
12309
12431
  ]
12432
+ },
12433
+ "useUnifiedTypeSignatures": {
12434
+ "description": "Disallow overload signatures that can be unified into a single signature.",
12435
+ "anyOf": [
12436
+ { "$ref": "#/definitions/UseUnifiedTypeSignaturesConfiguration" },
12437
+ { "type": "null" }
12438
+ ]
12310
12439
  }
12311
12440
  },
12312
12441
  "additionalProperties": false
@@ -12372,6 +12501,20 @@
12372
12501
  { "type": "null" }
12373
12502
  ]
12374
12503
  },
12504
+ "noBiomeFirstException": {
12505
+ "description": "Prevents the use of the ! pattern in the first position of files.includes in the configuration file.",
12506
+ "anyOf": [
12507
+ { "$ref": "#/definitions/NoBiomeFirstExceptionConfiguration" },
12508
+ { "type": "null" }
12509
+ ]
12510
+ },
12511
+ "noBitwiseOperators": {
12512
+ "description": "Disallow bitwise operators.",
12513
+ "anyOf": [
12514
+ { "$ref": "#/definitions/NoBitwiseOperatorsConfiguration" },
12515
+ { "type": "null" }
12516
+ ]
12517
+ },
12375
12518
  "noCatchAssign": {
12376
12519
  "description": "Disallow reassigning exceptions in catch clauses.",
12377
12520
  "anyOf": [
@@ -12428,6 +12571,15 @@
12428
12571
  { "type": "null" }
12429
12572
  ]
12430
12573
  },
12574
+ "noConstantBinaryExpressions": {
12575
+ "description": "Disallow expressions where the operation doesn't affect the value",
12576
+ "anyOf": [
12577
+ {
12578
+ "$ref": "#/definitions/NoConstantBinaryExpressionsConfiguration"
12579
+ },
12580
+ { "type": "null" }
12581
+ ]
12582
+ },
12431
12583
  "noControlCharactersInRegex": {
12432
12584
  "description": "Prevents from having control characters and some escape sequences that match control characters in regular expression literals.",
12433
12585
  "anyOf": [
@@ -12735,6 +12887,13 @@
12735
12887
  { "type": "null" }
12736
12888
  ]
12737
12889
  },
12890
+ "noQuickfixBiome": {
12891
+ "description": "Disallow the use if quickfix.biome inside editor settings file.",
12892
+ "anyOf": [
12893
+ { "$ref": "#/definitions/NoQuickfixBiomeConfiguration" },
12894
+ { "type": "null" }
12895
+ ]
12896
+ },
12738
12897
  "noReactSpecificProps": {
12739
12898
  "description": "Prevents React-specific JSX properties from being used.",
12740
12899
  "anyOf": [
@@ -12814,6 +12973,27 @@
12814
12973
  { "type": "null" }
12815
12974
  ]
12816
12975
  },
12976
+ "noTsIgnore": {
12977
+ "description": "Prevents the use of the TypeScript directive @ts-ignore.",
12978
+ "anyOf": [
12979
+ { "$ref": "#/definitions/NoTsIgnoreConfiguration" },
12980
+ { "type": "null" }
12981
+ ]
12982
+ },
12983
+ "noUnassignedVariables": {
12984
+ "description": "Disallow let or var variables that are read but never assigned.",
12985
+ "anyOf": [
12986
+ { "$ref": "#/definitions/NoUnassignedVariablesConfiguration" },
12987
+ { "type": "null" }
12988
+ ]
12989
+ },
12990
+ "noUnknownAtRules": {
12991
+ "description": "Disallow unknown at-rules.",
12992
+ "anyOf": [
12993
+ { "$ref": "#/definitions/NoUnknownAtRulesConfiguration" },
12994
+ { "type": "null" }
12995
+ ]
12996
+ },
12817
12997
  "noUnsafeDeclarationMerging": {
12818
12998
  "description": "Disallow unsafe declaration merging between interfaces and classes.",
12819
12999
  "anyOf": [
@@ -12828,6 +13008,20 @@
12828
13008
  { "type": "null" }
12829
13009
  ]
12830
13010
  },
13011
+ "noUselessEscapeInString": {
13012
+ "description": "Disallow unnecessary escapes in string literals.",
13013
+ "anyOf": [
13014
+ { "$ref": "#/definitions/NoUselessEscapeInStringConfiguration" },
13015
+ { "type": "null" }
13016
+ ]
13017
+ },
13018
+ "noUselessRegexBackrefs": {
13019
+ "description": "Disallow useless backreferences in regular expression literals that always match an empty string.",
13020
+ "anyOf": [
13021
+ { "$ref": "#/definitions/NoUselessRegexBackrefsConfiguration" },
13022
+ { "type": "null" }
13023
+ ]
13024
+ },
12831
13025
  "noVar": {
12832
13026
  "description": "Disallow the use of var",
12833
13027
  "anyOf": [
@@ -12862,6 +13056,13 @@
12862
13056
  { "type": "null" }
12863
13057
  ]
12864
13058
  },
13059
+ "useBiomeIgnoreFolder": {
13060
+ "description": "Promotes the correct usage for ignoring folders in the configuration file.",
13061
+ "anyOf": [
13062
+ { "$ref": "#/definitions/UseBiomeIgnoreFolderConfiguration" },
13063
+ { "type": "null" }
13064
+ ]
13065
+ },
12865
13066
  "useDefaultSwitchClauseLast": {
12866
13067
  "description": "Enforce default clauses in switch statements to be last",
12867
13068
  "anyOf": [
@@ -12904,6 +13105,13 @@
12904
13105
  { "type": "null" }
12905
13106
  ]
12906
13107
  },
13108
+ "useIterableCallbackReturn": {
13109
+ "description": "Enforce consistent return values in iterable callbacks.",
13110
+ "anyOf": [
13111
+ { "$ref": "#/definitions/UseIterableCallbackReturnConfiguration" },
13112
+ { "type": "null" }
13113
+ ]
13114
+ },
12907
13115
  "useNamespaceKeyword": {
12908
13116
  "description": "Require using the namespace keyword over the module keyword to declare TypeScript namespaces.",
12909
13117
  "anyOf": [
@@ -12920,6 +13128,13 @@
12920
13128
  { "type": "null" }
12921
13129
  ]
12922
13130
  },
13131
+ "useStaticResponseMethods": {
13132
+ "description": "Use static Response methods instead of new Response() constructor when possible.",
13133
+ "anyOf": [
13134
+ { "$ref": "#/definitions/UseStaticResponseMethodsConfiguration" },
13135
+ { "type": "null" }
13136
+ ]
13137
+ },
12923
13138
  "useStrictMode": {
12924
13139
  "description": "Enforce the use of the directive \"use strict\" in script files.",
12925
13140
  "anyOf": [
@@ -12964,16 +13179,6 @@
12964
13179
  }
12965
13180
  ]
12966
13181
  },
12967
- "UseAdjacentGetterSetterConfiguration": {
12968
- "anyOf": [
12969
- { "$ref": "#/definitions/RulePlainConfiguration" },
12970
- { "$ref": "#/definitions/RuleWithUseAdjacentGetterSetterOptions" }
12971
- ]
12972
- },
12973
- "UseAdjacentGetterSetterOptions": {
12974
- "type": "object",
12975
- "additionalProperties": false
12976
- },
12977
13182
  "UseAdjacentOverloadSignaturesConfiguration": {
12978
13183
  "anyOf": [
12979
13184
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -13084,6 +13289,16 @@
13084
13289
  ]
13085
13290
  },
13086
13291
  "UseAwaitOptions": { "type": "object", "additionalProperties": false },
13292
+ "UseBiomeIgnoreFolderConfiguration": {
13293
+ "anyOf": [
13294
+ { "$ref": "#/definitions/RulePlainConfiguration" },
13295
+ { "$ref": "#/definitions/RuleWithUseBiomeIgnoreFolderOptions" }
13296
+ ]
13297
+ },
13298
+ "UseBiomeIgnoreFolderOptions": {
13299
+ "type": "object",
13300
+ "additionalProperties": false
13301
+ },
13087
13302
  "UseBlockStatementsConfiguration": {
13088
13303
  "anyOf": [
13089
13304
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -13200,13 +13415,15 @@
13200
13415
  },
13201
13416
  "additionalProperties": false
13202
13417
  },
13203
- "UseConsistentObjectDefinitionConfiguration": {
13418
+ "UseConsistentObjectDefinitionsConfiguration": {
13204
13419
  "anyOf": [
13205
13420
  { "$ref": "#/definitions/RulePlainConfiguration" },
13206
- { "$ref": "#/definitions/RuleWithUseConsistentObjectDefinitionOptions" }
13421
+ {
13422
+ "$ref": "#/definitions/RuleWithUseConsistentObjectDefinitionsOptions"
13423
+ }
13207
13424
  ]
13208
13425
  },
13209
- "UseConsistentObjectDefinitionOptions": {
13426
+ "UseConsistentObjectDefinitionsOptions": {
13210
13427
  "type": "object",
13211
13428
  "properties": {
13212
13429
  "syntax": {
@@ -13217,16 +13434,6 @@
13217
13434
  },
13218
13435
  "additionalProperties": false
13219
13436
  },
13220
- "UseConsistentResponseConfiguration": {
13221
- "anyOf": [
13222
- { "$ref": "#/definitions/RulePlainConfiguration" },
13223
- { "$ref": "#/definitions/RuleWithUseConsistentResponseOptions" }
13224
- ]
13225
- },
13226
- "UseConsistentResponseOptions": {
13227
- "type": "object",
13228
- "additionalProperties": false
13229
- },
13230
13437
  "UseConsistentTypeDefinitionsConfiguration": {
13231
13438
  "anyOf": [
13232
13439
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -13447,16 +13654,6 @@
13447
13654
  "type": "object",
13448
13655
  "additionalProperties": false
13449
13656
  },
13450
- "UseForComponentConfiguration": {
13451
- "anyOf": [
13452
- { "$ref": "#/definitions/RulePlainConfiguration" },
13453
- { "$ref": "#/definitions/RuleWithUseForComponentOptions" }
13454
- ]
13455
- },
13456
- "UseForComponentOptions": {
13457
- "type": "object",
13458
- "additionalProperties": false
13459
- },
13460
13657
  "UseForOfConfiguration": {
13461
13658
  "anyOf": [
13462
13659
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -13514,6 +13711,36 @@
13514
13711
  "type": "object",
13515
13712
  "additionalProperties": false
13516
13713
  },
13714
+ "UseGraphqlNamedOperationsConfiguration": {
13715
+ "anyOf": [
13716
+ { "$ref": "#/definitions/RulePlainConfiguration" },
13717
+ { "$ref": "#/definitions/RuleWithUseGraphqlNamedOperationsOptions" }
13718
+ ]
13719
+ },
13720
+ "UseGraphqlNamedOperationsOptions": {
13721
+ "type": "object",
13722
+ "additionalProperties": false
13723
+ },
13724
+ "UseGraphqlNamingConventionConfiguration": {
13725
+ "anyOf": [
13726
+ { "$ref": "#/definitions/RulePlainConfiguration" },
13727
+ { "$ref": "#/definitions/RuleWithUseGraphqlNamingConventionOptions" }
13728
+ ]
13729
+ },
13730
+ "UseGraphqlNamingConventionOptions": {
13731
+ "type": "object",
13732
+ "additionalProperties": false
13733
+ },
13734
+ "UseGroupedAccessorPairsConfiguration": {
13735
+ "anyOf": [
13736
+ { "$ref": "#/definitions/RulePlainConfiguration" },
13737
+ { "$ref": "#/definitions/RuleWithUseGroupedAccessorPairsOptions" }
13738
+ ]
13739
+ },
13740
+ "UseGroupedAccessorPairsOptions": {
13741
+ "type": "object",
13742
+ "additionalProperties": false
13743
+ },
13517
13744
  "UseGuardForInConfiguration": {
13518
13745
  "anyOf": [
13519
13746
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -13630,13 +13857,13 @@
13630
13857
  "type": "object",
13631
13858
  "additionalProperties": false
13632
13859
  },
13633
- "UseJsonImportAttributeConfiguration": {
13860
+ "UseJsonImportAttributesConfiguration": {
13634
13861
  "anyOf": [
13635
13862
  { "$ref": "#/definitions/RulePlainConfiguration" },
13636
- { "$ref": "#/definitions/RuleWithUseJsonImportAttributeOptions" }
13863
+ { "$ref": "#/definitions/RuleWithUseJsonImportAttributesOptions" }
13637
13864
  ]
13638
13865
  },
13639
- "UseJsonImportAttributeOptions": {
13866
+ "UseJsonImportAttributesOptions": {
13640
13867
  "type": "object",
13641
13868
  "additionalProperties": false
13642
13869
  },
@@ -13697,23 +13924,32 @@
13697
13924
  "type": "object",
13698
13925
  "additionalProperties": false
13699
13926
  },
13700
- "UseMediaCaptionConfiguration": {
13927
+ "UseMaxParamsConfiguration": {
13701
13928
  "anyOf": [
13702
13929
  { "$ref": "#/definitions/RulePlainConfiguration" },
13703
- { "$ref": "#/definitions/RuleWithUseMediaCaptionOptions" }
13930
+ { "$ref": "#/definitions/RuleWithUseMaxParamsOptions" }
13704
13931
  ]
13705
13932
  },
13706
- "UseMediaCaptionOptions": {
13933
+ "UseMaxParamsOptions": {
13707
13934
  "type": "object",
13935
+ "properties": {
13936
+ "max": {
13937
+ "description": "Maximum number of parameters allowed (default: 4)",
13938
+ "default": 4,
13939
+ "type": "integer",
13940
+ "format": "uint8",
13941
+ "minimum": 0.0
13942
+ }
13943
+ },
13708
13944
  "additionalProperties": false
13709
13945
  },
13710
- "UseNamedOperationConfiguration": {
13946
+ "UseMediaCaptionConfiguration": {
13711
13947
  "anyOf": [
13712
13948
  { "$ref": "#/definitions/RulePlainConfiguration" },
13713
- { "$ref": "#/definitions/RuleWithUseNamedOperationOptions" }
13949
+ { "$ref": "#/definitions/RuleWithUseMediaCaptionOptions" }
13714
13950
  ]
13715
13951
  },
13716
- "UseNamedOperationOptions": {
13952
+ "UseMediaCaptionOptions": {
13717
13953
  "type": "object",
13718
13954
  "additionalProperties": false
13719
13955
  },
@@ -13974,8 +14210,24 @@
13974
14210
  "type": "object",
13975
14211
  "additionalProperties": false
13976
14212
  },
14213
+ "UseSolidForComponentConfiguration": {
14214
+ "anyOf": [
14215
+ { "$ref": "#/definitions/RulePlainConfiguration" },
14216
+ { "$ref": "#/definitions/RuleWithUseSolidForComponentOptions" }
14217
+ ]
14218
+ },
14219
+ "UseSolidForComponentOptions": {
14220
+ "type": "object",
14221
+ "additionalProperties": false
14222
+ },
13977
14223
  "UseSortedAttributesOptions": {
13978
14224
  "type": "object",
14225
+ "properties": {
14226
+ "sortOrder": {
14227
+ "default": "natural",
14228
+ "allOf": [{ "$ref": "#/definitions/SortOrder" }]
14229
+ }
14230
+ },
13979
14231
  "additionalProperties": false
13980
14232
  },
13981
14233
  "UseSortedClassesConfiguration": {
@@ -14000,11 +14252,30 @@
14000
14252
  },
14001
14253
  "additionalProperties": false
14002
14254
  },
14003
- "UseSortedKeysOptions": { "type": "object", "additionalProperties": false },
14255
+ "UseSortedKeysOptions": {
14256
+ "type": "object",
14257
+ "properties": {
14258
+ "sortOrder": {
14259
+ "default": "natural",
14260
+ "allOf": [{ "$ref": "#/definitions/SortOrder" }]
14261
+ }
14262
+ },
14263
+ "additionalProperties": false
14264
+ },
14004
14265
  "UseSortedPropertiesOptions": {
14005
14266
  "type": "object",
14006
14267
  "additionalProperties": false
14007
14268
  },
14269
+ "UseStaticResponseMethodsConfiguration": {
14270
+ "anyOf": [
14271
+ { "$ref": "#/definitions/RulePlainConfiguration" },
14272
+ { "$ref": "#/definitions/RuleWithUseStaticResponseMethodsOptions" }
14273
+ ]
14274
+ },
14275
+ "UseStaticResponseMethodsOptions": {
14276
+ "type": "object",
14277
+ "additionalProperties": false
14278
+ },
14008
14279
  "UseStrictModeConfiguration": {
14009
14280
  "anyOf": [
14010
14281
  { "$ref": "#/definitions/RulePlainConfiguration" },
@@ -14069,13 +14340,13 @@
14069
14340
  "type": "object",
14070
14341
  "additionalProperties": false
14071
14342
  },
14072
- "UseUnifiedTypeSignatureConfiguration": {
14343
+ "UseUnifiedTypeSignaturesConfiguration": {
14073
14344
  "anyOf": [
14074
14345
  { "$ref": "#/definitions/RulePlainConfiguration" },
14075
- { "$ref": "#/definitions/RuleWithUseUnifiedTypeSignatureOptions" }
14346
+ { "$ref": "#/definitions/RuleWithUseUnifiedTypeSignaturesOptions" }
14076
14347
  ]
14077
14348
  },
14078
- "UseUnifiedTypeSignatureOptions": {
14349
+ "UseUnifiedTypeSignaturesOptions": {
14079
14350
  "type": "object",
14080
14351
  "additionalProperties": false
14081
14352
  },