@jimmy.codes/eslint-config 3.2.4 → 3.3.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.mts CHANGED
@@ -4213,6 +4213,706 @@ interface RuleOptions {
4213
4213
  * @see https://eslint.org/docs/latest/rules/unicode-bom
4214
4214
  */
4215
4215
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>
4216
+ /**
4217
+ * Improve regexes by making them shorter, consistent, and safer.
4218
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/better-regex.md
4219
+ */
4220
+ 'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>
4221
+ /**
4222
+ * Enforce a specific parameter name in catch clauses.
4223
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/catch-error-name.md
4224
+ */
4225
+ 'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>
4226
+ /**
4227
+ * Use destructured variables over properties.
4228
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/consistent-destructuring.md
4229
+ */
4230
+ 'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>
4231
+ /**
4232
+ * Prefer consistent types when spreading a ternary in an array literal.
4233
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/consistent-empty-array-spread.md
4234
+ */
4235
+ 'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>
4236
+ /**
4237
+ * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
4238
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/consistent-existence-index-check.md
4239
+ */
4240
+ 'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>
4241
+ /**
4242
+ * Move function definitions to the highest possible scope.
4243
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/consistent-function-scoping.md
4244
+ */
4245
+ 'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>
4246
+ /**
4247
+ * Enforce correct `Error` subclassing.
4248
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/custom-error-definition.md
4249
+ */
4250
+ 'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>
4251
+ /**
4252
+ * Enforce no spaces between braces.
4253
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/empty-brace-spaces.md
4254
+ */
4255
+ 'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>
4256
+ /**
4257
+ * Enforce passing a `message` value when creating a built-in error.
4258
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/error-message.md
4259
+ */
4260
+ 'unicorn/error-message'?: Linter.RuleEntry<[]>
4261
+ /**
4262
+ * Require escape sequences to use uppercase values.
4263
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/escape-case.md
4264
+ */
4265
+ 'unicorn/escape-case'?: Linter.RuleEntry<[]>
4266
+ /**
4267
+ * Add expiration conditions to TODO comments.
4268
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/expiring-todo-comments.md
4269
+ */
4270
+ 'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>
4271
+ /**
4272
+ * Enforce explicitly comparing the `length` or `size` property of a value.
4273
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/explicit-length-check.md
4274
+ */
4275
+ 'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>
4276
+ /**
4277
+ * Enforce a case style for filenames.
4278
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/filename-case.md
4279
+ */
4280
+ 'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>
4281
+ /**
4282
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#import-index
4283
+ * @deprecated
4284
+ */
4285
+ 'unicorn/import-index'?: Linter.RuleEntry<[]>
4286
+ /**
4287
+ * Enforce specific import styles per module.
4288
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/import-style.md
4289
+ */
4290
+ 'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>
4291
+ /**
4292
+ * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
4293
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/new-for-builtins.md
4294
+ */
4295
+ 'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>
4296
+ /**
4297
+ * Enforce specifying rules to disable in `eslint-disable` comments.
4298
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-abusive-eslint-disable.md
4299
+ */
4300
+ 'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>
4301
+ /**
4302
+ * Disallow anonymous functions and classes as the default export.
4303
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-anonymous-default-export.md
4304
+ */
4305
+ 'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>
4306
+ /**
4307
+ * Prevent passing a function reference directly to iterator methods.
4308
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-array-callback-reference.md
4309
+ */
4310
+ 'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>
4311
+ /**
4312
+ * Prefer `for…of` over the `forEach` method.
4313
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-array-for-each.md
4314
+ */
4315
+ 'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>
4316
+ /**
4317
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#no-array-instanceof
4318
+ * @deprecated
4319
+ */
4320
+ 'unicorn/no-array-instanceof'?: Linter.RuleEntry<[]>
4321
+ /**
4322
+ * Disallow using the `this` argument in array methods.
4323
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-array-method-this-argument.md
4324
+ */
4325
+ 'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>
4326
+ /**
4327
+ * Enforce combining multiple `Array#push()` into one call.
4328
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-array-push-push.md
4329
+ */
4330
+ 'unicorn/no-array-push-push'?: Linter.RuleEntry<UnicornNoArrayPushPush>
4331
+ /**
4332
+ * Disallow `Array#reduce()` and `Array#reduceRight()`.
4333
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-array-reduce.md
4334
+ */
4335
+ 'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>
4336
+ /**
4337
+ * Disallow member access from await expression.
4338
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-await-expression-member.md
4339
+ */
4340
+ 'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>
4341
+ /**
4342
+ * Disallow using `await` in `Promise` method parameters.
4343
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-await-in-promise-methods.md
4344
+ */
4345
+ 'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>
4346
+ /**
4347
+ * Do not use leading/trailing space between `console.log` parameters.
4348
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-console-spaces.md
4349
+ */
4350
+ 'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>
4351
+ /**
4352
+ * Do not use `document.cookie` directly.
4353
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-document-cookie.md
4354
+ */
4355
+ 'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>
4356
+ /**
4357
+ * Disallow empty files.
4358
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-empty-file.md
4359
+ */
4360
+ 'unicorn/no-empty-file'?: Linter.RuleEntry<[]>
4361
+ /**
4362
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#no-fn-reference-in-iterator
4363
+ * @deprecated
4364
+ */
4365
+ 'unicorn/no-fn-reference-in-iterator'?: Linter.RuleEntry<[]>
4366
+ /**
4367
+ * Do not use a `for` loop that can be replaced with a `for-of` loop.
4368
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-for-loop.md
4369
+ */
4370
+ 'unicorn/no-for-loop'?: Linter.RuleEntry<[]>
4371
+ /**
4372
+ * Enforce the use of Unicode escapes instead of hexadecimal escapes.
4373
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-hex-escape.md
4374
+ */
4375
+ 'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>
4376
+ /**
4377
+ * Require `Array.isArray()` instead of `instanceof Array`.
4378
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-instanceof-array.md
4379
+ */
4380
+ 'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>
4381
+ /**
4382
+ * Disallow invalid options in `fetch()` and `new Request()`.
4383
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-invalid-fetch-options.md
4384
+ */
4385
+ 'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>
4386
+ /**
4387
+ * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
4388
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-invalid-remove-event-listener.md
4389
+ */
4390
+ 'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>
4391
+ /**
4392
+ * Disallow identifiers starting with `new` or `class`.
4393
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-keyword-prefix.md
4394
+ */
4395
+ 'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>
4396
+ /**
4397
+ * Disallow using `.length` as the `end` argument of `{Array,String,TypedArray}#slice()`.
4398
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-length-as-slice-end.md
4399
+ */
4400
+ 'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>
4401
+ /**
4402
+ * Disallow `if` statements as the only statement in `if` blocks without `else`.
4403
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-lonely-if.md
4404
+ */
4405
+ 'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>
4406
+ /**
4407
+ * Disallow a magic number as the `depth` argument in `Array#flat(…).`
4408
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-magic-array-flat-depth.md
4409
+ */
4410
+ 'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>
4411
+ /**
4412
+ * Disallow negated conditions.
4413
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-negated-condition.md
4414
+ */
4415
+ 'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>
4416
+ /**
4417
+ * Disallow negated expression in equality check.
4418
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-negation-in-equality-check.md
4419
+ */
4420
+ 'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>
4421
+ /**
4422
+ * Disallow nested ternary expressions.
4423
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-nested-ternary.md
4424
+ */
4425
+ 'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>
4426
+ /**
4427
+ * Disallow `new Array()`.
4428
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-new-array.md
4429
+ */
4430
+ 'unicorn/no-new-array'?: Linter.RuleEntry<[]>
4431
+ /**
4432
+ * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
4433
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-new-buffer.md
4434
+ */
4435
+ 'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>
4436
+ /**
4437
+ * Disallow the use of the `null` literal.
4438
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-null.md
4439
+ */
4440
+ 'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>
4441
+ /**
4442
+ * Disallow the use of objects as default parameters.
4443
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-object-as-default-parameter.md
4444
+ */
4445
+ 'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>
4446
+ /**
4447
+ * Disallow `process.exit()`.
4448
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-process-exit.md
4449
+ */
4450
+ 'unicorn/no-process-exit'?: Linter.RuleEntry<[]>
4451
+ /**
4452
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#no-reduce
4453
+ * @deprecated
4454
+ */
4455
+ 'unicorn/no-reduce'?: Linter.RuleEntry<[]>
4456
+ /**
4457
+ * Disallow passing single-element arrays to `Promise` methods.
4458
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-single-promise-in-promise-methods.md
4459
+ */
4460
+ 'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>
4461
+ /**
4462
+ * Disallow classes that only have static members.
4463
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-static-only-class.md
4464
+ */
4465
+ 'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>
4466
+ /**
4467
+ * Disallow `then` property.
4468
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-thenable.md
4469
+ */
4470
+ 'unicorn/no-thenable'?: Linter.RuleEntry<[]>
4471
+ /**
4472
+ * Disallow assigning `this` to a variable.
4473
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-this-assignment.md
4474
+ */
4475
+ 'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>
4476
+ /**
4477
+ * Disallow comparing `undefined` using `typeof`.
4478
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-typeof-undefined.md
4479
+ */
4480
+ 'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>
4481
+ /**
4482
+ * Disallow awaiting non-promise values.
4483
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-unnecessary-await.md
4484
+ */
4485
+ 'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>
4486
+ /**
4487
+ * Enforce the use of built-in methods instead of unnecessary polyfills.
4488
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-unnecessary-polyfills.md
4489
+ */
4490
+ 'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>
4491
+ /**
4492
+ * Disallow unreadable array destructuring.
4493
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-unreadable-array-destructuring.md
4494
+ */
4495
+ 'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>
4496
+ /**
4497
+ * Disallow unreadable IIFEs.
4498
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-unreadable-iife.md
4499
+ */
4500
+ 'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>
4501
+ /**
4502
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#no-unsafe-regex
4503
+ * @deprecated
4504
+ */
4505
+ 'unicorn/no-unsafe-regex'?: Linter.RuleEntry<[]>
4506
+ /**
4507
+ * Disallow unused object properties.
4508
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-unused-properties.md
4509
+ */
4510
+ 'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>
4511
+ /**
4512
+ * Disallow useless fallback when spreading in object literals.
4513
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-useless-fallback-in-spread.md
4514
+ */
4515
+ 'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>
4516
+ /**
4517
+ * Disallow useless array length check.
4518
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-useless-length-check.md
4519
+ */
4520
+ 'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>
4521
+ /**
4522
+ * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
4523
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-useless-promise-resolve-reject.md
4524
+ */
4525
+ 'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>
4526
+ /**
4527
+ * Disallow unnecessary spread.
4528
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-useless-spread.md
4529
+ */
4530
+ 'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>
4531
+ /**
4532
+ * Disallow useless case in switch statements.
4533
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-useless-switch-case.md
4534
+ */
4535
+ 'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>
4536
+ /**
4537
+ * Disallow useless `undefined`.
4538
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-useless-undefined.md
4539
+ */
4540
+ 'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>
4541
+ /**
4542
+ * Disallow number literals with zero fractions or dangling dots.
4543
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/no-zero-fractions.md
4544
+ */
4545
+ 'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>
4546
+ /**
4547
+ * Enforce proper case for numeric literals.
4548
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/number-literal-case.md
4549
+ */
4550
+ 'unicorn/number-literal-case'?: Linter.RuleEntry<[]>
4551
+ /**
4552
+ * Enforce the style of numeric separators by correctly grouping digits.
4553
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/numeric-separators-style.md
4554
+ */
4555
+ 'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>
4556
+ /**
4557
+ * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
4558
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-add-event-listener.md
4559
+ */
4560
+ 'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>
4561
+ /**
4562
+ * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
4563
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-array-find.md
4564
+ */
4565
+ 'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>
4566
+ /**
4567
+ * Prefer `Array#flat()` over legacy techniques to flatten arrays.
4568
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-array-flat.md
4569
+ */
4570
+ 'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>
4571
+ /**
4572
+ * Prefer `.flatMap(…)` over `.map(…).flat()`.
4573
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-array-flat-map.md
4574
+ */
4575
+ 'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>
4576
+ /**
4577
+ * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
4578
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-array-index-of.md
4579
+ */
4580
+ 'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>
4581
+ /**
4582
+ * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
4583
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-array-some.md
4584
+ */
4585
+ 'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>
4586
+ /**
4587
+ * Prefer `.at()` method for index access and `String#charAt()`.
4588
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-at.md
4589
+ */
4590
+ 'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>
4591
+ /**
4592
+ * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
4593
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-blob-reading-methods.md
4594
+ */
4595
+ 'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>
4596
+ /**
4597
+ * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
4598
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-code-point.md
4599
+ */
4600
+ 'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>
4601
+ /**
4602
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-dataset
4603
+ * @deprecated
4604
+ */
4605
+ 'unicorn/prefer-dataset'?: Linter.RuleEntry<[]>
4606
+ /**
4607
+ * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
4608
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-date-now.md
4609
+ */
4610
+ 'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>
4611
+ /**
4612
+ * Prefer default parameters over reassignment.
4613
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-default-parameters.md
4614
+ */
4615
+ 'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>
4616
+ /**
4617
+ * Prefer `Node#append()` over `Node#appendChild()`.
4618
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-dom-node-append.md
4619
+ */
4620
+ 'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>
4621
+ /**
4622
+ * Prefer using `.dataset` on DOM elements over calling attribute methods.
4623
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-dom-node-dataset.md
4624
+ */
4625
+ 'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>
4626
+ /**
4627
+ * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
4628
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-dom-node-remove.md
4629
+ */
4630
+ 'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>
4631
+ /**
4632
+ * Prefer `.textContent` over `.innerText`.
4633
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-dom-node-text-content.md
4634
+ */
4635
+ 'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>
4636
+ /**
4637
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-event-key
4638
+ * @deprecated
4639
+ */
4640
+ 'unicorn/prefer-event-key'?: Linter.RuleEntry<[]>
4641
+ /**
4642
+ * Prefer `EventTarget` over `EventEmitter`.
4643
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-event-target.md
4644
+ */
4645
+ 'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>
4646
+ /**
4647
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-exponentiation-operator
4648
+ * @deprecated
4649
+ */
4650
+ 'unicorn/prefer-exponentiation-operator'?: Linter.RuleEntry<[]>
4651
+ /**
4652
+ * Prefer `export…from` when re-exporting.
4653
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-export-from.md
4654
+ */
4655
+ 'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>
4656
+ /**
4657
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-flat-map
4658
+ * @deprecated
4659
+ */
4660
+ 'unicorn/prefer-flat-map'?: Linter.RuleEntry<[]>
4661
+ /**
4662
+ * Prefer `globalThis` over `window`, `self`, and `global`.
4663
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-global-this.md
4664
+ */
4665
+ 'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>
4666
+ /**
4667
+ * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
4668
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-includes.md
4669
+ */
4670
+ 'unicorn/prefer-includes'?: Linter.RuleEntry<[]>
4671
+ /**
4672
+ * Prefer reading a JSON file as a buffer.
4673
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-json-parse-buffer.md
4674
+ */
4675
+ 'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>
4676
+ /**
4677
+ * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
4678
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-keyboard-event-key.md
4679
+ */
4680
+ 'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>
4681
+ /**
4682
+ * Prefer using a logical operator over a ternary.
4683
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-logical-operator-over-ternary.md
4684
+ */
4685
+ 'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>
4686
+ /**
4687
+ * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
4688
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-math-min-max.md
4689
+ */
4690
+ 'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>
4691
+ /**
4692
+ * Enforce the use of `Math.trunc` instead of bitwise operators.
4693
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-math-trunc.md
4694
+ */
4695
+ 'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>
4696
+ /**
4697
+ * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
4698
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-modern-dom-apis.md
4699
+ */
4700
+ 'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>
4701
+ /**
4702
+ * Prefer modern `Math` APIs over legacy patterns.
4703
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-modern-math-apis.md
4704
+ */
4705
+ 'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>
4706
+ /**
4707
+ * Prefer JavaScript modules (ESM) over CommonJS.
4708
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-module.md
4709
+ */
4710
+ 'unicorn/prefer-module'?: Linter.RuleEntry<[]>
4711
+ /**
4712
+ * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
4713
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-native-coercion-functions.md
4714
+ */
4715
+ 'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>
4716
+ /**
4717
+ * Prefer negative index over `.length - index` when possible.
4718
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-negative-index.md
4719
+ */
4720
+ 'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>
4721
+ /**
4722
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-node-append
4723
+ * @deprecated
4724
+ */
4725
+ 'unicorn/prefer-node-append'?: Linter.RuleEntry<[]>
4726
+ /**
4727
+ * Prefer using the `node:` protocol when importing Node.js builtin modules.
4728
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-node-protocol.md
4729
+ */
4730
+ 'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>
4731
+ /**
4732
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-node-remove
4733
+ * @deprecated
4734
+ */
4735
+ 'unicorn/prefer-node-remove'?: Linter.RuleEntry<[]>
4736
+ /**
4737
+ * Prefer `Number` static properties over global ones.
4738
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-number-properties.md
4739
+ */
4740
+ 'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>
4741
+ /**
4742
+ * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
4743
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-object-from-entries.md
4744
+ */
4745
+ 'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>
4746
+ /**
4747
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-object-has-own
4748
+ * @deprecated
4749
+ */
4750
+ 'unicorn/prefer-object-has-own'?: Linter.RuleEntry<[]>
4751
+ /**
4752
+ * Prefer omitting the `catch` binding parameter.
4753
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-optional-catch-binding.md
4754
+ */
4755
+ 'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>
4756
+ /**
4757
+ * Prefer borrowing methods from the prototype instead of the instance.
4758
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-prototype-methods.md
4759
+ */
4760
+ 'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>
4761
+ /**
4762
+ * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
4763
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-query-selector.md
4764
+ */
4765
+ 'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>
4766
+ /**
4767
+ * Prefer `Reflect.apply()` over `Function#apply()`.
4768
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-reflect-apply.md
4769
+ */
4770
+ 'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>
4771
+ /**
4772
+ * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
4773
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-regexp-test.md
4774
+ */
4775
+ 'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>
4776
+ /**
4777
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-replace-all
4778
+ * @deprecated
4779
+ */
4780
+ 'unicorn/prefer-replace-all'?: Linter.RuleEntry<[]>
4781
+ /**
4782
+ * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
4783
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-set-has.md
4784
+ */
4785
+ 'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>
4786
+ /**
4787
+ * Prefer using `Set#size` instead of `Array#length`.
4788
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-set-size.md
4789
+ */
4790
+ 'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>
4791
+ /**
4792
+ * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
4793
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-spread.md
4794
+ */
4795
+ 'unicorn/prefer-spread'?: Linter.RuleEntry<[]>
4796
+ /**
4797
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-starts-ends-with
4798
+ * @deprecated
4799
+ */
4800
+ 'unicorn/prefer-starts-ends-with'?: Linter.RuleEntry<[]>
4801
+ /**
4802
+ * Prefer using the `String.raw` tag to avoid escaping `\`.
4803
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-string-raw.md
4804
+ */
4805
+ 'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>
4806
+ /**
4807
+ * Prefer `String#replaceAll()` over regex searches with the global flag.
4808
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-string-replace-all.md
4809
+ */
4810
+ 'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>
4811
+ /**
4812
+ * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
4813
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-string-slice.md
4814
+ */
4815
+ 'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>
4816
+ /**
4817
+ * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
4818
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-string-starts-ends-with.md
4819
+ */
4820
+ 'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>
4821
+ /**
4822
+ * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
4823
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-string-trim-start-end.md
4824
+ */
4825
+ 'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>
4826
+ /**
4827
+ * Prefer using `structuredClone` to create a deep clone.
4828
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-structured-clone.md
4829
+ */
4830
+ 'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>
4831
+ /**
4832
+ * Prefer `switch` over multiple `else-if`.
4833
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-switch.md
4834
+ */
4835
+ 'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>
4836
+ /**
4837
+ * Prefer ternary expressions over simple `if-else` statements.
4838
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-ternary.md
4839
+ */
4840
+ 'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>
4841
+ /**
4842
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-text-content
4843
+ * @deprecated
4844
+ */
4845
+ 'unicorn/prefer-text-content'?: Linter.RuleEntry<[]>
4846
+ /**
4847
+ * Prefer top-level await over top-level promises and async function calls.
4848
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-top-level-await.md
4849
+ */
4850
+ 'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>
4851
+ /**
4852
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#prefer-trim-start-end
4853
+ * @deprecated
4854
+ */
4855
+ 'unicorn/prefer-trim-start-end'?: Linter.RuleEntry<[]>
4856
+ /**
4857
+ * Enforce throwing `TypeError` in type checking conditions.
4858
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prefer-type-error.md
4859
+ */
4860
+ 'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>
4861
+ /**
4862
+ * Prevent abbreviations.
4863
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/prevent-abbreviations.md
4864
+ */
4865
+ 'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>
4866
+ /**
4867
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/deprecated-rules.md#regex-shorthand
4868
+ * @deprecated
4869
+ */
4870
+ 'unicorn/regex-shorthand'?: Linter.RuleEntry<[]>
4871
+ /**
4872
+ * Enforce consistent relative URL style.
4873
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/relative-url-style.md
4874
+ */
4875
+ 'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>
4876
+ /**
4877
+ * Enforce using the separator argument with `Array#join()`.
4878
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/require-array-join-separator.md
4879
+ */
4880
+ 'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>
4881
+ /**
4882
+ * Enforce using the digits argument with `Number#toFixed()`.
4883
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/require-number-to-fixed-digits-argument.md
4884
+ */
4885
+ 'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>
4886
+ /**
4887
+ * Enforce using the `targetOrigin` argument with `window.postMessage()`.
4888
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/require-post-message-target-origin.md
4889
+ */
4890
+ 'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>
4891
+ /**
4892
+ * Enforce better string content.
4893
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/string-content.md
4894
+ */
4895
+ 'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>
4896
+ /**
4897
+ * Enforce consistent brace style for `case` clauses.
4898
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/switch-case-braces.md
4899
+ */
4900
+ 'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>
4901
+ /**
4902
+ * Fix whitespace-insensitive template indentation.
4903
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/template-indent.md
4904
+ */
4905
+ 'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>
4906
+ /**
4907
+ * Enforce consistent case for text encoding identifiers.
4908
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/text-encoding-identifier-case.md
4909
+ */
4910
+ 'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>
4911
+ /**
4912
+ * Require `new` when creating an error.
4913
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v56.0.0/docs/rules/throw-new-error.md
4914
+ */
4915
+ 'unicorn/throw-new-error'?: Linter.RuleEntry<[]>
4216
4916
  /**
4217
4917
  * Require calls to `isNaN()` when checking for `NaN`
4218
4918
  * @see https://eslint.org/docs/latest/rules/use-isnan
@@ -8786,6 +9486,204 @@ type TestingLibraryPreferUserEvent = []|[{
8786
9486
  }]
8787
9487
  // ----- unicode-bom -----
8788
9488
  type UnicodeBom = []|[("always" | "never")]
9489
+ // ----- unicorn/better-regex -----
9490
+ type UnicornBetterRegex = []|[{
9491
+ sortCharacterClasses?: boolean
9492
+ }]
9493
+ // ----- unicorn/catch-error-name -----
9494
+ type UnicornCatchErrorName = []|[{
9495
+ name?: string
9496
+ ignore?: unknown[]
9497
+ }]
9498
+ // ----- unicorn/consistent-function-scoping -----
9499
+ type UnicornConsistentFunctionScoping = []|[{
9500
+ checkArrowFunctions?: boolean
9501
+ }]
9502
+ // ----- unicorn/expiring-todo-comments -----
9503
+ type UnicornExpiringTodoComments = []|[{
9504
+ terms?: string[]
9505
+ ignore?: unknown[]
9506
+ ignoreDatesOnPullRequests?: boolean
9507
+ allowWarningComments?: boolean
9508
+ date?: string
9509
+ }]
9510
+ // ----- unicorn/explicit-length-check -----
9511
+ type UnicornExplicitLengthCheck = []|[{
9512
+ "non-zero"?: ("greater-than" | "not-equal")
9513
+ }]
9514
+ // ----- unicorn/filename-case -----
9515
+ type UnicornFilenameCase = []|[({
9516
+ case?: ("camelCase" | "snakeCase" | "kebabCase" | "pascalCase")
9517
+ ignore?: unknown[]
9518
+ multipleFileExtensions?: boolean
9519
+ } | {
9520
+ cases?: {
9521
+ camelCase?: boolean
9522
+ snakeCase?: boolean
9523
+ kebabCase?: boolean
9524
+ pascalCase?: boolean
9525
+ }
9526
+ ignore?: unknown[]
9527
+ multipleFileExtensions?: boolean
9528
+ })]
9529
+ // ----- unicorn/import-style -----
9530
+ type UnicornImportStyle = []|[{
9531
+ checkImport?: boolean
9532
+ checkDynamicImport?: boolean
9533
+ checkExportFrom?: boolean
9534
+ checkRequire?: boolean
9535
+ extendDefaultStyles?: boolean
9536
+ styles?: _UnicornImportStyle_ModuleStyles
9537
+ }]
9538
+ type _UnicornImportStyleStyles = (false | _UnicornImportStyle_BooleanObject) | undefined
9539
+ interface _UnicornImportStyle_ModuleStyles {
9540
+ [k: string]: _UnicornImportStyleStyles | undefined
9541
+ }
9542
+ interface _UnicornImportStyle_BooleanObject {
9543
+ [k: string]: boolean | undefined
9544
+ }
9545
+ // ----- unicorn/no-array-push-push -----
9546
+ type UnicornNoArrayPushPush = []|[{
9547
+ ignore?: unknown[]
9548
+ }]
9549
+ // ----- unicorn/no-array-reduce -----
9550
+ type UnicornNoArrayReduce = []|[{
9551
+ allowSimpleOperations?: boolean
9552
+ }]
9553
+ // ----- unicorn/no-keyword-prefix -----
9554
+ type UnicornNoKeywordPrefix = []|[{
9555
+
9556
+ disallowedPrefixes?: []|[string]
9557
+ checkProperties?: boolean
9558
+ onlyCamelCase?: boolean
9559
+ }]
9560
+ // ----- unicorn/no-null -----
9561
+ type UnicornNoNull = []|[{
9562
+ checkStrictEquality?: boolean
9563
+ }]
9564
+ // ----- unicorn/no-typeof-undefined -----
9565
+ type UnicornNoTypeofUndefined = []|[{
9566
+ checkGlobalVariables?: boolean
9567
+ }]
9568
+ // ----- unicorn/no-unnecessary-polyfills -----
9569
+ type UnicornNoUnnecessaryPolyfills = []|[{
9570
+ targets: (string | unknown[] | {
9571
+ [k: string]: unknown | undefined
9572
+ })
9573
+ }]
9574
+ // ----- unicorn/no-useless-undefined -----
9575
+ type UnicornNoUselessUndefined = []|[{
9576
+ checkArguments?: boolean
9577
+ checkArrowFunctionBody?: boolean
9578
+ }]
9579
+ // ----- unicorn/numeric-separators-style -----
9580
+ type UnicornNumericSeparatorsStyle = []|[{
9581
+ binary?: {
9582
+ onlyIfContainsSeparator?: boolean
9583
+ minimumDigits?: number
9584
+ groupLength?: number
9585
+ }
9586
+ octal?: {
9587
+ onlyIfContainsSeparator?: boolean
9588
+ minimumDigits?: number
9589
+ groupLength?: number
9590
+ }
9591
+ hexadecimal?: {
9592
+ onlyIfContainsSeparator?: boolean
9593
+ minimumDigits?: number
9594
+ groupLength?: number
9595
+ }
9596
+ number?: {
9597
+ onlyIfContainsSeparator?: boolean
9598
+ minimumDigits?: number
9599
+ groupLength?: number
9600
+ }
9601
+ onlyIfContainsSeparator?: boolean
9602
+ }]
9603
+ // ----- unicorn/prefer-add-event-listener -----
9604
+ type UnicornPreferAddEventListener = []|[{
9605
+ excludedPackages?: string[]
9606
+ }]
9607
+ // ----- unicorn/prefer-array-find -----
9608
+ type UnicornPreferArrayFind = []|[{
9609
+ checkFromLast?: boolean
9610
+ }]
9611
+ // ----- unicorn/prefer-array-flat -----
9612
+ type UnicornPreferArrayFlat = []|[{
9613
+ functions?: unknown[]
9614
+ }]
9615
+ // ----- unicorn/prefer-at -----
9616
+ type UnicornPreferAt = []|[{
9617
+ getLastElementFunctions?: unknown[]
9618
+ checkAllIndexAccess?: boolean
9619
+ }]
9620
+ // ----- unicorn/prefer-export-from -----
9621
+ type UnicornPreferExportFrom = []|[{
9622
+ ignoreUsedVariables?: boolean
9623
+ }]
9624
+ // ----- unicorn/prefer-number-properties -----
9625
+ type UnicornPreferNumberProperties = []|[{
9626
+ checkInfinity?: boolean
9627
+ checkNaN?: boolean
9628
+ }]
9629
+ // ----- unicorn/prefer-object-from-entries -----
9630
+ type UnicornPreferObjectFromEntries = []|[{
9631
+ functions?: unknown[]
9632
+ }]
9633
+ // ----- unicorn/prefer-structured-clone -----
9634
+ type UnicornPreferStructuredClone = []|[{
9635
+ functions?: unknown[]
9636
+ }]
9637
+ // ----- unicorn/prefer-switch -----
9638
+ type UnicornPreferSwitch = []|[{
9639
+ minimumCases?: number
9640
+ emptyDefaultCase?: ("no-default-comment" | "do-nothing-comment" | "no-default-case")
9641
+ }]
9642
+ // ----- unicorn/prefer-ternary -----
9643
+ type UnicornPreferTernary = []|[("always" | "only-single-line")]
9644
+ // ----- unicorn/prevent-abbreviations -----
9645
+ type UnicornPreventAbbreviations = []|[{
9646
+ checkProperties?: boolean
9647
+ checkVariables?: boolean
9648
+ checkDefaultAndNamespaceImports?: (boolean | string)
9649
+ checkShorthandImports?: (boolean | string)
9650
+ checkShorthandProperties?: boolean
9651
+ checkFilenames?: boolean
9652
+ extendDefaultReplacements?: boolean
9653
+ replacements?: _UnicornPreventAbbreviations_Abbreviations
9654
+ extendDefaultAllowList?: boolean
9655
+ allowList?: _UnicornPreventAbbreviations_BooleanObject
9656
+ ignore?: unknown[]
9657
+ }]
9658
+ type _UnicornPreventAbbreviationsReplacements = (false | _UnicornPreventAbbreviations_BooleanObject) | undefined
9659
+ interface _UnicornPreventAbbreviations_Abbreviations {
9660
+ [k: string]: _UnicornPreventAbbreviationsReplacements | undefined
9661
+ }
9662
+ interface _UnicornPreventAbbreviations_BooleanObject {
9663
+ [k: string]: boolean | undefined
9664
+ }
9665
+ // ----- unicorn/relative-url-style -----
9666
+ type UnicornRelativeUrlStyle = []|[("never" | "always")]
9667
+ // ----- unicorn/string-content -----
9668
+ type UnicornStringContent = []|[{
9669
+ patterns?: {
9670
+ [k: string]: (string | {
9671
+ suggest: string
9672
+ fix?: boolean
9673
+ message?: string
9674
+ }) | undefined
9675
+ }
9676
+ }]
9677
+ // ----- unicorn/switch-case-braces -----
9678
+ type UnicornSwitchCaseBraces = []|[("always" | "avoid")]
9679
+ // ----- unicorn/template-indent -----
9680
+ type UnicornTemplateIndent = []|[{
9681
+ indent?: (string | number)
9682
+ tags?: string[]
9683
+ functions?: string[]
9684
+ selectors?: string[]
9685
+ comments?: string[]
9686
+ }]
8789
9687
  // ----- use-isnan -----
8790
9688
  type UseIsnan = []|[{
8791
9689
  enforceForSwitchCase?: boolean
@@ -8890,7 +9788,7 @@ interface Options {
8890
9788
  typescript?: boolean | TypescriptOptions;
8891
9789
  }
8892
9790
 
8893
- declare const jimmyDotCodes: ({ astro, autoDetect, configs, ignores, react, testing, typescript, }?: Options, ...moreConfigs: Linter.Config[] | TypedConfigItem[]) => (Linter.Config<Linter.RulesRecord> | TypedConfigItem | _typescript_eslint_utils_ts_eslint.FlatConfig.Config | {
9791
+ declare const jimmyDotCodes: ({ astro, autoDetect, configs, ignores, react, testing, typescript, }?: Options, ...moreConfigs: Linter.Config[] | TypedConfigItem[]) => (TypedConfigItem | Linter.Config<Linter.RulesRecord> | _typescript_eslint_utils_ts_eslint.FlatConfig.Config | {
8894
9792
  name: string;
8895
9793
  settings: {
8896
9794
  "import-x/core-modules": string[];
@@ -8970,6 +9868,7 @@ declare const jimmyDotCodes: ({ astro, autoDetect, configs, ignores, react, test
8970
9868
  };
8971
9869
  };
8972
9870
  rules: {
9871
+ "n/no-process-exit": "off";
8973
9872
  "n/prefer-node-protocol": "error";
8974
9873
  };
8975
9874
  } | {
@@ -10697,6 +11596,35 @@ declare const jimmyDotCodes: ({ astro, autoDetect, configs, ignores, react, test
10697
11596
  } | {
10698
11597
  name: string;
10699
11598
  rules: {
11599
+ "unicorn/filename-case": "off";
11600
+ "unicorn/import-style": "off";
11601
+ "unicorn/no-abusive-eslint-disable": "off";
11602
+ "unicorn/no-anonymous-default-export": "off";
11603
+ "unicorn/no-array-callback-reference": "off";
11604
+ "unicorn/no-array-reduce": "off";
11605
+ "unicorn/no-null": "off";
11606
+ "unicorn/no-process-exit": "off";
11607
+ "unicorn/no-useless-undefined": ["error", {
11608
+ checkArguments: false;
11609
+ checkArrowFunctionBody: false;
11610
+ }];
11611
+ "unicorn/prefer-node-protocol": "off";
11612
+ "unicorn/prevent-abbreviations": "off";
11613
+ };
11614
+ files?: Array<string | string[]>;
11615
+ ignores?: string[];
11616
+ language?: string;
11617
+ languageOptions?: Linter.LanguageOptions;
11618
+ linterOptions?: Linter.LinterOptions;
11619
+ processor?: string | Linter.Processor;
11620
+ plugins?: Record<string, eslint.ESLint.Plugin>;
11621
+ settings?: Record<string, unknown>;
11622
+ } | {
11623
+ name: string;
11624
+ rules: {
11625
+ "array-callback-return": ["error", {
11626
+ allowImplicit: true;
11627
+ }];
10700
11628
  "arrow-body-style": ["error", "always"];
10701
11629
  curly: ["error", "multi-or-nest", "consistent"];
10702
11630
  "no-console": "warn";