@2digits/eslint-config 2.13.3 → 2.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -10,7 +10,7 @@ import { FlatGitignoreOptions } from 'eslint-config-flat-gitignore';
10
10
  interface RuleOptions {
11
11
  /**
12
12
  * Enforce giving proper names to type parameters when there are two or more
13
- * @see https://github.com/2digits-agency/configs/blob/@2digits/eslint-plugin@2.3.24/packages/eslint/src/rules/type-param-names.ts
13
+ * @see https://github.com/2digits-agency/configs/blob/@2digits/eslint-plugin@2.3.25/packages/eslint/src/rules/type-param-names.ts
14
14
  */
15
15
  '@2digits/type-param-names'?: Linter.RuleEntry<[]>
16
16
  /**
@@ -4099,166 +4099,1362 @@ Backward pagination arguments
4099
4099
  * @deprecated
4100
4100
  */
4101
4101
  'semi-style'?: Linter.RuleEntry<SemiStyle>
4102
+ /**
4103
+ * Alternatives in regular expressions should be grouped when used with anchors
4104
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5850/javascript
4105
+ */
4106
+ 'sonar/anchor-precedence'?: Linter.RuleEntry<[]>
4107
+ /**
4108
+ * Arguments to built-in functions should match documented types
4109
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3782/javascript
4110
+ */
4111
+ 'sonar/argument-type'?: Linter.RuleEntry<[]>
4112
+ /**
4113
+ * Parameters should be passed in the correct order
4114
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2234/javascript
4115
+ */
4116
+ 'sonar/arguments-order'?: Linter.RuleEntry<SonarArgumentsOrder>
4117
+ /**
4118
+ * "arguments" should not be accessed directly
4119
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3513/javascript
4120
+ */
4121
+ 'sonar/arguments-usage'?: Linter.RuleEntry<SonarArgumentsUsage>
4122
+ /**
4123
+ * Callbacks of array methods should have return statements
4124
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3796/javascript
4125
+ */
4126
+ 'sonar/array-callback-without-return'?: Linter.RuleEntry<[]>
4127
+ /**
4128
+ * Array constructors should not be used
4129
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1528/javascript
4130
+ */
4131
+ 'sonar/array-constructor'?: Linter.RuleEntry<[]>
4132
+ /**
4133
+ * Braces and parentheses should be used consistently with arrow functions
4134
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3524/javascript
4135
+ */
4136
+ 'sonar/arrow-function-convention'?: Linter.RuleEntry<SonarArrowFunctionConvention>
4137
+ /**
4138
+ * Tests should include assertions
4139
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2699/javascript
4140
+ */
4141
+ 'sonar/assertions-in-tests'?: Linter.RuleEntry<[]>
4142
+ /**
4143
+ * Creating public APIs is security-sensitive
4144
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6333/javascript
4145
+ */
4146
+ 'sonar/aws-apigateway-public-api'?: Linter.RuleEntry<[]>
4147
+ /**
4148
+ * Allowing public network access to cloud resources is security-sensitive
4149
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6329/javascript
4150
+ */
4151
+ 'sonar/aws-ec2-rds-dms-public'?: Linter.RuleEntry<[]>
4152
+ /**
4153
+ * Using unencrypted EBS volumes is security-sensitive
4154
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6275/javascript
4155
+ */
4156
+ 'sonar/aws-ec2-unencrypted-ebs-volume'?: Linter.RuleEntry<[]>
4157
+ /**
4158
+ * Using unencrypted EFS file systems is security-sensitive
4159
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6332/javascript
4160
+ */
4161
+ 'sonar/aws-efs-unencrypted'?: Linter.RuleEntry<[]>
4162
+ /**
4163
+ * Policies granting all privileges are security-sensitive
4164
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6302/javascript
4165
+ */
4166
+ 'sonar/aws-iam-all-privileges'?: Linter.RuleEntry<SonarAwsIamAllPrivileges>
4167
+ /**
4168
+ * Policies granting access to all resources of an account are security-sensitive
4169
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6304/javascript
4170
+ */
4171
+ 'sonar/aws-iam-all-resources-accessible'?: Linter.RuleEntry<SonarAwsIamAllResourcesAccessible>
4172
+ /**
4173
+ * AWS IAM policies should limit the scope of permissions given
4174
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6317/javascript
4175
+ */
4176
+ 'sonar/aws-iam-privilege-escalation'?: Linter.RuleEntry<SonarAwsIamPrivilegeEscalation>
4177
+ /**
4178
+ * Policies authorizing public access to resources are security-sensitive
4179
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6270/javascript
4180
+ */
4181
+ 'sonar/aws-iam-public-access'?: Linter.RuleEntry<SonarAwsIamPublicAccess>
4182
+ /**
4183
+ * Using unencrypted Elasticsearch domains is security-sensitive
4184
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6308/javascript
4185
+ */
4186
+ 'sonar/aws-opensearchservice-domain'?: Linter.RuleEntry<[]>
4187
+ /**
4188
+ * Using unencrypted RDS DB resources is security-sensitive
4189
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6303/javascript
4190
+ */
4191
+ 'sonar/aws-rds-unencrypted-databases'?: Linter.RuleEntry<[]>
4192
+ /**
4193
+ * Administration services access should be restricted to specific IP addresses
4194
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6321/javascript
4195
+ */
4196
+ 'sonar/aws-restricted-ip-admin-access'?: Linter.RuleEntry<[]>
4197
+ /**
4198
+ * Granting access to S3 buckets to all or authenticated users is security-sensitive
4199
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6265/javascript
4200
+ */
4201
+ 'sonar/aws-s3-bucket-granted-access'?: Linter.RuleEntry<SonarAwsS3BucketGrantedAccess>
4202
+ /**
4203
+ * Authorizing HTTP communications with S3 buckets is security-sensitive
4204
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6249/javascript
4205
+ */
4206
+ 'sonar/aws-s3-bucket-insecure-http'?: Linter.RuleEntry<[]>
4207
+ /**
4208
+ * Allowing public ACLs or policies on a S3 bucket is security-sensitive
4209
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6281/javascript
4210
+ */
4211
+ 'sonar/aws-s3-bucket-public-access'?: Linter.RuleEntry<SonarAwsS3BucketPublicAccess>
4212
+ /**
4213
+ * Disabling server-side encryption of S3 buckets is security-sensitive
4214
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6245/javascript
4215
+ * @deprecated
4216
+ */
4217
+ 'sonar/aws-s3-bucket-server-encryption'?: Linter.RuleEntry<SonarAwsS3BucketServerEncryption>
4218
+ /**
4219
+ * Disabling versioning of S3 buckets is security-sensitive
4220
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6252/javascript
4221
+ */
4222
+ 'sonar/aws-s3-bucket-versioning'?: Linter.RuleEntry<SonarAwsS3BucketVersioning>
4223
+ /**
4224
+ * Using unencrypted SageMaker notebook instances is security-sensitive
4225
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6319/javascript
4226
+ */
4227
+ 'sonar/aws-sagemaker-unencrypted-notebook'?: Linter.RuleEntry<[]>
4228
+ /**
4229
+ * Using unencrypted SNS topics is security-sensitive
4230
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6327/javascript
4231
+ */
4232
+ 'sonar/aws-sns-unencrypted-topics'?: Linter.RuleEntry<[]>
4233
+ /**
4234
+ * Using unencrypted SQS queues is security-sensitive
4235
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6330/javascript
4236
+ */
4237
+ 'sonar/aws-sqs-unencrypted-queue'?: Linter.RuleEntry<[]>
4238
+ /**
4239
+ * Bitwise operators should not be used in boolean contexts
4240
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1529/javascript
4241
+ */
4242
+ 'sonar/bitwise-operators'?: Linter.RuleEntry<[]>
4243
+ /**
4244
+ * Variables should be used in the blocks where they are declared
4245
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2392/javascript
4246
+ */
4247
+ 'sonar/block-scoped-var'?: Linter.RuleEntry<SonarBlockScopedVar>
4248
+ /**
4249
+ * Optional boolean parameters should have default value
4250
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4798/javascript
4251
+ */
4252
+ 'sonar/bool-param-default'?: Linter.RuleEntry<[]>
4253
+ /**
4254
+ * Function call arguments should not start on new lines
4255
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1472/javascript
4256
+ */
4257
+ 'sonar/call-argument-line'?: Linter.RuleEntry<[]>
4258
+ /**
4259
+ * Disabling Certificate Transparency monitoring is security-sensitive
4260
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5742/javascript
4261
+ */
4262
+ 'sonar/certificate-transparency'?: Linter.RuleEntry<SonarCertificateTransparency>
4263
+ /**
4264
+ * Chai assertions should have only one reason to succeed
4265
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6092/javascript
4266
+ */
4267
+ 'sonar/chai-determinate-assertion'?: Linter.RuleEntry<[]>
4268
+ /**
4269
+ * Class names should comply with a naming convention
4270
+ * @see https://sonarsource.github.io/rspec/#/rspec/S101/javascript
4271
+ */
4272
+ 'sonar/class-name'?: Linter.RuleEntry<SonarClassName>
4273
+ /**
4274
+ * Class methods should be used instead of "prototype" assignments
4275
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3525/javascript
4276
+ */
4277
+ 'sonar/class-prototype'?: Linter.RuleEntry<[]>
4278
+ /**
4279
+ * Dynamically executing code is security-sensitive
4280
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1523/javascript
4281
+ */
4282
+ 'sonar/code-eval'?: Linter.RuleEntry<[]>
4102
4283
  /**
4103
4284
  * Cognitive Complexity of functions should not be too high
4104
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/cognitive-complexity.md
4285
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3776/javascript
4286
+ */
4287
+ 'sonar/cognitive-complexity'?: Linter.RuleEntry<SonarCognitiveComplexity>
4288
+ /**
4289
+ * Comma and logical OR operators should not be used in switch cases
4290
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3616/javascript
4291
+ */
4292
+ 'sonar/comma-or-logical-or-case'?: Linter.RuleEntry<[]>
4293
+ /**
4294
+ * Track comments matching a regular expression
4295
+ * @see https://sonarsource.github.io/rspec/#/rspec/S124/javascript
4296
+ */
4297
+ 'sonar/comment-regex'?: Linter.RuleEntry<SonarCommentRegex>
4298
+ /**
4299
+ * Regular expression quantifiers and character classes should be used concisely
4300
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6353/javascript
4301
+ */
4302
+ 'sonar/concise-regex'?: Linter.RuleEntry<[]>
4303
+ /**
4304
+ * A conditionally executed single line should be denoted by indentation
4305
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3973/javascript
4306
+ * @deprecated
4307
+ */
4308
+ 'sonar/conditional-indentation'?: Linter.RuleEntry<SonarConditionalIndentation>
4309
+ /**
4310
+ * Allowing confidential information to be logged is security-sensitive
4311
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5757/javascript
4312
+ */
4313
+ 'sonar/confidential-information-logging'?: Linter.RuleEntry<SonarConfidentialInformationLogging>
4314
+ /**
4315
+ * Objects should not be created to be dropped immediately without being used
4316
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1848/javascript
4317
+ */
4318
+ 'sonar/constructor-for-side-effects'?: Linter.RuleEntry<[]>
4319
+ /**
4320
+ * Allowing requests with excessive content length is security-sensitive
4321
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5693/javascript
4322
+ */
4323
+ 'sonar/content-length'?: Linter.RuleEntry<SonarContentLength>
4324
+ /**
4325
+ * Disabling content security policy fetch directives is security-sensitive
4326
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5728/javascript
4327
+ */
4328
+ 'sonar/content-security-policy'?: Linter.RuleEntry<SonarContentSecurityPolicy>
4329
+ /**
4330
+ * Creating cookies without the "HttpOnly" flag is security-sensitive
4331
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3330/javascript
4332
+ */
4333
+ 'sonar/cookie-no-httponly'?: Linter.RuleEntry<SonarCookieNoHttponly>
4334
+ /**
4335
+ * Writing cookies is security-sensitive
4336
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2255/javascript
4337
+ * @deprecated
4338
+ */
4339
+ 'sonar/cookies'?: Linter.RuleEntry<[]>
4340
+ /**
4341
+ * Having a permissive Cross-Origin Resource Sharing policy is security-sensitive
4342
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5122/javascript
4343
+ */
4344
+ 'sonar/cors'?: Linter.RuleEntry<SonarCors>
4345
+ /**
4346
+ * Disabling CSRF protections is security-sensitive
4347
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4502/javascript
4348
+ */
4349
+ 'sonar/csrf'?: Linter.RuleEntry<SonarCsrf>
4350
+ /**
4351
+ * Cyclomatic Complexity of functions should not be too high
4352
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1541/javascript
4353
+ */
4354
+ 'sonar/cyclomatic-complexity'?: Linter.RuleEntry<SonarCyclomaticComplexity>
4355
+ /**
4356
+ * Variables and functions should not be declared in the global scope
4357
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3798/javascript
4358
+ */
4359
+ 'sonar/declarations-in-global-scope'?: Linter.RuleEntry<[]>
4360
+ /**
4361
+ * Deprecated APIs should not be used
4362
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1874/javascript
4363
+ */
4364
+ 'sonar/deprecation'?: Linter.RuleEntry<[]>
4365
+ /**
4366
+ * Destructuring syntax should be used for assignments
4367
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3514/javascript
4368
+ */
4369
+ 'sonar/destructuring-assignment-syntax'?: Linter.RuleEntry<SonarDestructuringAssignmentSyntax>
4370
+ /**
4371
+ * Strict equality operators should not be used with dissimilar types
4372
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3403/javascript
4373
+ */
4374
+ 'sonar/different-types-comparison'?: Linter.RuleEntry<SonarDifferentTypesComparison>
4375
+ /**
4376
+ * Disabling auto-escaping in template engines is security-sensitive
4377
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5247/javascript
4378
+ */
4379
+ 'sonar/disabled-auto-escaping'?: Linter.RuleEntry<SonarDisabledAutoEscaping>
4380
+ /**
4381
+ * Using remote artifacts without integrity checks is security-sensitive
4382
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5725/javascript
4383
+ */
4384
+ 'sonar/disabled-resource-integrity'?: Linter.RuleEntry<[]>
4385
+ /**
4386
+ * Disabling Mocha timeouts should be explicit
4387
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6080/javascript
4388
+ */
4389
+ 'sonar/disabled-timeout'?: Linter.RuleEntry<[]>
4390
+ /**
4391
+ * Allowing browsers to perform DNS prefetching is security-sensitive
4392
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5743/javascript
4393
+ * @deprecated
4394
+ */
4395
+ 'sonar/dns-prefetching'?: Linter.RuleEntry<SonarDnsPrefetching>
4396
+ /**
4397
+ * Character classes in regular expressions should not contain the same character twice
4398
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5869/javascript
4399
+ */
4400
+ 'sonar/duplicates-in-character-class'?: Linter.RuleEntry<SonarDuplicatesInCharacterClass>
4401
+ /**
4402
+ * "if ... else if" constructs should end with "else" clauses
4403
+ * @see https://sonarsource.github.io/rspec/#/rspec/S126/javascript
4404
+ */
4405
+ 'sonar/elseif-without-else'?: Linter.RuleEntry<[]>
4406
+ /**
4407
+ * Repeated patterns in regular expressions should not match the empty string
4408
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5842/javascript
4409
+ */
4410
+ 'sonar/empty-string-repetition'?: Linter.RuleEntry<[]>
4411
+ /**
4412
+ * Encrypting data is security-sensitive
4413
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4787/javascript
4414
+ * @deprecated
4415
+ */
4416
+ 'sonar/encryption'?: Linter.RuleEntry<[]>
4417
+ /**
4418
+ * Encryption algorithms should be used with secure mode and padding scheme
4419
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5542/javascript
4420
+ */
4421
+ 'sonar/encryption-secure-mode'?: Linter.RuleEntry<[]>
4422
+ /**
4423
+ * Trailing commas should be used
4424
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3723/javascript
4425
+ * @deprecated
4426
+ */
4427
+ 'sonar/enforce-trailing-comma'?: Linter.RuleEntry<SonarEnforceTrailingComma>
4428
+ /**
4429
+ * Replacement strings should reference existing regular expression groups
4430
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6328/javascript
4431
+ */
4432
+ 'sonar/existing-groups'?: Linter.RuleEntry<[]>
4433
+ /**
4434
+ * Expressions should not be too complex
4435
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1067/javascript
4436
+ */
4437
+ 'sonar/expression-complexity'?: Linter.RuleEntry<SonarExpressionComplexity>
4438
+ /**
4439
+ * Track lack of copyright and license headers
4440
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1451/javascript
4441
+ */
4442
+ 'sonar/file-header'?: Linter.RuleEntry<SonarFileHeader>
4443
+ /**
4444
+ * Default export names and file names should match
4445
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3317/javascript
4446
+ */
4447
+ 'sonar/file-name-differ-from-class'?: Linter.RuleEntry<[]>
4448
+ /**
4449
+ * Setting loose POSIX file permissions is security-sensitive
4450
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2612/javascript
4451
+ */
4452
+ 'sonar/file-permissions'?: Linter.RuleEntry<[]>
4453
+ /**
4454
+ * File uploads should be restricted
4455
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2598/javascript
4456
+ */
4457
+ 'sonar/file-uploads'?: Linter.RuleEntry<SonarFileUploads>
4458
+ /**
4459
+ * Track uses of "FIXME" tags
4460
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1134/javascript
4461
+ */
4462
+ 'sonar/fixme-tag'?: Linter.RuleEntry<[]>
4463
+ /**
4464
+ * "for...in" loops should filter properties before acting on them
4465
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1535/javascript
4466
+ */
4467
+ 'sonar/for-in'?: Linter.RuleEntry<[]>
4468
+ /**
4469
+ * A "for" loop update clause should move the counter in the right direction
4470
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2251/javascript
4471
+ */
4472
+ 'sonar/for-loop-increment-sign'?: Linter.RuleEntry<SonarForLoopIncrementSign>
4473
+ /**
4474
+ * Disabling content security policy frame-ancestors directive is security-sensitive
4475
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5732/javascript
4476
+ */
4477
+ 'sonar/frame-ancestors'?: Linter.RuleEntry<SonarFrameAncestors>
4478
+ /**
4479
+ * Functions should not be defined inside loops
4480
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1515/javascript
4481
+ */
4482
+ 'sonar/function-inside-loop'?: Linter.RuleEntry<SonarFunctionInsideLoop>
4483
+ /**
4484
+ * Function and method names should comply with a naming convention
4485
+ * @see https://sonarsource.github.io/rspec/#/rspec/S100/javascript
4486
+ */
4487
+ 'sonar/function-name'?: Linter.RuleEntry<SonarFunctionName>
4488
+ /**
4489
+ * Functions should always return the same type
4490
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3800/javascript
4491
+ */
4492
+ 'sonar/function-return-type'?: Linter.RuleEntry<SonarFunctionReturnType>
4493
+ /**
4494
+ * Future reserved words should not be used as identifiers
4495
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1527/javascript
4496
+ */
4497
+ 'sonar/future-reserved-words'?: Linter.RuleEntry<[]>
4498
+ /**
4499
+ * Generators should explicitly "yield" a value
4500
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3531/javascript
4501
+ */
4502
+ 'sonar/generator-without-yield'?: Linter.RuleEntry<[]>
4503
+ /**
4504
+ * Using weak hashing algorithms is security-sensitive
4505
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4790/javascript
4506
+ */
4507
+ 'sonar/hashing'?: Linter.RuleEntry<[]>
4508
+ /**
4509
+ * Statically serving hidden files is security-sensitive
4510
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5691/javascript
4511
+ */
4512
+ 'sonar/hidden-files'?: Linter.RuleEntry<[]>
4513
+ /**
4514
+ * "in" should not be used with primitive types
4515
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3785/javascript
4516
+ */
4517
+ 'sonar/in-operator-type-error'?: Linter.RuleEntry<SonarInOperatorTypeError>
4518
+ /**
4519
+ * Functions should be called consistently with or without "new"
4520
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3686/javascript
4521
+ */
4522
+ 'sonar/inconsistent-function-call'?: Linter.RuleEntry<SonarInconsistentFunctionCall>
4523
+ /**
4524
+ * "indexOf" checks should not be for positive numbers
4525
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2692/javascript
4526
+ */
4527
+ 'sonar/index-of-compare-to-positive-number'?: Linter.RuleEntry<[]>
4528
+ /**
4529
+ * Creating cookies without the "secure" flag is security-sensitive
4530
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2092/javascript
4531
+ */
4532
+ 'sonar/insecure-cookie'?: Linter.RuleEntry<SonarInsecureCookie>
4533
+ /**
4534
+ * JWT should be signed and verified with strong cipher algorithms
4535
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5659/javascript
4536
+ */
4537
+ 'sonar/insecure-jwt-token'?: Linter.RuleEntry<SonarInsecureJwtToken>
4538
+ /**
4539
+ * Assertion arguments should be passed in the correct order
4540
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3415/javascript
4541
+ */
4542
+ 'sonar/inverted-assertion-arguments'?: Linter.RuleEntry<SonarInvertedAssertionArguments>
4543
+ /**
4544
+ * React components should not render non-boolean condition values
4545
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6439/javascript
4546
+ */
4547
+ 'sonar/jsx-no-leaked-render'?: Linter.RuleEntry<[]>
4548
+ /**
4549
+ * Only "while", "do", "for" and "switch" statements should be labelled
4550
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1439/javascript
4551
+ */
4552
+ 'sonar/label-position'?: Linter.RuleEntry<[]>
4553
+ /**
4554
+ * Authorizing an opened window to access back to the originating window is security-sensitive
4555
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5148/javascript
4556
+ */
4557
+ 'sonar/link-with-target-blank'?: Linter.RuleEntry<[]>
4558
+ /**
4559
+ * Files should not have too many lines of code
4560
+ * @see https://sonarsource.github.io/rspec/#/rspec/S104/javascript
4561
+ */
4562
+ 'sonar/max-lines'?: Linter.RuleEntry<SonarMaxLines>
4563
+ /**
4564
+ * Functions should not have too many lines of code
4565
+ * @see https://sonarsource.github.io/rspec/#/rspec/S138/javascript
4566
+ */
4567
+ 'sonar/max-lines-per-function'?: Linter.RuleEntry<SonarMaxLinesPerFunction>
4568
+ /**
4569
+ * "switch" statements should not have too many "case" clauses
4570
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1479/javascript
4571
+ */
4572
+ 'sonar/max-switch-cases'?: Linter.RuleEntry<SonarMaxSwitchCases>
4573
+ /**
4574
+ * Union types should not have too many elements
4575
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4622/javascript
4576
+ */
4577
+ 'sonar/max-union-size'?: Linter.RuleEntry<SonarMaxUnionSize>
4578
+ /**
4579
+ * "for" loop increment clauses should modify the loops' counters
4580
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1994/javascript
4581
+ */
4582
+ 'sonar/misplaced-loop-counter'?: Linter.RuleEntry<[]>
4583
+ /**
4584
+ * Control flow statements "if", "for", "while", "switch" and "try" should not be nested too deeply
4585
+ * @see https://sonarsource.github.io/rspec/#/rspec/S134/javascript
4586
+ */
4587
+ 'sonar/nested-control-flow'?: Linter.RuleEntry<SonarNestedControlFlow>
4588
+ /**
4589
+ * "new" should only be used with functions and classes
4590
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2999/javascript
4591
+ */
4592
+ 'sonar/new-operator-misuse'?: Linter.RuleEntry<SonarNewOperatorMisuse>
4593
+ /**
4594
+ * All branches in a conditional structure should not have exactly the same implementation
4595
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3923/javascript
4596
+ */
4597
+ 'sonar/no-all-duplicated-branches'?: Linter.RuleEntry<[]>
4598
+ /**
4599
+ * "Array.prototype.sort()" and "Array.prototype.toSorted()" should use a compare function
4600
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2871/javascript
4601
+ */
4602
+ 'sonar/no-alphabetical-sort'?: Linter.RuleEntry<[]>
4603
+ /**
4604
+ * Disabling Angular built-in sanitization is security-sensitive
4605
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6268/javascript
4606
+ */
4607
+ 'sonar/no-angular-bypass-sanitization'?: Linter.RuleEntry<[]>
4608
+ /**
4609
+ * "delete" should not be used on arrays
4610
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2870/javascript
4611
+ */
4612
+ 'sonar/no-array-delete'?: Linter.RuleEntry<[]>
4613
+ /**
4614
+ * Array indexes should be numeric
4615
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3579/javascript
4616
+ */
4617
+ 'sonar/no-associative-arrays'?: Linter.RuleEntry<[]>
4618
+ /**
4619
+ * Constructors should not contain asynchronous operations
4620
+ * @see https://sonarsource.github.io/rspec/#/rspec/S7059/javascript
4621
+ */
4622
+ 'sonar/no-async-constructor'?: Linter.RuleEntry<[]>
4623
+ /**
4624
+ * Built-in objects should not be overridden
4625
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2424/javascript
4626
+ */
4627
+ 'sonar/no-built-in-override'?: Linter.RuleEntry<[]>
4628
+ /**
4629
+ * "switch" statements should not contain non-case labels
4630
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1219/javascript
4631
+ */
4632
+ 'sonar/no-case-label-in-switch'?: Linter.RuleEntry<[]>
4633
+ /**
4634
+ * Using clear-text protocols is security-sensitive
4635
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5332/javascript
4636
+ */
4637
+ 'sonar/no-clear-text-protocols'?: Linter.RuleEntry<[]>
4638
+ /**
4639
+ * Tests should not execute any code after "done()" is called
4640
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6079/javascript
4641
+ */
4642
+ 'sonar/no-code-after-done'?: Linter.RuleEntry<SonarNoCodeAfterDone>
4643
+ /**
4644
+ * Mergeable "if" statements should be combined
4645
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1066/javascript
4646
+ */
4647
+ 'sonar/no-collapsible-if'?: Linter.RuleEntry<SonarNoCollapsibleIf>
4648
+ /**
4649
+ * Collection size and array length comparisons should make sense
4650
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3981/javascript
4651
+ */
4652
+ 'sonar/no-collection-size-mischeck'?: Linter.RuleEntry<[]>
4653
+ /**
4654
+ * Sections of code should not be commented out
4655
+ * @see https://sonarsource.github.io/rspec/#/rspec/S125/javascript
4656
+ */
4657
+ 'sonar/no-commented-code'?: Linter.RuleEntry<[]>
4658
+ /**
4659
+ * Regular expressions should not contain control characters
4660
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6324/javascript
4661
+ */
4662
+ 'sonar/no-control-regex'?: Linter.RuleEntry<[]>
4663
+ /**
4664
+ * Unused assignments should be removed
4665
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1854/javascript
4666
+ */
4667
+ 'sonar/no-dead-store'?: Linter.RuleEntry<[]>
4668
+ /**
4669
+ * "delete" should be used only with object properties
4670
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3001/javascript
4671
+ */
4672
+ 'sonar/no-delete-var'?: Linter.RuleEntry<[]>
4673
+ /**
4674
+ * Union and intersection types should not include duplicated constituents
4675
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4621/javascript
4676
+ */
4677
+ 'sonar/no-duplicate-in-composite'?: Linter.RuleEntry<SonarNoDuplicateInComposite>
4678
+ /**
4679
+ * String literals should not be duplicated
4680
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1192/javascript
4681
+ */
4682
+ 'sonar/no-duplicate-string'?: Linter.RuleEntry<SonarNoDuplicateString>
4683
+ /**
4684
+ * Two branches in a conditional structure should not have exactly the same implementation
4685
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1871/javascript
4686
+ */
4687
+ 'sonar/no-duplicated-branches'?: Linter.RuleEntry<SonarNoDuplicatedBranches>
4688
+ /**
4689
+ * Collection elements should not be replaced unconditionally
4690
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4143/javascript
4691
+ */
4692
+ 'sonar/no-element-overwrite'?: Linter.RuleEntry<SonarNoElementOverwrite>
4693
+ /**
4694
+ * Reluctant quantifiers in regular expressions should be followed by an expression that can't match the empty string
4695
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6019/javascript
4696
+ */
4697
+ 'sonar/no-empty-after-reluctant'?: Linter.RuleEntry<[]>
4698
+ /**
4699
+ * Alternation in regular expressions should not contain empty alternatives
4700
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6323/javascript
4701
+ */
4702
+ 'sonar/no-empty-alternatives'?: Linter.RuleEntry<[]>
4703
+ /**
4704
+ * Empty character classes should not be used
4705
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2639/javascript
4706
+ */
4707
+ 'sonar/no-empty-character-class'?: Linter.RuleEntry<[]>
4708
+ /**
4709
+ * Empty collections should not be accessed or iterated
4710
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4158/javascript
4711
+ */
4712
+ 'sonar/no-empty-collection'?: Linter.RuleEntry<[]>
4713
+ /**
4714
+ * Regular expressions should not contain empty groups
4715
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6331/javascript
4716
+ */
4717
+ 'sonar/no-empty-group'?: Linter.RuleEntry<[]>
4718
+ /**
4719
+ * Test files should contain at least one test case
4720
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2187/javascript
4721
+ */
4722
+ 'sonar/no-empty-test-file'?: Linter.RuleEntry<[]>
4723
+ /**
4724
+ * Equality operators should not be used in "for" loop termination conditions
4725
+ * @see https://sonarsource.github.io/rspec/#/rspec/S888/javascript
4726
+ */
4727
+ 'sonar/no-equals-in-for-termination'?: Linter.RuleEntry<[]>
4728
+ /**
4729
+ * Exclusive tests should not be commited to version control
4730
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6426/javascript
4731
+ */
4732
+ 'sonar/no-exclusive-tests'?: Linter.RuleEntry<[]>
4733
+ /**
4734
+ * Function calls should not pass extra arguments
4735
+ * @see https://sonarsource.github.io/rspec/#/rspec/S930/javascript
4736
+ */
4737
+ 'sonar/no-extra-arguments'?: Linter.RuleEntry<SonarNoExtraArguments>
4738
+ /**
4739
+ * Switch cases should end with an unconditional "break" statement
4740
+ * @see https://sonarsource.github.io/rspec/#/rspec/S128/javascript
4741
+ */
4742
+ 'sonar/no-fallthrough'?: Linter.RuleEntry<[]>
4743
+ /**
4744
+ * "for in" should not be used with iterables
4745
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4139/javascript
4746
+ */
4747
+ 'sonar/no-for-in-iterable'?: Linter.RuleEntry<[]>
4748
+ /**
4749
+ * Function declarations should not be made within blocks
4750
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1530/javascript
4751
+ */
4752
+ 'sonar/no-function-declaration-in-block'?: Linter.RuleEntry<[]>
4753
+ /**
4754
+ * The global "this" object should not be used
4755
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2990/javascript
4756
+ */
4757
+ 'sonar/no-global-this'?: Linter.RuleEntry<[]>
4758
+ /**
4759
+ * Special identifiers should not be bound or assigned
4760
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2137/javascript
4761
+ */
4762
+ 'sonar/no-globals-shadowing'?: Linter.RuleEntry<[]>
4763
+ /**
4764
+ * Boolean expressions should not be gratuitous
4765
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2589/javascript
4766
+ */
4767
+ 'sonar/no-gratuitous-expressions'?: Linter.RuleEntry<SonarNoGratuitousExpressions>
4768
+ /**
4769
+ * Using hardcoded IP addresses is security-sensitive
4770
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1313/javascript
4771
+ */
4772
+ 'sonar/no-hardcoded-ip'?: Linter.RuleEntry<[]>
4773
+ /**
4774
+ * Hard-coded passwords are security-sensitive
4775
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2068/javascript
4776
+ */
4777
+ 'sonar/no-hardcoded-passwords'?: Linter.RuleEntry<SonarNoHardcodedPasswords>
4778
+ /**
4779
+ * Hard-coded secrets are security-sensitive
4780
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6418/javascript
4781
+ */
4782
+ 'sonar/no-hardcoded-secrets'?: Linter.RuleEntry<SonarNoHardcodedSecrets>
4783
+ /**
4784
+ * React's useState hook should not be used directly in the render function or body of a component
4785
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6442/javascript
4786
+ */
4787
+ 'sonar/no-hook-setter-in-body'?: Linter.RuleEntry<[]>
4788
+ /**
4789
+ * "if/else if" chains and "switch" cases should not have the same condition
4790
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1862/javascript
4791
+ */
4792
+ 'sonar/no-identical-conditions'?: Linter.RuleEntry<SonarNoIdenticalConditions>
4793
+ /**
4794
+ * Identical expressions should not be used on both sides of a binary operator
4795
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1764/javascript
4796
+ */
4797
+ 'sonar/no-identical-expressions'?: Linter.RuleEntry<SonarNoIdenticalExpressions>
4798
+ /**
4799
+ * Functions should not have identical implementations
4800
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4144/javascript
4801
+ */
4802
+ 'sonar/no-identical-functions'?: Linter.RuleEntry<SonarNoIdenticalFunctions>
4803
+ /**
4804
+ * Exceptions should not be ignored
4805
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2486/javascript
4806
+ */
4807
+ 'sonar/no-ignored-exceptions'?: Linter.RuleEntry<[]>
4808
+ /**
4809
+ * Return values from functions without side effects should not be ignored
4810
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2201/javascript
4811
+ */
4812
+ 'sonar/no-ignored-return'?: Linter.RuleEntry<[]>
4813
+ /**
4814
+ * Dependencies should be explicit
4815
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4328/javascript
4816
+ */
4817
+ 'sonar/no-implicit-dependencies'?: Linter.RuleEntry<SonarNoImplicitDependencies>
4818
+ /**
4819
+ * Variables should be declared explicitly
4820
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2703/javascript
4821
+ */
4822
+ 'sonar/no-implicit-global'?: Linter.RuleEntry<[]>
4823
+ /**
4824
+ * "in" should not be used on arrays
4825
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4619/javascript
4826
+ */
4827
+ 'sonar/no-in-misuse'?: Linter.RuleEntry<[]>
4828
+ /**
4829
+ * Assertions should be complete
4830
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2970/javascript
4105
4831
  */
4106
- 'sonar/cognitive-complexity'?: Linter.RuleEntry<SonarCognitiveComplexity>
4832
+ 'sonar/no-incomplete-assertions'?: Linter.RuleEntry<[]>
4107
4833
  /**
4108
- * "if ... else if" constructs should end with "else" clauses
4109
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/elseif-without-else.md
4834
+ * Functions should use "return" consistently
4835
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3801/javascript
4110
4836
  */
4111
- 'sonar/elseif-without-else'?: Linter.RuleEntry<[]>
4837
+ 'sonar/no-inconsistent-returns'?: Linter.RuleEntry<SonarNoInconsistentReturns>
4112
4838
  /**
4113
- * "switch" statements should not have too many "case" clauses
4114
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/max-switch-cases.md
4839
+ * Strings and non-strings should not be added
4840
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3402/javascript
4115
4841
  */
4116
- 'sonar/max-switch-cases'?: Linter.RuleEntry<SonarMaxSwitchCases>
4842
+ 'sonar/no-incorrect-string-concat'?: Linter.RuleEntry<SonarNoIncorrectStringConcat>
4117
4843
  /**
4118
- * All branches in a conditional structure should not have exactly the same implementation
4119
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-all-duplicated-branches.md
4844
+ * Users should not use internal APIs
4845
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6627/javascript
4120
4846
  */
4121
- 'sonar/no-all-duplicated-branches'?: Linter.RuleEntry<[]>
4847
+ 'sonar/no-internal-api-use'?: Linter.RuleEntry<[]>
4122
4848
  /**
4123
- * Collapsible "if" statements should be merged
4124
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-collapsible-if.md
4849
+ * Using intrusive permissions is security-sensitive
4850
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5604/javascript
4125
4851
  */
4126
- 'sonar/no-collapsible-if'?: Linter.RuleEntry<SonarNoCollapsibleIf>
4852
+ 'sonar/no-intrusive-permissions'?: Linter.RuleEntry<SonarNoIntrusivePermissions>
4127
4853
  /**
4128
- * Collection sizes and array length comparisons should make sense
4129
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-collection-size-mischeck.md
4854
+ * "await" should only be used with promises
4855
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4123/javascript
4130
4856
  */
4131
- 'sonar/no-collection-size-mischeck'?: Linter.RuleEntry<[]>
4857
+ 'sonar/no-invalid-await'?: Linter.RuleEntry<[]>
4132
4858
  /**
4133
- * String literals should not be duplicated
4134
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-duplicate-string.md
4859
+ * Regular expressions should be syntactically valid
4860
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5856/javascript
4135
4861
  */
4136
- 'sonar/no-duplicate-string'?: Linter.RuleEntry<SonarNoDuplicateString>
4862
+ 'sonar/no-invalid-regexp'?: Linter.RuleEntry<[]>
4137
4863
  /**
4138
- * Two branches in a conditional structure should not have exactly the same implementation
4139
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-duplicated-branches.md
4864
+ * Function returns should not be invariant
4865
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3516/javascript
4140
4866
  */
4141
- 'sonar/no-duplicated-branches'?: Linter.RuleEntry<SonarNoDuplicatedBranches>
4867
+ 'sonar/no-invariant-returns'?: Linter.RuleEntry<SonarNoInvariantReturns>
4142
4868
  /**
4143
- * Collection elements should not be replaced unconditionally
4144
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-element-overwrite.md
4869
+ * Boolean checks should not be inverted
4870
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1940/javascript
4145
4871
  */
4146
- 'sonar/no-element-overwrite'?: Linter.RuleEntry<SonarNoElementOverwrite>
4872
+ 'sonar/no-inverted-boolean-check'?: Linter.RuleEntry<[]>
4147
4873
  /**
4148
- * Empty collections should not be accessed or iterated
4149
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-empty-collection.md
4874
+ * Forwarding client IP address is security-sensitive
4875
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5759/javascript
4150
4876
  */
4151
- 'sonar/no-empty-collection'?: Linter.RuleEntry<[]>
4877
+ 'sonar/no-ip-forward'?: Linter.RuleEntry<SonarNoIpForward>
4152
4878
  /**
4153
- * Function calls should not pass extra arguments
4154
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-extra-arguments.md
4879
+ * Labels should not be used
4880
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1119/javascript
4155
4881
  */
4156
- 'sonar/no-extra-arguments'?: Linter.RuleEntry<SonarNoExtraArguments>
4882
+ 'sonar/no-labels'?: Linter.RuleEntry<[]>
4157
4883
  /**
4158
- * Boolean expressions should not be gratuitous
4159
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-gratuitous-expressions.md
4884
+ * Literals should not be used as functions
4885
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6958/javascript
4160
4886
  */
4161
- 'sonar/no-gratuitous-expressions'?: Linter.RuleEntry<SonarNoGratuitousExpressions>
4887
+ 'sonar/no-literal-call'?: Linter.RuleEntry<[]>
4162
4888
  /**
4163
- * Related "if-else-if" and "switch-case" statements should not have the same condition
4164
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-identical-conditions.md
4889
+ * Allowing browsers to sniff MIME types is security-sensitive
4890
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5734/javascript
4165
4891
  */
4166
- 'sonar/no-identical-conditions'?: Linter.RuleEntry<SonarNoIdenticalConditions>
4892
+ 'sonar/no-mime-sniff'?: Linter.RuleEntry<SonarNoMimeSniff>
4167
4893
  /**
4168
- * Identical expressions should not be used on both sides of a binary operator
4169
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-identical-expressions.md
4894
+ * Array-mutating methods should not be used misleadingly
4895
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4043/javascript
4170
4896
  */
4171
- 'sonar/no-identical-expressions'?: Linter.RuleEntry<SonarNoIdenticalExpressions>
4897
+ 'sonar/no-misleading-array-reverse'?: Linter.RuleEntry<[]>
4172
4898
  /**
4173
- * Functions should not have identical implementations
4174
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-identical-functions.md
4899
+ * Unicode Grapheme Clusters should be avoided inside regex character classes
4900
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5868/javascript
4175
4901
  */
4176
- 'sonar/no-identical-functions'?: Linter.RuleEntry<SonarNoIdenticalFunctions>
4902
+ 'sonar/no-misleading-character-class'?: Linter.RuleEntry<[]>
4177
4903
  /**
4178
- * Return values from functions without side effects should not be ignored
4179
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-ignored-return.md
4904
+ * Allowing mixed-content is security-sensitive
4905
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5730/javascript
4180
4906
  */
4181
- 'sonar/no-ignored-return'?: Linter.RuleEntry<[]>
4907
+ 'sonar/no-mixed-content'?: Linter.RuleEntry<SonarNoMixedContent>
4182
4908
  /**
4183
- * Boolean checks should not be inverted
4184
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-inverted-boolean-check.md
4909
+ * Assignments should not be made from within sub-expressions
4910
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1121/javascript
4185
4911
  */
4186
- 'sonar/no-inverted-boolean-check'?: Linter.RuleEntry<[]>
4912
+ 'sonar/no-nested-assignment'?: Linter.RuleEntry<[]>
4913
+ /**
4914
+ * Ternary operators should not be nested
4915
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3358/javascript
4916
+ */
4917
+ 'sonar/no-nested-conditional'?: Linter.RuleEntry<[]>
4918
+ /**
4919
+ * Functions should not be nested too deeply
4920
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2004/javascript
4921
+ */
4922
+ 'sonar/no-nested-functions'?: Linter.RuleEntry<SonarNoNestedFunctions>
4923
+ /**
4924
+ * Increment (++) and decrement (--) operators should not be used in a method call or mixed with other operators in an expression
4925
+ * @see https://sonarsource.github.io/rspec/#/rspec/S881/javascript
4926
+ */
4927
+ 'sonar/no-nested-incdec'?: Linter.RuleEntry<[]>
4187
4928
  /**
4188
4929
  * "switch" statements should not be nested
4189
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-nested-switch.md
4930
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1821/javascript
4190
4931
  */
4191
4932
  'sonar/no-nested-switch'?: Linter.RuleEntry<[]>
4192
4933
  /**
4193
4934
  * Template literals should not be nested
4194
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-nested-template-literals.md
4935
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4624/javascript
4195
4936
  */
4196
4937
  'sonar/no-nested-template-literals'?: Linter.RuleEntry<[]>
4197
4938
  /**
4198
4939
  * Loops with at most one iteration should be refactored
4199
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-one-iteration-loop.md
4940
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1751/javascript
4200
4941
  */
4201
4942
  'sonar/no-one-iteration-loop'?: Linter.RuleEntry<[]>
4202
4943
  /**
4203
- * Boolean literals should not be redundant
4204
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-redundant-boolean.md
4944
+ * Searching OS commands in PATH is security-sensitive
4945
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4036/javascript
4946
+ */
4947
+ 'sonar/no-os-command-from-path'?: Linter.RuleEntry<[]>
4948
+ /**
4949
+ * Initial values of parameters, caught exceptions, and loop variables should not be ignored
4950
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1226/javascript
4951
+ */
4952
+ 'sonar/no-parameter-reassignment'?: Linter.RuleEntry<[]>
4953
+ /**
4954
+ * Wrapper objects should not be used for primitive types
4955
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1533/javascript
4956
+ */
4957
+ 'sonar/no-primitive-wrappers'?: Linter.RuleEntry<[]>
4958
+ /**
4959
+ * Assignments should not be redundant
4960
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4165/javascript
4961
+ */
4962
+ 'sonar/no-redundant-assignments'?: Linter.RuleEntry<[]>
4963
+ /**
4964
+ * Boolean literals should not be used in comparisons
4965
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1125/javascript
4205
4966
  */
4206
4967
  'sonar/no-redundant-boolean'?: Linter.RuleEntry<[]>
4207
4968
  /**
4208
4969
  * Jump statements should not be redundant
4209
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-redundant-jump.md
4970
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3626/javascript
4210
4971
  */
4211
4972
  'sonar/no-redundant-jump'?: Linter.RuleEntry<[]>
4973
+ /**
4974
+ * Optional property declarations should not use both '?' and 'undefined' syntax
4975
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4782/javascript
4976
+ */
4977
+ 'sonar/no-redundant-optional'?: Linter.RuleEntry<SonarNoRedundantOptional>
4978
+ /**
4979
+ * Redundant pairs of parentheses should be removed
4980
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1110/javascript
4981
+ * @deprecated
4982
+ */
4983
+ 'sonar/no-redundant-parentheses'?: Linter.RuleEntry<SonarNoRedundantParentheses>
4984
+ /**
4985
+ * Variables should be defined before being used
4986
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3827/javascript
4987
+ */
4988
+ 'sonar/no-reference-error'?: Linter.RuleEntry<SonarNoReferenceError>
4989
+ /**
4990
+ * Disabling strict HTTP no-referrer policy is security-sensitive
4991
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5736/javascript
4992
+ */
4993
+ 'sonar/no-referrer-policy'?: Linter.RuleEntry<SonarNoReferrerPolicy>
4994
+ /**
4995
+ * Regular expressions should not contain multiple spaces
4996
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6326/javascript
4997
+ */
4998
+ 'sonar/no-regex-spaces'?: Linter.RuleEntry<[]>
4999
+ /**
5000
+ * "import" should be used to include external code
5001
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3533/javascript
5002
+ */
5003
+ 'sonar/no-require-or-define'?: Linter.RuleEntry<[]>
5004
+ /**
5005
+ * Primitive return types should be used
5006
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4324/javascript
5007
+ */
5008
+ 'sonar/no-return-type-any'?: Linter.RuleEntry<[]>
5009
+ /**
5010
+ * Assertions should not be given twice the same argument
5011
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5863/javascript
5012
+ */
5013
+ 'sonar/no-same-argument-assert'?: Linter.RuleEntry<SonarNoSameArgumentAssert>
4212
5014
  /**
4213
5015
  * Conditionals should start on new lines
4214
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-same-line-conditional.md
5016
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3972/javascript
4215
5017
  */
4216
5018
  'sonar/no-same-line-conditional'?: Linter.RuleEntry<SonarNoSameLineConditional>
4217
5019
  /**
4218
- * "switch" statements should have at least 3 "case" clauses
4219
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-small-switch.md
5020
+ * Methods should not contain selector parameters
5021
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2301/javascript
5022
+ */
5023
+ 'sonar/no-selector-parameter'?: Linter.RuleEntry<SonarNoSelectorParameter>
5024
+ /**
5025
+ * Tests should not be skipped without providing a reason
5026
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1607/javascript
5027
+ */
5028
+ 'sonar/no-skipped-tests'?: Linter.RuleEntry<[]>
5029
+ /**
5030
+ * "if" statements should be preferred over "switch" when simpler
5031
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1301/javascript
4220
5032
  */
4221
5033
  'sonar/no-small-switch'?: Linter.RuleEntry<[]>
4222
5034
  /**
4223
- * Collection and array contents should be used
4224
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-unused-collection.md
5035
+ * Track uses of "NOSONAR" comments
5036
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1291/javascript
5037
+ */
5038
+ 'sonar/no-sonar-comments'?: Linter.RuleEntry<[]>
5039
+ /**
5040
+ * Tabulation characters should not be used
5041
+ * @see https://sonarsource.github.io/rspec/#/rspec/S105/javascript
5042
+ * @deprecated
5043
+ */
5044
+ 'sonar/no-tab'?: Linter.RuleEntry<[]>
5045
+ /**
5046
+ * HTML "<table>" should not be used for layout purposes
5047
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5257/javascript
5048
+ */
5049
+ 'sonar/no-table-as-layout'?: Linter.RuleEntry<[]>
5050
+ /**
5051
+ * Promise rejections should not be caught by "try" blocks
5052
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4822/javascript
5053
+ */
5054
+ 'sonar/no-try-promise'?: Linter.RuleEntry<SonarNoTryPromise>
5055
+ /**
5056
+ * "undefined" should not be passed as the value of optional parameters
5057
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4623/javascript
5058
+ */
5059
+ 'sonar/no-undefined-argument'?: Linter.RuleEntry<[]>
5060
+ /**
5061
+ * "undefined" should not be assigned
5062
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2138/javascript
5063
+ */
5064
+ 'sonar/no-undefined-assignment'?: Linter.RuleEntry<[]>
5065
+ /**
5066
+ * Multiline blocks should be enclosed in curly braces
5067
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2681/javascript
5068
+ */
5069
+ 'sonar/no-unenclosed-multiline-block'?: Linter.RuleEntry<[]>
5070
+ /**
5071
+ * JSX list components keys should match up between renders
5072
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6486/javascript
5073
+ */
5074
+ 'sonar/no-uniq-key'?: Linter.RuleEntry<[]>
5075
+ /**
5076
+ * Expanding archive files without controlling resource consumption is security-sensitive
5077
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5042/javascript
5078
+ */
5079
+ 'sonar/no-unsafe-unzip'?: Linter.RuleEntry<[]>
5080
+ /**
5081
+ * Errors should not be created without being thrown
5082
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3984/javascript
5083
+ */
5084
+ 'sonar/no-unthrown-error'?: Linter.RuleEntry<[]>
5085
+ /**
5086
+ * Collection contents should be used
5087
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4030/javascript
4225
5088
  */
4226
5089
  'sonar/no-unused-collection'?: Linter.RuleEntry<[]>
4227
5090
  /**
4228
- * The output of functions that don't return anything should not be used
4229
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-use-of-empty-return-value.md
5091
+ * Unused function parameters should be removed
5092
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1172/javascript
5093
+ */
5094
+ 'sonar/no-unused-function-argument'?: Linter.RuleEntry<[]>
5095
+ /**
5096
+ * Unused local variables and functions should be removed
5097
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1481/javascript
5098
+ */
5099
+ 'sonar/no-unused-vars'?: Linter.RuleEntry<[]>
5100
+ /**
5101
+ * The return value of void functions should not be used
5102
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3699/javascript
4230
5103
  */
4231
5104
  'sonar/no-use-of-empty-return-value'?: Linter.RuleEntry<[]>
4232
5105
  /**
4233
5106
  * "catch" clauses should do more than rethrow
4234
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/no-useless-catch.md
5107
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2737/javascript
4235
5108
  */
4236
5109
  'sonar/no-useless-catch'?: Linter.RuleEntry<[]>
4237
5110
  /**
4238
- * Non-existent operators "=+", "=-" and "=!" should not be used
4239
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/non-existent-operator.md
5111
+ * Values should not be uselessly incremented
5112
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2123/javascript
5113
+ */
5114
+ 'sonar/no-useless-increment'?: Linter.RuleEntry<[]>
5115
+ /**
5116
+ * Type intersections should use meaningful types
5117
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4335/javascript
5118
+ */
5119
+ 'sonar/no-useless-intersection'?: Linter.RuleEntry<[]>
5120
+ /**
5121
+ * React state setter function should not be called with its matching state variable
5122
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6443/javascript
5123
+ */
5124
+ 'sonar/no-useless-react-setstate'?: Linter.RuleEntry<[]>
5125
+ /**
5126
+ * Variables declared with "var" should be declared before they are used
5127
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1526/javascript
5128
+ */
5129
+ 'sonar/no-variable-usage-before-declaration'?: Linter.RuleEntry<SonarNoVariableUsageBeforeDeclaration>
5130
+ /**
5131
+ * Disabling Vue.js built-in escaping is security-sensitive
5132
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6299/javascript
5133
+ * @deprecated
5134
+ */
5135
+ 'sonar/no-vue-bypass-sanitization'?: Linter.RuleEntry<[]>
5136
+ /**
5137
+ * Cipher algorithms should be robust
5138
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5547/javascript
5139
+ */
5140
+ 'sonar/no-weak-cipher'?: Linter.RuleEntry<[]>
5141
+ /**
5142
+ * Cryptographic keys should be robust
5143
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4426/javascript
5144
+ */
5145
+ 'sonar/no-weak-keys'?: Linter.RuleEntry<[]>
5146
+ /**
5147
+ * Wildcard imports should not be used
5148
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2208/javascript
5149
+ */
5150
+ 'sonar/no-wildcard-import'?: Linter.RuleEntry<[]>
5151
+ /**
5152
+ * Non-existent operators '=+', '=-' and '=!' should not be used
5153
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2757/javascript
4240
5154
  */
4241
5155
  'sonar/non-existent-operator'?: Linter.RuleEntry<[]>
5156
+ /**
5157
+ * Arithmetic operators should only have numbers as operands
5158
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3760/javascript
5159
+ */
5160
+ 'sonar/non-number-in-arithmetic-expression'?: Linter.RuleEntry<SonarNonNumberInArithmeticExpression>
5161
+ /**
5162
+ * Properties of variables with "null" or "undefined" values should not be accessed
5163
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2259/javascript
5164
+ */
5165
+ 'sonar/null-dereference'?: Linter.RuleEntry<[]>
5166
+ /**
5167
+ * "<object>" tags should provide an alternative content
5168
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5264/javascript
5169
+ */
5170
+ 'sonar/object-alt-content'?: Linter.RuleEntry<[]>
5171
+ /**
5172
+ * Arithmetic operations should not result in "NaN"
5173
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3757/javascript
5174
+ */
5175
+ 'sonar/operation-returning-nan'?: Linter.RuleEntry<[]>
5176
+ /**
5177
+ * Using shell interpreter when executing OS commands is security-sensitive
5178
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4721/javascript
5179
+ */
5180
+ 'sonar/os-command'?: Linter.RuleEntry<[]>
5181
+ /**
5182
+ * Origins should be verified during cross-origin communications
5183
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2819/javascript
5184
+ */
5185
+ 'sonar/post-message'?: Linter.RuleEntry<[]>
5186
+ /**
5187
+ * "default" clauses should be last
5188
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4524/javascript
5189
+ */
5190
+ 'sonar/prefer-default-last'?: Linter.RuleEntry<[]>
4242
5191
  /**
4243
5192
  * Local variables should not be declared and then immediately returned or thrown
4244
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/prefer-immediate-return.md
5193
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1488/javascript
4245
5194
  */
4246
5195
  'sonar/prefer-immediate-return'?: Linter.RuleEntry<[]>
4247
5196
  /**
4248
5197
  * Object literal syntax should be used
4249
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/prefer-object-literal.md
5198
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2428/javascript
4250
5199
  */
4251
5200
  'sonar/prefer-object-literal'?: Linter.RuleEntry<[]>
5201
+ /**
5202
+ * Shorthand promises should be used
5203
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4634/javascript
5204
+ */
5205
+ 'sonar/prefer-promise-shorthand'?: Linter.RuleEntry<[]>
5206
+ /**
5207
+ * React props should be read-only
5208
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6759/javascript
5209
+ */
5210
+ 'sonar/prefer-read-only-props'?: Linter.RuleEntry<[]>
5211
+ /**
5212
+ * "RegExp.exec()" should be preferred over "String.match()"
5213
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6594/javascript
5214
+ */
5215
+ 'sonar/prefer-regexp-exec'?: Linter.RuleEntry<[]>
4252
5216
  /**
4253
5217
  * Return of boolean expressions should not be wrapped into an "if-then-else" statement
4254
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/prefer-single-boolean-return.md
5218
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1126/javascript
4255
5219
  */
4256
5220
  'sonar/prefer-single-boolean-return'?: Linter.RuleEntry<[]>
5221
+ /**
5222
+ * Type predicates should be used
5223
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4322/javascript
5224
+ */
5225
+ 'sonar/prefer-type-guard'?: Linter.RuleEntry<[]>
4257
5226
  /**
4258
5227
  * A "while" loop should be used instead of a "for" loop
4259
- * @see https://github.com/SonarSource/eslint-plugin-sonarjs/blob/master/docs/rules/prefer-while.md
5228
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1264/javascript
4260
5229
  */
4261
5230
  'sonar/prefer-while'?: Linter.RuleEntry<[]>
5231
+ /**
5232
+ * Using command line arguments is security-sensitive
5233
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4823/javascript
5234
+ * @deprecated
5235
+ */
5236
+ 'sonar/process-argv'?: Linter.RuleEntry<[]>
5237
+ /**
5238
+ * Delivering code in production with debug features activated is security-sensitive
5239
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4507/javascript
5240
+ */
5241
+ 'sonar/production-debug'?: Linter.RuleEntry<[]>
5242
+ /**
5243
+ * Using pseudorandom number generators (PRNGs) is security-sensitive
5244
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2245/javascript
5245
+ */
5246
+ 'sonar/pseudo-random'?: Linter.RuleEntry<[]>
5247
+ /**
5248
+ * Public "static" fields should be read-only
5249
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1444/javascript
5250
+ */
5251
+ 'sonar/public-static-readonly'?: Linter.RuleEntry<[]>
5252
+ /**
5253
+ * Using publicly writable directories is security-sensitive
5254
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5443/javascript
5255
+ */
5256
+ 'sonar/publicly-writable-directories'?: Linter.RuleEntry<[]>
5257
+ /**
5258
+ * "Array.reduce()" calls should include an initial value
5259
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6959/javascript
5260
+ */
5261
+ 'sonar/reduce-initial-value'?: Linter.RuleEntry<[]>
5262
+ /**
5263
+ * Redundant type aliases should not be used
5264
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6564/javascript
5265
+ */
5266
+ 'sonar/redundant-type-aliases'?: Linter.RuleEntry<[]>
5267
+ /**
5268
+ * Regular expressions should not be too complicated
5269
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5843/javascript
5270
+ */
5271
+ 'sonar/regex-complexity'?: Linter.RuleEntry<SonarRegexComplexity>
5272
+ /**
5273
+ * Using regular expressions is security-sensitive
5274
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4784/javascript
5275
+ * @deprecated
5276
+ */
5277
+ 'sonar/regular-expr'?: Linter.RuleEntry<[]>
5278
+ /**
5279
+ * A new session should be created during user authentication
5280
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5876/javascript
5281
+ */
5282
+ 'sonar/session-regeneration'?: Linter.RuleEntry<[]>
5283
+ /**
5284
+ * Shorthand object properties should be grouped at the beginning or end of an object declaration
5285
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3499/javascript
5286
+ */
5287
+ 'sonar/shorthand-property-grouping'?: Linter.RuleEntry<SonarShorthandPropertyGrouping>
5288
+ /**
5289
+ * Character classes in regular expressions should not contain only one character
5290
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6397/javascript
5291
+ */
5292
+ 'sonar/single-char-in-character-classes'?: Linter.RuleEntry<[]>
5293
+ /**
5294
+ * Single-character alternations in regular expressions should be replaced with character classes
5295
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6035/javascript
5296
+ */
5297
+ 'sonar/single-character-alternation'?: Linter.RuleEntry<[]>
5298
+ /**
5299
+ * Using slow regular expressions is security-sensitive
5300
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5852/javascript
5301
+ */
5302
+ 'sonar/slow-regex'?: Linter.RuleEntry<[]>
5303
+ /**
5304
+ * Using Sockets is security-sensitive
5305
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4818/javascript
5306
+ * @deprecated
5307
+ */
5308
+ 'sonar/sockets'?: Linter.RuleEntry<[]>
5309
+ /**
5310
+ * Formatting SQL queries is security-sensitive
5311
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2077/javascript
5312
+ */
5313
+ 'sonar/sql-queries'?: Linter.RuleEntry<[]>
5314
+ /**
5315
+ * Tests should be stable
5316
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5973/javascript
5317
+ */
5318
+ 'sonar/stable-tests'?: Linter.RuleEntry<[]>
5319
+ /**
5320
+ * Reading the Standard Input is security-sensitive
5321
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4829/javascript
5322
+ * @deprecated
5323
+ */
5324
+ 'sonar/standard-input'?: Linter.RuleEntry<[]>
5325
+ /**
5326
+ * Regular expressions with the global flag should be used with caution
5327
+ * @see https://sonarsource.github.io/rspec/#/rspec/S6351/javascript
5328
+ */
5329
+ 'sonar/stateful-regex'?: Linter.RuleEntry<SonarStatefulRegex>
5330
+ /**
5331
+ * Disabling Strict-Transport-Security policy is security-sensitive
5332
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5739/javascript
5333
+ */
5334
+ 'sonar/strict-transport-security'?: Linter.RuleEntry<SonarStrictTransportSecurity>
5335
+ /**
5336
+ * Comparison operators should not be used with strings
5337
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3003/javascript
5338
+ */
5339
+ 'sonar/strings-comparison'?: Linter.RuleEntry<SonarStringsComparison>
5340
+ /**
5341
+ * "super()" should be invoked appropriately
5342
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3854/javascript
5343
+ */
5344
+ 'sonar/super-invocation'?: Linter.RuleEntry<[]>
5345
+ /**
5346
+ * Tables should have headers
5347
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5256/javascript
5348
+ */
5349
+ 'sonar/table-header'?: Linter.RuleEntry<[]>
5350
+ /**
5351
+ * Table cells should reference their headers
5352
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5260/javascript
5353
+ */
5354
+ 'sonar/table-header-reference'?: Linter.RuleEntry<[]>
5355
+ /**
5356
+ * Tests should check which exception is thrown
5357
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5958/javascript
5358
+ */
5359
+ 'sonar/test-check-exception'?: Linter.RuleEntry<[]>
5360
+ /**
5361
+ * Track uses of "TODO" tags
5362
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1135/javascript
5363
+ */
5364
+ 'sonar/todo-tag'?: Linter.RuleEntry<[]>
5365
+ /**
5366
+ * Loops should not contain more than a single "break" or "continue" statement
5367
+ * @see https://sonarsource.github.io/rspec/#/rspec/S135/javascript
5368
+ */
5369
+ 'sonar/too-many-break-or-continue-in-loop'?: Linter.RuleEntry<SonarTooManyBreakOrContinueInLoop>
5370
+ /**
5371
+ * Regular expressions using Unicode character classes or property escapes should enable the unicode flag
5372
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5867/javascript
5373
+ */
5374
+ 'sonar/unicode-aware-regex'?: Linter.RuleEntry<SonarUnicodeAwareRegex>
5375
+ /**
5376
+ * Unnecessary imports should be removed
5377
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1128/javascript
5378
+ */
5379
+ 'sonar/unused-import'?: Linter.RuleEntry<[]>
5380
+ /**
5381
+ * Names of regular expressions named groups should be used
5382
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5860/javascript
5383
+ */
5384
+ 'sonar/unused-named-groups'?: Linter.RuleEntry<SonarUnusedNamedGroups>
5385
+ /**
5386
+ * Server certificates should be verified during SSL/TLS connections
5387
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4830/javascript
5388
+ */
5389
+ 'sonar/unverified-certificate'?: Linter.RuleEntry<SonarUnverifiedCertificate>
5390
+ /**
5391
+ * Server hostnames should be verified during SSL/TLS connections
5392
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5527/javascript
5393
+ */
5394
+ 'sonar/unverified-hostname'?: Linter.RuleEntry<SonarUnverifiedHostname>
5395
+ /**
5396
+ * "const" variables should not be reassigned
5397
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3500/javascript
5398
+ */
5399
+ 'sonar/updated-const-var'?: Linter.RuleEntry<SonarUpdatedConstVar>
5400
+ /**
5401
+ * Loop counters should not be assigned within the loop body
5402
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2310/javascript
5403
+ */
5404
+ 'sonar/updated-loop-counter'?: Linter.RuleEntry<SonarUpdatedLoopCounter>
5405
+ /**
5406
+ * Type aliases should be used
5407
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4323/javascript
5408
+ */
5409
+ 'sonar/use-type-alias'?: Linter.RuleEntry<SonarUseTypeAlias>
5410
+ /**
5411
+ * Results of operations on strings should not be ignored
5412
+ * @see https://sonarsource.github.io/rspec/#/rspec/S1154/javascript
5413
+ * @deprecated
5414
+ */
5415
+ 'sonar/useless-string-operation'?: Linter.RuleEntry<[]>
5416
+ /**
5417
+ * Values not convertible to numbers should not be used in numeric comparisons
5418
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3758/javascript
5419
+ */
5420
+ 'sonar/values-not-convertible-to-numbers'?: Linter.RuleEntry<[]>
5421
+ /**
5422
+ * Variable, property and parameter names should comply with a naming convention
5423
+ * @see https://sonarsource.github.io/rspec/#/rspec/S117/javascript
5424
+ */
5425
+ 'sonar/variable-name'?: Linter.RuleEntry<SonarVariableName>
5426
+ /**
5427
+ * "void" should not be used
5428
+ * @see https://sonarsource.github.io/rspec/#/rspec/S3735/javascript
5429
+ */
5430
+ 'sonar/void-use'?: Linter.RuleEntry<[]>
5431
+ /**
5432
+ * Weak SSL/TLS protocols should not be used
5433
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4423/javascript
5434
+ */
5435
+ 'sonar/weak-ssl'?: Linter.RuleEntry<[]>
5436
+ /**
5437
+ * Web SQL databases should not be used
5438
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2817/javascript
5439
+ * @deprecated
5440
+ */
5441
+ 'sonar/web-sql-database'?: Linter.RuleEntry<[]>
5442
+ /**
5443
+ * Disclosing fingerprints from web application technologies is security-sensitive
5444
+ * @see https://sonarsource.github.io/rspec/#/rspec/S5689/javascript
5445
+ */
5446
+ 'sonar/x-powered-by'?: Linter.RuleEntry<[]>
5447
+ /**
5448
+ * XML parsers should not be vulnerable to XXE attacks
5449
+ * @see https://sonarsource.github.io/rspec/#/rspec/S2755/javascript
5450
+ */
5451
+ 'sonar/xml-parser-xxe'?: Linter.RuleEntry<SonarXmlParserXxe>
5452
+ /**
5453
+ * Executing XPath expressions is security-sensitive
5454
+ * @see https://sonarsource.github.io/rspec/#/rspec/S4817/javascript
5455
+ * @deprecated
5456
+ */
5457
+ 'sonar/xpath'?: Linter.RuleEntry<[]>
4262
5458
  /**
4263
5459
  * Enforce sorted `import` declarations within modules
4264
5460
  * @see https://eslint.org/docs/latest/rules/sort-imports
@@ -9111,38 +10307,270 @@ type SemiSpacing = []|[{
9111
10307
  }]
9112
10308
  // ----- semi-style -----
9113
10309
  type SemiStyle = []|[("last" | "first")]
10310
+ // ----- sonar/arguments-order -----
10311
+ type SonarArgumentsOrder = []|[("sonar-runtime" | "metric")]
10312
+ // ----- sonar/arguments-usage -----
10313
+ type SonarArgumentsUsage = []|[("sonar-runtime" | "metric")]
10314
+ // ----- sonar/arrow-function-convention -----
10315
+ type SonarArrowFunctionConvention = []|[{
10316
+ requireParameterParentheses?: boolean
10317
+ requireBodyBraces?: boolean
10318
+ }]
10319
+ // ----- sonar/aws-iam-all-privileges -----
10320
+ type SonarAwsIamAllPrivileges = []|[("sonar-runtime" | "metric")]
10321
+ // ----- sonar/aws-iam-all-resources-accessible -----
10322
+ type SonarAwsIamAllResourcesAccessible = []|[("sonar-runtime" | "metric")]
10323
+ // ----- sonar/aws-iam-privilege-escalation -----
10324
+ type SonarAwsIamPrivilegeEscalation = []|[("sonar-runtime" | "metric")]
10325
+ // ----- sonar/aws-iam-public-access -----
10326
+ type SonarAwsIamPublicAccess = []|[("sonar-runtime" | "metric")]
10327
+ // ----- sonar/aws-s3-bucket-granted-access -----
10328
+ type SonarAwsS3BucketGrantedAccess = []|[("sonar-runtime" | "metric")]
10329
+ // ----- sonar/aws-s3-bucket-public-access -----
10330
+ type SonarAwsS3BucketPublicAccess = []|[("sonar-runtime" | "metric")]
10331
+ // ----- sonar/aws-s3-bucket-server-encryption -----
10332
+ type SonarAwsS3BucketServerEncryption = []|[("sonar-runtime" | "metric")]
10333
+ // ----- sonar/aws-s3-bucket-versioning -----
10334
+ type SonarAwsS3BucketVersioning = []|[("sonar-runtime" | "metric")]
10335
+ // ----- sonar/block-scoped-var -----
10336
+ type SonarBlockScopedVar = []|[("sonar-runtime" | "metric")]
10337
+ // ----- sonar/certificate-transparency -----
10338
+ type SonarCertificateTransparency = []|[("sonar-runtime" | "metric")]
10339
+ // ----- sonar/class-name -----
10340
+ type SonarClassName = []|[{
10341
+ format?: string
10342
+ }]
9114
10343
  // ----- sonar/cognitive-complexity -----
9115
10344
  type SonarCognitiveComplexity = []|[number]|[number, ("sonar-runtime" | "metric")]
10345
+ // ----- sonar/comment-regex -----
10346
+ type SonarCommentRegex = []|[{
10347
+ regularExpression?: string
10348
+ message?: string
10349
+ flags?: string
10350
+ }]
10351
+ // ----- sonar/conditional-indentation -----
10352
+ type SonarConditionalIndentation = []|[("sonar-runtime" | "metric")]
10353
+ // ----- sonar/confidential-information-logging -----
10354
+ type SonarConfidentialInformationLogging = []|[("sonar-runtime" | "metric")]
10355
+ // ----- sonar/content-length -----
10356
+ type SonarContentLength = []|[{
10357
+ fileUploadSizeLimit?: number
10358
+ standardSizeLimit?: number
10359
+ }]
10360
+ // ----- sonar/content-security-policy -----
10361
+ type SonarContentSecurityPolicy = []|[("sonar-runtime" | "metric")]
10362
+ // ----- sonar/cookie-no-httponly -----
10363
+ type SonarCookieNoHttponly = []|[("sonar-runtime" | "metric")]
10364
+ // ----- sonar/cors -----
10365
+ type SonarCors = []|[("sonar-runtime" | "metric")]
10366
+ // ----- sonar/csrf -----
10367
+ type SonarCsrf = []|[("sonar-runtime" | "metric")]
10368
+ // ----- sonar/cyclomatic-complexity -----
10369
+ type SonarCyclomaticComplexity = []|[{
10370
+ threshold?: number
10371
+ }]|[{
10372
+ threshold?: number
10373
+ }, ("sonar-runtime" | "metric")]
10374
+ // ----- sonar/destructuring-assignment-syntax -----
10375
+ type SonarDestructuringAssignmentSyntax = []|[("sonar-runtime" | "metric")]
10376
+ // ----- sonar/different-types-comparison -----
10377
+ type SonarDifferentTypesComparison = []|[("sonar-runtime" | "metric")]
10378
+ // ----- sonar/disabled-auto-escaping -----
10379
+ type SonarDisabledAutoEscaping = []|[("sonar-runtime" | "metric")]
10380
+ // ----- sonar/dns-prefetching -----
10381
+ type SonarDnsPrefetching = []|[("sonar-runtime" | "metric")]
10382
+ // ----- sonar/duplicates-in-character-class -----
10383
+ type SonarDuplicatesInCharacterClass = []|[("sonar-runtime" | "metric")]
10384
+ // ----- sonar/enforce-trailing-comma -----
10385
+ type SonarEnforceTrailingComma = []|[(_SonarEnforceTrailingCommaValue | {
10386
+ arrays?: _SonarEnforceTrailingCommaValueWithIgnore
10387
+ objects?: _SonarEnforceTrailingCommaValueWithIgnore
10388
+ imports?: _SonarEnforceTrailingCommaValueWithIgnore
10389
+ exports?: _SonarEnforceTrailingCommaValueWithIgnore
10390
+ functions?: _SonarEnforceTrailingCommaValueWithIgnore
10391
+ })]
10392
+ type _SonarEnforceTrailingCommaValue = ("always-multiline" | "always" | "never" | "only-multiline")
10393
+ type _SonarEnforceTrailingCommaValueWithIgnore = ("always-multiline" | "always" | "ignore" | "never" | "only-multiline")
10394
+ // ----- sonar/expression-complexity -----
10395
+ type SonarExpressionComplexity = []|[{
10396
+ max?: number
10397
+ }]|[{
10398
+ max?: number
10399
+ }, ("sonar-runtime" | "metric")]
10400
+ // ----- sonar/file-header -----
10401
+ type SonarFileHeader = []|[{
10402
+ headerFormat?: string
10403
+ isRegularExpression?: boolean
10404
+ }]
10405
+ // ----- sonar/file-uploads -----
10406
+ type SonarFileUploads = []|[("sonar-runtime" | "metric")]
10407
+ // ----- sonar/for-loop-increment-sign -----
10408
+ type SonarForLoopIncrementSign = []|[("sonar-runtime" | "metric")]
10409
+ // ----- sonar/frame-ancestors -----
10410
+ type SonarFrameAncestors = []|[("sonar-runtime" | "metric")]
10411
+ // ----- sonar/function-inside-loop -----
10412
+ type SonarFunctionInsideLoop = []|[("sonar-runtime" | "metric")]
10413
+ // ----- sonar/function-name -----
10414
+ type SonarFunctionName = []|[{
10415
+ format?: string
10416
+ }]
10417
+ // ----- sonar/function-return-type -----
10418
+ type SonarFunctionReturnType = []|[("sonar-runtime" | "metric")]
10419
+ // ----- sonar/in-operator-type-error -----
10420
+ type SonarInOperatorTypeError = []|[("sonar-runtime" | "metric")]
10421
+ // ----- sonar/inconsistent-function-call -----
10422
+ type SonarInconsistentFunctionCall = []|[("sonar-runtime" | "metric")]
10423
+ // ----- sonar/insecure-cookie -----
10424
+ type SonarInsecureCookie = []|[("sonar-runtime" | "metric")]
10425
+ // ----- sonar/insecure-jwt-token -----
10426
+ type SonarInsecureJwtToken = []|[("sonar-runtime" | "metric")]
10427
+ // ----- sonar/inverted-assertion-arguments -----
10428
+ type SonarInvertedAssertionArguments = []|[("sonar-runtime" | "metric")]
10429
+ // ----- sonar/max-lines -----
10430
+ type SonarMaxLines = []|[{
10431
+ maximum?: number
10432
+ }]
10433
+ // ----- sonar/max-lines-per-function -----
10434
+ type SonarMaxLinesPerFunction = []|[{
10435
+ maximum?: number
10436
+ }]
9116
10437
  // ----- sonar/max-switch-cases -----
9117
10438
  type SonarMaxSwitchCases = []|[number]
10439
+ // ----- sonar/max-union-size -----
10440
+ type SonarMaxUnionSize = []|[{
10441
+ threshold?: number
10442
+ }]
10443
+ // ----- sonar/nested-control-flow -----
10444
+ type SonarNestedControlFlow = []|[{
10445
+ maximumNestingLevel?: number
10446
+ }]|[{
10447
+ maximumNestingLevel?: number
10448
+ }, ("sonar-runtime" | "metric")]
10449
+ // ----- sonar/new-operator-misuse -----
10450
+ type SonarNewOperatorMisuse = []|[{
10451
+ considerJSDoc?: boolean
10452
+ }]|[{
10453
+ considerJSDoc?: boolean
10454
+ }, unknown]
10455
+ // ----- sonar/no-code-after-done -----
10456
+ type SonarNoCodeAfterDone = []|[("sonar-runtime" | "metric")]
9118
10457
  // ----- sonar/no-collapsible-if -----
9119
- type SonarNoCollapsibleIf = []|["sonar-runtime"]
10458
+ type SonarNoCollapsibleIf = []|[("sonar-runtime" | "metric")]
10459
+ // ----- sonar/no-duplicate-in-composite -----
10460
+ type SonarNoDuplicateInComposite = []|[("sonar-runtime" | "metric")]
9120
10461
  // ----- sonar/no-duplicate-string -----
9121
10462
  type SonarNoDuplicateString = []|[{
9122
10463
  threshold?: number
9123
10464
  ignoreStrings?: string
9124
- [k: string]: unknown | undefined
9125
10465
  }]|[{
9126
10466
  threshold?: number
9127
10467
  ignoreStrings?: string
9128
- [k: string]: unknown | undefined
9129
- }, "sonar-runtime"]
10468
+ }, ("sonar-runtime" | "metric")]
9130
10469
  // ----- sonar/no-duplicated-branches -----
9131
- type SonarNoDuplicatedBranches = []|["sonar-runtime"]
10470
+ type SonarNoDuplicatedBranches = []|[("sonar-runtime" | "metric")]
9132
10471
  // ----- sonar/no-element-overwrite -----
9133
- type SonarNoElementOverwrite = []|["sonar-runtime"]
10472
+ type SonarNoElementOverwrite = []|[("sonar-runtime" | "metric")]
9134
10473
  // ----- sonar/no-extra-arguments -----
9135
- type SonarNoExtraArguments = []|["sonar-runtime"]
10474
+ type SonarNoExtraArguments = []|[("sonar-runtime" | "metric")]
9136
10475
  // ----- sonar/no-gratuitous-expressions -----
9137
- type SonarNoGratuitousExpressions = []|["sonar-runtime"]
10476
+ type SonarNoGratuitousExpressions = []|[("sonar-runtime" | "metric")]
10477
+ // ----- sonar/no-hardcoded-passwords -----
10478
+ type SonarNoHardcodedPasswords = []|[{
10479
+ passwordWords?: string[]
10480
+ }]
10481
+ // ----- sonar/no-hardcoded-secrets -----
10482
+ type SonarNoHardcodedSecrets = []|[{
10483
+ secretWords?: string
10484
+ randomnessSensibility?: number
10485
+ }]
9138
10486
  // ----- sonar/no-identical-conditions -----
9139
- type SonarNoIdenticalConditions = []|["sonar-runtime"]
10487
+ type SonarNoIdenticalConditions = []|[("sonar-runtime" | "metric")]
9140
10488
  // ----- sonar/no-identical-expressions -----
9141
- type SonarNoIdenticalExpressions = []|["sonar-runtime"]
10489
+ type SonarNoIdenticalExpressions = []|[("sonar-runtime" | "metric")]
9142
10490
  // ----- sonar/no-identical-functions -----
9143
- type SonarNoIdenticalFunctions = []|[number]|[number, "sonar-runtime"]
10491
+ type SonarNoIdenticalFunctions = []|[number]|[number, ("sonar-runtime" | "metric")]
10492
+ // ----- sonar/no-implicit-dependencies -----
10493
+ type SonarNoImplicitDependencies = []|[{
10494
+ whitelist?: string[]
10495
+ }]
10496
+ // ----- sonar/no-inconsistent-returns -----
10497
+ type SonarNoInconsistentReturns = []|[("sonar-runtime" | "metric")]
10498
+ // ----- sonar/no-incorrect-string-concat -----
10499
+ type SonarNoIncorrectStringConcat = []|[("sonar-runtime" | "metric")]
10500
+ // ----- sonar/no-intrusive-permissions -----
10501
+ type SonarNoIntrusivePermissions = []|[{
10502
+ permissions?: string[]
10503
+ }]
10504
+ // ----- sonar/no-invariant-returns -----
10505
+ type SonarNoInvariantReturns = []|[("sonar-runtime" | "metric")]
10506
+ // ----- sonar/no-ip-forward -----
10507
+ type SonarNoIpForward = []|[("sonar-runtime" | "metric")]
10508
+ // ----- sonar/no-mime-sniff -----
10509
+ type SonarNoMimeSniff = []|[("sonar-runtime" | "metric")]
10510
+ // ----- sonar/no-mixed-content -----
10511
+ type SonarNoMixedContent = []|[("sonar-runtime" | "metric")]
10512
+ // ----- sonar/no-nested-functions -----
10513
+ type SonarNoNestedFunctions = []|[{
10514
+ threshold?: number
10515
+ }]|[{
10516
+ threshold?: number
10517
+ }, ("sonar-runtime" | "metric")]
10518
+ // ----- sonar/no-redundant-optional -----
10519
+ type SonarNoRedundantOptional = []|[("sonar-runtime" | "metric")]
10520
+ // ----- sonar/no-redundant-parentheses -----
10521
+ type SonarNoRedundantParentheses = []|[("sonar-runtime" | "metric")]
10522
+ // ----- sonar/no-reference-error -----
10523
+ type SonarNoReferenceError = []|[("sonar-runtime" | "metric")]
10524
+ // ----- sonar/no-referrer-policy -----
10525
+ type SonarNoReferrerPolicy = []|[("sonar-runtime" | "metric")]
10526
+ // ----- sonar/no-same-argument-assert -----
10527
+ type SonarNoSameArgumentAssert = []|[("sonar-runtime" | "metric")]
9144
10528
  // ----- sonar/no-same-line-conditional -----
9145
- type SonarNoSameLineConditional = []|["sonar-runtime"]
10529
+ type SonarNoSameLineConditional = []|[("sonar-runtime" | "metric")]
10530
+ // ----- sonar/no-selector-parameter -----
10531
+ type SonarNoSelectorParameter = []|[("sonar-runtime" | "metric")]
10532
+ // ----- sonar/no-try-promise -----
10533
+ type SonarNoTryPromise = []|[("sonar-runtime" | "metric")]
10534
+ // ----- sonar/no-variable-usage-before-declaration -----
10535
+ type SonarNoVariableUsageBeforeDeclaration = []|[("sonar-runtime" | "metric")]
10536
+ // ----- sonar/non-number-in-arithmetic-expression -----
10537
+ type SonarNonNumberInArithmeticExpression = []|[("sonar-runtime" | "metric")]
10538
+ // ----- sonar/regex-complexity -----
10539
+ type SonarRegexComplexity = []|[{
10540
+ threshold?: number
10541
+ }]|[{
10542
+ threshold?: number
10543
+ }, ("sonar-runtime" | "metric")]
10544
+ // ----- sonar/shorthand-property-grouping -----
10545
+ type SonarShorthandPropertyGrouping = []|[("sonar-runtime" | "metric")]
10546
+ // ----- sonar/stateful-regex -----
10547
+ type SonarStatefulRegex = []|[("sonar-runtime" | "metric")]
10548
+ // ----- sonar/strict-transport-security -----
10549
+ type SonarStrictTransportSecurity = []|[("sonar-runtime" | "metric")]
10550
+ // ----- sonar/strings-comparison -----
10551
+ type SonarStringsComparison = []|[("sonar-runtime" | "metric")]
10552
+ // ----- sonar/too-many-break-or-continue-in-loop -----
10553
+ type SonarTooManyBreakOrContinueInLoop = []|[("sonar-runtime" | "metric")]
10554
+ // ----- sonar/unicode-aware-regex -----
10555
+ type SonarUnicodeAwareRegex = []|[("sonar-runtime" | "metric")]
10556
+ // ----- sonar/unused-named-groups -----
10557
+ type SonarUnusedNamedGroups = []|[("sonar-runtime" | "metric")]
10558
+ // ----- sonar/unverified-certificate -----
10559
+ type SonarUnverifiedCertificate = []|[("sonar-runtime" | "metric")]
10560
+ // ----- sonar/unverified-hostname -----
10561
+ type SonarUnverifiedHostname = []|[("sonar-runtime" | "metric")]
10562
+ // ----- sonar/updated-const-var -----
10563
+ type SonarUpdatedConstVar = []|[("sonar-runtime" | "metric")]
10564
+ // ----- sonar/updated-loop-counter -----
10565
+ type SonarUpdatedLoopCounter = []|[("sonar-runtime" | "metric")]
10566
+ // ----- sonar/use-type-alias -----
10567
+ type SonarUseTypeAlias = []|[("sonar-runtime" | "metric")]
10568
+ // ----- sonar/variable-name -----
10569
+ type SonarVariableName = []|[{
10570
+ format?: string
10571
+ }]
10572
+ // ----- sonar/xml-parser-xxe -----
10573
+ type SonarXmlParserXxe = []|[("sonar-runtime" | "metric")]
9146
10574
  // ----- sort-imports -----
9147
10575
  type SortImports = []|[{
9148
10576
  ignoreCase?: boolean