oxlint 1.70.0 → 1.72.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -672,6 +672,46 @@
672
672
  },
673
673
  "additionalProperties": false
674
674
  },
675
+ "AnchorIsValidAspect": {
676
+ "type": "string",
677
+ "enum": [
678
+ "noHref",
679
+ "invalidHref",
680
+ "preferButton"
681
+ ]
682
+ },
683
+ "AnchorIsValidConfig": {
684
+ "type": "object",
685
+ "properties": {
686
+ "aspects": {
687
+ "description": "Sub-rule aspects to run.",
688
+ "type": "array",
689
+ "items": {
690
+ "$ref": "#/definitions/AnchorIsValidAspect"
691
+ },
692
+ "markdownDescription": "Sub-rule aspects to run."
693
+ },
694
+ "components": {
695
+ "description": "Custom components to treat as anchor elements.",
696
+ "default": [],
697
+ "type": "array",
698
+ "items": {
699
+ "type": "string"
700
+ },
701
+ "markdownDescription": "Custom components to treat as anchor elements."
702
+ },
703
+ "specialLink": {
704
+ "description": "Custom prop names to treat as link destinations.",
705
+ "default": [],
706
+ "type": "array",
707
+ "items": {
708
+ "type": "string"
709
+ },
710
+ "markdownDescription": "Custom prop names to treat as link destinations."
711
+ }
712
+ },
713
+ "additionalProperties": false
714
+ },
675
715
  "ArgsOption": {
676
716
  "oneOf": [
677
717
  {
@@ -844,8 +884,10 @@
844
884
  "type": "object",
845
885
  "properties": {
846
886
  "requireReturnForObjectLiteral": {
887
+ "description": "Requires braces and an explicit return for object literals. This option only applies when\nthe first option is `\"as-needed\"`.",
847
888
  "default": false,
848
- "type": "boolean"
889
+ "type": "boolean",
890
+ "markdownDescription": "Requires braces and an explicit return for object literals. This option only applies when\nthe first option is `\"as-needed\"`."
849
891
  }
850
892
  },
851
893
  "additionalProperties": false
@@ -1096,6 +1138,14 @@
1096
1138
  },
1097
1139
  "additionalProperties": false
1098
1140
  },
1141
+ "CallbackReturn": {
1142
+ "description": "The rule takes a single option - an array of possible callback names - which may include object methods. The default callback names are `callback`, `cb`, `next`.",
1143
+ "type": "array",
1144
+ "items": {
1145
+ "type": "string"
1146
+ },
1147
+ "markdownDescription": "The rule takes a single option - an array of possible callback names - which may include object methods. The default callback names are `callback`, `cb`, `next`."
1148
+ },
1099
1149
  "CapitalizedCommentsOptions": {
1100
1150
  "description": "Configuration for the capitalized-comments rule.\n\nThe first element specifies whether comments should `\"always\"` or `\"never\"`\nbegin with a capital letter. The second element is an optional object\ncontaining additional options.",
1101
1151
  "type": "array",
@@ -1438,6 +1488,18 @@
1438
1488
  },
1439
1489
  "additionalProperties": false
1440
1490
  },
1491
+ "ComplexityConfigEnum": {
1492
+ "anyOf": [
1493
+ {
1494
+ "type": "integer",
1495
+ "format": "uint32",
1496
+ "minimum": 0.0
1497
+ },
1498
+ {
1499
+ "$ref": "#/definitions/ComplexityConfig"
1500
+ }
1501
+ ]
1502
+ },
1441
1503
  "Config": {
1442
1504
  "type": "array",
1443
1505
  "items": [
@@ -2242,14 +2304,7 @@
2242
2304
  "$ref": "#/definitions/AllowWarnDeny"
2243
2305
  },
2244
2306
  {
2245
- "anyOf": [
2246
- {
2247
- "type": "number"
2248
- },
2249
- {
2250
- "$ref": "#/definitions/ComplexityConfig"
2251
- }
2252
- ]
2307
+ "$ref": "#/definitions/ComplexityConfigEnum"
2253
2308
  }
2254
2309
  ],
2255
2310
  "maxItems": 2,
@@ -2336,7 +2391,57 @@
2336
2391
  "$ref": "#/definitions/RuleNoConfig"
2337
2392
  },
2338
2393
  "func-name-matching": {
2339
- "$ref": "#/definitions/DummyRule"
2394
+ "anyOf": [
2395
+ {
2396
+ "$ref": "#/definitions/RuleNoConfig"
2397
+ },
2398
+ {
2399
+ "anyOf": [
2400
+ {
2401
+ "type": "array",
2402
+ "items": [
2403
+ {
2404
+ "$ref": "#/definitions/AllowWarnDeny"
2405
+ },
2406
+ {
2407
+ "$ref": "#/definitions/FuncNameMatchingMode"
2408
+ },
2409
+ {
2410
+ "$ref": "#/definitions/FuncNameMatchingConfig"
2411
+ }
2412
+ ],
2413
+ "maxItems": 3,
2414
+ "minItems": 2
2415
+ },
2416
+ {
2417
+ "type": "array",
2418
+ "items": [
2419
+ {
2420
+ "$ref": "#/definitions/AllowWarnDeny"
2421
+ },
2422
+ {
2423
+ "$ref": "#/definitions/FuncNameMatchingMode"
2424
+ }
2425
+ ],
2426
+ "maxItems": 2,
2427
+ "minItems": 2
2428
+ },
2429
+ {
2430
+ "type": "array",
2431
+ "items": [
2432
+ {
2433
+ "$ref": "#/definitions/AllowWarnDeny"
2434
+ },
2435
+ {
2436
+ "$ref": "#/definitions/FuncNameMatchingConfig"
2437
+ }
2438
+ ],
2439
+ "maxItems": 2,
2440
+ "minItems": 2
2441
+ }
2442
+ ]
2443
+ }
2444
+ ]
2340
2445
  },
2341
2446
  "func-names": {
2342
2447
  "anyOf": [
@@ -2503,7 +2608,57 @@
2503
2608
  "$ref": "#/definitions/RuleNoConfig"
2504
2609
  },
2505
2610
  "import/extensions": {
2506
- "$ref": "#/definitions/DummyRule"
2611
+ "anyOf": [
2612
+ {
2613
+ "$ref": "#/definitions/RuleNoConfig"
2614
+ },
2615
+ {
2616
+ "anyOf": [
2617
+ {
2618
+ "type": "array",
2619
+ "items": [
2620
+ {
2621
+ "$ref": "#/definitions/AllowWarnDeny"
2622
+ },
2623
+ {
2624
+ "$ref": "#/definitions/ExtensionRule"
2625
+ },
2626
+ {
2627
+ "$ref": "#/definitions/ImportExtensionsObject"
2628
+ }
2629
+ ],
2630
+ "maxItems": 3,
2631
+ "minItems": 2
2632
+ },
2633
+ {
2634
+ "type": "array",
2635
+ "items": [
2636
+ {
2637
+ "$ref": "#/definitions/AllowWarnDeny"
2638
+ },
2639
+ {
2640
+ "$ref": "#/definitions/ExtensionRule"
2641
+ }
2642
+ ],
2643
+ "maxItems": 2,
2644
+ "minItems": 2
2645
+ },
2646
+ {
2647
+ "type": "array",
2648
+ "items": [
2649
+ {
2650
+ "$ref": "#/definitions/AllowWarnDeny"
2651
+ },
2652
+ {
2653
+ "$ref": "#/definitions/ImportExtensionsObject"
2654
+ }
2655
+ ],
2656
+ "maxItems": 2,
2657
+ "minItems": 2
2658
+ }
2659
+ ]
2660
+ }
2661
+ ]
2507
2662
  },
2508
2663
  "import/first": {
2509
2664
  "anyOf": [
@@ -3392,13 +3547,47 @@
3392
3547
  "$ref": "#/definitions/DummyRule"
3393
3548
  },
3394
3549
  "jsdoc/require-param-description": {
3395
- "$ref": "#/definitions/RuleNoConfig"
3550
+ "anyOf": [
3551
+ {
3552
+ "$ref": "#/definitions/RuleNoConfig"
3553
+ },
3554
+ {
3555
+ "type": "array",
3556
+ "items": [
3557
+ {
3558
+ "$ref": "#/definitions/AllowWarnDeny"
3559
+ },
3560
+ {
3561
+ "$ref": "#/definitions/RequireParamDescriptionConfig"
3562
+ }
3563
+ ],
3564
+ "maxItems": 2,
3565
+ "minItems": 2
3566
+ }
3567
+ ]
3396
3568
  },
3397
3569
  "jsdoc/require-param-name": {
3398
3570
  "$ref": "#/definitions/RuleNoConfig"
3399
3571
  },
3400
3572
  "jsdoc/require-param-type": {
3401
- "$ref": "#/definitions/RuleNoConfig"
3573
+ "anyOf": [
3574
+ {
3575
+ "$ref": "#/definitions/RuleNoConfig"
3576
+ },
3577
+ {
3578
+ "type": "array",
3579
+ "items": [
3580
+ {
3581
+ "$ref": "#/definitions/AllowWarnDeny"
3582
+ },
3583
+ {
3584
+ "$ref": "#/definitions/RequireParamTypeConfig"
3585
+ }
3586
+ ],
3587
+ "maxItems": 2,
3588
+ "minItems": 2
3589
+ }
3590
+ ]
3402
3591
  },
3403
3592
  "jsdoc/require-property": {
3404
3593
  "$ref": "#/definitions/RuleNoConfig"
@@ -3514,7 +3703,24 @@
3514
3703
  "$ref": "#/definitions/RuleNoConfig"
3515
3704
  },
3516
3705
  "jsx-a11y/anchor-is-valid": {
3517
- "$ref": "#/definitions/DummyRule"
3706
+ "anyOf": [
3707
+ {
3708
+ "$ref": "#/definitions/RuleNoConfig"
3709
+ },
3710
+ {
3711
+ "type": "array",
3712
+ "items": [
3713
+ {
3714
+ "$ref": "#/definitions/AllowWarnDeny"
3715
+ },
3716
+ {
3717
+ "$ref": "#/definitions/AnchorIsValidConfig"
3718
+ }
3719
+ ],
3720
+ "maxItems": 2,
3721
+ "minItems": 2
3722
+ }
3723
+ ]
3518
3724
  },
3519
3725
  "jsx-a11y/aria-activedescendant-has-tabindex": {
3520
3726
  "$ref": "#/definitions/RuleNoConfig"
@@ -3787,7 +3993,24 @@
3787
3993
  ]
3788
3994
  },
3789
3995
  "jsx-a11y/no-noninteractive-element-interactions": {
3790
- "$ref": "#/definitions/DummyRule"
3996
+ "anyOf": [
3997
+ {
3998
+ "$ref": "#/definitions/RuleNoConfig"
3999
+ },
4000
+ {
4001
+ "type": "array",
4002
+ "items": [
4003
+ {
4004
+ "$ref": "#/definitions/AllowWarnDeny"
4005
+ },
4006
+ {
4007
+ "$ref": "#/definitions/NoNoninteractiveElementInteractionsConfig"
4008
+ }
4009
+ ],
4010
+ "maxItems": 2,
4011
+ "minItems": 2
4012
+ }
4013
+ ]
3791
4014
  },
3792
4015
  "jsx-a11y/no-noninteractive-element-to-interactive-role": {
3793
4016
  "anyOf": [
@@ -3919,14 +4142,7 @@
3919
4142
  "$ref": "#/definitions/AllowWarnDeny"
3920
4143
  },
3921
4144
  {
3922
- "anyOf": [
3923
- {
3924
- "type": "number"
3925
- },
3926
- {
3927
- "$ref": "#/definitions/MaxClassesPerFileConfig"
3928
- }
3929
- ]
4145
+ "$ref": "#/definitions/MaxClassesPerFileConfigEnum"
3930
4146
  }
3931
4147
  ],
3932
4148
  "maxItems": 2,
@@ -3946,14 +4162,7 @@
3946
4162
  "$ref": "#/definitions/AllowWarnDeny"
3947
4163
  },
3948
4164
  {
3949
- "anyOf": [
3950
- {
3951
- "type": "number"
3952
- },
3953
- {
3954
- "$ref": "#/definitions/MaxDepth"
3955
- }
3956
- ]
4165
+ "$ref": "#/definitions/MaxDepthConfigEnum"
3957
4166
  }
3958
4167
  ],
3959
4168
  "maxItems": 2,
@@ -3973,14 +4182,7 @@
3973
4182
  "$ref": "#/definitions/AllowWarnDeny"
3974
4183
  },
3975
4184
  {
3976
- "anyOf": [
3977
- {
3978
- "type": "number"
3979
- },
3980
- {
3981
- "$ref": "#/definitions/MaxLinesConfig"
3982
- }
3983
- ]
4185
+ "$ref": "#/definitions/MaxLinesConfigEnum"
3984
4186
  }
3985
4187
  ],
3986
4188
  "maxItems": 2,
@@ -4000,14 +4202,7 @@
4000
4202
  "$ref": "#/definitions/AllowWarnDeny"
4001
4203
  },
4002
4204
  {
4003
- "anyOf": [
4004
- {
4005
- "type": "number"
4006
- },
4007
- {
4008
- "$ref": "#/definitions/MaxLinesPerFunctionConfig"
4009
- }
4010
- ]
4205
+ "$ref": "#/definitions/MaxLinesPerFunctionConfigEnum"
4011
4206
  }
4012
4207
  ],
4013
4208
  "maxItems": 2,
@@ -4027,14 +4222,7 @@
4027
4222
  "$ref": "#/definitions/AllowWarnDeny"
4028
4223
  },
4029
4224
  {
4030
- "anyOf": [
4031
- {
4032
- "type": "number"
4033
- },
4034
- {
4035
- "$ref": "#/definitions/MaxNestedCallbacks"
4036
- }
4037
- ]
4225
+ "$ref": "#/definitions/MaxNestedCallbacksConfigEnum"
4038
4226
  }
4039
4227
  ],
4040
4228
  "maxItems": 2,
@@ -4054,14 +4242,7 @@
4054
4242
  "$ref": "#/definitions/AllowWarnDeny"
4055
4243
  },
4056
4244
  {
4057
- "anyOf": [
4058
- {
4059
- "type": "number"
4060
- },
4061
- {
4062
- "$ref": "#/definitions/MaxParamsConfig"
4063
- }
4064
- ]
4245
+ "$ref": "#/definitions/MaxParamsConfigEnum"
4065
4246
  }
4066
4247
  ],
4067
4248
  "maxItems": 2,
@@ -4081,14 +4262,7 @@
4081
4262
  "$ref": "#/definitions/AllowWarnDeny"
4082
4263
  },
4083
4264
  {
4084
- "anyOf": [
4085
- {
4086
- "type": "number"
4087
- },
4088
- {
4089
- "$ref": "#/definitions/MaxStatementsConfig"
4090
- }
4091
- ]
4265
+ "$ref": "#/definitions/MaxStatementsConfigEnum"
4092
4266
  }
4093
4267
  ],
4094
4268
  "maxItems": 2,
@@ -4910,10 +5084,46 @@
4910
5084
  "$ref": "#/definitions/DummyRule"
4911
5085
  },
4912
5086
  "no-restricted-imports": {
4913
- "$ref": "#/definitions/DummyRule"
5087
+ "anyOf": [
5088
+ {
5089
+ "$ref": "#/definitions/RuleNoConfig"
5090
+ },
5091
+ {
5092
+ "items": [
5093
+ {
5094
+ "$ref": "#/definitions/AllowWarnDeny"
5095
+ },
5096
+ {
5097
+ "$ref": "#/definitions/NoRestrictedImportsConfigEnum"
5098
+ }
5099
+ ],
5100
+ "additionalItems": {
5101
+ "$ref": "#/definitions/NoRestrictedImportsConfigEnum"
5102
+ },
5103
+ "minItems": 2
5104
+ }
5105
+ ]
4914
5106
  },
4915
5107
  "no-restricted-properties": {
4916
- "$ref": "#/definitions/DummyRule"
5108
+ "anyOf": [
5109
+ {
5110
+ "$ref": "#/definitions/RuleNoConfig"
5111
+ },
5112
+ {
5113
+ "items": [
5114
+ {
5115
+ "$ref": "#/definitions/AllowWarnDeny"
5116
+ },
5117
+ {
5118
+ "$ref": "#/definitions/PropertyDetails"
5119
+ }
5120
+ ],
5121
+ "additionalItems": {
5122
+ "$ref": "#/definitions/PropertyDetails"
5123
+ },
5124
+ "minItems": 2
5125
+ }
5126
+ ]
4917
5127
  },
4918
5128
  "no-return-assign": {
4919
5129
  "anyOf": [
@@ -5351,12 +5561,6 @@
5351
5561
  "$ref": "#/definitions/RuleNoConfig"
5352
5562
  },
5353
5563
  "node/callback-return": {
5354
- "$ref": "#/definitions/DummyRule"
5355
- },
5356
- "node/global-require": {
5357
- "$ref": "#/definitions/RuleNoConfig"
5358
- },
5359
- "node/handle-callback-err": {
5360
5564
  "anyOf": [
5361
5565
  {
5362
5566
  "$ref": "#/definitions/RuleNoConfig"
@@ -5368,7 +5572,7 @@
5368
5572
  "$ref": "#/definitions/AllowWarnDeny"
5369
5573
  },
5370
5574
  {
5371
- "$ref": "#/definitions/HandleCallbackErrConfig"
5575
+ "$ref": "#/definitions/CallbackReturn"
5372
5576
  }
5373
5577
  ],
5374
5578
  "maxItems": 2,
@@ -5376,16 +5580,59 @@
5376
5580
  }
5377
5581
  ]
5378
5582
  },
5379
- "node/no-exports-assign": {
5380
- "$ref": "#/definitions/RuleNoConfig"
5381
- },
5382
- "node/no-new-require": {
5383
- "$ref": "#/definitions/RuleNoConfig"
5384
- },
5385
- "node/no-path-concat": {
5583
+ "node/global-require": {
5386
5584
  "$ref": "#/definitions/RuleNoConfig"
5387
5585
  },
5388
- "node/no-process-env": {
5586
+ "node/handle-callback-err": {
5587
+ "anyOf": [
5588
+ {
5589
+ "$ref": "#/definitions/RuleNoConfig"
5590
+ },
5591
+ {
5592
+ "type": "array",
5593
+ "items": [
5594
+ {
5595
+ "$ref": "#/definitions/AllowWarnDeny"
5596
+ },
5597
+ {
5598
+ "$ref": "#/definitions/HandleCallbackErrConfig"
5599
+ }
5600
+ ],
5601
+ "maxItems": 2,
5602
+ "minItems": 2
5603
+ }
5604
+ ]
5605
+ },
5606
+ "node/no-exports-assign": {
5607
+ "$ref": "#/definitions/RuleNoConfig"
5608
+ },
5609
+ "node/no-mixed-requires": {
5610
+ "anyOf": [
5611
+ {
5612
+ "$ref": "#/definitions/RuleNoConfig"
5613
+ },
5614
+ {
5615
+ "type": "array",
5616
+ "items": [
5617
+ {
5618
+ "$ref": "#/definitions/AllowWarnDeny"
5619
+ },
5620
+ {
5621
+ "$ref": "#/definitions/NoMixedRequiresConfig"
5622
+ }
5623
+ ],
5624
+ "maxItems": 2,
5625
+ "minItems": 2
5626
+ }
5627
+ ]
5628
+ },
5629
+ "node/no-new-require": {
5630
+ "$ref": "#/definitions/RuleNoConfig"
5631
+ },
5632
+ "node/no-path-concat": {
5633
+ "$ref": "#/definitions/RuleNoConfig"
5634
+ },
5635
+ "node/no-process-env": {
5389
5636
  "anyOf": [
5390
5637
  {
5391
5638
  "$ref": "#/definitions/RuleNoConfig"
@@ -5405,6 +5652,26 @@
5405
5652
  }
5406
5653
  ]
5407
5654
  },
5655
+ "node/no-sync": {
5656
+ "anyOf": [
5657
+ {
5658
+ "$ref": "#/definitions/RuleNoConfig"
5659
+ },
5660
+ {
5661
+ "type": "array",
5662
+ "items": [
5663
+ {
5664
+ "$ref": "#/definitions/AllowWarnDeny"
5665
+ },
5666
+ {
5667
+ "$ref": "#/definitions/NoSyncConfig"
5668
+ }
5669
+ ],
5670
+ "maxItems": 2,
5671
+ "minItems": 2
5672
+ }
5673
+ ]
5674
+ },
5408
5675
  "object-shorthand": {
5409
5676
  "anyOf": [
5410
5677
  {
@@ -5652,7 +5919,27 @@
5652
5919
  ]
5653
5920
  },
5654
5921
  "prefer-destructuring": {
5655
- "$ref": "#/definitions/DummyRule"
5922
+ "anyOf": [
5923
+ {
5924
+ "$ref": "#/definitions/RuleNoConfig"
5925
+ },
5926
+ {
5927
+ "type": "array",
5928
+ "items": [
5929
+ {
5930
+ "$ref": "#/definitions/AllowWarnDeny"
5931
+ },
5932
+ {
5933
+ "$ref": "#/definitions/PreferDestructuringOption"
5934
+ },
5935
+ {
5936
+ "$ref": "#/definitions/PreferDestructuringRenamedPropertiesConfig"
5937
+ }
5938
+ ],
5939
+ "maxItems": 3,
5940
+ "minItems": 2
5941
+ }
5942
+ ]
5656
5943
  },
5657
5944
  "prefer-exponentiation-operator": {
5658
5945
  "$ref": "#/definitions/RuleNoConfig"
@@ -6361,7 +6648,47 @@
6361
6648
  ]
6362
6649
  },
6363
6650
  "react/jsx-no-script-url": {
6364
- "$ref": "#/definitions/DummyRule"
6651
+ "anyOf": [
6652
+ {
6653
+ "$ref": "#/definitions/RuleNoConfig"
6654
+ },
6655
+ {
6656
+ "anyOf": [
6657
+ {
6658
+ "type": "array",
6659
+ "items": [
6660
+ {
6661
+ "$ref": "#/definitions/AllowWarnDeny"
6662
+ },
6663
+ {
6664
+ "type": "array",
6665
+ "items": {
6666
+ "$ref": "#/definitions/JsxNoScriptUrlComponent"
6667
+ }
6668
+ },
6669
+ {
6670
+ "$ref": "#/definitions/JsxNoScriptUrlOptions"
6671
+ }
6672
+ ],
6673
+ "maxItems": 3,
6674
+ "minItems": 2
6675
+ },
6676
+ {
6677
+ "type": "array",
6678
+ "items": [
6679
+ {
6680
+ "$ref": "#/definitions/AllowWarnDeny"
6681
+ },
6682
+ {
6683
+ "$ref": "#/definitions/JsxNoScriptUrlOptions"
6684
+ }
6685
+ ],
6686
+ "maxItems": 2,
6687
+ "minItems": 2
6688
+ }
6689
+ ]
6690
+ }
6691
+ ]
6365
6692
  },
6366
6693
  "react/jsx-no-target-blank": {
6367
6694
  "anyOf": [
@@ -8330,6 +8657,26 @@
8330
8657
  }
8331
8658
  ]
8332
8659
  },
8660
+ "unicorn/max-nested-calls": {
8661
+ "anyOf": [
8662
+ {
8663
+ "$ref": "#/definitions/RuleNoConfig"
8664
+ },
8665
+ {
8666
+ "type": "array",
8667
+ "items": [
8668
+ {
8669
+ "$ref": "#/definitions/AllowWarnDeny"
8670
+ },
8671
+ {
8672
+ "$ref": "#/definitions/MaxNestedCalls"
8673
+ }
8674
+ ],
8675
+ "maxItems": 2,
8676
+ "minItems": 2
8677
+ }
8678
+ ]
8679
+ },
8333
8680
  "unicorn/new-for-builtins": {
8334
8681
  "$ref": "#/definitions/RuleNoConfig"
8335
8682
  },
@@ -8632,7 +8979,24 @@
8632
8979
  "$ref": "#/definitions/RuleNoConfig"
8633
8980
  },
8634
8981
  "unicorn/numeric-separators-style": {
8635
- "$ref": "#/definitions/DummyRule"
8982
+ "anyOf": [
8983
+ {
8984
+ "$ref": "#/definitions/RuleNoConfig"
8985
+ },
8986
+ {
8987
+ "type": "array",
8988
+ "items": [
8989
+ {
8990
+ "$ref": "#/definitions/AllowWarnDeny"
8991
+ },
8992
+ {
8993
+ "$ref": "#/definitions/NumericSeparatorsStyleConfig"
8994
+ }
8995
+ ],
8996
+ "maxItems": 2,
8997
+ "minItems": 2
8998
+ }
8999
+ ]
8636
9000
  },
8637
9001
  "unicorn/prefer-add-event-listener": {
8638
9002
  "$ref": "#/definitions/RuleNoConfig"
@@ -8767,6 +9131,9 @@
8767
9131
  "unicorn/prefer-node-protocol": {
8768
9132
  "$ref": "#/definitions/RuleNoConfig"
8769
9133
  },
9134
+ "unicorn/prefer-number-coercion": {
9135
+ "$ref": "#/definitions/RuleNoConfig"
9136
+ },
8770
9137
  "unicorn/prefer-number-properties": {
8771
9138
  "anyOf": [
8772
9139
  {
@@ -9701,6 +10068,26 @@
9701
10068
  "vue/no-arrow-functions-in-watch": {
9702
10069
  "$ref": "#/definitions/RuleNoConfig"
9703
10070
  },
10071
+ "vue/no-async-in-computed-properties": {
10072
+ "anyOf": [
10073
+ {
10074
+ "$ref": "#/definitions/RuleNoConfig"
10075
+ },
10076
+ {
10077
+ "type": "array",
10078
+ "items": [
10079
+ {
10080
+ "$ref": "#/definitions/AllowWarnDeny"
10081
+ },
10082
+ {
10083
+ "$ref": "#/definitions/NoAsyncInComputedProperties"
10084
+ }
10085
+ ],
10086
+ "maxItems": 2,
10087
+ "minItems": 2
10088
+ }
10089
+ ]
10090
+ },
9704
10091
  "vue/no-computed-properties-in-data": {
9705
10092
  "$ref": "#/definitions/RuleNoConfig"
9706
10093
  },
@@ -10311,6 +10698,16 @@
10311
10698
  },
10312
10699
  "additionalProperties": false
10313
10700
  },
10701
+ "ExtensionRule": {
10702
+ "description": "Extension rule configuration; Copy to avoid extra indirection.",
10703
+ "type": "string",
10704
+ "enum": [
10705
+ "always",
10706
+ "never",
10707
+ "ignorePackages"
10708
+ ],
10709
+ "markdownDescription": "Extension rule configuration; Copy to avoid extra indirection."
10710
+ },
10314
10711
  "ExternalPluginEntry": {
10315
10712
  "anyOf": [
10316
10713
  {
@@ -10594,6 +10991,31 @@
10594
10991
  }
10595
10992
  ]
10596
10993
  },
10994
+ "FuncNameMatchingConfig": {
10995
+ "type": "object",
10996
+ "properties": {
10997
+ "considerPropertyDescriptor": {
10998
+ "description": "If `considerPropertyDescriptor` is set to `true`, the check will take into account the use of `Object.create`, `Object.defineProperty`, `Object.defineProperties`, and `Reflect.defineProperty`.",
10999
+ "default": false,
11000
+ "type": "boolean",
11001
+ "markdownDescription": "If `considerPropertyDescriptor` is set to `true`, the check will take into account the use of `Object.create`, `Object.defineProperty`, `Object.defineProperties`, and `Reflect.defineProperty`."
11002
+ },
11003
+ "includeCommonJSModuleExports": {
11004
+ "description": "If `includeCommonJSModuleExports` is set to `true`, `module.exports` and `module[\"exports\"]` will be checked by this rule.",
11005
+ "default": false,
11006
+ "type": "boolean",
11007
+ "markdownDescription": "If `includeCommonJSModuleExports` is set to `true`, `module.exports` and `module[\"exports\"]` will be checked by this rule."
11008
+ }
11009
+ },
11010
+ "additionalProperties": false
11011
+ },
11012
+ "FuncNameMatchingMode": {
11013
+ "type": "string",
11014
+ "enum": [
11015
+ "always",
11016
+ "never"
11017
+ ]
11018
+ },
10597
11019
  "FuncNames": {
10598
11020
  "type": "array",
10599
11021
  "items": [
@@ -10747,9 +11169,9 @@
10747
11169
  "additionalProperties": false
10748
11170
  },
10749
11171
  "HandleCallbackErrConfig": {
10750
- "description": "The rule takes a single string option: the name of the error parameter.\n\nThis can be either:\n- an exact name (e.g. `\"err\"`, `\"error\"`)\n- a regexp pattern (e.g. `\"^(err|error)$\"`)\n\nIf the configured name of the error variable begins with a `^` it is considered to be a regexp pattern.\n\nDefault: `\"err\"`.",
11172
+ "description": "The rule takes a single string option: the name of the error parameter.\n\nThis can be either:\n- an exact name (e.g. `\"err\"`, `\"error\"`)\n- a regexp pattern (e.g. `\"^(err|error)$\"`)\n\nIf the configured name of the error variable begins with a `^` it is considered to be a regexp pattern.\nInvalid regexp patterns are rejected during configuration parsing.\n\nDefault: `\"err\"`.",
10751
11173
  "type": "string",
10752
- "markdownDescription": "The rule takes a single string option: the name of the error parameter.\n\nThis can be either:\n- an exact name (e.g. `\"err\"`, `\"error\"`)\n- a regexp pattern (e.g. `\"^(err|error)$\"`)\n\nIf the configured name of the error variable begins with a `^` it is considered to be a regexp pattern.\n\nDefault: `\"err\"`."
11174
+ "markdownDescription": "The rule takes a single string option: the name of the error parameter.\n\nThis can be either:\n- an exact name (e.g. `\"err\"`, `\"error\"`)\n- a regexp pattern (e.g. `\"^(err|error)$\"`)\n\nIf the configured name of the error variable begins with a `^` it is considered to be a regexp pattern.\nInvalid regexp patterns are rejected during configuration parsing.\n\nDefault: `\"err\"`."
10753
11175
  },
10754
11176
  "HeadingHasContentConfig": {
10755
11177
  "type": "object",
@@ -11048,6 +11470,53 @@
11048
11470
  },
11049
11471
  "additionalProperties": false
11050
11472
  },
11473
+ "ImportExtensionsConfig": {
11474
+ "type": "object",
11475
+ "properties": {
11476
+ "checkTypeImports": {
11477
+ "description": "Whether to check type imports when enforcing extension rules.",
11478
+ "default": false,
11479
+ "type": "boolean",
11480
+ "markdownDescription": "Whether to check type imports when enforcing extension rules."
11481
+ },
11482
+ "ignorePackages": {
11483
+ "description": "Whether to ignore package imports when enforcing extension rules.",
11484
+ "default": false,
11485
+ "type": "boolean",
11486
+ "markdownDescription": "Whether to ignore package imports when enforcing extension rules."
11487
+ },
11488
+ "pathGroupOverrides": {
11489
+ "description": "Path group overrides for bespoke import specifiers.",
11490
+ "type": "array",
11491
+ "items": {
11492
+ "$ref": "#/definitions/PathGroupOverrideConfig"
11493
+ },
11494
+ "markdownDescription": "Path group overrides for bespoke import specifiers."
11495
+ },
11496
+ "pattern": {
11497
+ "description": "Per-extension rules.",
11498
+ "type": "object",
11499
+ "additionalProperties": {
11500
+ "$ref": "#/definitions/ExtensionRule"
11501
+ },
11502
+ "markdownDescription": "Per-extension rules."
11503
+ }
11504
+ },
11505
+ "additionalProperties": false
11506
+ },
11507
+ "ImportExtensionsObject": {
11508
+ "anyOf": [
11509
+ {
11510
+ "$ref": "#/definitions/ImportExtensionsConfig"
11511
+ },
11512
+ {
11513
+ "type": "object",
11514
+ "additionalProperties": {
11515
+ "$ref": "#/definitions/ExtensionRule"
11516
+ }
11517
+ }
11518
+ ]
11519
+ },
11051
11520
  "ImportKind": {
11052
11521
  "type": "string",
11053
11522
  "enum": [
@@ -11586,6 +12055,41 @@
11586
12055
  "additionalProperties": false,
11587
12056
  "markdownDescription": "The options shared between the top-level config and each `elementOverrides` entry."
11588
12057
  },
12058
+ "JsxNoScriptUrlComponent": {
12059
+ "type": "object",
12060
+ "required": [
12061
+ "name",
12062
+ "props"
12063
+ ],
12064
+ "properties": {
12065
+ "name": {
12066
+ "description": "Component name.",
12067
+ "type": "string",
12068
+ "markdownDescription": "Component name."
12069
+ },
12070
+ "props": {
12071
+ "description": "List of properties that should be validated.",
12072
+ "type": "array",
12073
+ "items": {
12074
+ "type": "string"
12075
+ },
12076
+ "markdownDescription": "List of properties that should be validated."
12077
+ }
12078
+ },
12079
+ "additionalProperties": false
12080
+ },
12081
+ "JsxNoScriptUrlOptions": {
12082
+ "type": "object",
12083
+ "properties": {
12084
+ "includeFromSettings": {
12085
+ "description": "Whether to include components from settings.",
12086
+ "default": false,
12087
+ "type": "boolean",
12088
+ "markdownDescription": "Whether to include components from settings."
12089
+ }
12090
+ },
12091
+ "additionalProperties": false
12092
+ },
11589
12093
  "JsxNoTargetBlank": {
11590
12094
  "type": "object",
11591
12095
  "properties": {
@@ -11891,6 +12395,18 @@
11891
12395
  },
11892
12396
  "additionalProperties": false
11893
12397
  },
12398
+ "MaxClassesPerFileConfigEnum": {
12399
+ "anyOf": [
12400
+ {
12401
+ "type": "integer",
12402
+ "format": "uint32",
12403
+ "minimum": 0.0
12404
+ },
12405
+ {
12406
+ "$ref": "#/definitions/MaxClassesPerFileConfig"
12407
+ }
12408
+ ]
12409
+ },
11894
12410
  "MaxDependenciesConfig": {
11895
12411
  "type": "object",
11896
12412
  "properties": {
@@ -11937,10 +12453,22 @@
11937
12453
  },
11938
12454
  "additionalProperties": false
11939
12455
  },
11940
- "MaxExpectsConfig": {
11941
- "type": "object",
11942
- "properties": {
11943
- "max": {
12456
+ "MaxDepthConfigEnum": {
12457
+ "anyOf": [
12458
+ {
12459
+ "type": "integer",
12460
+ "format": "uint32",
12461
+ "minimum": 0.0
12462
+ },
12463
+ {
12464
+ "$ref": "#/definitions/MaxDepth"
12465
+ }
12466
+ ]
12467
+ },
12468
+ "MaxExpectsConfig": {
12469
+ "type": "object",
12470
+ "properties": {
12471
+ "max": {
11944
12472
  "description": "Maximum number of `expect()` assertion calls allowed within a single test.",
11945
12473
  "default": 5,
11946
12474
  "type": "integer",
@@ -11977,6 +12505,18 @@
11977
12505
  },
11978
12506
  "additionalProperties": false
11979
12507
  },
12508
+ "MaxLinesConfigEnum": {
12509
+ "anyOf": [
12510
+ {
12511
+ "type": "integer",
12512
+ "format": "uint32",
12513
+ "minimum": 0.0
12514
+ },
12515
+ {
12516
+ "$ref": "#/definitions/MaxLinesConfig"
12517
+ }
12518
+ ]
12519
+ },
11980
12520
  "MaxLinesPerFunctionConfig": {
11981
12521
  "type": "object",
11982
12522
  "properties": {
@@ -12009,6 +12549,18 @@
12009
12549
  },
12010
12550
  "additionalProperties": false
12011
12551
  },
12552
+ "MaxLinesPerFunctionConfigEnum": {
12553
+ "anyOf": [
12554
+ {
12555
+ "type": "integer",
12556
+ "format": "uint32",
12557
+ "minimum": 0.0
12558
+ },
12559
+ {
12560
+ "$ref": "#/definitions/MaxLinesPerFunctionConfig"
12561
+ }
12562
+ ]
12563
+ },
12012
12564
  "MaxNestedCallbacks": {
12013
12565
  "type": "object",
12014
12566
  "properties": {
@@ -12023,6 +12575,32 @@
12023
12575
  },
12024
12576
  "additionalProperties": false
12025
12577
  },
12578
+ "MaxNestedCallbacksConfigEnum": {
12579
+ "anyOf": [
12580
+ {
12581
+ "type": "integer",
12582
+ "format": "uint32",
12583
+ "minimum": 0.0
12584
+ },
12585
+ {
12586
+ "$ref": "#/definitions/MaxNestedCallbacks"
12587
+ }
12588
+ ]
12589
+ },
12590
+ "MaxNestedCalls": {
12591
+ "type": "object",
12592
+ "properties": {
12593
+ "max": {
12594
+ "description": "The maximum allowed nested call depth.",
12595
+ "default": 3,
12596
+ "type": "integer",
12597
+ "format": "uint32",
12598
+ "minimum": 0.0,
12599
+ "markdownDescription": "The maximum allowed nested call depth."
12600
+ }
12601
+ },
12602
+ "additionalProperties": false
12603
+ },
12026
12604
  "MaxNestedDescribeConfig": {
12027
12605
  "type": "object",
12028
12606
  "properties": {
@@ -12066,6 +12644,18 @@
12066
12644
  },
12067
12645
  "additionalProperties": false
12068
12646
  },
12647
+ "MaxParamsConfigEnum": {
12648
+ "anyOf": [
12649
+ {
12650
+ "type": "integer",
12651
+ "format": "uint32",
12652
+ "minimum": 0.0
12653
+ },
12654
+ {
12655
+ "$ref": "#/definitions/MaxParamsConfig"
12656
+ }
12657
+ ]
12658
+ },
12069
12659
  "MaxProps": {
12070
12660
  "type": "object",
12071
12661
  "properties": {
@@ -12100,6 +12690,18 @@
12100
12690
  },
12101
12691
  "additionalProperties": false
12102
12692
  },
12693
+ "MaxStatementsConfigEnum": {
12694
+ "anyOf": [
12695
+ {
12696
+ "type": "integer",
12697
+ "format": "uint32",
12698
+ "minimum": 0.0
12699
+ },
12700
+ {
12701
+ "$ref": "#/definitions/MaxStatementsConfig"
12702
+ }
12703
+ ]
12704
+ },
12103
12705
  "MediaHasCaptionConfig": {
12104
12706
  "type": "object",
12105
12707
  "properties": {
@@ -12200,11 +12802,31 @@
12200
12802
  ]
12201
12803
  },
12202
12804
  "Mode2": {
12203
- "type": "string",
12204
- "enum": [
12205
- "as-needed",
12206
- "always",
12207
- "never"
12805
+ "oneOf": [
12806
+ {
12807
+ "description": "Enforces no braces where they can be omitted (default).",
12808
+ "type": "string",
12809
+ "enum": [
12810
+ "as-needed"
12811
+ ],
12812
+ "markdownDescription": "Enforces no braces where they can be omitted (default)."
12813
+ },
12814
+ {
12815
+ "description": "Enforces braces around the function body.",
12816
+ "type": "string",
12817
+ "enum": [
12818
+ "always"
12819
+ ],
12820
+ "markdownDescription": "Enforces braces around the function body."
12821
+ },
12822
+ {
12823
+ "description": "Enforces no braces around the function body (constrains arrow functions to the role of returning an expression).",
12824
+ "type": "string",
12825
+ "enum": [
12826
+ "never"
12827
+ ],
12828
+ "markdownDescription": "Enforces no braces around the function body (constrains arrow functions to the role of returning an expression)."
12829
+ }
12208
12830
  ]
12209
12831
  },
12210
12832
  "Modifier": {
@@ -12589,6 +13211,25 @@
12589
13211
  },
12590
13212
  "additionalProperties": false
12591
13213
  },
13214
+ "NoAsyncInComputedProperties": {
13215
+ "$ref": "#/definitions/NoAsyncInComputedPropertiesConfig"
13216
+ },
13217
+ "NoAsyncInComputedPropertiesConfig": {
13218
+ "type": "object",
13219
+ "properties": {
13220
+ "ignoredObjectNames": {
13221
+ "description": "Names of identifiers whose member-call chains (`.then` / `.catch` / `.finally`)\nshould be ignored. Useful for libraries like Zod where `.catch(default)` is\na builder API, not a Promise method.",
13222
+ "default": [],
13223
+ "type": "array",
13224
+ "items": {
13225
+ "type": "string"
13226
+ },
13227
+ "uniqueItems": true,
13228
+ "markdownDescription": "Names of identifiers whose member-call chains (`.then` / `.catch` / `.finally`)\nshould be ignored. Useful for libraries like Zod where `.catch(default)` is\na builder API, not a Promise method."
13229
+ }
13230
+ },
13231
+ "additionalProperties": false
13232
+ },
12592
13233
  "NoAutofocus": {
12593
13234
  "type": "object",
12594
13235
  "properties": {
@@ -13736,6 +14377,30 @@
13736
14377
  },
13737
14378
  "additionalProperties": false
13738
14379
  },
14380
+ "NoMixedRequiresConfig": {
14381
+ "anyOf": [
14382
+ {
14383
+ "type": "boolean"
14384
+ },
14385
+ {
14386
+ "$ref": "#/definitions/NoMixedRequiresOptions"
14387
+ }
14388
+ ]
14389
+ },
14390
+ "NoMixedRequiresOptions": {
14391
+ "type": "object",
14392
+ "properties": {
14393
+ "allowCall": {
14394
+ "default": false,
14395
+ "type": "boolean"
14396
+ },
14397
+ "grouping": {
14398
+ "default": false,
14399
+ "type": "boolean"
14400
+ }
14401
+ },
14402
+ "additionalProperties": false
14403
+ },
13739
14404
  "NoMultiAssign": {
13740
14405
  "type": "object",
13741
14406
  "properties": {
@@ -13814,6 +14479,53 @@
13814
14479
  },
13815
14480
  "additionalProperties": false
13816
14481
  },
14482
+ "NoNoninteractiveElementInteractionsConfig": {
14483
+ "type": "object",
14484
+ "properties": {
14485
+ "handlers": {
14486
+ "description": "An array of event handler names that should trigger this rule.",
14487
+ "default": [
14488
+ "onError",
14489
+ "onLoad",
14490
+ "onKeyPress",
14491
+ "onKeyDown",
14492
+ "onKeyUp",
14493
+ "onFocus",
14494
+ "onBlur",
14495
+ "onClick",
14496
+ "onContextMenu",
14497
+ "onDblClick",
14498
+ "onDoubleClick",
14499
+ "onDrag",
14500
+ "onDragEnd",
14501
+ "onDragEnter",
14502
+ "onDragExit",
14503
+ "onDragLeave",
14504
+ "onDragOver",
14505
+ "onDragStart",
14506
+ "onDrop",
14507
+ "onMouseDown",
14508
+ "onMouseEnter",
14509
+ "onMouseLeave",
14510
+ "onMouseMove",
14511
+ "onMouseOut",
14512
+ "onMouseOver",
14513
+ "onMouseUp"
14514
+ ],
14515
+ "type": "array",
14516
+ "items": {
14517
+ "type": "string"
14518
+ },
14519
+ "markdownDescription": "An array of event handler names that should trigger this rule."
14520
+ }
14521
+ },
14522
+ "additionalProperties": {
14523
+ "type": "array",
14524
+ "items": {
14525
+ "type": "string"
14526
+ }
14527
+ }
14528
+ },
13817
14529
  "NoNoninteractiveElementToInteractiveRoleConfig": {
13818
14530
  "type": "object",
13819
14531
  "additionalProperties": {
@@ -14128,6 +14840,42 @@
14128
14840
  },
14129
14841
  "additionalProperties": false
14130
14842
  },
14843
+ "NoRestrictedImportsConfig": {
14844
+ "type": "object",
14845
+ "properties": {
14846
+ "paths": {
14847
+ "type": "array",
14848
+ "items": {
14849
+ "$ref": "#/definitions/PossiblePaths"
14850
+ }
14851
+ },
14852
+ "patterns": {
14853
+ "type": "array",
14854
+ "items": {
14855
+ "$ref": "#/definitions/PossiblePatterns"
14856
+ }
14857
+ }
14858
+ },
14859
+ "additionalProperties": false
14860
+ },
14861
+ "NoRestrictedImportsConfigEnum": {
14862
+ "anyOf": [
14863
+ {
14864
+ "type": "string"
14865
+ },
14866
+ {
14867
+ "$ref": "#/definitions/RestrictedPath"
14868
+ },
14869
+ {
14870
+ "$ref": "#/definitions/NoRestrictedImportsConfig"
14871
+ }
14872
+ ]
14873
+ },
14874
+ "NoRestrictedImportsConfigValue": {
14875
+ "additionalItems": {
14876
+ "$ref": "#/definitions/NoRestrictedImportsConfigEnum"
14877
+ }
14878
+ },
14131
14879
  "NoRestrictedMatchersConfig": {
14132
14880
  "type": "object",
14133
14881
  "additionalProperties": {
@@ -14334,6 +15082,28 @@
14334
15082
  },
14335
15083
  "additionalProperties": false
14336
15084
  },
15085
+ "NoSyncConfig": {
15086
+ "type": "object",
15087
+ "properties": {
15088
+ "allowAtRootLevel": {
15089
+ "description": "Whether synchronous methods should be allowed at the top level of a file.",
15090
+ "default": false,
15091
+ "type": "boolean",
15092
+ "markdownDescription": "Whether synchronous methods should be allowed at the top level of a file."
15093
+ },
15094
+ "ignores": {
15095
+ "description": "Function names to ignore.",
15096
+ "default": [],
15097
+ "type": "array",
15098
+ "items": {
15099
+ "type": "string"
15100
+ },
15101
+ "uniqueItems": true,
15102
+ "markdownDescription": "Function names to ignore."
15103
+ }
15104
+ },
15105
+ "additionalProperties": false
15106
+ },
14337
15107
  "NoThisAliasConfig": {
14338
15108
  "type": "object",
14339
15109
  "properties": {
@@ -15089,6 +15859,128 @@
15089
15859
  }
15090
15860
  ]
15091
15861
  },
15862
+ "NumericBaseConfig": {
15863
+ "type": "object",
15864
+ "properties": {
15865
+ "groupLength": {
15866
+ "description": "The number of digits per group when inserting numeric separators.\nFor example, a `groupLength` of 3 formats `1234567` as `1_234_567`.",
15867
+ "default": 0,
15868
+ "type": "integer",
15869
+ "format": "uint32",
15870
+ "minimum": 0.0,
15871
+ "markdownDescription": "The number of digits per group when inserting numeric separators.\nFor example, a `groupLength` of 3 formats `1234567` as `1_234_567`."
15872
+ },
15873
+ "minimumDigits": {
15874
+ "description": "The minimum number of digits required before grouping is applied.\nValues with fewer digits than this threshold will not be grouped.",
15875
+ "default": 0,
15876
+ "type": "integer",
15877
+ "format": "uint32",
15878
+ "minimum": 0.0,
15879
+ "markdownDescription": "The minimum number of digits required before grouping is applied.\nValues with fewer digits than this threshold will not be grouped."
15880
+ },
15881
+ "onlyIfContainsSeparator": {
15882
+ "description": "Only enforce the rule when the numeric literal already contains a separator (`_`).\n\nWhen `true`, numbers without separators are left as-is; when `false` (default),\ngrouping will be enforced for eligible numbers even if they don't include separators yet.",
15883
+ "type": "boolean",
15884
+ "markdownDescription": "Only enforce the rule when the numeric literal already contains a separator (`_`).\n\nWhen `true`, numbers without separators are left as-is; when `false` (default),\ngrouping will be enforced for eligible numbers even if they don't include separators yet."
15885
+ }
15886
+ },
15887
+ "additionalProperties": false
15888
+ },
15889
+ "NumericNumberConfig": {
15890
+ "type": "object",
15891
+ "properties": {
15892
+ "fractionGroupLength": {
15893
+ "description": "The size a group of digits in the fractional part (after the decimal point) should be.",
15894
+ "default": 4294967295,
15895
+ "type": "integer",
15896
+ "format": "uint32",
15897
+ "minimum": 0.0,
15898
+ "markdownDescription": "The size a group of digits in the fractional part (after the decimal point) should be."
15899
+ },
15900
+ "groupLength": {
15901
+ "description": "The number of digits per group when inserting numeric separators.\nFor example, a `groupLength` of 3 formats `1234567` as `1_234_567`.",
15902
+ "default": 0,
15903
+ "type": "integer",
15904
+ "format": "uint32",
15905
+ "minimum": 0.0,
15906
+ "markdownDescription": "The number of digits per group when inserting numeric separators.\nFor example, a `groupLength` of 3 formats `1234567` as `1_234_567`."
15907
+ },
15908
+ "minimumDigits": {
15909
+ "description": "The minimum number of digits required before grouping is applied.\nValues with fewer digits than this threshold will not be grouped.",
15910
+ "default": 0,
15911
+ "type": "integer",
15912
+ "format": "uint32",
15913
+ "minimum": 0.0,
15914
+ "markdownDescription": "The minimum number of digits required before grouping is applied.\nValues with fewer digits than this threshold will not be grouped."
15915
+ },
15916
+ "onlyIfContainsSeparator": {
15917
+ "description": "Only enforce the rule when the numeric literal already contains a separator (`_`).\n\nWhen `true`, numbers without separators are left as-is; when `false` (default),\ngrouping will be enforced for eligible numbers even if they don't include separators yet.",
15918
+ "type": "boolean",
15919
+ "markdownDescription": "Only enforce the rule when the numeric literal already contains a separator (`_`).\n\nWhen `true`, numbers without separators are left as-is; when `false` (default),\ngrouping will be enforced for eligible numbers even if they don't include separators yet."
15920
+ }
15921
+ },
15922
+ "additionalProperties": false
15923
+ },
15924
+ "NumericSeparatorsStyleConfig": {
15925
+ "type": "object",
15926
+ "properties": {
15927
+ "binary": {
15928
+ "description": "Configuration for binary literals (e.g. `0b1010_0001` and bigint variants).\nControls how digits are grouped and when separators are applied.",
15929
+ "default": {
15930
+ "groupLength": 4,
15931
+ "minimumDigits": 0
15932
+ },
15933
+ "allOf": [
15934
+ {
15935
+ "$ref": "#/definitions/NumericBaseConfig"
15936
+ }
15937
+ ],
15938
+ "markdownDescription": "Configuration for binary literals (e.g. `0b1010_0001` and bigint variants).\nControls how digits are grouped and when separators are applied."
15939
+ },
15940
+ "hexadecimal": {
15941
+ "description": "Configuration for hexadecimal literals (e.g. `0xAB_CD`, `0Xab_cd`, and bigint variants).\nControls how digits are grouped and when separators are applied.",
15942
+ "default": {
15943
+ "groupLength": 2,
15944
+ "minimumDigits": 0
15945
+ },
15946
+ "allOf": [
15947
+ {
15948
+ "$ref": "#/definitions/NumericBaseConfig"
15949
+ }
15950
+ ],
15951
+ "markdownDescription": "Configuration for hexadecimal literals (e.g. `0xAB_CD`, `0Xab_cd`, and bigint variants).\nControls how digits are grouped and when separators are applied."
15952
+ },
15953
+ "number": {
15954
+ "description": "Configuration for decimal numbers (integers, fraction parts, and exponents).\nControls how digits are grouped and when separators are applied.",
15955
+ "allOf": [
15956
+ {
15957
+ "$ref": "#/definitions/NumericNumberConfig"
15958
+ }
15959
+ ],
15960
+ "markdownDescription": "Configuration for decimal numbers (integers, fraction parts, and exponents).\nControls how digits are grouped and when separators are applied."
15961
+ },
15962
+ "octal": {
15963
+ "description": "Configuration for octal literals (e.g. `0o1234_5670` and bigint variants).\nControls how digits are grouped and when separators are applied.",
15964
+ "default": {
15965
+ "groupLength": 4,
15966
+ "minimumDigits": 0
15967
+ },
15968
+ "allOf": [
15969
+ {
15970
+ "$ref": "#/definitions/NumericBaseConfig"
15971
+ }
15972
+ ],
15973
+ "markdownDescription": "Configuration for octal literals (e.g. `0o1234_5670` and bigint variants).\nControls how digits are grouped and when separators are applied."
15974
+ },
15975
+ "onlyIfContainsSeparator": {
15976
+ "description": "Only enforce the rule when the numeric literal already contains a separator (`_`).\n\nWhen `true`, numbers without separators are left as-is; when `false` (default),\ngrouping will be enforced for eligible numbers even if they don't include separators yet.",
15977
+ "default": false,
15978
+ "type": "boolean",
15979
+ "markdownDescription": "Only enforce the rule when the numeric literal already contains a separator (`_`).\n\nWhen `true`, numbers without separators are left as-is; when `false` (default),\ngrouping will be enforced for eligible numbers even if they don't include separators yet."
15980
+ }
15981
+ },
15982
+ "additionalProperties": false
15983
+ },
15092
15984
  "ObjectLiteralTypeAssertions": {
15093
15985
  "oneOf": [
15094
15986
  {
@@ -15654,6 +16546,52 @@
15654
16546
  },
15655
16547
  "additionalProperties": false
15656
16548
  },
16549
+ "PathGroupAction": {
16550
+ "description": "Action to take for path group overrides.\n\nDetermines how import extensions are validated for matching bespoke import specifiers.",
16551
+ "oneOf": [
16552
+ {
16553
+ "description": "Enforce extension validation for matching imports (require extensions based on config).",
16554
+ "type": "string",
16555
+ "enum": [
16556
+ "enforce"
16557
+ ],
16558
+ "markdownDescription": "Enforce extension validation for matching imports (require extensions based on config)."
16559
+ },
16560
+ {
16561
+ "description": "Ignore matching imports entirely (skip all extension validation).",
16562
+ "type": "string",
16563
+ "enum": [
16564
+ "ignore"
16565
+ ],
16566
+ "markdownDescription": "Ignore matching imports entirely (skip all extension validation)."
16567
+ }
16568
+ ],
16569
+ "markdownDescription": "Action to take for path group overrides.\n\nDetermines how import extensions are validated for matching bespoke import specifiers."
16570
+ },
16571
+ "PathGroupOverrideConfig": {
16572
+ "type": "object",
16573
+ "required": [
16574
+ "action",
16575
+ "pattern"
16576
+ ],
16577
+ "properties": {
16578
+ "action": {
16579
+ "description": "Action to take when pattern matches.",
16580
+ "allOf": [
16581
+ {
16582
+ "$ref": "#/definitions/PathGroupAction"
16583
+ }
16584
+ ],
16585
+ "markdownDescription": "Action to take when pattern matches."
16586
+ },
16587
+ "pattern": {
16588
+ "description": "Glob pattern to match import specifiers.",
16589
+ "type": "string",
16590
+ "markdownDescription": "Glob pattern to match import specifiers."
16591
+ }
16592
+ },
16593
+ "additionalProperties": false
16594
+ },
15657
16595
  "PathOption": {
15658
16596
  "oneOf": [
15659
16597
  {
@@ -15674,6 +16612,26 @@
15674
16612
  }
15675
16613
  ]
15676
16614
  },
16615
+ "PossiblePaths": {
16616
+ "anyOf": [
16617
+ {
16618
+ "type": "string"
16619
+ },
16620
+ {
16621
+ "$ref": "#/definitions/RestrictedPath"
16622
+ }
16623
+ ]
16624
+ },
16625
+ "PossiblePatterns": {
16626
+ "anyOf": [
16627
+ {
16628
+ "type": "string"
16629
+ },
16630
+ {
16631
+ "$ref": "#/definitions/RestrictedPattern"
16632
+ }
16633
+ ]
16634
+ },
15677
16635
  "Prefer": {
15678
16636
  "oneOf": [
15679
16637
  {
@@ -15796,6 +16754,63 @@
15796
16754
  },
15797
16755
  "additionalProperties": false
15798
16756
  },
16757
+ "PreferDestructuringAssignmentConfig": {
16758
+ "type": "object",
16759
+ "properties": {
16760
+ "AssignmentExpression": {
16761
+ "$ref": "#/definitions/PreferDestructuringTargetOption"
16762
+ },
16763
+ "VariableDeclarator": {
16764
+ "$ref": "#/definitions/PreferDestructuringTargetOption"
16765
+ }
16766
+ },
16767
+ "additionalProperties": false
16768
+ },
16769
+ "PreferDestructuringConfig": {
16770
+ "type": "array",
16771
+ "items": [
16772
+ {
16773
+ "$ref": "#/definitions/PreferDestructuringOption"
16774
+ },
16775
+ {
16776
+ "$ref": "#/definitions/PreferDestructuringRenamedPropertiesConfig"
16777
+ }
16778
+ ],
16779
+ "maxItems": 2,
16780
+ "minItems": 2
16781
+ },
16782
+ "PreferDestructuringOption": {
16783
+ "anyOf": [
16784
+ {
16785
+ "$ref": "#/definitions/PreferDestructuringTargetOption"
16786
+ },
16787
+ {
16788
+ "$ref": "#/definitions/PreferDestructuringAssignmentConfig"
16789
+ }
16790
+ ]
16791
+ },
16792
+ "PreferDestructuringRenamedPropertiesConfig": {
16793
+ "type": "object",
16794
+ "properties": {
16795
+ "enforceForRenamedProperties": {
16796
+ "default": false,
16797
+ "type": "boolean"
16798
+ }
16799
+ },
16800
+ "additionalProperties": false
16801
+ },
16802
+ "PreferDestructuringTargetOption": {
16803
+ "type": "object",
16804
+ "properties": {
16805
+ "array": {
16806
+ "type": "boolean"
16807
+ },
16808
+ "object": {
16809
+ "type": "boolean"
16810
+ }
16811
+ },
16812
+ "additionalProperties": false
16813
+ },
15799
16814
  "PreferEndingWithAnExpectConfig": {
15800
16815
  "type": "object",
15801
16816
  "properties": {
@@ -16334,6 +17349,53 @@
16334
17349
  "additionalProperties": false,
16335
17350
  "markdownDescription": "A prop with optional `disallowedFor` DOM node list and custom `message`."
16336
17351
  },
17352
+ "PropertyDetails": {
17353
+ "type": "object",
17354
+ "properties": {
17355
+ "allowObjects": {
17356
+ "description": "Objects where property access should be allowed. This must be used with `property` and\ncannot be used with `object`.",
17357
+ "default": null,
17358
+ "type": "array",
17359
+ "items": {
17360
+ "type": "string"
17361
+ },
17362
+ "markdownDescription": "Objects where property access should be allowed. This must be used with `property` and\ncannot be used with `object`."
17363
+ },
17364
+ "allowProperties": {
17365
+ "description": "Properties where property access should be allowed. This must be used with `object` and\ncannot be used with `property`.",
17366
+ "default": null,
17367
+ "type": "array",
17368
+ "items": {
17369
+ "type": "string"
17370
+ },
17371
+ "markdownDescription": "Properties where property access should be allowed. This must be used with `object` and\ncannot be used with `property`."
17372
+ },
17373
+ "message": {
17374
+ "description": "A custom message to display.",
17375
+ "default": null,
17376
+ "type": "string",
17377
+ "markdownDescription": "A custom message to display."
17378
+ },
17379
+ "object": {
17380
+ "description": "The object on which the property is being accessed.",
17381
+ "default": null,
17382
+ "type": "string",
17383
+ "markdownDescription": "The object on which the property is being accessed."
17384
+ },
17385
+ "property": {
17386
+ "description": "The property being accessed. If `object` is not specified, this applies to the named\nproperty on all objects.",
17387
+ "default": null,
17388
+ "type": "string",
17389
+ "markdownDescription": "The property being accessed. If `object` is not specified, this applies to the named\nproperty on all objects."
17390
+ }
17391
+ },
17392
+ "additionalProperties": false
17393
+ },
17394
+ "PropertyDetailsList": {
17395
+ "additionalItems": {
17396
+ "$ref": "#/definitions/PropertyDetails"
17397
+ }
17398
+ },
16337
17399
  "RadixType": {
16338
17400
  "oneOf": [
16339
17401
  {
@@ -16534,6 +17596,42 @@
16534
17596
  },
16535
17597
  "additionalProperties": false
16536
17598
  },
17599
+ "RequireParamDescriptionConfig": {
17600
+ "type": "object",
17601
+ "properties": {
17602
+ "defaultDestructuredRootDescription": {
17603
+ "description": "The description string to set by default for destructured roots. Defaults to \"The root object\".",
17604
+ "default": "The root object",
17605
+ "type": "string",
17606
+ "markdownDescription": "The description string to set by default for destructured roots. Defaults to \"The root object\"."
17607
+ },
17608
+ "setDefaultDestructuredRootDescription": {
17609
+ "description": "Whether to set a default destructured root description.\nFor example, you may wish to avoid manually having to set the description for a @param corresponding to a destructured root object as it should always be the same type of object.\nUses `defaultDestructuredRootDescription` for the description string. Defaults to `false`.",
17610
+ "default": false,
17611
+ "type": "boolean",
17612
+ "markdownDescription": "Whether to set a default destructured root description.\nFor example, you may wish to avoid manually having to set the description for a @param corresponding to a destructured root object as it should always be the same type of object.\nUses `defaultDestructuredRootDescription` for the description string. Defaults to `false`."
17613
+ }
17614
+ },
17615
+ "additionalProperties": false
17616
+ },
17617
+ "RequireParamTypeConfig": {
17618
+ "type": "object",
17619
+ "properties": {
17620
+ "defaultDestructuredRootType": {
17621
+ "description": "The type string to set by default for destructured roots. Defaults to \"object\".",
17622
+ "default": "object",
17623
+ "type": "string",
17624
+ "markdownDescription": "The type string to set by default for destructured roots. Defaults to \"object\"."
17625
+ },
17626
+ "setDefaultDestructuredRootType": {
17627
+ "description": "Whether to set a default destructured root type. For example, you may wish to avoid manually having to set the type for a `@param` corresponding to a destructured root object as it is always going to be an object. Uses `defaultDestructuredRootType` for the type string. Defaults to `false`.",
17628
+ "default": false,
17629
+ "type": "boolean",
17630
+ "markdownDescription": "Whether to set a default destructured root type. For example, you may wish to avoid manually having to set the type for a `@param` corresponding to a destructured root object as it is always going to be an object. Uses `defaultDestructuredRootType` for the type string. Defaults to `false`."
17631
+ }
17632
+ },
17633
+ "additionalProperties": false
17634
+ },
16537
17635
  "RequireReturnsConfig": {
16538
17636
  "type": "object",
16539
17637
  "properties": {
@@ -16781,6 +17879,78 @@
16781
17879
  },
16782
17880
  "additionalProperties": false
16783
17881
  },
17882
+ "RestrictedPath": {
17883
+ "type": "object",
17884
+ "required": [
17885
+ "name"
17886
+ ],
17887
+ "properties": {
17888
+ "allowImportNames": {
17889
+ "type": "array",
17890
+ "items": {
17891
+ "type": "string"
17892
+ }
17893
+ },
17894
+ "allowTypeImports": {
17895
+ "type": "boolean"
17896
+ },
17897
+ "importNames": {
17898
+ "type": "array",
17899
+ "items": {
17900
+ "type": "string"
17901
+ }
17902
+ },
17903
+ "message": {
17904
+ "type": "string"
17905
+ },
17906
+ "name": {
17907
+ "type": "string"
17908
+ }
17909
+ },
17910
+ "additionalProperties": false
17911
+ },
17912
+ "RestrictedPattern": {
17913
+ "type": "object",
17914
+ "properties": {
17915
+ "allowImportNamePattern": {
17916
+ "type": "string"
17917
+ },
17918
+ "allowImportNames": {
17919
+ "type": "array",
17920
+ "items": {
17921
+ "type": "string"
17922
+ }
17923
+ },
17924
+ "allowTypeImports": {
17925
+ "type": "boolean"
17926
+ },
17927
+ "caseSensitive": {
17928
+ "type": "boolean"
17929
+ },
17930
+ "group": {
17931
+ "type": "array",
17932
+ "items": {
17933
+ "type": "string"
17934
+ }
17935
+ },
17936
+ "importNamePattern": {
17937
+ "type": "string"
17938
+ },
17939
+ "importNames": {
17940
+ "type": "array",
17941
+ "items": {
17942
+ "type": "string"
17943
+ }
17944
+ },
17945
+ "message": {
17946
+ "type": "string"
17947
+ },
17948
+ "regex": {
17949
+ "type": "string"
17950
+ }
17951
+ },
17952
+ "additionalProperties": false
17953
+ },
16784
17954
  "ReturnAwaitOption": {
16785
17955
  "oneOf": [
16786
17956
  {