@2digits/eslint-config 5.5.6 → 5.5.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -515,6 +515,16 @@ interface RuleOptions {
515
515
  * @see https://eslint-plugin-github-action.ntnyq.com/rules/no-top-level-permissions.html
516
516
  */
517
517
  'github-action/no-top-level-permissions'?: Linter.RuleEntry<[]>;
518
+ /**
519
+ * disallow unpinned uses references.
520
+ * @see https://eslint-plugin-github-action.ntnyq.com/rules/no-unpinned-uses.html
521
+ */
522
+ 'github-action/no-unpinned-uses'?: Linter.RuleEntry<[]>;
523
+ /**
524
+ * enforce setting concurrency cancel-in-progress to true.
525
+ * @see https://eslint-plugin-github-action.ntnyq.com/rules/prefer-cancel-in-progress.html
526
+ */
527
+ 'github-action/prefer-cancel-in-progress'?: Linter.RuleEntry<[]>;
518
528
  /**
519
529
  * enforce workflow file extension.
520
530
  * @see https://eslint-plugin-github-action.ntnyq.com/rules/prefer-file-extension.html
@@ -535,6 +545,11 @@ interface RuleOptions {
535
545
  * @see https://eslint-plugin-github-action.ntnyq.com/rules/require-action-run-name.html
536
546
  */
537
547
  'github-action/require-action-run-name'?: Linter.RuleEntry<[]>;
548
+ /**
549
+ * require a workflow-level concurrency group.
550
+ * @see https://eslint-plugin-github-action.ntnyq.com/rules/require-concurrency-group.html
551
+ */
552
+ 'github-action/require-concurrency-group'?: Linter.RuleEntry<[]>;
538
553
  /**
539
554
  * require a string job name.
540
555
  * @see https://eslint-plugin-github-action.ntnyq.com/rules/require-job-name.html
@@ -2023,7 +2038,7 @@ interface RuleOptions {
2023
2038
  * Disallow expressions where the operation doesn't affect the value
2024
2039
  * @see https://eslint.org/docs/latest/rules/no-constant-binary-expression
2025
2040
  */
2026
- 'no-constant-binary-expression'?: Linter.RuleEntry<[]>;
2041
+ 'no-constant-binary-expression'?: Linter.RuleEntry<NoConstantBinaryExpression>;
2027
2042
  /**
2028
2043
  * Disallow constant expressions in conditions
2029
2044
  * @see https://eslint.org/docs/latest/rules/no-constant-condition
@@ -3578,6 +3593,11 @@ interface RuleOptions {
3578
3593
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-fetch
3579
3594
  */
3580
3595
  'react-extra/web-api-no-leaked-fetch'?: Linter.RuleEntry<[]>;
3596
+ /**
3597
+ * Enforces that every 'IntersectionObserver' created in a component or custom hook has a corresponding 'IntersectionObserver.disconnect()'.
3598
+ * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-intersection-observer
3599
+ */
3600
+ 'react-extra/web-api-no-leaked-intersection-observer'?: Linter.RuleEntry<[]>;
3581
3601
  /**
3582
3602
  * Enforces that every 'setInterval' in a component or custom hook has a corresponding 'clearInterval'.
3583
3603
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-interval
@@ -4353,12 +4373,17 @@ interface RuleOptions {
4353
4373
  */
4354
4374
  'sonar/assertions-in-tests'?: Linter.RuleEntry<[]>;
4355
4375
  /**
4356
- * Creating public APIs is security-sensitive
4376
+ * Async test assertions should be awaited or returned
4377
+ * @see https://sonarsource.github.io/rspec/#/rspec/S8780/javascript
4378
+ */
4379
+ 'sonar/async-test-assertions'?: Linter.RuleEntry<[]>;
4380
+ /**
4381
+ * AWS API Gateway should require authentication
4357
4382
  * @see https://sonarsource.github.io/rspec/#/rspec/S6333/javascript
4358
4383
  */
4359
4384
  'sonar/aws-apigateway-public-api'?: Linter.RuleEntry<[]>;
4360
4385
  /**
4361
- * Allowing public network access to cloud resources is security-sensitive
4386
+ * Public network access to cloud resources should be disabled
4362
4387
  * @see https://sonarsource.github.io/rspec/#/rspec/S6329/javascript
4363
4388
  */
4364
4389
  'sonar/aws-ec2-rds-dms-public'?: Linter.RuleEntry<[]>;
@@ -4368,7 +4393,7 @@ interface RuleOptions {
4368
4393
  */
4369
4394
  'sonar/aws-ec2-unencrypted-ebs-volume'?: Linter.RuleEntry<[]>;
4370
4395
  /**
4371
- * Using unencrypted EFS file systems is security-sensitive
4396
+ * Amazon EFS file systems should be encrypted
4372
4397
  * @see https://sonarsource.github.io/rspec/#/rspec/S6332/javascript
4373
4398
  */
4374
4399
  'sonar/aws-efs-unencrypted'?: Linter.RuleEntry<[]>;
@@ -4378,7 +4403,7 @@ interface RuleOptions {
4378
4403
  */
4379
4404
  'sonar/aws-iam-all-privileges'?: Linter.RuleEntry<[]>;
4380
4405
  /**
4381
- * Policies granting access to all resources of an account are security-sensitive
4406
+ * IAM policies should not grant access to all account resources
4382
4407
  * @see https://sonarsource.github.io/rspec/#/rspec/S6304/javascript
4383
4408
  */
4384
4409
  'sonar/aws-iam-all-resources-accessible'?: Linter.RuleEntry<[]>;
@@ -4413,33 +4438,27 @@ interface RuleOptions {
4413
4438
  */
4414
4439
  'sonar/aws-s3-bucket-granted-access'?: Linter.RuleEntry<[]>;
4415
4440
  /**
4416
- * Authorizing HTTP communications with S3 buckets is security-sensitive
4441
+ * S3 buckets should enforce HTTPS-only access
4417
4442
  * @see https://sonarsource.github.io/rspec/#/rspec/S6249/javascript
4418
4443
  */
4419
4444
  'sonar/aws-s3-bucket-insecure-http'?: Linter.RuleEntry<[]>;
4420
4445
  /**
4421
- * Allowing public ACLs or policies on a S3 bucket is security-sensitive
4446
+ * Amazon S3 bucket public access should be fully blocked
4422
4447
  * @see https://sonarsource.github.io/rspec/#/rspec/S6281/javascript
4423
4448
  */
4424
4449
  'sonar/aws-s3-bucket-public-access'?: Linter.RuleEntry<[]>;
4425
4450
  /**
4426
- * Disabling server-side encryption of S3 buckets is security-sensitive
4427
- * @see https://sonarsource.github.io/rspec/#/rspec/S6245/javascript
4428
- * @deprecated
4429
- */
4430
- 'sonar/aws-s3-bucket-server-encryption'?: Linter.RuleEntry<[]>;
4431
- /**
4432
- * Disabling versioning of S3 buckets is security-sensitive
4451
+ * Amazon S3 buckets should have versioning enabled
4433
4452
  * @see https://sonarsource.github.io/rspec/#/rspec/S6252/javascript
4434
4453
  */
4435
4454
  'sonar/aws-s3-bucket-versioning'?: Linter.RuleEntry<[]>;
4436
4455
  /**
4437
- * Using unencrypted SageMaker notebook instances is security-sensitive
4456
+ * SageMaker notebook instances should be encrypted at rest
4438
4457
  * @see https://sonarsource.github.io/rspec/#/rspec/S6319/javascript
4439
4458
  */
4440
4459
  'sonar/aws-sagemaker-unencrypted-notebook'?: Linter.RuleEntry<[]>;
4441
4460
  /**
4442
- * Using unencrypted SNS topics is security-sensitive
4461
+ * Amazon SNS topics should be encrypted at rest
4443
4462
  * @see https://sonarsource.github.io/rspec/#/rspec/S6327/javascript
4444
4463
  */
4445
4464
  'sonar/aws-sns-unencrypted-topics'?: Linter.RuleEntry<[]>;
@@ -4468,12 +4487,6 @@ interface RuleOptions {
4468
4487
  * @see https://sonarsource.github.io/rspec/#/rspec/S1472/javascript
4469
4488
  */
4470
4489
  'sonar/call-argument-line'?: Linter.RuleEntry<[]>;
4471
- /**
4472
- * Disabling Certificate Transparency monitoring is security-sensitive
4473
- * @see https://sonarsource.github.io/rspec/#/rspec/S5742/javascript
4474
- * @deprecated
4475
- */
4476
- 'sonar/certificate-transparency'?: Linter.RuleEntry<[]>;
4477
4490
  /**
4478
4491
  * Chai assertions should have only one reason to succeed
4479
4492
  * @see https://sonarsource.github.io/rspec/#/rspec/S6092/javascript
@@ -4490,7 +4503,7 @@ interface RuleOptions {
4490
4503
  */
4491
4504
  'sonar/class-prototype'?: Linter.RuleEntry<[]>;
4492
4505
  /**
4493
- * Dynamically executing code is security-sensitive
4506
+ * Dynamic code execution should not use user-controlled data
4494
4507
  * @see https://sonarsource.github.io/rspec/#/rspec/S1523/javascript
4495
4508
  */
4496
4509
  'sonar/code-eval'?: Linter.RuleEntry<[]>;
@@ -4521,8 +4534,9 @@ interface RuleOptions {
4521
4534
  */
4522
4535
  'sonar/conditional-indentation'?: Linter.RuleEntry<[]>;
4523
4536
  /**
4524
- * Allowing confidential information to be logged is security-sensitive
4537
+ * Confidential information should not be logged
4525
4538
  * @see https://sonarsource.github.io/rspec/#/rspec/S5757/javascript
4539
+ * @deprecated
4526
4540
  */
4527
4541
  'sonar/confidential-information-logging'?: Linter.RuleEntry<[]>;
4528
4542
  /**
@@ -4536,28 +4550,22 @@ interface RuleOptions {
4536
4550
  */
4537
4551
  'sonar/content-length'?: Linter.RuleEntry<SonarContentLength>;
4538
4552
  /**
4539
- * Disabling content security policy fetch directives is security-sensitive
4553
+ * Content security policy fetch directives should not be disabled
4540
4554
  * @see https://sonarsource.github.io/rspec/#/rspec/S5728/javascript
4541
4555
  */
4542
4556
  'sonar/content-security-policy'?: Linter.RuleEntry<[]>;
4543
4557
  /**
4544
- * Creating cookies without the "HttpOnly" flag is security-sensitive
4558
+ * Cookies should have the "HttpOnly" flag
4545
4559
  * @see https://sonarsource.github.io/rspec/#/rspec/S3330/javascript
4546
4560
  */
4547
4561
  'sonar/cookie-no-httponly'?: Linter.RuleEntry<[]>;
4548
- /**
4549
- * Writing cookies is security-sensitive
4550
- * @see https://sonarsource.github.io/rspec/#/rspec/S2255/javascript
4551
- * @deprecated
4552
- */
4553
- 'sonar/cookies'?: Linter.RuleEntry<[]>;
4554
4562
  /**
4555
4563
  * Cross-Origin Resource Sharing (CORS) policy should be restricted to trusted origins
4556
4564
  * @see https://sonarsource.github.io/rspec/#/rspec/S5122/javascript
4557
4565
  */
4558
4566
  'sonar/cors'?: Linter.RuleEntry<[]>;
4559
4567
  /**
4560
- * Disabling CSRF protections is security-sensitive
4568
+ * CSRF protections should not be disabled
4561
4569
  * @see https://sonarsource.github.io/rspec/#/rspec/S4502/javascript
4562
4570
  */
4563
4571
  'sonar/csrf'?: Linter.RuleEntry<[]>;
@@ -4587,12 +4595,12 @@ interface RuleOptions {
4587
4595
  */
4588
4596
  'sonar/different-types-comparison'?: Linter.RuleEntry<[]>;
4589
4597
  /**
4590
- * Disabling auto-escaping in template engines is security-sensitive
4598
+ * Auto-escaping in HTML template engines should not be disabled
4591
4599
  * @see https://sonarsource.github.io/rspec/#/rspec/S5247/javascript
4592
4600
  */
4593
4601
  'sonar/disabled-auto-escaping'?: Linter.RuleEntry<[]>;
4594
4602
  /**
4595
- * Using remote artifacts without integrity checks is security-sensitive
4603
+ * Remote artifacts should not be used without integrity checks
4596
4604
  * @see https://sonarsource.github.io/rspec/#/rspec/S5725/javascript
4597
4605
  */
4598
4606
  'sonar/disabled-resource-integrity'?: Linter.RuleEntry<[]>;
@@ -4601,12 +4609,6 @@ interface RuleOptions {
4601
4609
  * @see https://sonarsource.github.io/rspec/#/rspec/S6080/javascript
4602
4610
  */
4603
4611
  'sonar/disabled-timeout'?: Linter.RuleEntry<[]>;
4604
- /**
4605
- * Allowing browsers to perform DNS prefetching is security-sensitive
4606
- * @see https://sonarsource.github.io/rspec/#/rspec/S5743/javascript
4607
- * @deprecated
4608
- */
4609
- 'sonar/dns-prefetching'?: Linter.RuleEntry<[]>;
4610
4612
  /**
4611
4613
  * DOMPurify configuration should not be bypassable
4612
4614
  * @see https://sonarsource.github.io/rspec/#/rspec/S8479/javascript
@@ -4632,12 +4634,6 @@ interface RuleOptions {
4632
4634
  * @see https://sonarsource.github.io/rspec/#/rspec/S5842/javascript
4633
4635
  */
4634
4636
  'sonar/empty-string-repetition'?: Linter.RuleEntry<[]>;
4635
- /**
4636
- * Encrypting data is security-sensitive
4637
- * @see https://sonarsource.github.io/rspec/#/rspec/S4787/javascript
4638
- * @deprecated
4639
- */
4640
- 'sonar/encryption'?: Linter.RuleEntry<[]>;
4641
4637
  /**
4642
4638
  * Encryption algorithms should be used with secure mode and padding scheme
4643
4639
  * @see https://sonarsource.github.io/rspec/#/rspec/S5542/javascript
@@ -4689,8 +4685,9 @@ interface RuleOptions {
4689
4685
  */
4690
4686
  'sonar/for-loop-increment-sign'?: Linter.RuleEntry<[]>;
4691
4687
  /**
4692
- * Disabling content security policy frame-ancestors directive is security-sensitive
4688
+ * Content Security Policy frame-ancestors directive should not be disabled
4693
4689
  * @see https://sonarsource.github.io/rspec/#/rspec/S5732/javascript
4690
+ * @deprecated
4694
4691
  */
4695
4692
  'sonar/frame-ancestors'?: Linter.RuleEntry<[]>;
4696
4693
  /**
@@ -4724,15 +4721,21 @@ interface RuleOptions {
4724
4721
  */
4725
4722
  'sonar/hardcoded-secret-signatures'?: Linter.RuleEntry<[]>;
4726
4723
  /**
4727
- * Using weak hashing algorithms is security-sensitive
4724
+ * Weak hashing algorithms should not be used
4728
4725
  * @see https://sonarsource.github.io/rspec/#/rspec/S4790/javascript
4729
4726
  */
4730
4727
  'sonar/hashing'?: Linter.RuleEntry<[]>;
4731
4728
  /**
4732
- * Statically serving hidden files is security-sensitive
4729
+ * Hidden files should not be served statically
4733
4730
  * @see https://sonarsource.github.io/rspec/#/rspec/S5691/javascript
4731
+ * @deprecated
4734
4732
  */
4735
4733
  'sonar/hidden-files'?: Linter.RuleEntry<[]>;
4734
+ /**
4735
+ * Lifecycle hooks should not be interleaved with test cases or nested suites
4736
+ * @see https://sonarsource.github.io/rspec/#/rspec/S8782/javascript
4737
+ */
4738
+ 'sonar/hooks-before-test-cases'?: Linter.RuleEntry<[]>;
4736
4739
  /**
4737
4740
  * "in" should not be used with primitive types
4738
4741
  * @see https://sonarsource.github.io/rspec/#/rspec/S3785/javascript
@@ -4824,7 +4827,7 @@ interface RuleOptions {
4824
4827
  */
4825
4828
  'sonar/no-alphabetical-sort'?: Linter.RuleEntry<[]>;
4826
4829
  /**
4827
- * Disabling Angular built-in sanitization is security-sensitive
4830
+ * Angular built-in sanitization should not be disabled
4828
4831
  * @see https://sonarsource.github.io/rspec/#/rspec/S6268/javascript
4829
4832
  */
4830
4833
  'sonar/no-angular-bypass-sanitization'?: Linter.RuleEntry<[]>;
@@ -4854,7 +4857,7 @@ interface RuleOptions {
4854
4857
  */
4855
4858
  'sonar/no-case-label-in-switch'?: Linter.RuleEntry<[]>;
4856
4859
  /**
4857
- * Using clear-text protocols is security-sensitive
4860
+ * Clear-text protocols should not be used
4858
4861
  * @see https://sonarsource.github.io/rspec/#/rspec/S5332/javascript
4859
4862
  */
4860
4863
  'sonar/no-clear-text-protocols'?: Linter.RuleEntry<[]>;
@@ -4903,6 +4906,11 @@ interface RuleOptions {
4903
4906
  * @see https://sonarsource.github.io/rspec/#/rspec/S1192/javascript
4904
4907
  */
4905
4908
  'sonar/no-duplicate-string'?: Linter.RuleEntry<SonarNoDuplicateString>;
4909
+ /**
4910
+ * Test titles should be unique within the same suite
4911
+ * @see https://sonarsource.github.io/rspec/#/rspec/S8754/javascript
4912
+ */
4913
+ 'sonar/no-duplicate-test-title'?: Linter.RuleEntry<[]>;
4906
4914
  /**
4907
4915
  * Two branches in a conditional structure should not have exactly the same implementation
4908
4916
  * @see https://sonarsource.github.io/rspec/#/rspec/S1871/javascript
@@ -4943,6 +4951,11 @@ interface RuleOptions {
4943
4951
  * @see https://sonarsource.github.io/rspec/#/rspec/S2187/javascript
4944
4952
  */
4945
4953
  'sonar/no-empty-test-file'?: Linter.RuleEntry<[]>;
4954
+ /**
4955
+ * Test and suite titles should not be empty or whitespace-only
4956
+ * @see https://sonarsource.github.io/rspec/#/rspec/S8781/javascript
4957
+ */
4958
+ 'sonar/no-empty-test-title'?: Linter.RuleEntry<[]>;
4946
4959
  /**
4947
4960
  * Equality operators should not be used in "for" loop termination conditions
4948
4961
  * @see https://sonarsource.github.io/rspec/#/rspec/S888/javascript
@@ -4963,11 +4976,21 @@ interface RuleOptions {
4963
4976
  * @see https://sonarsource.github.io/rspec/#/rspec/S128/javascript
4964
4977
  */
4965
4978
  'sonar/no-fallthrough'?: Linter.RuleEntry<[]>;
4979
+ /**
4980
+ * Floating point numbers should not be tested for equality
4981
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1244/javascript
4982
+ */
4983
+ 'sonar/no-floating-point-equality'?: Linter.RuleEntry<[]>;
4966
4984
  /**
4967
4985
  * "for in" should not be used with iterables
4968
4986
  * @see https://sonarsource.github.io/rspec/#/rspec/S4139/javascript
4969
4987
  */
4970
4988
  'sonar/no-for-in-iterable'?: Linter.RuleEntry<[]>;
4989
+ /**
4990
+ * Forced browser interactions should not bypass actionability checks
4991
+ * @see https://sonarsource.github.io/rspec/#/rspec/S8783/javascript
4992
+ */
4993
+ 'sonar/no-forced-browser-interaction'?: Linter.RuleEntry<[]>;
4971
4994
  /**
4972
4995
  * Function declarations should not be made within blocks
4973
4996
  * @see https://sonarsource.github.io/rspec/#/rspec/S1530/javascript
@@ -5048,6 +5071,11 @@ interface RuleOptions {
5048
5071
  * @see https://sonarsource.github.io/rspec/#/rspec/S4619/javascript
5049
5072
  */
5050
5073
  'sonar/no-in-misuse'?: Linter.RuleEntry<[]>;
5074
+ /**
5075
+ * Assertions comparing incompatible types should not be made
5076
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5845/javascript
5077
+ */
5078
+ 'sonar/no-incompatible-assertion-types'?: Linter.RuleEntry<[]>;
5051
5079
  /**
5052
5080
  * Assertions should be complete
5053
5081
  * @see https://sonarsource.github.io/rspec/#/rspec/S2970/javascript
@@ -5069,8 +5097,9 @@ interface RuleOptions {
5069
5097
  */
5070
5098
  'sonar/no-internal-api-use'?: Linter.RuleEntry<[]>;
5071
5099
  /**
5072
- * Using intrusive permissions is security-sensitive
5100
+ * Sensitive permissions should not be requested unnecessarily
5073
5101
  * @see https://sonarsource.github.io/rspec/#/rspec/S5604/javascript
5102
+ * @deprecated
5074
5103
  */
5075
5104
  'sonar/no-intrusive-permissions'?: Linter.RuleEntry<SonarNoIntrusivePermissions>;
5076
5105
  /**
@@ -5089,8 +5118,9 @@ interface RuleOptions {
5089
5118
  */
5090
5119
  'sonar/no-inverted-boolean-check'?: Linter.RuleEntry<[]>;
5091
5120
  /**
5092
- * Forwarding client IP address is security-sensitive
5121
+ * Client IP address should not be forwarded to proxies
5093
5122
  * @see https://sonarsource.github.io/rspec/#/rspec/S5759/javascript
5123
+ * @deprecated
5094
5124
  */
5095
5125
  'sonar/no-ip-forward'?: Linter.RuleEntry<[]>;
5096
5126
  /**
@@ -5104,7 +5134,7 @@ interface RuleOptions {
5104
5134
  */
5105
5135
  'sonar/no-literal-call'?: Linter.RuleEntry<[]>;
5106
5136
  /**
5107
- * Allowing browsers to sniff MIME types is security-sensitive
5137
+ * Browsers should not be allowed to perform MIME type sniffing
5108
5138
  * @see https://sonarsource.github.io/rspec/#/rspec/S5734/javascript
5109
5139
  */
5110
5140
  'sonar/no-mime-sniff'?: Linter.RuleEntry<[]>;
@@ -5119,8 +5149,9 @@ interface RuleOptions {
5119
5149
  */
5120
5150
  'sonar/no-misleading-character-class'?: Linter.RuleEntry<[]>;
5121
5151
  /**
5122
- * Allowing mixed-content is security-sensitive
5152
+ * Content Security Policy should block mixed-content
5123
5153
  * @see https://sonarsource.github.io/rspec/#/rspec/S5730/javascript
5154
+ * @deprecated
5124
5155
  */
5125
5156
  'sonar/no-mixed-content'?: Linter.RuleEntry<[]>;
5126
5157
  /**
@@ -5154,7 +5185,7 @@ interface RuleOptions {
5154
5185
  */
5155
5186
  'sonar/no-nested-template-literals'?: Linter.RuleEntry<[]>;
5156
5187
  /**
5157
- * Searching OS commands in PATH is security-sensitive
5188
+ * OS commands should not rely on PATH resolution
5158
5189
  * @see https://sonarsource.github.io/rspec/#/rspec/S4036/javascript
5159
5190
  */
5160
5191
  'sonar/no-os-command-from-path'?: Linter.RuleEntry<[]>;
@@ -5200,7 +5231,7 @@ interface RuleOptions {
5200
5231
  */
5201
5232
  'sonar/no-reference-error'?: Linter.RuleEntry<[]>;
5202
5233
  /**
5203
- * Disabling strict HTTP no-referrer policy is security-sensitive
5234
+ * HTTP Referrer-Policy should not be set to an unsafe value
5204
5235
  * @see https://sonarsource.github.io/rspec/#/rspec/S5736/javascript
5205
5236
  */
5206
5237
  'sonar/no-referrer-policy'?: Linter.RuleEntry<[]>;
@@ -5265,6 +5296,11 @@ interface RuleOptions {
5265
5296
  * @see https://sonarsource.github.io/rspec/#/rspec/S5257/javascript
5266
5297
  */
5267
5298
  'sonar/no-table-as-layout'?: Linter.RuleEntry<[]>;
5299
+ /**
5300
+ * Assertions should not fail or succeed unconditionally
5301
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5914/javascript
5302
+ */
5303
+ 'sonar/no-trivial-assertions'?: Linter.RuleEntry<[]>;
5268
5304
  /**
5269
5305
  * Promise rejections should not be caught by "try" blocks
5270
5306
  * @see https://sonarsource.github.io/rspec/#/rspec/S4822/javascript
@@ -5346,12 +5382,6 @@ interface RuleOptions {
5346
5382
  * @see https://sonarsource.github.io/rspec/#/rspec/S1526/javascript
5347
5383
  */
5348
5384
  'sonar/no-variable-usage-before-declaration'?: Linter.RuleEntry<[]>;
5349
- /**
5350
- * Disabling Vue.js built-in escaping is security-sensitive
5351
- * @see https://sonarsource.github.io/rspec/#/rspec/S6299/javascript
5352
- * @deprecated
5353
- */
5354
- 'sonar/no-vue-bypass-sanitization'?: Linter.RuleEntry<[]>;
5355
5385
  /**
5356
5386
  * Cipher algorithms should be robust
5357
5387
  * @see https://sonarsource.github.io/rspec/#/rspec/S5547/javascript
@@ -5393,8 +5423,9 @@ interface RuleOptions {
5393
5423
  */
5394
5424
  'sonar/operation-returning-nan'?: Linter.RuleEntry<[]>;
5395
5425
  /**
5396
- * Using shell interpreter when executing OS commands is security-sensitive
5426
+ * OS commands should not be executed using a shell interpreter
5397
5427
  * @see https://sonarsource.github.io/rspec/#/rspec/S4721/javascript
5428
+ * @deprecated
5398
5429
  */
5399
5430
  'sonar/os-command'?: Linter.RuleEntry<[]>;
5400
5431
  /**
@@ -5437,6 +5468,11 @@ interface RuleOptions {
5437
5468
  * @see https://sonarsource.github.io/rspec/#/rspec/S1126/javascript
5438
5469
  */
5439
5470
  'sonar/prefer-single-boolean-return'?: Linter.RuleEntry<[]>;
5471
+ /**
5472
+ * The most specific assertion should be used
5473
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5906/javascript
5474
+ */
5475
+ 'sonar/prefer-specific-assertions'?: Linter.RuleEntry<[]>;
5440
5476
  /**
5441
5477
  * Type predicates should be used
5442
5478
  * @see https://sonarsource.github.io/rspec/#/rspec/S4322/javascript
@@ -5448,18 +5484,12 @@ interface RuleOptions {
5448
5484
  */
5449
5485
  'sonar/prefer-while'?: Linter.RuleEntry<[]>;
5450
5486
  /**
5451
- * Using command line arguments is security-sensitive
5452
- * @see https://sonarsource.github.io/rspec/#/rspec/S4823/javascript
5453
- * @deprecated
5454
- */
5455
- 'sonar/process-argv'?: Linter.RuleEntry<[]>;
5456
- /**
5457
- * Delivering code in production with debug features activated is security-sensitive
5487
+ * Debugging features should not be enabled in production
5458
5488
  * @see https://sonarsource.github.io/rspec/#/rspec/S4507/javascript
5459
5489
  */
5460
5490
  'sonar/production-debug'?: Linter.RuleEntry<[]>;
5461
5491
  /**
5462
- * Using pseudorandom number generators (PRNGs) is security-sensitive
5492
+ * Pseudorandom number generators (PRNGs) should not be used in security contexts
5463
5493
  * @see https://sonarsource.github.io/rspec/#/rspec/S2245/javascript
5464
5494
  */
5465
5495
  'sonar/pseudo-random'?: Linter.RuleEntry<[]>;
@@ -5488,12 +5518,6 @@ interface RuleOptions {
5488
5518
  * @see https://sonarsource.github.io/rspec/#/rspec/S5843/javascript
5489
5519
  */
5490
5520
  'sonar/regex-complexity'?: Linter.RuleEntry<SonarRegexComplexity>;
5491
- /**
5492
- * Using regular expressions is security-sensitive
5493
- * @see https://sonarsource.github.io/rspec/#/rspec/S4784/javascript
5494
- * @deprecated
5495
- */
5496
- 'sonar/regular-expr'?: Linter.RuleEntry<[]>;
5497
5521
  /**
5498
5522
  * Wallet phrases should not be hard-coded
5499
5523
  * @see https://sonarsource.github.io/rspec/#/rspec/S7639/javascript
@@ -5520,18 +5544,12 @@ interface RuleOptions {
5520
5544
  */
5521
5545
  'sonar/single-character-alternation'?: Linter.RuleEntry<[]>;
5522
5546
  /**
5523
- * Using slow regular expressions is security-sensitive
5547
+ * Regular expressions should not cause catastrophic backtracking
5524
5548
  * @see https://sonarsource.github.io/rspec/#/rspec/S5852/javascript
5525
5549
  */
5526
5550
  'sonar/slow-regex'?: Linter.RuleEntry<[]>;
5527
5551
  /**
5528
- * Using Sockets is security-sensitive
5529
- * @see https://sonarsource.github.io/rspec/#/rspec/S4818/javascript
5530
- * @deprecated
5531
- */
5532
- 'sonar/sockets'?: Linter.RuleEntry<[]>;
5533
- /**
5534
- * Formatting SQL queries is security-sensitive
5552
+ * SQL queries should not be dynamically formatted
5535
5553
  * @see https://sonarsource.github.io/rspec/#/rspec/S2077/javascript
5536
5554
  */
5537
5555
  'sonar/sql-queries'?: Linter.RuleEntry<[]>;
@@ -5540,19 +5558,13 @@ interface RuleOptions {
5540
5558
  * @see https://sonarsource.github.io/rspec/#/rspec/S5973/javascript
5541
5559
  */
5542
5560
  'sonar/stable-tests'?: Linter.RuleEntry<[]>;
5543
- /**
5544
- * Reading the Standard Input is security-sensitive
5545
- * @see https://sonarsource.github.io/rspec/#/rspec/S4829/javascript
5546
- * @deprecated
5547
- */
5548
- 'sonar/standard-input'?: Linter.RuleEntry<[]>;
5549
5561
  /**
5550
5562
  * Regular expressions with the global flag should be used with caution
5551
5563
  * @see https://sonarsource.github.io/rspec/#/rspec/S6351/javascript
5552
5564
  */
5553
5565
  'sonar/stateful-regex'?: Linter.RuleEntry<[]>;
5554
5566
  /**
5555
- * Disabling Strict-Transport-Security policy is security-sensitive
5567
+ * HTTP Strict-Transport-Security policy should not be disabled
5556
5568
  * @see https://sonarsource.github.io/rspec/#/rspec/S5739/javascript
5557
5569
  */
5558
5570
  'sonar/strict-transport-security'?: Linter.RuleEntry<[]>;
@@ -5561,6 +5573,11 @@ interface RuleOptions {
5561
5573
  * @see https://sonarsource.github.io/rspec/#/rspec/S3003/javascript
5562
5574
  */
5563
5575
  'sonar/strings-comparison'?: Linter.RuleEntry<[]>;
5576
+ /**
5577
+ * Regular expressions should not cause non-linear backtracking
5578
+ * @see https://sonarsource.github.io/rspec/#/rspec/S8786/javascript
5579
+ */
5580
+ 'sonar/super-linear-regex'?: Linter.RuleEntry<[]>;
5564
5581
  /**
5565
5582
  * Tables should have headers
5566
5583
  * @see https://sonarsource.github.io/rspec/#/rspec/S5256/javascript
@@ -5668,12 +5685,6 @@ interface RuleOptions {
5668
5685
  * @see https://sonarsource.github.io/rspec/#/rspec/S2755/javascript
5669
5686
  */
5670
5687
  'sonar/xml-parser-xxe'?: Linter.RuleEntry<[]>;
5671
- /**
5672
- * Executing XPath expressions is security-sensitive
5673
- * @see https://sonarsource.github.io/rspec/#/rspec/S4817/javascript
5674
- * @deprecated
5675
- */
5676
- 'sonar/xpath'?: Linter.RuleEntry<[]>;
5677
5688
  /**
5678
5689
  * Enforce sorted `import` declarations within modules
5679
5690
  * @see https://eslint.org/docs/latest/rules/sort-imports
@@ -7221,918 +7232,1620 @@ interface RuleOptions {
7221
7232
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>;
7222
7233
  /**
7223
7234
  * Prefer better DOM traversal APIs.
7224
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/better-dom-traversing.md
7235
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/better-dom-traversing.md
7225
7236
  */
7226
7237
  'unicorn/better-dom-traversing'?: Linter.RuleEntry<[]>;
7227
7238
  /**
7228
7239
  * Removed. Prefer `eslint-plugin-regexp`
7229
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/deleted-and-deprecated-rules.md#better-regex
7240
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/deleted-and-deprecated-rules.md#better-regex
7230
7241
  * @deprecated
7231
7242
  */
7232
7243
  'unicorn/better-regex'?: Linter.RuleEntry<[]>;
7233
7244
  /**
7234
7245
  * Enforce a specific parameter name in catch clauses.
7235
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/catch-error-name.md
7246
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/catch-error-name.md
7236
7247
  */
7237
7248
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
7249
+ /**
7250
+ * Enforce consistent class references in static methods.
7251
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/class-reference-in-static-methods.md
7252
+ */
7253
+ 'unicorn/class-reference-in-static-methods'?: Linter.RuleEntry<UnicornClassReferenceInStaticMethods>;
7254
+ /**
7255
+ * Enforce better comment content.
7256
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/comment-content.md
7257
+ */
7258
+ 'unicorn/comment-content'?: Linter.RuleEntry<UnicornCommentContent>;
7238
7259
  /**
7239
7260
  * Enforce consistent assertion style with `node:assert`.
7240
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-assert.md
7261
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-assert.md
7241
7262
  */
7242
7263
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
7264
+ /**
7265
+ * Enforce consistent naming for boolean names.
7266
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-boolean-name.md
7267
+ */
7268
+ 'unicorn/consistent-boolean-name'?: Linter.RuleEntry<UnicornConsistentBooleanName>;
7269
+ /**
7270
+ * Enforce consistent class member order.
7271
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-class-member-order.md
7272
+ */
7273
+ 'unicorn/consistent-class-member-order'?: Linter.RuleEntry<UnicornConsistentClassMemberOrder>;
7243
7274
  /**
7244
7275
  * Enforce consistent spelling of compound words in identifiers.
7245
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-compound-words.md
7276
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-compound-words.md
7246
7277
  */
7247
7278
  'unicorn/consistent-compound-words'?: Linter.RuleEntry<UnicornConsistentCompoundWords>;
7279
+ /**
7280
+ * Enforce consistent conditional object spread style.
7281
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-conditional-object-spread.md
7282
+ */
7283
+ 'unicorn/consistent-conditional-object-spread'?: Linter.RuleEntry<UnicornConsistentConditionalObjectSpread>;
7248
7284
  /**
7249
7285
  * Prefer passing `Date` directly to the constructor when cloning.
7250
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-date-clone.md
7286
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-date-clone.md
7251
7287
  */
7252
7288
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
7253
7289
  /**
7254
7290
  * Use destructured variables over properties.
7255
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-destructuring.md
7291
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-destructuring.md
7256
7292
  */
7257
7293
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
7258
7294
  /**
7259
7295
  * Prefer consistent types when spreading a ternary in an array literal.
7260
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-empty-array-spread.md
7296
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-empty-array-spread.md
7261
7297
  */
7262
7298
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
7263
7299
  /**
7264
7300
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
7265
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-existence-index-check.md
7301
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-existence-index-check.md
7266
7302
  */
7267
7303
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
7304
+ /**
7305
+ * Enforce consistent decorator position on exported classes.
7306
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-export-decorator-position.md
7307
+ */
7308
+ 'unicorn/consistent-export-decorator-position'?: Linter.RuleEntry<UnicornConsistentExportDecoratorPosition>;
7268
7309
  /**
7269
7310
  * Move function definitions to the highest possible scope.
7270
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-function-scoping.md
7311
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-function-scoping.md
7271
7312
  */
7272
7313
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
7314
+ /**
7315
+ * Enforce function syntax by role.
7316
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-function-style.md
7317
+ */
7318
+ 'unicorn/consistent-function-style'?: Linter.RuleEntry<UnicornConsistentFunctionStyle>;
7273
7319
  /**
7274
7320
  * Enforce consistent JSON file reads before `JSON.parse()`.
7275
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-json-file-read.md
7321
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-json-file-read.md
7276
7322
  */
7277
7323
  'unicorn/consistent-json-file-read'?: Linter.RuleEntry<UnicornConsistentJsonFileRead>;
7324
+ /**
7325
+ * Enforce consistent optional chaining for same-base member access.
7326
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-optional-chaining.md
7327
+ */
7328
+ 'unicorn/consistent-optional-chaining'?: Linter.RuleEntry<[]>;
7278
7329
  /**
7279
7330
  * Enforce consistent style for escaping `${` in template literals.
7280
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/consistent-template-literal-escape.md
7331
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-template-literal-escape.md
7281
7332
  */
7282
7333
  'unicorn/consistent-template-literal-escape'?: Linter.RuleEntry<[]>;
7334
+ /**
7335
+ * Enforce consistent labels on tuple type elements.
7336
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/consistent-tuple-labels.md
7337
+ */
7338
+ 'unicorn/consistent-tuple-labels'?: Linter.RuleEntry<[]>;
7283
7339
  /**
7284
7340
  * Enforce correct `Error` subclassing.
7285
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/custom-error-definition.md
7341
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/custom-error-definition.md
7286
7342
  */
7287
7343
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
7344
+ /**
7345
+ * Enforce consistent default export declarations.
7346
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/default-export-style.md
7347
+ */
7348
+ 'unicorn/default-export-style'?: Linter.RuleEntry<UnicornDefaultExportStyle>;
7288
7349
  /**
7289
7350
  * Enforce consistent style for DOM element dataset access.
7290
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/dom-node-dataset.md
7351
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/dom-node-dataset.md
7291
7352
  */
7292
7353
  'unicorn/dom-node-dataset'?: Linter.RuleEntry<UnicornDomNodeDataset>;
7293
7354
  /**
7294
7355
  * Enforce no spaces between braces.
7295
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/empty-brace-spaces.md
7356
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/empty-brace-spaces.md
7296
7357
  */
7297
7358
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
7298
7359
  /**
7299
7360
  * Enforce passing a `message` value when creating a built-in error.
7300
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/error-message.md
7361
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/error-message.md
7301
7362
  */
7302
7363
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
7303
7364
  /**
7304
7365
  * Require escape sequences to use uppercase or lowercase values.
7305
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/escape-case.md
7366
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/escape-case.md
7306
7367
  */
7307
7368
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
7308
7369
  /**
7309
7370
  * Add expiration conditions to TODO comments.
7310
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/expiring-todo-comments.md
7371
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/expiring-todo-comments.md
7311
7372
  */
7312
7373
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
7313
7374
  /**
7314
7375
  * Enforce explicitly comparing the `length` or `size` property of a value.
7315
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/explicit-length-check.md
7376
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/explicit-length-check.md
7316
7377
  */
7317
7378
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
7379
+ /**
7380
+ * Enforce or disallow explicit `delay` argument for `setTimeout()` and `setInterval()`.
7381
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/explicit-timer-delay.md
7382
+ */
7383
+ 'unicorn/explicit-timer-delay'?: Linter.RuleEntry<UnicornExplicitTimerDelay>;
7318
7384
  /**
7319
7385
  * Enforce a case style for filenames and directory names.
7320
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/filename-case.md
7386
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/filename-case.md
7321
7387
  */
7322
7388
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
7389
+ /**
7390
+ * Require identifiers to match a specified regular expression.
7391
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/id-match.md
7392
+ */
7393
+ 'unicorn/id-match'?: Linter.RuleEntry<UnicornIdMatch>;
7323
7394
  /**
7324
7395
  * Enforce specific import styles per module.
7325
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/import-style.md
7396
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/import-style.md
7326
7397
  */
7327
7398
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
7328
7399
  /**
7329
7400
  * Prevent usage of variables from outside the scope of isolated functions.
7330
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/isolated-functions.md
7401
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/isolated-functions.md
7331
7402
  */
7332
7403
  'unicorn/isolated-functions'?: Linter.RuleEntry<UnicornIsolatedFunctions>;
7333
7404
  /**
7334
- * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
7335
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/new-for-builtins.md
7405
+ * Require or disallow logical assignment operator shorthand
7406
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/logical-assignment-operators.md
7407
+ */
7408
+ 'unicorn/logical-assignment-operators'?: Linter.RuleEntry<UnicornLogicalAssignmentOperators>;
7409
+ /**
7410
+ * Limit the depth of nested calls.
7411
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/max-nested-calls.md
7412
+ */
7413
+ 'unicorn/max-nested-calls'?: Linter.RuleEntry<UnicornMaxNestedCalls>;
7414
+ /**
7415
+ * Enforce replacements for variable, property, and filenames.
7416
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/name-replacements.md
7417
+ */
7418
+ 'unicorn/name-replacements'?: Linter.RuleEntry<UnicornNameReplacements>;
7419
+ /**
7420
+ * Enforce correct use of `new` for builtin constructors.
7421
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/new-for-builtins.md
7336
7422
  */
7337
7423
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
7338
7424
  /**
7339
7425
  * Enforce specifying rules to disable in `eslint-disable` comments.
7340
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-abusive-eslint-disable.md
7426
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-abusive-eslint-disable.md
7341
7427
  */
7342
7428
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
7343
7429
  /**
7344
7430
  * Disallow recursive access to `this` within getters and setters.
7345
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-accessor-recursion.md
7431
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-accessor-recursion.md
7346
7432
  */
7347
7433
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
7434
+ /**
7435
+ * Disallow bitwise operators where a logical operator was likely intended.
7436
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-accidental-bitwise-operator.md
7437
+ */
7438
+ 'unicorn/no-accidental-bitwise-operator'?: Linter.RuleEntry<[]>;
7348
7439
  /**
7349
7440
  * Disallow anonymous functions and classes as the default export.
7350
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-anonymous-default-export.md
7441
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-anonymous-default-export.md
7351
7442
  */
7352
7443
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
7353
7444
  /**
7354
7445
  * Prevent passing a function reference directly to iterator methods.
7355
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-array-callback-reference.md
7446
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-callback-reference.md
7356
7447
  */
7357
7448
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<UnicornNoArrayCallbackReference>;
7358
7449
  /**
7359
- * Disallow using reference values as `Array#fill()` values.
7360
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-array-fill-with-reference-type.md
7450
+ * Disallow array accumulation with `Array#concat()` in loops.
7451
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-concat-in-loop.md
7361
7452
  */
7362
- 'unicorn/no-array-fill-with-reference-type'?: Linter.RuleEntry<[]>;
7453
+ 'unicorn/no-array-concat-in-loop'?: Linter.RuleEntry<[]>;
7363
7454
  /**
7364
- * Prefer `for…of` over the `forEach` method.
7365
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-array-for-each.md
7455
+ * Disallow using reference values as `Array#fill()` values.
7456
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-fill-with-reference-type.md
7366
7457
  */
7367
- 'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
7458
+ 'unicorn/no-array-fill-with-reference-type'?: Linter.RuleEntry<[]>;
7368
7459
  /**
7369
7460
  * Disallow `.fill()` after `Array.from({length: …})`.
7370
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-array-from-fill.md
7461
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-from-fill.md
7371
7462
  */
7372
7463
  'unicorn/no-array-from-fill'?: Linter.RuleEntry<[]>;
7464
+ /**
7465
+ * Disallow front-of-array mutation.
7466
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-front-mutation.md
7467
+ */
7468
+ 'unicorn/no-array-front-mutation'?: Linter.RuleEntry<[]>;
7373
7469
  /**
7374
7470
  * Disallow using the `this` argument in array methods.
7375
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-array-method-this-argument.md
7471
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-method-this-argument.md
7376
7472
  */
7377
7473
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
7378
7474
  /**
7379
7475
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
7380
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/deleted-and-deprecated-rules.md#no-array-push-push
7476
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/deleted-and-deprecated-rules.md#no-array-push-push
7381
7477
  * @deprecated
7382
7478
  */
7383
7479
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
7384
7480
  /**
7385
7481
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
7386
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-array-reduce.md
7482
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-reduce.md
7387
7483
  */
7388
7484
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
7389
7485
  /**
7390
7486
  * Prefer `Array#toReversed()` over `Array#reverse()`.
7391
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-array-reverse.md
7487
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-reverse.md
7392
7488
  */
7393
7489
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
7394
7490
  /**
7395
7491
  * Prefer `Array#toSorted()` over `Array#sort()`.
7396
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-array-sort.md
7492
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-sort.md
7397
7493
  */
7398
7494
  'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
7495
+ /**
7496
+ * Disallow sorting arrays to get the minimum or maximum value.
7497
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-sort-for-min-max.md
7498
+ */
7499
+ 'unicorn/no-array-sort-for-min-max'?: Linter.RuleEntry<[]>;
7500
+ /**
7501
+ * Prefer `Array#toSpliced()` over `Array#splice()`.
7502
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-array-splice.md
7503
+ */
7504
+ 'unicorn/no-array-splice'?: Linter.RuleEntry<[]>;
7505
+ /**
7506
+ * Disallow asterisk prefixes in documentation comments.
7507
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-asterisk-prefix-in-documentation-comments.md
7508
+ */
7509
+ 'unicorn/no-asterisk-prefix-in-documentation-comments'?: Linter.RuleEntry<[]>;
7399
7510
  /**
7400
7511
  * Disallow member access from await expression.
7401
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-await-expression-member.md
7512
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-await-expression-member.md
7402
7513
  */
7403
7514
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
7404
7515
  /**
7405
7516
  * Disallow using `await` in `Promise` method parameters.
7406
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-await-in-promise-methods.md
7517
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-await-in-promise-methods.md
7407
7518
  */
7408
7519
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
7409
7520
  /**
7410
7521
  * Disallow unnecessary `Blob` to `File` conversion.
7411
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-blob-to-file.md
7522
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-blob-to-file.md
7412
7523
  */
7413
7524
  'unicorn/no-blob-to-file'?: Linter.RuleEntry<[]>;
7525
+ /**
7526
+ * Disallow boolean-returning sort comparators.
7527
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-boolean-sort-comparator.md
7528
+ */
7529
+ 'unicorn/no-boolean-sort-comparator'?: Linter.RuleEntry<[]>;
7530
+ /**
7531
+ * Disallow `break` and `continue` in nested loops and switches inside loops.
7532
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-break-in-nested-loop.md
7533
+ */
7534
+ 'unicorn/no-break-in-nested-loop'?: Linter.RuleEntry<[]>;
7414
7535
  /**
7415
7536
  * Prefer drawing canvases directly instead of converting them to images.
7416
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-canvas-to-image.md
7537
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-canvas-to-image.md
7417
7538
  */
7418
7539
  'unicorn/no-canvas-to-image'?: Linter.RuleEntry<[]>;
7540
+ /**
7541
+ * Disallow chained comparisons such as `a < b < c`.
7542
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-chained-comparison.md
7543
+ */
7544
+ 'unicorn/no-chained-comparison'?: Linter.RuleEntry<[]>;
7545
+ /**
7546
+ * Disallow accessing `Map`, `Set`, `WeakMap`, and `WeakSet` entries with bracket notation.
7547
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-collection-bracket-access.md
7548
+ */
7549
+ 'unicorn/no-collection-bracket-access'?: Linter.RuleEntry<[]>;
7550
+ /**
7551
+ * Disallow dynamic object property existence checks.
7552
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-computed-property-existence-check.md
7553
+ */
7554
+ 'unicorn/no-computed-property-existence-check'?: Linter.RuleEntry<[]>;
7419
7555
  /**
7420
7556
  * Disallow confusing uses of `Array#{splice,toSpliced}()`.
7421
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-confusing-array-splice.md
7557
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-confusing-array-splice.md
7422
7558
  */
7423
7559
  'unicorn/no-confusing-array-splice'?: Linter.RuleEntry<[]>;
7560
+ /**
7561
+ * Disallow confusing uses of `Array#with()`.
7562
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-confusing-array-with.md
7563
+ */
7564
+ 'unicorn/no-confusing-array-with'?: Linter.RuleEntry<[]>;
7424
7565
  /**
7425
7566
  * Do not use leading/trailing space between `console.log` parameters.
7426
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-console-spaces.md
7567
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-console-spaces.md
7427
7568
  */
7428
7569
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
7570
+ /**
7571
+ * Disallow arithmetic and bitwise operations that always evaluate to `0`.
7572
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-constant-zero-expression.md
7573
+ */
7574
+ 'unicorn/no-constant-zero-expression'?: Linter.RuleEntry<[]>;
7575
+ /**
7576
+ * Disallow declarations before conditional early exits when they are only used after the exit.
7577
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-declarations-before-early-exit.md
7578
+ */
7579
+ 'unicorn/no-declarations-before-early-exit'?: Linter.RuleEntry<[]>;
7429
7580
  /**
7430
7581
  * Do not use `document.cookie` directly.
7431
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-document-cookie.md
7582
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-document-cookie.md
7432
7583
  */
7433
7584
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
7585
+ /**
7586
+ * Disallow two comparisons of the same operands that can be combined into one.
7587
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-double-comparison.md
7588
+ */
7589
+ 'unicorn/no-double-comparison'?: Linter.RuleEntry<[]>;
7590
+ /**
7591
+ * Disallow duplicate adjacent branches in if chains.
7592
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-duplicate-if-branches.md
7593
+ */
7594
+ 'unicorn/no-duplicate-if-branches'?: Linter.RuleEntry<[]>;
7595
+ /**
7596
+ * Disallow adjacent duplicate operands in logical expressions.
7597
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-duplicate-logical-operands.md
7598
+ */
7599
+ 'unicorn/no-duplicate-logical-operands'?: Linter.RuleEntry<[]>;
7600
+ /**
7601
+ * Disallow `.map()` and `.filter()` in `for…of` and `for await…of` loop headers.
7602
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-duplicate-loops.md
7603
+ */
7604
+ 'unicorn/no-duplicate-loops'?: Linter.RuleEntry<[]>;
7434
7605
  /**
7435
7606
  * Disallow duplicate values in `Set` constructor array literals.
7436
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-duplicate-set-values.md
7607
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-duplicate-set-values.md
7437
7608
  */
7438
7609
  'unicorn/no-duplicate-set-values'?: Linter.RuleEntry<[]>;
7439
7610
  /**
7440
7611
  * Disallow empty files.
7441
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-empty-file.md
7612
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-empty-file.md
7442
7613
  */
7443
7614
  'unicorn/no-empty-file'?: Linter.RuleEntry<UnicornNoEmptyFile>;
7615
+ /**
7616
+ * Disallow assigning to built-in error properties.
7617
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-error-property-assignment.md
7618
+ */
7619
+ 'unicorn/no-error-property-assignment'?: Linter.RuleEntry<[]>;
7444
7620
  /**
7445
7621
  * Disallow exports in scripts.
7446
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-exports-in-scripts.md
7622
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-exports-in-scripts.md
7447
7623
  */
7448
7624
  'unicorn/no-exports-in-scripts'?: Linter.RuleEntry<[]>;
7625
+ /**
7626
+ * Prefer `for…of` over the `forEach` method.
7627
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-for-each.md
7628
+ */
7629
+ 'unicorn/no-for-each'?: Linter.RuleEntry<[]>;
7449
7630
  /**
7450
7631
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
7451
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-for-loop.md
7632
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-for-loop.md
7452
7633
  */
7453
7634
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
7454
7635
  /**
7455
- * Enforce the use of Unicode escapes instead of hexadecimal escapes.
7456
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-hex-escape.md
7636
+ * Disallow assigning properties on the global object.
7637
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-global-object-property-assignment.md
7638
+ */
7639
+ 'unicorn/no-global-object-property-assignment'?: Linter.RuleEntry<[]>;
7640
+ /**
7641
+ * Replaced by `unicorn/prefer-unicode-code-point-escapes` which covers more cases.
7642
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/deleted-and-deprecated-rules.md#no-hex-escape
7643
+ * @deprecated
7457
7644
  */
7458
7645
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
7459
7646
  /**
7460
7647
  * Disallow immediate mutation after variable assignment.
7461
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-immediate-mutation.md
7648
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-immediate-mutation.md
7462
7649
  */
7463
7650
  'unicorn/no-immediate-mutation'?: Linter.RuleEntry<[]>;
7651
+ /**
7652
+ * Disallow impossible comparisons against `.length` or `.size`.
7653
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-impossible-length-comparison.md
7654
+ */
7655
+ 'unicorn/no-impossible-length-comparison'?: Linter.RuleEntry<[]>;
7464
7656
  /**
7465
7657
  * Disallow incorrect `querySelector()` and `querySelectorAll()` usage.
7466
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-incorrect-query-selector.md
7658
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-incorrect-query-selector.md
7467
7659
  */
7468
7660
  'unicorn/no-incorrect-query-selector'?: Linter.RuleEntry<[]>;
7661
+ /**
7662
+ * Disallow incorrect template literal interpolation syntax.
7663
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-incorrect-template-string-interpolation.md
7664
+ */
7665
+ 'unicorn/no-incorrect-template-string-interpolation'?: Linter.RuleEntry<[]>;
7469
7666
  /**
7470
7667
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
7471
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/deleted-and-deprecated-rules.md#no-instanceof-array
7668
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/deleted-and-deprecated-rules.md#no-instanceof-array
7472
7669
  * @deprecated
7473
7670
  */
7474
7671
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
7475
7672
  /**
7476
7673
  * Disallow `instanceof` with built-in objects
7477
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-instanceof-builtins.md
7674
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-instanceof-builtins.md
7478
7675
  */
7479
7676
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
7677
+ /**
7678
+ * Disallow calling functions and constructors with an invalid number of arguments.
7679
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-invalid-argument-count.md
7680
+ */
7681
+ 'unicorn/no-invalid-argument-count'?: Linter.RuleEntry<UnicornNoInvalidArgumentCount>;
7682
+ /**
7683
+ * Disallow comparing a single character from a string to a multi-character string.
7684
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-invalid-character-comparison.md
7685
+ */
7686
+ 'unicorn/no-invalid-character-comparison'?: Linter.RuleEntry<[]>;
7480
7687
  /**
7481
7688
  * Disallow invalid options in `fetch()` and `new Request()`.
7482
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-invalid-fetch-options.md
7689
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-invalid-fetch-options.md
7483
7690
  */
7484
7691
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
7485
7692
  /**
7486
7693
  * Disallow invalid `accept` values on file inputs.
7487
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-invalid-file-input-accept.md
7694
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-invalid-file-input-accept.md
7488
7695
  */
7489
7696
  'unicorn/no-invalid-file-input-accept'?: Linter.RuleEntry<[]>;
7490
7697
  /**
7491
7698
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
7492
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-invalid-remove-event-listener.md
7699
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-invalid-remove-event-listener.md
7493
7700
  */
7494
7701
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
7702
+ /**
7703
+ * Disallow invalid implementations of well-known symbol methods.
7704
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-invalid-well-known-symbol-methods.md
7705
+ */
7706
+ 'unicorn/no-invalid-well-known-symbol-methods'?: Linter.RuleEntry<[]>;
7495
7707
  /**
7496
7708
  * Disallow identifiers starting with `new` or `class`.
7497
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-keyword-prefix.md
7709
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-keyword-prefix.md
7498
7710
  */
7499
7711
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
7500
7712
  /**
7501
7713
  * Disallow accessing `event.currentTarget` after the synchronous event dispatch has finished.
7502
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-late-current-target-access.md
7714
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-late-current-target-access.md
7503
7715
  */
7504
7716
  'unicorn/no-late-current-target-access'?: Linter.RuleEntry<[]>;
7717
+ /**
7718
+ * Disallow event-control method calls after the synchronous event dispatch has finished.
7719
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-late-event-control.md
7720
+ */
7721
+ 'unicorn/no-late-event-control'?: Linter.RuleEntry<[]>;
7505
7722
  /**
7506
7723
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
7507
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/deleted-and-deprecated-rules.md#no-length-as-slice-end
7724
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/deleted-and-deprecated-rules.md#no-length-as-slice-end
7508
7725
  * @deprecated
7509
7726
  */
7510
7727
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
7511
7728
  /**
7512
7729
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
7513
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-lonely-if.md
7730
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-lonely-if.md
7514
7731
  */
7515
7732
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
7733
+ /**
7734
+ * Disallow mutating a loop iterable during iteration.
7735
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-loop-iterable-mutation.md
7736
+ */
7737
+ 'unicorn/no-loop-iterable-mutation'?: Linter.RuleEntry<[]>;
7516
7738
  /**
7517
7739
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
7518
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-magic-array-flat-depth.md
7740
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-magic-array-flat-depth.md
7519
7741
  */
7520
7742
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
7521
7743
  /**
7522
7744
  * Disallow manually wrapped comments.
7523
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-manually-wrapped-comments.md
7745
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-manually-wrapped-comments.md
7524
7746
  */
7525
7747
  'unicorn/no-manually-wrapped-comments'?: Linter.RuleEntry<[]>;
7748
+ /**
7749
+ * Disallow checking a Map key before accessing a different key.
7750
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-mismatched-map-key.md
7751
+ */
7752
+ 'unicorn/no-mismatched-map-key'?: Linter.RuleEntry<[]>;
7753
+ /**
7754
+ * Disallow misrefactored compound assignments where the target is duplicated in the right-hand side.
7755
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-misrefactored-assignment.md
7756
+ */
7757
+ 'unicorn/no-misrefactored-assignment'?: Linter.RuleEntry<[]>;
7526
7758
  /**
7527
7759
  * Disallow named usage of default import and export.
7528
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-named-default.md
7760
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-named-default.md
7529
7761
  */
7530
7762
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
7763
+ /**
7764
+ * Disallow negated array predicate calls.
7765
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-negated-array-predicate.md
7766
+ */
7767
+ 'unicorn/no-negated-array-predicate'?: Linter.RuleEntry<[]>;
7768
+ /**
7769
+ * Disallow negated comparisons.
7770
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-negated-comparison.md
7771
+ */
7772
+ 'unicorn/no-negated-comparison'?: Linter.RuleEntry<UnicornNoNegatedComparison>;
7531
7773
  /**
7532
7774
  * Disallow negated conditions.
7533
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-negated-condition.md
7775
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-negated-condition.md
7534
7776
  */
7535
7777
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
7536
7778
  /**
7537
7779
  * Disallow negated expression in equality check.
7538
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-negation-in-equality-check.md
7780
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-negation-in-equality-check.md
7539
7781
  */
7540
7782
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
7541
7783
  /**
7542
7784
  * Disallow nested ternary expressions.
7543
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-nested-ternary.md
7785
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-nested-ternary.md
7544
7786
  */
7545
7787
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
7546
7788
  /**
7547
7789
  * Disallow `new Array()`.
7548
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-new-array.md
7790
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-new-array.md
7549
7791
  */
7550
7792
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
7551
7793
  /**
7552
7794
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
7553
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-new-buffer.md
7795
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-new-buffer.md
7554
7796
  */
7555
7797
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
7798
+ /**
7799
+ * Disallow non-function values with function-style verb prefixes.
7800
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-non-function-verb-prefix.md
7801
+ */
7802
+ 'unicorn/no-non-function-verb-prefix'?: Linter.RuleEntry<UnicornNoNonFunctionVerbPrefix>;
7803
+ /**
7804
+ * Disallow non-standard properties on built-in objects.
7805
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-nonstandard-builtin-properties.md
7806
+ */
7807
+ 'unicorn/no-nonstandard-builtin-properties'?: Linter.RuleEntry<[]>;
7556
7808
  /**
7557
7809
  * Disallow the use of the `null` literal.
7558
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-null.md
7810
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-null.md
7559
7811
  */
7560
7812
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
7561
7813
  /**
7562
7814
  * Disallow the use of objects as default parameters.
7563
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-object-as-default-parameter.md
7815
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-object-as-default-parameter.md
7564
7816
  */
7565
7817
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
7818
+ /**
7819
+ * Disallow `Object` methods with `Map` or `Set`.
7820
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-object-methods-with-collections.md
7821
+ */
7822
+ 'unicorn/no-object-methods-with-collections'?: Linter.RuleEntry<[]>;
7823
+ /**
7824
+ * Disallow optional chaining on undeclared variables.
7825
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-optional-chaining-on-undeclared-variable.md
7826
+ */
7827
+ 'unicorn/no-optional-chaining-on-undeclared-variable'?: Linter.RuleEntry<[]>;
7566
7828
  /**
7567
7829
  * Disallow `process.exit()`.
7568
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-process-exit.md
7830
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-process-exit.md
7569
7831
  */
7570
7832
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
7833
+ /**
7834
+ * Disallow comparisons made redundant by an equality check in the same logical AND.
7835
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-redundant-comparison.md
7836
+ */
7837
+ 'unicorn/no-redundant-comparison'?: Linter.RuleEntry<[]>;
7838
+ /**
7839
+ * Disallow using the return value of `Array#push()` and `Array#unshift()`.
7840
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-return-array-push.md
7841
+ */
7842
+ 'unicorn/no-return-array-push'?: Linter.RuleEntry<[]>;
7843
+ /**
7844
+ * Disallow selector syntax in DOM names.
7845
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-selector-as-dom-name.md
7846
+ */
7847
+ 'unicorn/no-selector-as-dom-name'?: Linter.RuleEntry<[]>;
7571
7848
  /**
7572
7849
  * Disallow passing single-element arrays to `Promise` methods.
7573
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-single-promise-in-promise-methods.md
7850
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-single-promise-in-promise-methods.md
7574
7851
  */
7575
7852
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
7576
7853
  /**
7577
7854
  * Disallow classes that only have static members.
7578
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-static-only-class.md
7855
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-static-only-class.md
7579
7856
  */
7580
7857
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
7858
+ /**
7859
+ * Prefer comparing values directly over subtracting and comparing to `0`.
7860
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-subtraction-comparison.md
7861
+ */
7862
+ 'unicorn/no-subtraction-comparison'?: Linter.RuleEntry<[]>;
7581
7863
  /**
7582
7864
  * Disallow `then` property.
7583
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-thenable.md
7865
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-thenable.md
7584
7866
  */
7585
7867
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
7586
7868
  /**
7587
7869
  * Disallow assigning `this` to a variable.
7588
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-this-assignment.md
7870
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-this-assignment.md
7589
7871
  */
7590
7872
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
7591
7873
  /**
7592
7874
  * Disallow `this` outside of classes.
7593
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-this-outside-of-class.md
7875
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-this-outside-of-class.md
7594
7876
  */
7595
7877
  'unicorn/no-this-outside-of-class'?: Linter.RuleEntry<[]>;
7878
+ /**
7879
+ * Disallow assigning to top-level variables from inside functions.
7880
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-top-level-assignment-in-function.md
7881
+ */
7882
+ 'unicorn/no-top-level-assignment-in-function'?: Linter.RuleEntry<[]>;
7883
+ /**
7884
+ * Disallow top-level side effects in exported modules.
7885
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-top-level-side-effects.md
7886
+ */
7887
+ 'unicorn/no-top-level-side-effects'?: Linter.RuleEntry<[]>;
7596
7888
  /**
7597
7889
  * Disallow comparing `undefined` using `typeof`.
7598
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-typeof-undefined.md
7890
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-typeof-undefined.md
7599
7891
  */
7600
7892
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
7893
+ /**
7894
+ * Disallow referencing methods without calling them.
7895
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-uncalled-method.md
7896
+ */
7897
+ 'unicorn/no-uncalled-method'?: Linter.RuleEntry<[]>;
7898
+ /**
7899
+ * Require class members to be declared.
7900
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-undeclared-class-members.md
7901
+ */
7902
+ 'unicorn/no-undeclared-class-members'?: Linter.RuleEntry<[]>;
7601
7903
  /**
7602
7904
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
7603
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unnecessary-array-flat-depth.md
7905
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-array-flat-depth.md
7604
7906
  */
7605
7907
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
7606
7908
  /**
7607
7909
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
7608
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unnecessary-array-splice-count.md
7910
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-array-splice-count.md
7609
7911
  */
7610
7912
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
7611
7913
  /**
7612
7914
  * Disallow awaiting non-promise values.
7613
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unnecessary-await.md
7915
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-await.md
7614
7916
  */
7615
7917
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
7918
+ /**
7919
+ * Disallow unnecessary comparisons against boolean literals.
7920
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-boolean-comparison.md
7921
+ */
7922
+ 'unicorn/no-unnecessary-boolean-comparison'?: Linter.RuleEntry<[]>;
7923
+ /**
7924
+ * Disallow unnecessary `globalThis` references.
7925
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-global-this.md
7926
+ */
7927
+ 'unicorn/no-unnecessary-global-this'?: Linter.RuleEntry<[]>;
7616
7928
  /**
7617
7929
  * Disallow unnecessary nested ternary expressions.
7618
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unnecessary-nested-ternary.md
7930
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-nested-ternary.md
7619
7931
  */
7620
7932
  'unicorn/no-unnecessary-nested-ternary'?: Linter.RuleEntry<[]>;
7621
7933
  /**
7622
7934
  * Enforce the use of built-in methods instead of unnecessary polyfills.
7623
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unnecessary-polyfills.md
7935
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-polyfills.md
7624
7936
  */
7625
7937
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
7626
7938
  /**
7627
7939
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
7628
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unnecessary-slice-end.md
7940
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-slice-end.md
7629
7941
  */
7630
7942
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
7943
+ /**
7944
+ * Disallow `Array#splice()` when simpler alternatives exist.
7945
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unnecessary-splice.md
7946
+ */
7947
+ 'unicorn/no-unnecessary-splice'?: Linter.RuleEntry<[]>;
7631
7948
  /**
7632
7949
  * Disallow unreadable array destructuring.
7633
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unreadable-array-destructuring.md
7950
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unreadable-array-destructuring.md
7951
+ */
7952
+ 'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<UnicornNoUnreadableArrayDestructuring>;
7953
+ /**
7954
+ * Disallow unreadable iterable expressions in `for…of` and `for await…of` loop headers.
7955
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unreadable-for-of-expression.md
7634
7956
  */
7635
- 'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
7957
+ 'unicorn/no-unreadable-for-of-expression'?: Linter.RuleEntry<[]>;
7636
7958
  /**
7637
7959
  * Disallow unreadable IIFEs.
7638
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unreadable-iife.md
7960
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unreadable-iife.md
7639
7961
  */
7640
7962
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
7963
+ /**
7964
+ * Disallow unreadable `new` expressions.
7965
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unreadable-new-expression.md
7966
+ */
7967
+ 'unicorn/no-unreadable-new-expression'?: Linter.RuleEntry<[]>;
7968
+ /**
7969
+ * Disallow unreadable object destructuring.
7970
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unreadable-object-destructuring.md
7971
+ */
7972
+ 'unicorn/no-unreadable-object-destructuring'?: Linter.RuleEntry<[]>;
7973
+ /**
7974
+ * Prevent unsafe use of ArrayBuffer view `.buffer`.
7975
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unsafe-buffer-conversion.md
7976
+ */
7977
+ 'unicorn/no-unsafe-buffer-conversion'?: Linter.RuleEntry<[]>;
7978
+ /**
7979
+ * Disallow unsafe DOM HTML APIs.
7980
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unsafe-dom-html.md
7981
+ */
7982
+ 'unicorn/no-unsafe-dom-html'?: Linter.RuleEntry<[]>;
7983
+ /**
7984
+ * Disallow unsafe values as property keys.
7985
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unsafe-property-key.md
7986
+ */
7987
+ 'unicorn/no-unsafe-property-key'?: Linter.RuleEntry<[]>;
7988
+ /**
7989
+ * Disallow non-literal replacement values in `String#replace()` and `String#replaceAll()`.
7990
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unsafe-string-replacement.md
7991
+ */
7992
+ 'unicorn/no-unsafe-string-replacement'?: Linter.RuleEntry<[]>;
7641
7993
  /**
7642
7994
  * Disallow ignoring the return value of selected array methods.
7643
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unused-array-method-return.md
7995
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unused-array-method-return.md
7644
7996
  */
7645
7997
  'unicorn/no-unused-array-method-return'?: Linter.RuleEntry<[]>;
7646
7998
  /**
7647
7999
  * Disallow unused object properties.
7648
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-unused-properties.md
8000
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-unused-properties.md
7649
8001
  */
7650
8002
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
8003
+ /**
8004
+ * Disallow unnecessary `Boolean()` casts in array predicate callbacks.
8005
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-boolean-cast.md
8006
+ */
8007
+ 'unicorn/no-useless-boolean-cast'?: Linter.RuleEntry<[]>;
8008
+ /**
8009
+ * Disallow useless type coercions of values that are already of the target type.
8010
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-coercion.md
8011
+ */
8012
+ 'unicorn/no-useless-coercion'?: Linter.RuleEntry<[]>;
7651
8013
  /**
7652
8014
  * Disallow useless values or fallbacks in `Set`, `Map`, `WeakSet`, or `WeakMap`.
7653
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-collection-argument.md
8015
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-collection-argument.md
7654
8016
  */
7655
8017
  'unicorn/no-useless-collection-argument'?: Linter.RuleEntry<[]>;
8018
+ /**
8019
+ * Disallow useless compound assignments such as `x += 0`.
8020
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-compound-assignment.md
8021
+ */
8022
+ 'unicorn/no-useless-compound-assignment'?: Linter.RuleEntry<[]>;
8023
+ /**
8024
+ * Disallow useless concatenation of literals.
8025
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-concat.md
8026
+ */
8027
+ 'unicorn/no-useless-concat'?: Linter.RuleEntry<[]>;
8028
+ /**
8029
+ * Disallow useless `continue` statements.
8030
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-continue.md
8031
+ */
8032
+ 'unicorn/no-useless-continue'?: Linter.RuleEntry<[]>;
8033
+ /**
8034
+ * Disallow unnecessary existence checks before deletion.
8035
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-delete-check.md
8036
+ */
8037
+ 'unicorn/no-useless-delete-check'?: Linter.RuleEntry<[]>;
8038
+ /**
8039
+ * Disallow `else` after a statement that exits.
8040
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-else.md
8041
+ */
8042
+ 'unicorn/no-useless-else'?: Linter.RuleEntry<[]>;
7656
8043
  /**
7657
8044
  * Disallow unnecessary `Error.captureStackTrace(…)`.
7658
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-error-capture-stack-trace.md
8045
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-error-capture-stack-trace.md
7659
8046
  */
7660
8047
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
7661
8048
  /**
7662
8049
  * Disallow useless fallback when spreading in object literals.
7663
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-fallback-in-spread.md
8050
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-fallback-in-spread.md
7664
8051
  */
7665
8052
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
7666
8053
  /**
7667
8054
  * Disallow unnecessary `.toArray()` on iterators.
7668
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-iterator-to-array.md
8055
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-iterator-to-array.md
7669
8056
  */
7670
8057
  'unicorn/no-useless-iterator-to-array'?: Linter.RuleEntry<[]>;
7671
8058
  /**
7672
8059
  * Disallow useless array length check.
7673
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-length-check.md
8060
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-length-check.md
7674
8061
  */
7675
8062
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
8063
+ /**
8064
+ * Disallow unnecessary operands in logical expressions involving boolean literals.
8065
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-logical-operand.md
8066
+ */
8067
+ 'unicorn/no-useless-logical-operand'?: Linter.RuleEntry<[]>;
8068
+ /**
8069
+ * Disallow useless overrides of class methods.
8070
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-override.md
8071
+ */
8072
+ 'unicorn/no-useless-override'?: Linter.RuleEntry<[]>;
7676
8073
  /**
7677
8074
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
7678
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-promise-resolve-reject.md
8075
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-promise-resolve-reject.md
7679
8076
  */
7680
8077
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
8078
+ /**
8079
+ * Disallow simple recursive function calls that can be replaced with a loop.
8080
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-recursion.md
8081
+ */
8082
+ 'unicorn/no-useless-recursion'?: Linter.RuleEntry<[]>;
7681
8083
  /**
7682
8084
  * Disallow unnecessary spread.
7683
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-spread.md
8085
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-spread.md
7684
8086
  */
7685
8087
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
7686
8088
  /**
7687
8089
  * Disallow useless case in switch statements.
7688
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-switch-case.md
8090
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-switch-case.md
7689
8091
  */
7690
8092
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
8093
+ /**
8094
+ * Disallow useless template literal expressions.
8095
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-template-literals.md
8096
+ */
8097
+ 'unicorn/no-useless-template-literals'?: Linter.RuleEntry<[]>;
7691
8098
  /**
7692
8099
  * Disallow useless `undefined`.
7693
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-useless-undefined.md
8100
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-useless-undefined.md
7694
8101
  */
7695
8102
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
8103
+ /**
8104
+ * Disallow the bitwise XOR operator where exponentiation was likely intended.
8105
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-xor-as-exponentiation.md
8106
+ */
8107
+ 'unicorn/no-xor-as-exponentiation'?: Linter.RuleEntry<[]>;
7696
8108
  /**
7697
8109
  * Disallow number literals with zero fractions or dangling dots.
7698
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/no-zero-fractions.md
8110
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/no-zero-fractions.md
7699
8111
  */
7700
8112
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
7701
8113
  /**
7702
8114
  * Enforce proper case for numeric literals.
7703
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/number-literal-case.md
8115
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/number-literal-case.md
7704
8116
  */
7705
8117
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
7706
8118
  /**
7707
8119
  * Enforce the style of numeric separators by correctly grouping digits.
7708
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/numeric-separators-style.md
8120
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/numeric-separators-style.md
7709
8121
  */
7710
8122
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
8123
+ /**
8124
+ * Require assignment operator shorthand where possible.
8125
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/operator-assignment.md
8126
+ */
8127
+ 'unicorn/operator-assignment'?: Linter.RuleEntry<UnicornOperatorAssignment>;
8128
+ /**
8129
+ * Prefer `AbortSignal.timeout()` over manually aborting an `AbortController` with `setTimeout()`.
8130
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-abort-signal-timeout.md
8131
+ */
8132
+ 'unicorn/prefer-abort-signal-timeout'?: Linter.RuleEntry<[]>;
7711
8133
  /**
7712
8134
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
7713
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-add-event-listener.md
8135
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-add-event-listener.md
7714
8136
  */
7715
8137
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
8138
+ /**
8139
+ * Prefer an options object over a boolean in `.addEventListener()`.
8140
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-add-event-listener-options.md
8141
+ */
8142
+ 'unicorn/prefer-add-event-listener-options'?: Linter.RuleEntry<[]>;
8143
+ /**
8144
+ * Prefer `AggregateError` when throwing collected errors.
8145
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-aggregate-error.md
8146
+ */
8147
+ 'unicorn/prefer-aggregate-error'?: Linter.RuleEntry<[]>;
7716
8148
  /**
7717
8149
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
7718
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-array-find.md
8150
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-find.md
7719
8151
  */
7720
8152
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
7721
8153
  /**
7722
8154
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
7723
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-array-flat.md
8155
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-flat.md
7724
8156
  */
7725
8157
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
7726
8158
  /**
7727
- * Prefer `.flatMap(…)` over `.map(…).flat()`.
7728
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-array-flat-map.md
8159
+ * Prefer `.flatMap(…)` over `.map(…).flat()` and `.filter(…).flatMap(…)`.
8160
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-flat-map.md
7729
8161
  */
7730
8162
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
8163
+ /**
8164
+ * Prefer `Array.fromAsync()` over `for await…of` array accumulation.
8165
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-from-async.md
8166
+ */
8167
+ 'unicorn/prefer-array-from-async'?: Linter.RuleEntry<[]>;
8168
+ /**
8169
+ * Prefer using the `Array.from()` mapping function argument.
8170
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-from-map.md
8171
+ */
8172
+ 'unicorn/prefer-array-from-map'?: Linter.RuleEntry<[]>;
7731
8173
  /**
7732
8174
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
7733
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-array-index-of.md
8175
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-index-of.md
7734
8176
  */
7735
8177
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
8178
+ /**
8179
+ * Prefer iterating an array directly or with `Array#keys()` over `Array#entries()` when the index or value is unused.
8180
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-iterable-methods.md
8181
+ */
8182
+ 'unicorn/prefer-array-iterable-methods'?: Linter.RuleEntry<[]>;
7736
8183
  /**
7737
8184
  * Prefer last-oriented array methods over `Array#reverse()` or `Array#toReversed()` followed by a method.
7738
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-array-last-methods.md
8185
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-last-methods.md
7739
8186
  */
7740
8187
  'unicorn/prefer-array-last-methods'?: Linter.RuleEntry<[]>;
8188
+ /**
8189
+ * Prefer `Array#slice()` over `Array#splice()` when reading from the returned array.
8190
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-slice.md
8191
+ */
8192
+ 'unicorn/prefer-array-slice'?: Linter.RuleEntry<[]>;
7741
8193
  /**
7742
8194
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
7743
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-array-some.md
8195
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-array-some.md
7744
8196
  */
7745
8197
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
7746
8198
  /**
7747
8199
  * Prefer `.at()` method for index access and `String#charAt()`.
7748
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-at.md
8200
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-at.md
7749
8201
  */
7750
8202
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
8203
+ /**
8204
+ * Prefer `await` over promise chaining.
8205
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-await.md
8206
+ */
8207
+ 'unicorn/prefer-await'?: Linter.RuleEntry<[]>;
7751
8208
  /**
7752
8209
  * Prefer `BigInt` literals over the constructor.
7753
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-bigint-literals.md
8210
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-bigint-literals.md
7754
8211
  */
7755
8212
  'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
7756
8213
  /**
7757
8214
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
7758
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-blob-reading-methods.md
8215
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-blob-reading-methods.md
7759
8216
  */
7760
8217
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
8218
+ /**
8219
+ * Prefer directly returning boolean expressions over `if` statements.
8220
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-boolean-return.md
8221
+ */
8222
+ 'unicorn/prefer-boolean-return'?: Linter.RuleEntry<[]>;
7761
8223
  /**
7762
8224
  * Prefer class field declarations over `this` assignments in constructors.
7763
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-class-fields.md
8225
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-class-fields.md
7764
8226
  */
7765
8227
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
7766
8228
  /**
7767
8229
  * Prefer using `Element#classList.toggle()` to toggle class names.
7768
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-classlist-toggle.md
8230
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-classlist-toggle.md
7769
8231
  */
7770
8232
  'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
7771
8233
  /**
7772
8234
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
7773
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-code-point.md
8235
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-code-point.md
7774
8236
  */
7775
8237
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
8238
+ /**
8239
+ * Prefer early continues over whole-loop conditional wrapping.
8240
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-continue.md
8241
+ */
8242
+ 'unicorn/prefer-continue'?: Linter.RuleEntry<UnicornPreferContinue>;
7776
8243
  /**
7777
8244
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
7778
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-date-now.md
8245
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-date-now.md
7779
8246
  */
7780
8247
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
7781
8248
  /**
7782
8249
  * Prefer default parameters over reassignment.
7783
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-default-parameters.md
8250
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-default-parameters.md
7784
8251
  */
7785
8252
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
8253
+ /**
8254
+ * Prefer direct iteration over default iterator method calls.
8255
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-direct-iteration.md
8256
+ */
8257
+ 'unicorn/prefer-direct-iteration'?: Linter.RuleEntry<[]>;
8258
+ /**
8259
+ * Prefer using `using`/`await using` over manual `try`/`finally` resource disposal.
8260
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-dispose.md
8261
+ */
8262
+ 'unicorn/prefer-dispose'?: Linter.RuleEntry<[]>;
7786
8263
  /**
7787
8264
  * Prefer `Element#append()` over `Node#appendChild()`.
7788
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-dom-node-append.md
8265
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-dom-node-append.md
7789
8266
  */
7790
8267
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
7791
8268
  /**
7792
8269
  * Renamed to `unicorn/dom-node-dataset`.
7793
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/deleted-and-deprecated-rules.md#prefer-dom-node-dataset
8270
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/deleted-and-deprecated-rules.md#prefer-dom-node-dataset
7794
8271
  * @deprecated
7795
8272
  */
7796
8273
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
8274
+ /**
8275
+ * Prefer `.getHTML()` and `.setHTML()` over `.innerHTML`.
8276
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-dom-node-html-methods.md
8277
+ */
8278
+ 'unicorn/prefer-dom-node-html-methods'?: Linter.RuleEntry<[]>;
7797
8279
  /**
7798
8280
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
7799
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-dom-node-remove.md
8281
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-dom-node-remove.md
7800
8282
  */
7801
8283
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
8284
+ /**
8285
+ * Prefer `.replaceChildren()` when emptying DOM children.
8286
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-dom-node-replace-children.md
8287
+ */
8288
+ 'unicorn/prefer-dom-node-replace-children'?: Linter.RuleEntry<[]>;
7802
8289
  /**
7803
8290
  * Prefer `.textContent` over `.innerText`.
7804
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-dom-node-text-content.md
8291
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-dom-node-text-content.md
7805
8292
  */
7806
8293
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
8294
+ /**
8295
+ * Prefer early returns over full-function conditional wrapping.
8296
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-early-return.md
8297
+ */
8298
+ 'unicorn/prefer-early-return'?: Linter.RuleEntry<UnicornPreferEarlyReturn>;
8299
+ /**
8300
+ * Prefer `else if` over adjacent `if` statements with related conditions.
8301
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-else-if.md
8302
+ */
8303
+ 'unicorn/prefer-else-if'?: Linter.RuleEntry<[]>;
8304
+ /**
8305
+ * Prefer `Error.isError()` when checking for errors.
8306
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-error-is-error.md
8307
+ */
8308
+ 'unicorn/prefer-error-is-error'?: Linter.RuleEntry<[]>;
7807
8309
  /**
7808
8310
  * Prefer `EventTarget` over `EventEmitter`.
7809
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-event-target.md
8311
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-event-target.md
7810
8312
  */
7811
8313
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
7812
8314
  /**
7813
8315
  * Prefer `export…from` when re-exporting.
7814
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-export-from.md
8316
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-export-from.md
7815
8317
  */
7816
8318
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
8319
+ /**
8320
+ * Prefer flat `Math.min()` and `Math.max()` calls over nested calls.
8321
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-flat-math-min-max.md
8322
+ */
8323
+ 'unicorn/prefer-flat-math-min-max'?: Linter.RuleEntry<[]>;
7817
8324
  /**
7818
8325
  * Prefer `.getOrInsertComputed()` when the default value has side effects.
7819
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-get-or-insert-computed.md
8326
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-get-or-insert-computed.md
7820
8327
  */
7821
8328
  'unicorn/prefer-get-or-insert-computed'?: Linter.RuleEntry<[]>;
8329
+ /**
8330
+ * Prefer global numeric constants over `Number` static properties.
8331
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-global-number-constants.md
8332
+ */
8333
+ 'unicorn/prefer-global-number-constants'?: Linter.RuleEntry<[]>;
7822
8334
  /**
7823
8335
  * Prefer `globalThis` over `window`, `self`, and `global`.
7824
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-global-this.md
8336
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-global-this.md
7825
8337
  */
7826
8338
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
8339
+ /**
8340
+ * Prefer `.has()` when checking existence.
8341
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-has-check.md
8342
+ */
8343
+ 'unicorn/prefer-has-check'?: Linter.RuleEntry<[]>;
8344
+ /**
8345
+ * Prefer moving code shared by all branches of an `if` statement out of the branches.
8346
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-hoisting-branch-code.md
8347
+ */
8348
+ 'unicorn/prefer-hoisting-branch-code'?: Linter.RuleEntry<[]>;
7827
8349
  /**
7828
8350
  * Prefer HTTPS over HTTP.
7829
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-https.md
8351
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-https.md
7830
8352
  */
7831
8353
  'unicorn/prefer-https'?: Linter.RuleEntry<[]>;
8354
+ /**
8355
+ * Prefer identifiers over string literals in import and export specifiers.
8356
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-identifier-import-export-specifiers.md
8357
+ */
8358
+ 'unicorn/prefer-identifier-import-export-specifiers'?: Linter.RuleEntry<[]>;
7832
8359
  /**
7833
8360
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
7834
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-import-meta-properties.md
8361
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-import-meta-properties.md
7835
8362
  */
7836
8363
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
7837
8364
  /**
7838
8365
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
7839
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-includes.md
8366
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-includes.md
7840
8367
  */
7841
8368
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
7842
8369
  /**
7843
8370
  * Prefer `.includes()` over repeated equality comparisons.
7844
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-includes-over-repeated-comparisons.md
8371
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-includes-over-repeated-comparisons.md
7845
8372
  */
7846
8373
  'unicorn/prefer-includes-over-repeated-comparisons'?: Linter.RuleEntry<UnicornPreferIncludesOverRepeatedComparisons>;
8374
+ /**
8375
+ * Prefer passing iterables directly to constructors instead of filling empty collections.
8376
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-iterable-in-constructor.md
8377
+ */
8378
+ 'unicorn/prefer-iterable-in-constructor'?: Linter.RuleEntry<[]>;
7847
8379
  /**
7848
8380
  * Prefer `Iterator.concat(…)` over temporary spread arrays.
7849
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-iterator-concat.md
8381
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-iterator-concat.md
7850
8382
  */
7851
8383
  'unicorn/prefer-iterator-concat'?: Linter.RuleEntry<[]>;
8384
+ /**
8385
+ * Prefer `Iterator#toArray()` over temporary arrays from iterator spreads.
8386
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-iterator-to-array.md
8387
+ */
8388
+ 'unicorn/prefer-iterator-to-array'?: Linter.RuleEntry<[]>;
7852
8389
  /**
7853
8390
  * Prefer moving `.toArray()` to the end of iterator helper chains.
7854
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-iterator-to-array-at-end.md
8391
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-iterator-to-array-at-end.md
7855
8392
  */
7856
8393
  'unicorn/prefer-iterator-to-array-at-end'?: Linter.RuleEntry<[]>;
7857
8394
  /**
7858
8395
  * Renamed to `unicorn/consistent-json-file-read`.
7859
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/deleted-and-deprecated-rules.md#prefer-json-parse-buffer
8396
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/deleted-and-deprecated-rules.md#prefer-json-parse-buffer
7860
8397
  * @deprecated
7861
8398
  */
7862
8399
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
7863
8400
  /**
7864
8401
  * Prefer `KeyboardEvent#key` over deprecated keyboard event properties.
7865
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-keyboard-event-key.md
8402
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-keyboard-event-key.md
7866
8403
  */
7867
8404
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
8405
+ /**
8406
+ * Prefer `location.assign()` over assigning to `location.href`.
8407
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-location-assign.md
8408
+ */
8409
+ 'unicorn/prefer-location-assign'?: Linter.RuleEntry<[]>;
7868
8410
  /**
7869
8411
  * Prefer using a logical operator over a ternary.
7870
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-logical-operator-over-ternary.md
8412
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-logical-operator-over-ternary.md
7871
8413
  */
7872
8414
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
8415
+ /**
8416
+ * Prefer `new Map()` over `Object.fromEntries()` when using the result as a map.
8417
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-map-from-entries.md
8418
+ */
8419
+ 'unicorn/prefer-map-from-entries'?: Linter.RuleEntry<[]>;
7873
8420
  /**
7874
8421
  * Prefer `Math.abs()` over manual absolute value expressions and symmetric range checks.
7875
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-math-abs.md
8422
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-math-abs.md
7876
8423
  */
7877
8424
  'unicorn/prefer-math-abs'?: Linter.RuleEntry<[]>;
8425
+ /**
8426
+ * Prefer `Math` constants over their approximate numeric values.
8427
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-math-constants.md
8428
+ */
8429
+ 'unicorn/prefer-math-constants'?: Linter.RuleEntry<[]>;
7878
8430
  /**
7879
8431
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
7880
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-math-min-max.md
8432
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-math-min-max.md
7881
8433
  */
7882
8434
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
7883
8435
  /**
7884
- * Enforce the use of `Math.trunc` instead of bitwise operators.
7885
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-math-trunc.md
8436
+ * Prefer `Math.trunc()` for truncating numbers.
8437
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-math-trunc.md
7886
8438
  */
7887
8439
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
7888
8440
  /**
7889
- * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
7890
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-modern-dom-apis.md
8441
+ * Prefer moving ternaries into the minimal varying part of an expression.
8442
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-minimal-ternary.md
8443
+ */
8444
+ 'unicorn/prefer-minimal-ternary'?: Linter.RuleEntry<UnicornPreferMinimalTernary>;
8445
+ /**
8446
+ * Prefer modern DOM APIs.
8447
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-modern-dom-apis.md
7891
8448
  */
7892
8449
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
7893
8450
  /**
7894
8451
  * Prefer modern `Math` APIs over legacy patterns.
7895
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-modern-math-apis.md
8452
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-modern-math-apis.md
7896
8453
  */
7897
8454
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
7898
8455
  /**
7899
8456
  * Prefer JavaScript modules (ESM) over CommonJS.
7900
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-module.md
8457
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-module.md
7901
8458
  */
7902
8459
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
7903
8460
  /**
7904
8461
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
7905
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-native-coercion-functions.md
8462
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-native-coercion-functions.md
7906
8463
  */
7907
8464
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
7908
8465
  /**
7909
8466
  * Prefer negative index over `.length - index` when possible.
7910
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-negative-index.md
8467
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-negative-index.md
7911
8468
  */
7912
8469
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
7913
8470
  /**
7914
8471
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
7915
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-node-protocol.md
8472
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-node-protocol.md
7916
8473
  */
7917
8474
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
7918
8475
  /**
7919
- * Prefer `Number` static properties over global ones.
7920
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-number-properties.md
8476
+ * Prefer `Number()` over `parseFloat()` and base-10 `parseInt()`.
8477
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-number-coercion.md
8478
+ */
8479
+ 'unicorn/prefer-number-coercion'?: Linter.RuleEntry<[]>;
8480
+ /**
8481
+ * Prefer `Number.isSafeInteger()` over integer checks.
8482
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-number-is-safe-integer.md
8483
+ */
8484
+ 'unicorn/prefer-number-is-safe-integer'?: Linter.RuleEntry<[]>;
8485
+ /**
8486
+ * Prefer `Number` static methods over global functions and optionally static properties over global constants.
8487
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-number-properties.md
7921
8488
  */
7922
8489
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
8490
+ /**
8491
+ * Prefer `Object.defineProperties()` over multiple `Object.defineProperty()` calls.
8492
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-object-define-properties.md
8493
+ */
8494
+ 'unicorn/prefer-object-define-properties'?: Linter.RuleEntry<[]>;
8495
+ /**
8496
+ * Prefer object destructuring defaults over default object literals with spread.
8497
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-object-destructuring-defaults.md
8498
+ */
8499
+ 'unicorn/prefer-object-destructuring-defaults'?: Linter.RuleEntry<[]>;
7923
8500
  /**
7924
8501
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
7925
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-object-from-entries.md
8502
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-object-from-entries.md
7926
8503
  */
7927
8504
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
8505
+ /**
8506
+ * Prefer the most specific `Object` iterable method.
8507
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-object-iterable-methods.md
8508
+ */
8509
+ 'unicorn/prefer-object-iterable-methods'?: Linter.RuleEntry<[]>;
8510
+ /**
8511
+ * Prefer observer APIs over resize and scroll listeners with layout reads.
8512
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-observer-apis.md
8513
+ */
8514
+ 'unicorn/prefer-observer-apis'?: Linter.RuleEntry<[]>;
7928
8515
  /**
7929
8516
  * Prefer omitting the `catch` binding parameter.
7930
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-optional-catch-binding.md
8517
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-optional-catch-binding.md
7931
8518
  */
7932
8519
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
8520
+ /**
8521
+ * Prefer `Path2D` for repeatedly drawn canvas paths.
8522
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-path2d.md
8523
+ */
8524
+ 'unicorn/prefer-path2d'?: Linter.RuleEntry<[]>;
8525
+ /**
8526
+ * Prefer private class fields over the underscore-prefix convention.
8527
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-private-class-fields.md
8528
+ */
8529
+ 'unicorn/prefer-private-class-fields'?: Linter.RuleEntry<[]>;
8530
+ /**
8531
+ * Prefer `Promise.try()` over promise-wrapping boilerplate.
8532
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-promise-try.md
8533
+ */
8534
+ 'unicorn/prefer-promise-try'?: Linter.RuleEntry<[]>;
8535
+ /**
8536
+ * Prefer `Promise.withResolvers()` when extracting resolver functions from `new Promise()`.
8537
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-promise-with-resolvers.md
8538
+ */
8539
+ 'unicorn/prefer-promise-with-resolvers'?: Linter.RuleEntry<[]>;
7933
8540
  /**
7934
8541
  * Prefer borrowing methods from the prototype instead of the instance.
7935
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-prototype-methods.md
8542
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-prototype-methods.md
7936
8543
  */
7937
8544
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
7938
8545
  /**
7939
8546
  * Prefer `.querySelector()` and `.querySelectorAll()` over older DOM query methods.
7940
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-query-selector.md
8547
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-query-selector.md
7941
8548
  */
7942
8549
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<UnicornPreferQuerySelector>;
7943
8550
  /**
7944
8551
  * Prefer `queueMicrotask()` over `process.nextTick()`, `setImmediate()`, and `setTimeout(…, 0)`.
7945
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-queue-microtask.md
8552
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-queue-microtask.md
7946
8553
  */
7947
8554
  'unicorn/prefer-queue-microtask'?: Linter.RuleEntry<UnicornPreferQueueMicrotask>;
7948
8555
  /**
7949
8556
  * Prefer `Reflect.apply()` over `Function#apply()`.
7950
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-reflect-apply.md
8557
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-reflect-apply.md
7951
8558
  */
7952
8559
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
7953
8560
  /**
7954
- * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
7955
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-regexp-test.md
8561
+ * Prefer `RegExp.escape()` for escaping strings to use in regular expressions.
8562
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-regexp-escape.md
8563
+ */
8564
+ 'unicorn/prefer-regexp-escape'?: Linter.RuleEntry<[]>;
8565
+ /**
8566
+ * Prefer `RegExp#test()` over `String#match()`, `String#search()`, and `RegExp#exec()`.
8567
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-regexp-test.md
7956
8568
  */
7957
8569
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
7958
8570
  /**
7959
8571
  * Prefer `Response.json()` over `new Response(JSON.stringify())`.
7960
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-response-static-json.md
8572
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-response-static-json.md
7961
8573
  */
7962
8574
  'unicorn/prefer-response-static-json'?: Linter.RuleEntry<[]>;
8575
+ /**
8576
+ * Prefer `:scope` when using element query selector methods.
8577
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-scoped-selector.md
8578
+ */
8579
+ 'unicorn/prefer-scoped-selector'?: Linter.RuleEntry<[]>;
7963
8580
  /**
7964
8581
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
7965
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-set-has.md
8582
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-set-has.md
7966
8583
  */
7967
8584
  'unicorn/prefer-set-has'?: Linter.RuleEntry<UnicornPreferSetHas>;
8585
+ /**
8586
+ * Prefer `Set` methods for Set operations.
8587
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-set-methods.md
8588
+ */
8589
+ 'unicorn/prefer-set-methods'?: Linter.RuleEntry<[]>;
7968
8590
  /**
7969
8591
  * Prefer using `Set#size` instead of `Array#length`.
7970
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-set-size.md
8592
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-set-size.md
7971
8593
  */
7972
8594
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
8595
+ /**
8596
+ * Prefer arrow function properties over methods with a single return.
8597
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-short-arrow-method.md
8598
+ */
8599
+ 'unicorn/prefer-short-arrow-method'?: Linter.RuleEntry<[]>;
7973
8600
  /**
7974
8601
  * Prefer simple conditions first in logical expressions.
7975
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-simple-condition-first.md
8602
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-simple-condition-first.md
7976
8603
  */
7977
8604
  'unicorn/prefer-simple-condition-first'?: Linter.RuleEntry<[]>;
8605
+ /**
8606
+ * Prefer a simple comparison function for `Array#sort()`.
8607
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-simple-sort-comparator.md
8608
+ */
8609
+ 'unicorn/prefer-simple-sort-comparator'?: Linter.RuleEntry<[]>;
8610
+ /**
8611
+ * Prefer a single `Array#some()` or `Array#every()` with a combined predicate.
8612
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-single-array-predicate.md
8613
+ */
8614
+ 'unicorn/prefer-single-array-predicate'?: Linter.RuleEntry<[]>;
7978
8615
  /**
7979
8616
  * Enforce combining multiple `Array#{push,unshift}()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
7980
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-single-call.md
8617
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-single-call.md
7981
8618
  */
7982
8619
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
8620
+ /**
8621
+ * Prefer a single object destructuring declaration per local const source.
8622
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-single-object-destructuring.md
8623
+ */
8624
+ 'unicorn/prefer-single-object-destructuring'?: Linter.RuleEntry<[]>;
8625
+ /**
8626
+ * Enforce combining multiple single-character replacements into a single `String#replaceAll()` with a regular expression.
8627
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-single-replace.md
8628
+ */
8629
+ 'unicorn/prefer-single-replace'?: Linter.RuleEntry<[]>;
8630
+ /**
8631
+ * Prefer declaring variables in the smallest possible scope.
8632
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-smaller-scope.md
8633
+ */
8634
+ 'unicorn/prefer-smaller-scope'?: Linter.RuleEntry<[]>;
7983
8635
  /**
7984
8636
  * Prefer `String#split()` with a limit.
7985
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-split-limit.md
8637
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-split-limit.md
7986
8638
  */
7987
8639
  'unicorn/prefer-split-limit'?: Linter.RuleEntry<[]>;
7988
8640
  /**
7989
- * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
7990
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-spread.md
8641
+ * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()`, and trivial `for…of` copies.
8642
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-spread.md
7991
8643
  */
7992
8644
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
7993
8645
  /**
7994
8646
  * Prefer `String#matchAll()` over `RegExp#exec()` loops.
7995
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-string-match-all.md
8647
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-string-match-all.md
7996
8648
  */
7997
8649
  'unicorn/prefer-string-match-all'?: Linter.RuleEntry<[]>;
7998
8650
  /**
7999
8651
  * Prefer `String#padStart()` and `String#padEnd()` over manual string padding.
8000
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-string-pad-start-end.md
8652
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-string-pad-start-end.md
8001
8653
  */
8002
8654
  'unicorn/prefer-string-pad-start-end'?: Linter.RuleEntry<[]>;
8003
8655
  /**
8004
8656
  * Prefer using the `String.raw` tag to avoid escaping `\`.
8005
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-string-raw.md
8657
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-string-raw.md
8006
8658
  */
8007
8659
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
8008
8660
  /**
8009
8661
  * Prefer `String#repeat()` for repeated whitespace.
8010
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-string-repeat.md
8662
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-string-repeat.md
8011
8663
  */
8012
8664
  'unicorn/prefer-string-repeat'?: Linter.RuleEntry<UnicornPreferStringRepeat>;
8013
8665
  /**
8014
8666
  * Prefer `String#replaceAll()` over regex searches with the global flag and `String#split().join()`.
8015
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-string-replace-all.md
8667
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-string-replace-all.md
8016
8668
  */
8017
8669
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
8018
8670
  /**
8019
8671
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
8020
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-string-slice.md
8672
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-string-slice.md
8021
8673
  */
8022
8674
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
8023
8675
  /**
8024
- * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
8025
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-string-starts-ends-with.md
8676
+ * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()` and `String#indexOf() === 0`.
8677
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-string-starts-ends-with.md
8026
8678
  */
8027
8679
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
8028
8680
  /**
8029
8681
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
8030
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-string-trim-start-end.md
8682
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-string-trim-start-end.md
8031
8683
  */
8032
8684
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
8033
8685
  /**
8034
8686
  * Prefer using `structuredClone` to create a deep clone.
8035
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-structured-clone.md
8687
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-structured-clone.md
8036
8688
  */
8037
8689
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
8038
8690
  /**
8039
8691
  * Prefer `switch` over multiple `else-if`.
8040
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-switch.md
8692
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-switch.md
8041
8693
  */
8042
8694
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
8043
8695
  /**
8044
- * Prefer ternary expressions over simple `if-else` statements.
8045
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-ternary.md
8696
+ * Prefer `Temporal` over `Date`.
8697
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-temporal.md
8698
+ */
8699
+ 'unicorn/prefer-temporal'?: Linter.RuleEntry<UnicornPreferTemporal>;
8700
+ /**
8701
+ * Prefer ternary expressions over simple `if` statements that return or assign values.
8702
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-ternary.md
8046
8703
  */
8047
8704
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
8705
+ /**
8706
+ * Prefer using `Element#toggleAttribute()` to toggle attributes.
8707
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-toggle-attribute.md
8708
+ */
8709
+ 'unicorn/prefer-toggle-attribute'?: Linter.RuleEntry<[]>;
8048
8710
  /**
8049
8711
  * Prefer top-level await over top-level promises and async function calls.
8050
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-top-level-await.md
8712
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-top-level-await.md
8051
8713
  */
8052
8714
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
8053
8715
  /**
8054
8716
  * Enforce throwing `TypeError` in type checking conditions.
8055
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prefer-type-error.md
8717
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-type-error.md
8056
8718
  */
8057
8719
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
8058
8720
  /**
8059
- * Prevent abbreviations.
8060
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/prevent-abbreviations.md
8721
+ * Require type literals to be last in union types.
8722
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-type-literal-last.md
8061
8723
  */
8062
- 'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
8724
+ 'unicorn/prefer-type-literal-last'?: Linter.RuleEntry<[]>;
8725
+ /**
8726
+ * Prefer `Uint8Array#toBase64()` and `Uint8Array.fromBase64()` over `atob()`, `btoa()`, and `Buffer` base64 conversions.
8727
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-uint8array-base64.md
8728
+ */
8729
+ 'unicorn/prefer-uint8array-base64'?: Linter.RuleEntry<[]>;
8730
+ /**
8731
+ * Prefer the unary minus operator over multiplying or dividing by `-1`.
8732
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-unary-minus.md
8733
+ */
8734
+ 'unicorn/prefer-unary-minus'?: Linter.RuleEntry<[]>;
8735
+ /**
8736
+ * Prefer Unicode code point escapes over legacy escape sequences.
8737
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-unicode-code-point-escapes.md
8738
+ */
8739
+ 'unicorn/prefer-unicode-code-point-escapes'?: Linter.RuleEntry<[]>;
8740
+ /**
8741
+ * Prefer `URL.canParse()` over constructing a `URL` in a try/catch for validation.
8742
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-url-can-parse.md
8743
+ */
8744
+ 'unicorn/prefer-url-can-parse'?: Linter.RuleEntry<[]>;
8745
+ /**
8746
+ * Prefer `URL#href` over stringifying a `URL`.
8747
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-url-href.md
8748
+ */
8749
+ 'unicorn/prefer-url-href'?: Linter.RuleEntry<[]>;
8750
+ /**
8751
+ * Prefer `URLSearchParams` over manually splitting query strings.
8752
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-url-search-parameters.md
8753
+ */
8754
+ 'unicorn/prefer-url-search-parameters'?: Linter.RuleEntry<[]>;
8755
+ /**
8756
+ * Prefer putting the condition in the while statement.
8757
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/prefer-while-loop-condition.md
8758
+ */
8759
+ 'unicorn/prefer-while-loop-condition'?: Linter.RuleEntry<[]>;
8760
+ /**
8761
+ * Renamed to `unicorn/name-replacements`.
8762
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/deleted-and-deprecated-rules.md#prevent-abbreviations
8763
+ * @deprecated
8764
+ */
8765
+ 'unicorn/prevent-abbreviations'?: Linter.RuleEntry<[]>;
8063
8766
  /**
8064
8767
  * Enforce consistent relative URL style.
8065
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/relative-url-style.md
8768
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/relative-url-style.md
8066
8769
  */
8067
8770
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
8068
8771
  /**
8069
8772
  * Enforce using the separator argument with `Array#join()`.
8070
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/require-array-join-separator.md
8773
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-array-join-separator.md
8071
8774
  */
8072
8775
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
8776
+ /**
8777
+ * Require a compare function when calling `Array#sort()` or `Array#toSorted()`.
8778
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-array-sort-compare.md
8779
+ */
8780
+ 'unicorn/require-array-sort-compare'?: Linter.RuleEntry<[]>;
8073
8781
  /**
8074
8782
  * Require `CSS.escape()` for interpolated values in CSS selectors.
8075
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/require-css-escape.md
8783
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-css-escape.md
8076
8784
  */
8077
8785
  'unicorn/require-css-escape'?: Linter.RuleEntry<UnicornRequireCssEscape>;
8078
8786
  /**
8079
8787
  * Require non-empty module attributes for imports and exports
8080
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/require-module-attributes.md
8788
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-module-attributes.md
8081
8789
  */
8082
8790
  'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
8083
8791
  /**
8084
8792
  * Require non-empty specifier list in import and export statements.
8085
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/require-module-specifiers.md
8793
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-module-specifiers.md
8086
8794
  */
8087
8795
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
8088
8796
  /**
8089
8797
  * Enforce using the digits argument with `Number#toFixed()`.
8090
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/require-number-to-fixed-digits-argument.md
8798
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-number-to-fixed-digits-argument.md
8091
8799
  */
8092
8800
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
8093
8801
  /**
8094
8802
  * Require passive event listeners for high-frequency events.
8095
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/require-passive-events.md
8803
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-passive-events.md
8096
8804
  */
8097
8805
  'unicorn/require-passive-events'?: Linter.RuleEntry<[]>;
8098
8806
  /**
8099
8807
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
8100
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/require-post-message-target-origin.md
8808
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-post-message-target-origin.md
8101
8809
  */
8102
8810
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
8811
+ /**
8812
+ * Require boolean-returning Proxy traps to return booleans.
8813
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/require-proxy-trap-boolean-return.md
8814
+ */
8815
+ 'unicorn/require-proxy-trap-boolean-return'?: Linter.RuleEntry<[]>;
8103
8816
  /**
8104
8817
  * Enforce better string content.
8105
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/string-content.md
8818
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/string-content.md
8106
8819
  */
8107
8820
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
8108
8821
  /**
8109
8822
  * Enforce consistent brace style for `case` clauses.
8110
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/switch-case-braces.md
8823
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/switch-case-braces.md
8111
8824
  */
8112
8825
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
8113
8826
  /**
8114
8827
  * Enforce consistent `break`/`return`/`continue`/`throw` position in `case` clauses.
8115
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/switch-case-break-position.md
8828
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/switch-case-break-position.md
8116
8829
  */
8117
8830
  'unicorn/switch-case-break-position'?: Linter.RuleEntry<[]>;
8118
8831
  /**
8119
8832
  * Fix whitespace-insensitive template indentation.
8120
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/template-indent.md
8833
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/template-indent.md
8121
8834
  */
8122
8835
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
8123
8836
  /**
8124
8837
  * Enforce consistent case for text encoding identifiers.
8125
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/text-encoding-identifier-case.md
8838
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/text-encoding-identifier-case.md
8126
8839
  */
8127
8840
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<UnicornTextEncodingIdentifierCase>;
8128
8841
  /**
8129
8842
  * Require `new` when creating an error.
8130
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/throw-new-error.md
8843
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/throw-new-error.md
8131
8844
  */
8132
8845
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
8133
8846
  /**
8134
8847
  * Limit the complexity of `try` blocks.
8135
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v65.0.1/docs/rules/try-complexity.md
8848
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v69.0.0/docs/rules/try-complexity.md
8136
8849
  */
8137
8850
  'unicorn/try-complexity'?: Linter.RuleEntry<UnicornTryComplexity>;
8138
8851
  /**
@@ -8679,6 +9392,11 @@ interface RuleOptions {
8679
9392
  * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-tab-indent.html
8680
9393
  */
8681
9394
  'yml/no-tab-indent'?: Linter.RuleEntry<[]>;
9395
+ /**
9396
+ * disallow trailing whitespace at the end of lines
9397
+ * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-trailing-spaces.html
9398
+ */
9399
+ 'yml/no-trailing-spaces'?: Linter.RuleEntry<YmlNoTrailingSpaces>;
8682
9400
  /**
8683
9401
  * disallow trailing zeros for floats
8684
9402
  * @see https://ota-meshi.github.io/eslint-plugin-yml/rules/no-trailing-zeros.html
@@ -11090,6 +11808,9 @@ type NoConfusingArrow = [] | [{
11090
11808
  }]; // ----- no-console -----
11091
11809
  type NoConsole = [] | [{
11092
11810
  allow?: [string, ...(string)[]];
11811
+ }]; // ----- no-constant-binary-expression -----
11812
+ type NoConstantBinaryExpression = [] | [{
11813
+ checkRelationalComparisons?: boolean;
11093
11814
  }]; // ----- no-constant-condition -----
11094
11815
  type NoConstantCondition = [] | [{
11095
11816
  checkLoops?: ("all" | "allExceptWhileTrue" | "none" | true | false);
@@ -14378,6 +15099,30 @@ type UnicodeBom = [] | [("always" | "never")]; // ----- unicorn/catch-error-name
14378
15099
  type UnicornCatchErrorName = [] | [{
14379
15100
  name?: string;
14380
15101
  ignore?: unknown[];
15102
+ }]; // ----- unicorn/class-reference-in-static-methods -----
15103
+ type UnicornClassReferenceInStaticMethods = [] | [{
15104
+ preferThis?: boolean;
15105
+ preferSuper?: boolean;
15106
+ }]; // ----- unicorn/comment-content -----
15107
+ type UnicornCommentContent = [] | [{
15108
+ checkUniformCase?: boolean;
15109
+ extendDefaultReplacements?: boolean;
15110
+ replacements?: {
15111
+ [k: string]: (false | string | {
15112
+ replacement: string;
15113
+ caseSensitive?: boolean;
15114
+ }) | undefined;
15115
+ };
15116
+ }]; // ----- unicorn/consistent-boolean-name -----
15117
+ type UnicornConsistentBooleanName = [] | [{
15118
+ checkProperties?: boolean;
15119
+ prefixes?: {
15120
+ [k: string]: boolean | undefined;
15121
+ };
15122
+ ignore?: unknown[];
15123
+ }]; // ----- unicorn/consistent-class-member-order -----
15124
+ type UnicornConsistentClassMemberOrder = [] | [{
15125
+ order?: [("static-field" | "static-block" | "static-method" | "private-field" | "public-field" | "constructor" | "private-method" | "public-method"), ("static-field" | "static-block" | "static-method" | "private-field" | "public-field" | "constructor" | "private-method" | "public-method"), ("static-field" | "static-block" | "static-method" | "private-field" | "public-field" | "constructor" | "private-method" | "public-method"), ("static-field" | "static-block" | "static-method" | "private-field" | "public-field" | "constructor" | "private-method" | "public-method"), ("static-field" | "static-block" | "static-method" | "private-field" | "public-field" | "constructor" | "private-method" | "public-method"), ("static-field" | "static-block" | "static-method" | "private-field" | "public-field" | "constructor" | "private-method" | "public-method"), ("static-field" | "static-block" | "static-method" | "private-field" | "public-field" | "constructor" | "private-method" | "public-method"), ("static-field" | "static-block" | "static-method" | "private-field" | "public-field" | "constructor" | "private-method" | "public-method")];
14381
15126
  }]; // ----- unicorn/consistent-compound-words -----
14382
15127
  type UnicornConsistentCompoundWords = [] | [{
14383
15128
  checkProperties?: boolean;
@@ -14394,11 +15139,26 @@ interface _UnicornConsistentCompoundWords_Replacements {
14394
15139
  }
14395
15140
  interface _UnicornConsistentCompoundWords_TrueObject {
14396
15141
  [k: string]: true | undefined;
14397
- } // ----- unicorn/consistent-function-scoping -----
15142
+ } // ----- unicorn/consistent-conditional-object-spread -----
15143
+ type UnicornConsistentConditionalObjectSpread = [] | [("logical" | "ternary")]; // ----- unicorn/consistent-export-decorator-position -----
15144
+ type UnicornConsistentExportDecoratorPosition = [] | [("above" | "before" | "after")]; // ----- unicorn/consistent-function-scoping -----
14398
15145
  type UnicornConsistentFunctionScoping = [] | [{
14399
15146
  checkArrowFunctions?: boolean;
15147
+ }]; // ----- unicorn/consistent-function-style -----
15148
+ type UnicornConsistentFunctionStyle = [] | [{
15149
+ default?: ("declaration" | "function-expression" | "arrow-function" | "ignore");
15150
+ namedFunctions?: ("declaration" | "function-expression" | "arrow-function" | "ignore");
15151
+ namedExports?: ("declaration" | "function-expression" | "arrow-function" | "ignore");
15152
+ callbacks?: ("function-expression" | "arrow-function" | "ignore");
15153
+ objectProperties?: ("method" | "function-expression" | "arrow-function" | "ignore");
15154
+ reassignedVariables?: ("function-expression" | "arrow-function" | "ignore");
15155
+ typedVariables?: ("function-expression" | "arrow-function" | "ignore");
14400
15156
  }]; // ----- unicorn/consistent-json-file-read -----
14401
- type UnicornConsistentJsonFileRead = [] | [("string" | "buffer")]; // ----- unicorn/dom-node-dataset -----
15157
+ type UnicornConsistentJsonFileRead = [] | [("string" | "buffer")]; // ----- unicorn/default-export-style -----
15158
+ type UnicornDefaultExportStyle = [] | [{
15159
+ functions?: ("inline" | "separate" | "ignore");
15160
+ classes?: ("inline" | "separate" | "ignore");
15161
+ }]; // ----- unicorn/dom-node-dataset -----
14402
15162
  type UnicornDomNodeDataset = [] | [{
14403
15163
  preferAttributes?: boolean;
14404
15164
  }]; // ----- unicorn/escape-case -----
@@ -14413,15 +15173,17 @@ type UnicornExpiringTodoComments = [] | [{
14413
15173
  }]; // ----- unicorn/explicit-length-check -----
14414
15174
  type UnicornExplicitLengthCheck = [] | [{
14415
15175
  "non-zero"?: ("greater-than" | "not-equal");
14416
- }]; // ----- unicorn/filename-case -----
15176
+ }]; // ----- unicorn/explicit-timer-delay -----
15177
+ type UnicornExplicitTimerDelay = [] | [("always" | "never")]; // ----- unicorn/filename-case -----
14417
15178
  type UnicornFilenameCase = [] | [({
14418
- case?: ("camelCase" | "snakeCase" | "kebabCase" | "pascalCase");
15179
+ case?: ("camelCase" | "camelCaseWithAcronyms" | "snakeCase" | "kebabCase" | "pascalCase");
14419
15180
  ignore?: unknown[];
14420
15181
  multipleFileExtensions?: boolean;
14421
15182
  checkDirectories?: boolean;
14422
15183
  } | {
14423
15184
  cases?: {
14424
15185
  camelCase?: boolean;
15186
+ camelCaseWithAcronyms?: boolean;
14425
15187
  snakeCase?: boolean;
14426
15188
  kebabCase?: boolean;
14427
15189
  pascalCase?: boolean;
@@ -14429,7 +15191,14 @@ type UnicornFilenameCase = [] | [({
14429
15191
  ignore?: unknown[];
14430
15192
  multipleFileExtensions?: boolean;
14431
15193
  checkDirectories?: boolean;
14432
- })]; // ----- unicorn/import-style -----
15194
+ })]; // ----- unicorn/id-match -----
15195
+ type UnicornIdMatch = [] | [string] | [string, {
15196
+ properties?: boolean;
15197
+ classFields?: boolean;
15198
+ onlyDeclarations?: boolean;
15199
+ ignoreDestructuring?: boolean;
15200
+ checkNamedSpecifiers?: boolean;
15201
+ }]; // ----- unicorn/import-style -----
14433
15202
  type UnicornImportStyle = [] | [{
14434
15203
  checkImport?: boolean;
14435
15204
  checkDynamicImport?: boolean;
@@ -14452,7 +15221,36 @@ type UnicornIsolatedFunctions = [] | [{
14452
15221
  functions?: string[];
14453
15222
  selectors?: string[];
14454
15223
  comments?: string[];
14455
- }]; // ----- unicorn/no-array-callback-reference -----
15224
+ }]; // ----- unicorn/logical-assignment-operators -----
15225
+ type UnicornLogicalAssignmentOperators = (([] | ["always"] | ["always", {
15226
+ enforceForIfStatements?: boolean;
15227
+ }] | ["never"]) & unknown[]); // ----- unicorn/max-nested-calls -----
15228
+ type UnicornMaxNestedCalls = [] | [{
15229
+ max?: number;
15230
+ }]; // ----- unicorn/name-replacements -----
15231
+ type UnicornNameReplacements = [] | [{
15232
+ checkProperties?: boolean;
15233
+ checkVariables?: boolean;
15234
+ checkDefaultAndNamespaceImports?: (boolean | string);
15235
+ checkShorthandImports?: (boolean | string);
15236
+ checkShorthandProperties?: boolean;
15237
+ checkFilenames?: boolean;
15238
+ extendDefaultReplacements?: boolean;
15239
+ replacements?: _UnicornNameReplacements_NameReplacements;
15240
+ extendDefaultAllowList?: boolean;
15241
+ allowList?: _UnicornNameReplacements_BooleanObject;
15242
+ ignore?: unknown[];
15243
+ }];
15244
+ type _UnicornNameReplacementsReplacements = (false | _UnicornNameReplacements_BooleanObject) | undefined;
15245
+ interface _UnicornNameReplacements_NameReplacements {
15246
+ [k: string]: _UnicornNameReplacementsReplacements | undefined;
15247
+ }
15248
+ interface _UnicornNameReplacements_BooleanObject {
15249
+ [k: string]: boolean | undefined;
15250
+ }
15251
+ interface _UnicornNameReplacements_BooleanObject {
15252
+ [k: string]: boolean | undefined;
15253
+ } // ----- unicorn/no-array-callback-reference -----
14456
15254
  type UnicornNoArrayCallbackReference = [] | [{
14457
15255
  ignore?: string[];
14458
15256
  }]; // ----- unicorn/no-array-reduce -----
@@ -14473,11 +15271,23 @@ type UnicornNoInstanceofBuiltins = [] | [{
14473
15271
  strategy?: ("loose" | "strict");
14474
15272
  include?: string[];
14475
15273
  exclude?: string[];
15274
+ }]; // ----- unicorn/no-invalid-argument-count -----
15275
+ type UnicornNoInvalidArgumentCount = [] | [{
15276
+ [k: string]: (number | [number, ...(number)[]] | {
15277
+ min?: number;
15278
+ max?: number;
15279
+ }) | undefined;
14476
15280
  }]; // ----- unicorn/no-keyword-prefix -----
14477
15281
  type UnicornNoKeywordPrefix = [] | [{
14478
15282
  disallowedPrefixes?: [] | [string];
14479
15283
  checkProperties?: boolean;
14480
15284
  onlyCamelCase?: boolean;
15285
+ }]; // ----- unicorn/no-negated-comparison -----
15286
+ type UnicornNoNegatedComparison = [] | [{
15287
+ checkLogicalExpressions?: boolean;
15288
+ }]; // ----- unicorn/no-non-function-verb-prefix -----
15289
+ type UnicornNoNonFunctionVerbPrefix = [] | [{
15290
+ verbs?: string[];
14481
15291
  }]; // ----- unicorn/no-null -----
14482
15292
  type UnicornNoNull = [] | [{
14483
15293
  checkArguments?: boolean;
@@ -14490,6 +15300,9 @@ type UnicornNoUnnecessaryPolyfills = [] | [{
14490
15300
  targets?: (string | unknown[] | {
14491
15301
  [k: string]: unknown | undefined;
14492
15302
  });
15303
+ }]; // ----- unicorn/no-unreadable-array-destructuring -----
15304
+ type UnicornNoUnreadableArrayDestructuring = [] | [{
15305
+ maximumIgnoredElements?: number;
14493
15306
  }]; // ----- unicorn/no-useless-undefined -----
14494
15307
  type UnicornNoUselessUndefined = [] | [{
14495
15308
  checkArguments?: boolean;
@@ -14521,7 +15334,8 @@ type UnicornNumericSeparatorsStyle = [] | [{
14521
15334
  fractionGroupLength?: number;
14522
15335
  };
14523
15336
  onlyIfContainsSeparator?: boolean;
14524
- }]; // ----- unicorn/prefer-add-event-listener -----
15337
+ }]; // ----- unicorn/operator-assignment -----
15338
+ type UnicornOperatorAssignment = [] | [("always" | "never")]; // ----- unicorn/prefer-add-event-listener -----
14525
15339
  type UnicornPreferAddEventListener = [] | [{
14526
15340
  excludedPackages?: string[];
14527
15341
  }]; // ----- unicorn/prefer-array-find -----
@@ -14534,12 +15348,22 @@ type UnicornPreferArrayFlat = [] | [{
14534
15348
  type UnicornPreferAt = [] | [{
14535
15349
  getLastElementFunctions?: unknown[];
14536
15350
  checkAllIndexAccess?: boolean;
15351
+ }]; // ----- unicorn/prefer-continue -----
15352
+ type UnicornPreferContinue = [] | [{
15353
+ maximumStatements?: number;
15354
+ }]; // ----- unicorn/prefer-early-return -----
15355
+ type UnicornPreferEarlyReturn = [] | [{
15356
+ maximumStatements?: number;
14537
15357
  }]; // ----- unicorn/prefer-export-from -----
14538
15358
  type UnicornPreferExportFrom = [] | [{
14539
15359
  checkUsedVariables?: boolean;
14540
15360
  }]; // ----- unicorn/prefer-includes-over-repeated-comparisons -----
14541
15361
  type UnicornPreferIncludesOverRepeatedComparisons = [] | [{
14542
15362
  minimumComparisons?: number;
15363
+ }]; // ----- unicorn/prefer-minimal-ternary -----
15364
+ type UnicornPreferMinimalTernary = [] | [{
15365
+ checkVaryingCallee?: boolean;
15366
+ checkComputedMemberAccess?: boolean;
14543
15367
  }]; // ----- unicorn/prefer-number-properties -----
14544
15368
  type UnicornPreferNumberProperties = [] | [{
14545
15369
  checkInfinity?: boolean;
@@ -14570,31 +15394,13 @@ type UnicornPreferStructuredClone = [] | [{
14570
15394
  type UnicornPreferSwitch = [] | [{
14571
15395
  minimumCases?: number;
14572
15396
  emptyDefaultCase?: ("no-default-comment" | "do-nothing-comment" | "no-default-case");
15397
+ }]; // ----- unicorn/prefer-temporal -----
15398
+ type UnicornPreferTemporal = [] | [{
15399
+ checkDateNow?: boolean;
15400
+ checkReferences?: boolean;
15401
+ checkMethods?: boolean;
14573
15402
  }]; // ----- unicorn/prefer-ternary -----
14574
- type UnicornPreferTernary = [] | [("always" | "only-single-line")]; // ----- unicorn/prevent-abbreviations -----
14575
- type UnicornPreventAbbreviations = [] | [{
14576
- checkProperties?: boolean;
14577
- checkVariables?: boolean;
14578
- checkDefaultAndNamespaceImports?: (boolean | string);
14579
- checkShorthandImports?: (boolean | string);
14580
- checkShorthandProperties?: boolean;
14581
- checkFilenames?: boolean;
14582
- extendDefaultReplacements?: boolean;
14583
- replacements?: _UnicornPreventAbbreviations_Abbreviations;
14584
- extendDefaultAllowList?: boolean;
14585
- allowList?: _UnicornPreventAbbreviations_BooleanObject;
14586
- ignore?: unknown[];
14587
- }];
14588
- type _UnicornPreventAbbreviationsReplacements = (false | _UnicornPreventAbbreviations_BooleanObject) | undefined;
14589
- interface _UnicornPreventAbbreviations_Abbreviations {
14590
- [k: string]: _UnicornPreventAbbreviationsReplacements | undefined;
14591
- }
14592
- interface _UnicornPreventAbbreviations_BooleanObject {
14593
- [k: string]: boolean | undefined;
14594
- }
14595
- interface _UnicornPreventAbbreviations_BooleanObject {
14596
- [k: string]: boolean | undefined;
14597
- } // ----- unicorn/relative-url-style -----
15403
+ type UnicornPreferTernary = [] | [("always" | "only-single-line")]; // ----- unicorn/relative-url-style -----
14598
15404
  type UnicornRelativeUrlStyle = [] | [("never" | "always")]; // ----- unicorn/require-css-escape -----
14599
15405
  type UnicornRequireCssEscape = [] | [{
14600
15406
  checkAllSelectors?: boolean;
@@ -14610,7 +15416,7 @@ type UnicornStringContent = [] | [{
14610
15416
  };
14611
15417
  selectors?: string[];
14612
15418
  }]; // ----- unicorn/switch-case-braces -----
14613
- type UnicornSwitchCaseBraces = [] | [("always" | "avoid")]; // ----- unicorn/template-indent -----
15419
+ type UnicornSwitchCaseBraces = [] | [("always" | "avoid" | "single-statement")]; // ----- unicorn/template-indent -----
14614
15420
  type UnicornTemplateIndent = [] | [{
14615
15421
  indent?: (string | number);
14616
15422
  tags?: string[];
@@ -14834,6 +15640,10 @@ type YmlNoMultipleEmptyLines = [] | [{
14834
15640
  max: number;
14835
15641
  maxEOF?: number;
14836
15642
  maxBOF?: number;
15643
+ }]; // ----- yml/no-trailing-spaces -----
15644
+ type YmlNoTrailingSpaces = [] | [{
15645
+ skipBlankLines?: boolean;
15646
+ ignoreComments?: boolean;
14837
15647
  }]; // ----- yml/plain-scalar -----
14838
15648
  type YmlPlainScalar = [] | [("always" | "never")] | [("always" | "never"), {
14839
15649
  ignorePatterns?: string[];