@w5s/eslint-config 3.5.2 → 3.5.4

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
@@ -1,5 +1,5 @@
1
- import { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
2
1
  import { Linter } from "eslint";
2
+ import { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
3
3
 
4
4
  //#region src/type/Config.d.ts
5
5
  interface Config extends Omit<Linter.Config<Linter.RulesRecord>, 'plugins'> {
@@ -1909,6 +1909,11 @@ interface RuleOptions$6 {
1909
1909
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/fenced-code-language.md
1910
1910
  */
1911
1911
  'markdown/fenced-code-language'?: Linter.RuleEntry<MarkdownFencedCodeLanguage>;
1912
+ /**
1913
+ * Require or disallow metadata for fenced code blocks
1914
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/fenced-code-meta.md
1915
+ */
1916
+ 'markdown/fenced-code-meta'?: Linter.RuleEntry<MarkdownFencedCodeMeta>;
1912
1917
  /**
1913
1918
  * Enforce heading levels increment by one
1914
1919
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/heading-increment.md
@@ -2009,13 +2014,15 @@ interface RuleOptions$6 {
2009
2014
  // ----- markdown/fenced-code-language -----
2010
2015
  type MarkdownFencedCodeLanguage = [] | [{
2011
2016
  required?: string[];
2012
- }]; // ----- markdown/heading-increment -----
2017
+ }]; // ----- markdown/fenced-code-meta -----
2018
+ type MarkdownFencedCodeMeta = [] | [("always" | "never")]; // ----- markdown/heading-increment -----
2013
2019
  type MarkdownHeadingIncrement = [] | [{
2014
2020
  frontmatterTitle?: string;
2015
2021
  }]; // ----- markdown/no-duplicate-definitions -----
2016
2022
  type MarkdownNoDuplicateDefinitions = [] | [{
2017
2023
  allowDefinitions?: string[];
2018
2024
  allowFootnoteDefinitions?: string[];
2025
+ checkFootnoteDefinitions?: boolean;
2019
2026
  }]; // ----- markdown/no-duplicate-headings -----
2020
2027
  type MarkdownNoDuplicateHeadings = [] | [{
2021
2028
  checkSiblingsOnly?: boolean;
@@ -2048,6 +2055,7 @@ type MarkdownNoSpaceInEmphasis = [] | [{
2048
2055
  type MarkdownNoUnusedDefinitions = [] | [{
2049
2056
  allowDefinitions?: string[];
2050
2057
  allowFootnoteDefinitions?: string[];
2058
+ checkFootnoteDefinitions?: boolean;
2051
2059
  }]; // ----- markdown/table-column-count -----
2052
2060
  type MarkdownTableColumnCount = [] | [{
2053
2061
  checkMissingCells?: boolean;
@@ -4461,7 +4469,7 @@ interface RuleOptions$3 {
4461
4469
  */
4462
4470
  'test/prefer-expect-resolves'?: Linter.RuleEntry<[]>;
4463
4471
  /**
4464
- * enforce using `expectTypeOf` instead of `expect(typeof ...)`
4472
+ * enforce using `expect(...).toBeTypeOf(...)` instead of `expect(typeof ...).toBe(...)`
4465
4473
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-type-of.md
4466
4474
  */
4467
4475
  'test/prefer-expect-type-of'?: Linter.RuleEntry<[]>;
@@ -4600,6 +4608,11 @@ interface RuleOptions$3 {
4600
4608
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-top-level-describe.md
4601
4609
  */
4602
4610
  'test/require-top-level-describe'?: Linter.RuleEntry<TestRequireTopLevelDescribe>;
4611
+ /**
4612
+ * enforce unbound methods are called with their expected scope
4613
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/unbound-method.md
4614
+ */
4615
+ 'test/unbound-method'?: Linter.RuleEntry<TestUnboundMethod>;
4603
4616
  /**
4604
4617
  * enforce valid describe callback
4605
4618
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-describe-callback.md
@@ -4703,6 +4716,9 @@ type TestRequireMockTypeParameters = [] | [{
4703
4716
  }]; // ----- test/require-top-level-describe -----
4704
4717
  type TestRequireTopLevelDescribe = [] | [{
4705
4718
  maxNumberOfTopLevelDescribes?: number;
4719
+ }]; // ----- test/unbound-method -----
4720
+ type TestUnboundMethod = [] | [{
4721
+ ignoreStatic?: boolean;
4706
4722
  }]; // ----- test/valid-expect -----
4707
4723
  type TestValidExpect = [] | [{
4708
4724
  alwaysAwait?: boolean;
@@ -6180,6 +6196,18 @@ type TsPreferOptionalChain = [] | [{
6180
6196
  requireNullish?: boolean;
6181
6197
  }]; // ----- ts/prefer-promise-reject-errors -----
6182
6198
  type TsPreferPromiseRejectErrors = [] | [{
6199
+ allow?: (string | {
6200
+ from: "file";
6201
+ name: (string | [string, ...(string)[]]);
6202
+ path?: string;
6203
+ } | {
6204
+ from: "lib";
6205
+ name: (string | [string, ...(string)[]]);
6206
+ } | {
6207
+ from: "package";
6208
+ name: (string | [string, ...(string)[]]);
6209
+ package: string;
6210
+ })[];
6183
6211
  allowEmptyReject?: boolean;
6184
6212
  allowThrowingAny?: boolean;
6185
6213
  allowThrowingUnknown?: boolean;
@@ -6315,730 +6343,750 @@ declare module 'eslint' {
6315
6343
  interface RuleOptions$1 {
6316
6344
  /**
6317
6345
  * Improve regexes by making them shorter, consistent, and safer.
6318
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/better-regex.md
6346
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/better-regex.md
6319
6347
  */
6320
6348
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>;
6321
6349
  /**
6322
6350
  * Enforce a specific parameter name in catch clauses.
6323
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/catch-error-name.md
6351
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/catch-error-name.md
6324
6352
  */
6325
6353
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
6326
6354
  /**
6327
6355
  * Enforce consistent assertion style with `node:assert`.
6328
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-assert.md
6356
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-assert.md
6329
6357
  */
6330
6358
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
6331
6359
  /**
6332
6360
  * Prefer passing `Date` directly to the constructor when cloning.
6333
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-date-clone.md
6361
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-date-clone.md
6334
6362
  */
6335
6363
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
6336
6364
  /**
6337
6365
  * Use destructured variables over properties.
6338
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-destructuring.md
6366
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-destructuring.md
6339
6367
  */
6340
6368
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
6341
6369
  /**
6342
6370
  * Prefer consistent types when spreading a ternary in an array literal.
6343
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-empty-array-spread.md
6371
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-empty-array-spread.md
6344
6372
  */
6345
6373
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
6346
6374
  /**
6347
6375
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
6348
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-existence-index-check.md
6376
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-existence-index-check.md
6349
6377
  */
6350
6378
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
6351
6379
  /**
6352
6380
  * Move function definitions to the highest possible scope.
6353
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-function-scoping.md
6381
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-function-scoping.md
6354
6382
  */
6355
6383
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
6384
+ /**
6385
+ * Enforce consistent style for escaping `${` in template literals.
6386
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/consistent-template-literal-escape.md
6387
+ */
6388
+ 'unicorn/consistent-template-literal-escape'?: Linter.RuleEntry<[]>;
6356
6389
  /**
6357
6390
  * Enforce correct `Error` subclassing.
6358
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/custom-error-definition.md
6391
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/custom-error-definition.md
6359
6392
  */
6360
6393
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
6361
6394
  /**
6362
6395
  * Enforce no spaces between braces.
6363
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/empty-brace-spaces.md
6396
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/empty-brace-spaces.md
6364
6397
  */
6365
6398
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
6366
6399
  /**
6367
6400
  * Enforce passing a `message` value when creating a built-in error.
6368
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/error-message.md
6401
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/error-message.md
6369
6402
  */
6370
6403
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
6371
6404
  /**
6372
6405
  * Require escape sequences to use uppercase or lowercase values.
6373
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/escape-case.md
6406
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/escape-case.md
6374
6407
  */
6375
6408
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
6376
6409
  /**
6377
6410
  * Add expiration conditions to TODO comments.
6378
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/expiring-todo-comments.md
6411
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/expiring-todo-comments.md
6379
6412
  */
6380
6413
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
6381
6414
  /**
6382
6415
  * Enforce explicitly comparing the `length` or `size` property of a value.
6383
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/explicit-length-check.md
6416
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/explicit-length-check.md
6384
6417
  */
6385
6418
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
6386
6419
  /**
6387
6420
  * Enforce a case style for filenames.
6388
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/filename-case.md
6421
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/filename-case.md
6389
6422
  */
6390
6423
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
6391
6424
  /**
6392
6425
  * Enforce specific import styles per module.
6393
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/import-style.md
6426
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/import-style.md
6394
6427
  */
6395
6428
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
6396
6429
  /**
6397
6430
  * Prevent usage of variables from outside the scope of isolated functions.
6398
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/isolated-functions.md
6431
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/isolated-functions.md
6399
6432
  */
6400
6433
  'unicorn/isolated-functions'?: Linter.RuleEntry<UnicornIsolatedFunctions>;
6401
6434
  /**
6402
6435
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
6403
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/new-for-builtins.md
6436
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/new-for-builtins.md
6404
6437
  */
6405
6438
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
6406
6439
  /**
6407
6440
  * Enforce specifying rules to disable in `eslint-disable` comments.
6408
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-abusive-eslint-disable.md
6441
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-abusive-eslint-disable.md
6409
6442
  */
6410
6443
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
6411
6444
  /**
6412
6445
  * Disallow recursive access to `this` within getters and setters.
6413
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-accessor-recursion.md
6446
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-accessor-recursion.md
6414
6447
  */
6415
6448
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
6416
6449
  /**
6417
6450
  * Disallow anonymous functions and classes as the default export.
6418
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-anonymous-default-export.md
6451
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-anonymous-default-export.md
6419
6452
  */
6420
6453
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
6421
6454
  /**
6422
6455
  * Prevent passing a function reference directly to iterator methods.
6423
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-callback-reference.md
6456
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-callback-reference.md
6424
6457
  */
6425
6458
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>;
6426
6459
  /**
6427
6460
  * Prefer `for…of` over the `forEach` method.
6428
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-for-each.md
6461
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-for-each.md
6429
6462
  */
6430
6463
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
6431
6464
  /**
6432
6465
  * Disallow using the `this` argument in array methods.
6433
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-method-this-argument.md
6466
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-method-this-argument.md
6434
6467
  */
6435
6468
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
6436
6469
  /**
6437
6470
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
6438
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/deleted-and-deprecated-rules.md#no-array-push-push
6471
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/deleted-and-deprecated-rules.md#no-array-push-push
6439
6472
  * @deprecated
6440
6473
  */
6441
6474
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
6442
6475
  /**
6443
6476
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
6444
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-reduce.md
6477
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-reduce.md
6445
6478
  */
6446
6479
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
6447
6480
  /**
6448
6481
  * Prefer `Array#toReversed()` over `Array#reverse()`.
6449
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-reverse.md
6482
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-reverse.md
6450
6483
  */
6451
6484
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
6452
6485
  /**
6453
6486
  * Prefer `Array#toSorted()` over `Array#sort()`.
6454
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-sort.md
6487
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-array-sort.md
6455
6488
  */
6456
6489
  'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
6457
6490
  /**
6458
6491
  * Disallow member access from await expression.
6459
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-await-expression-member.md
6492
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-await-expression-member.md
6460
6493
  */
6461
6494
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
6462
6495
  /**
6463
6496
  * Disallow using `await` in `Promise` method parameters.
6464
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-await-in-promise-methods.md
6497
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-await-in-promise-methods.md
6465
6498
  */
6466
6499
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
6467
6500
  /**
6468
6501
  * Do not use leading/trailing space between `console.log` parameters.
6469
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-console-spaces.md
6502
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-console-spaces.md
6470
6503
  */
6471
6504
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
6472
6505
  /**
6473
6506
  * Do not use `document.cookie` directly.
6474
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-document-cookie.md
6507
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-document-cookie.md
6475
6508
  */
6476
6509
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
6477
6510
  /**
6478
6511
  * Disallow empty files.
6479
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-empty-file.md
6512
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-empty-file.md
6480
6513
  */
6481
6514
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>;
6482
6515
  /**
6483
6516
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
6484
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-for-loop.md
6517
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-for-loop.md
6485
6518
  */
6486
6519
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
6487
6520
  /**
6488
6521
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
6489
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-hex-escape.md
6522
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-hex-escape.md
6490
6523
  */
6491
6524
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
6492
6525
  /**
6493
6526
  * Disallow immediate mutation after variable assignment.
6494
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-immediate-mutation.md
6527
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-immediate-mutation.md
6495
6528
  */
6496
6529
  'unicorn/no-immediate-mutation'?: Linter.RuleEntry<[]>;
6497
6530
  /**
6498
6531
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
6499
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/deleted-and-deprecated-rules.md#no-instanceof-array
6532
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/deleted-and-deprecated-rules.md#no-instanceof-array
6500
6533
  * @deprecated
6501
6534
  */
6502
6535
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
6503
6536
  /**
6504
6537
  * Disallow `instanceof` with built-in objects
6505
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-instanceof-builtins.md
6538
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-instanceof-builtins.md
6506
6539
  */
6507
6540
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
6508
6541
  /**
6509
6542
  * Disallow invalid options in `fetch()` and `new Request()`.
6510
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-invalid-fetch-options.md
6543
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-invalid-fetch-options.md
6511
6544
  */
6512
6545
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
6513
6546
  /**
6514
6547
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
6515
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-invalid-remove-event-listener.md
6548
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-invalid-remove-event-listener.md
6516
6549
  */
6517
6550
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
6518
6551
  /**
6519
6552
  * Disallow identifiers starting with `new` or `class`.
6520
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-keyword-prefix.md
6553
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-keyword-prefix.md
6521
6554
  */
6522
6555
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
6523
6556
  /**
6524
6557
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
6525
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/deleted-and-deprecated-rules.md#no-length-as-slice-end
6558
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/deleted-and-deprecated-rules.md#no-length-as-slice-end
6526
6559
  * @deprecated
6527
6560
  */
6528
6561
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
6529
6562
  /**
6530
6563
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
6531
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-lonely-if.md
6564
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-lonely-if.md
6532
6565
  */
6533
6566
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
6534
6567
  /**
6535
6568
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
6536
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-magic-array-flat-depth.md
6569
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-magic-array-flat-depth.md
6537
6570
  */
6538
6571
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
6539
6572
  /**
6540
6573
  * Disallow named usage of default import and export.
6541
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-named-default.md
6574
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-named-default.md
6542
6575
  */
6543
6576
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
6544
6577
  /**
6545
6578
  * Disallow negated conditions.
6546
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-negated-condition.md
6579
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-negated-condition.md
6547
6580
  */
6548
6581
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
6549
6582
  /**
6550
6583
  * Disallow negated expression in equality check.
6551
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-negation-in-equality-check.md
6584
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-negation-in-equality-check.md
6552
6585
  */
6553
6586
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
6554
6587
  /**
6555
6588
  * Disallow nested ternary expressions.
6556
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-nested-ternary.md
6589
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-nested-ternary.md
6557
6590
  */
6558
6591
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
6559
6592
  /**
6560
6593
  * Disallow `new Array()`.
6561
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-new-array.md
6594
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-new-array.md
6562
6595
  */
6563
6596
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
6564
6597
  /**
6565
6598
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
6566
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-new-buffer.md
6599
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-new-buffer.md
6567
6600
  */
6568
6601
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
6569
6602
  /**
6570
6603
  * Disallow the use of the `null` literal.
6571
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-null.md
6604
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-null.md
6572
6605
  */
6573
6606
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
6574
6607
  /**
6575
6608
  * Disallow the use of objects as default parameters.
6576
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-object-as-default-parameter.md
6609
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-object-as-default-parameter.md
6577
6610
  */
6578
6611
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
6579
6612
  /**
6580
6613
  * Disallow `process.exit()`.
6581
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-process-exit.md
6614
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-process-exit.md
6582
6615
  */
6583
6616
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
6584
6617
  /**
6585
6618
  * Disallow passing single-element arrays to `Promise` methods.
6586
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-single-promise-in-promise-methods.md
6619
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-single-promise-in-promise-methods.md
6587
6620
  */
6588
6621
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
6589
6622
  /**
6590
6623
  * Disallow classes that only have static members.
6591
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-static-only-class.md
6624
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-static-only-class.md
6592
6625
  */
6593
6626
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
6594
6627
  /**
6595
6628
  * Disallow `then` property.
6596
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-thenable.md
6629
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-thenable.md
6597
6630
  */
6598
6631
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
6599
6632
  /**
6600
6633
  * Disallow assigning `this` to a variable.
6601
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-this-assignment.md
6634
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-this-assignment.md
6602
6635
  */
6603
6636
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
6604
6637
  /**
6605
6638
  * Disallow comparing `undefined` using `typeof`.
6606
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-typeof-undefined.md
6639
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-typeof-undefined.md
6607
6640
  */
6608
6641
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
6609
6642
  /**
6610
6643
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
6611
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-array-flat-depth.md
6644
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-array-flat-depth.md
6612
6645
  */
6613
6646
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
6614
6647
  /**
6615
6648
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
6616
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-array-splice-count.md
6649
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-array-splice-count.md
6617
6650
  */
6618
6651
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
6619
6652
  /**
6620
6653
  * Disallow awaiting non-promise values.
6621
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-await.md
6654
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-await.md
6622
6655
  */
6623
6656
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
6624
6657
  /**
6625
6658
  * Enforce the use of built-in methods instead of unnecessary polyfills.
6626
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-polyfills.md
6659
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-polyfills.md
6627
6660
  */
6628
6661
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
6629
6662
  /**
6630
6663
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
6631
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-slice-end.md
6664
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unnecessary-slice-end.md
6632
6665
  */
6633
6666
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
6634
6667
  /**
6635
6668
  * Disallow unreadable array destructuring.
6636
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unreadable-array-destructuring.md
6669
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unreadable-array-destructuring.md
6637
6670
  */
6638
6671
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
6639
6672
  /**
6640
6673
  * Disallow unreadable IIFEs.
6641
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unreadable-iife.md
6674
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unreadable-iife.md
6642
6675
  */
6643
6676
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
6644
6677
  /**
6645
6678
  * Disallow unused object properties.
6646
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unused-properties.md
6679
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-unused-properties.md
6647
6680
  */
6648
6681
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
6649
6682
  /**
6650
6683
  * Disallow useless values or fallbacks in `Set`, `Map`, `WeakSet`, or `WeakMap`.
6651
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-collection-argument.md
6684
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-collection-argument.md
6652
6685
  */
6653
6686
  'unicorn/no-useless-collection-argument'?: Linter.RuleEntry<[]>;
6654
6687
  /**
6655
6688
  * Disallow unnecessary `Error.captureStackTrace(…)`.
6656
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-error-capture-stack-trace.md
6689
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-error-capture-stack-trace.md
6657
6690
  */
6658
6691
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
6659
6692
  /**
6660
6693
  * Disallow useless fallback when spreading in object literals.
6661
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-fallback-in-spread.md
6694
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-fallback-in-spread.md
6662
6695
  */
6663
6696
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
6697
+ /**
6698
+ * Disallow unnecessary `.toArray()` on iterators.
6699
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-iterator-to-array.md
6700
+ */
6701
+ 'unicorn/no-useless-iterator-to-array'?: Linter.RuleEntry<[]>;
6664
6702
  /**
6665
6703
  * Disallow useless array length check.
6666
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-length-check.md
6704
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-length-check.md
6667
6705
  */
6668
6706
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
6669
6707
  /**
6670
6708
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
6671
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-promise-resolve-reject.md
6709
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-promise-resolve-reject.md
6672
6710
  */
6673
6711
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
6674
6712
  /**
6675
6713
  * Disallow unnecessary spread.
6676
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-spread.md
6714
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-spread.md
6677
6715
  */
6678
6716
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
6679
6717
  /**
6680
6718
  * Disallow useless case in switch statements.
6681
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-switch-case.md
6719
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-switch-case.md
6682
6720
  */
6683
6721
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
6684
6722
  /**
6685
6723
  * Disallow useless `undefined`.
6686
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-undefined.md
6724
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-useless-undefined.md
6687
6725
  */
6688
6726
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
6689
6727
  /**
6690
6728
  * Disallow number literals with zero fractions or dangling dots.
6691
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-zero-fractions.md
6729
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/no-zero-fractions.md
6692
6730
  */
6693
6731
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
6694
6732
  /**
6695
6733
  * Enforce proper case for numeric literals.
6696
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/number-literal-case.md
6734
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/number-literal-case.md
6697
6735
  */
6698
6736
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
6699
6737
  /**
6700
6738
  * Enforce the style of numeric separators by correctly grouping digits.
6701
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/numeric-separators-style.md
6739
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/numeric-separators-style.md
6702
6740
  */
6703
6741
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
6704
6742
  /**
6705
6743
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
6706
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-add-event-listener.md
6744
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-add-event-listener.md
6707
6745
  */
6708
6746
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
6709
6747
  /**
6710
6748
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
6711
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-find.md
6749
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-find.md
6712
6750
  */
6713
6751
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
6714
6752
  /**
6715
6753
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
6716
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-flat.md
6754
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-flat.md
6717
6755
  */
6718
6756
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
6719
6757
  /**
6720
6758
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
6721
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-flat-map.md
6759
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-flat-map.md
6722
6760
  */
6723
6761
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
6724
6762
  /**
6725
6763
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
6726
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-index-of.md
6764
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-index-of.md
6727
6765
  */
6728
6766
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
6729
6767
  /**
6730
6768
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
6731
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-some.md
6769
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-array-some.md
6732
6770
  */
6733
6771
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
6734
6772
  /**
6735
6773
  * Prefer `.at()` method for index access and `String#charAt()`.
6736
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-at.md
6774
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-at.md
6737
6775
  */
6738
6776
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
6739
6777
  /**
6740
6778
  * Prefer `BigInt` literals over the constructor.
6741
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-bigint-literals.md
6779
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-bigint-literals.md
6742
6780
  */
6743
6781
  'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
6744
6782
  /**
6745
6783
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
6746
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-blob-reading-methods.md
6784
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-blob-reading-methods.md
6747
6785
  */
6748
6786
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
6749
6787
  /**
6750
6788
  * Prefer class field declarations over `this` assignments in constructors.
6751
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-class-fields.md
6789
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-class-fields.md
6752
6790
  */
6753
6791
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
6754
6792
  /**
6755
6793
  * Prefer using `Element#classList.toggle()` to toggle class names.
6756
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-classlist-toggle.md
6794
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-classlist-toggle.md
6757
6795
  */
6758
6796
  'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
6759
6797
  /**
6760
6798
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
6761
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-code-point.md
6799
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-code-point.md
6762
6800
  */
6763
6801
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
6764
6802
  /**
6765
6803
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
6766
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-date-now.md
6804
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-date-now.md
6767
6805
  */
6768
6806
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
6769
6807
  /**
6770
6808
  * Prefer default parameters over reassignment.
6771
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-default-parameters.md
6809
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-default-parameters.md
6772
6810
  */
6773
6811
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
6774
6812
  /**
6775
6813
  * Prefer `Node#append()` over `Node#appendChild()`.
6776
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-dom-node-append.md
6814
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-dom-node-append.md
6777
6815
  */
6778
6816
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
6779
6817
  /**
6780
6818
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
6781
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-dom-node-dataset.md
6819
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-dom-node-dataset.md
6782
6820
  */
6783
6821
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
6784
6822
  /**
6785
6823
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
6786
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-dom-node-remove.md
6824
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-dom-node-remove.md
6787
6825
  */
6788
6826
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
6789
6827
  /**
6790
6828
  * Prefer `.textContent` over `.innerText`.
6791
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-dom-node-text-content.md
6829
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-dom-node-text-content.md
6792
6830
  */
6793
6831
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
6794
6832
  /**
6795
6833
  * Prefer `EventTarget` over `EventEmitter`.
6796
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-event-target.md
6834
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-event-target.md
6797
6835
  */
6798
6836
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
6799
6837
  /**
6800
6838
  * Prefer `export…from` when re-exporting.
6801
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-export-from.md
6839
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-export-from.md
6802
6840
  */
6803
6841
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
6804
6842
  /**
6805
6843
  * Prefer `globalThis` over `window`, `self`, and `global`.
6806
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-global-this.md
6844
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-global-this.md
6807
6845
  */
6808
6846
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
6809
6847
  /**
6810
6848
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
6811
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-import-meta-properties.md
6849
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-import-meta-properties.md
6812
6850
  */
6813
6851
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
6814
6852
  /**
6815
6853
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
6816
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-includes.md
6854
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-includes.md
6817
6855
  */
6818
6856
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
6819
6857
  /**
6820
6858
  * Prefer reading a JSON file as a buffer.
6821
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-json-parse-buffer.md
6859
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-json-parse-buffer.md
6822
6860
  */
6823
6861
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
6824
6862
  /**
6825
6863
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
6826
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-keyboard-event-key.md
6864
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-keyboard-event-key.md
6827
6865
  */
6828
6866
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
6829
6867
  /**
6830
6868
  * Prefer using a logical operator over a ternary.
6831
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-logical-operator-over-ternary.md
6869
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-logical-operator-over-ternary.md
6832
6870
  */
6833
6871
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
6834
6872
  /**
6835
6873
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
6836
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-math-min-max.md
6874
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-math-min-max.md
6837
6875
  */
6838
6876
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
6839
6877
  /**
6840
6878
  * Enforce the use of `Math.trunc` instead of bitwise operators.
6841
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-math-trunc.md
6879
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-math-trunc.md
6842
6880
  */
6843
6881
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
6844
6882
  /**
6845
6883
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
6846
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-modern-dom-apis.md
6884
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-modern-dom-apis.md
6847
6885
  */
6848
6886
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
6849
6887
  /**
6850
6888
  * Prefer modern `Math` APIs over legacy patterns.
6851
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-modern-math-apis.md
6889
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-modern-math-apis.md
6852
6890
  */
6853
6891
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
6854
6892
  /**
6855
6893
  * Prefer JavaScript modules (ESM) over CommonJS.
6856
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-module.md
6894
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-module.md
6857
6895
  */
6858
6896
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
6859
6897
  /**
6860
6898
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
6861
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-native-coercion-functions.md
6899
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-native-coercion-functions.md
6862
6900
  */
6863
6901
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
6864
6902
  /**
6865
6903
  * Prefer negative index over `.length - index` when possible.
6866
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-negative-index.md
6904
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-negative-index.md
6867
6905
  */
6868
6906
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
6869
6907
  /**
6870
6908
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
6871
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-node-protocol.md
6909
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-node-protocol.md
6872
6910
  */
6873
6911
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
6874
6912
  /**
6875
6913
  * Prefer `Number` static properties over global ones.
6876
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-number-properties.md
6914
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-number-properties.md
6877
6915
  */
6878
6916
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
6879
6917
  /**
6880
6918
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
6881
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-object-from-entries.md
6919
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-object-from-entries.md
6882
6920
  */
6883
6921
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
6884
6922
  /**
6885
6923
  * Prefer omitting the `catch` binding parameter.
6886
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-optional-catch-binding.md
6924
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-optional-catch-binding.md
6887
6925
  */
6888
6926
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
6889
6927
  /**
6890
6928
  * Prefer borrowing methods from the prototype instead of the instance.
6891
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-prototype-methods.md
6929
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-prototype-methods.md
6892
6930
  */
6893
6931
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
6894
6932
  /**
6895
6933
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
6896
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-query-selector.md
6934
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-query-selector.md
6897
6935
  */
6898
6936
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>;
6899
6937
  /**
6900
6938
  * Prefer `Reflect.apply()` over `Function#apply()`.
6901
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-reflect-apply.md
6939
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-reflect-apply.md
6902
6940
  */
6903
6941
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
6904
6942
  /**
6905
6943
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
6906
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-regexp-test.md
6944
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-regexp-test.md
6907
6945
  */
6908
6946
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
6909
6947
  /**
6910
6948
  * Prefer `Response.json()` over `new Response(JSON.stringify())`.
6911
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-response-static-json.md
6949
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-response-static-json.md
6912
6950
  */
6913
6951
  'unicorn/prefer-response-static-json'?: Linter.RuleEntry<[]>;
6914
6952
  /**
6915
6953
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
6916
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-set-has.md
6954
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-set-has.md
6917
6955
  */
6918
6956
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>;
6919
6957
  /**
6920
6958
  * Prefer using `Set#size` instead of `Array#length`.
6921
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-set-size.md
6959
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-set-size.md
6922
6960
  */
6923
6961
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
6962
+ /**
6963
+ * Prefer simple conditions first in logical expressions.
6964
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-simple-condition-first.md
6965
+ */
6966
+ 'unicorn/prefer-simple-condition-first'?: Linter.RuleEntry<[]>;
6924
6967
  /**
6925
6968
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
6926
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-single-call.md
6969
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-single-call.md
6927
6970
  */
6928
6971
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
6929
6972
  /**
6930
6973
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
6931
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-spread.md
6974
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-spread.md
6932
6975
  */
6933
6976
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
6934
6977
  /**
6935
6978
  * Prefer using the `String.raw` tag to avoid escaping `\`.
6936
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-raw.md
6979
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-raw.md
6937
6980
  */
6938
6981
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
6939
6982
  /**
6940
6983
  * Prefer `String#replaceAll()` over regex searches with the global flag.
6941
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-replace-all.md
6984
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-replace-all.md
6942
6985
  */
6943
6986
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
6944
6987
  /**
6945
6988
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
6946
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-slice.md
6989
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-slice.md
6947
6990
  */
6948
6991
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
6949
6992
  /**
6950
6993
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
6951
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-starts-ends-with.md
6994
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-starts-ends-with.md
6952
6995
  */
6953
6996
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
6954
6997
  /**
6955
6998
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
6956
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-trim-start-end.md
6999
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-string-trim-start-end.md
6957
7000
  */
6958
7001
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
6959
7002
  /**
6960
7003
  * Prefer using `structuredClone` to create a deep clone.
6961
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-structured-clone.md
7004
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-structured-clone.md
6962
7005
  */
6963
7006
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
6964
7007
  /**
6965
7008
  * Prefer `switch` over multiple `else-if`.
6966
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-switch.md
7009
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-switch.md
6967
7010
  */
6968
7011
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
6969
7012
  /**
6970
7013
  * Prefer ternary expressions over simple `if-else` statements.
6971
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-ternary.md
7014
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-ternary.md
6972
7015
  */
6973
7016
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
6974
7017
  /**
6975
7018
  * Prefer top-level await over top-level promises and async function calls.
6976
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-top-level-await.md
7019
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-top-level-await.md
6977
7020
  */
6978
7021
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
6979
7022
  /**
6980
7023
  * Enforce throwing `TypeError` in type checking conditions.
6981
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-type-error.md
7024
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prefer-type-error.md
6982
7025
  */
6983
7026
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
6984
7027
  /**
6985
7028
  * Prevent abbreviations.
6986
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prevent-abbreviations.md
7029
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/prevent-abbreviations.md
6987
7030
  */
6988
7031
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
6989
7032
  /**
6990
7033
  * Enforce consistent relative URL style.
6991
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/relative-url-style.md
7034
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/relative-url-style.md
6992
7035
  */
6993
7036
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
6994
7037
  /**
6995
7038
  * Enforce using the separator argument with `Array#join()`.
6996
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-array-join-separator.md
7039
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-array-join-separator.md
6997
7040
  */
6998
7041
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
6999
7042
  /**
7000
7043
  * Require non-empty module attributes for imports and exports
7001
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-module-attributes.md
7044
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-module-attributes.md
7002
7045
  */
7003
7046
  'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
7004
7047
  /**
7005
7048
  * Require non-empty specifier list in import and export statements.
7006
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-module-specifiers.md
7049
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-module-specifiers.md
7007
7050
  */
7008
7051
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
7009
7052
  /**
7010
7053
  * Enforce using the digits argument with `Number#toFixed()`.
7011
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-number-to-fixed-digits-argument.md
7054
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-number-to-fixed-digits-argument.md
7012
7055
  */
7013
7056
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
7014
7057
  /**
7015
7058
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
7016
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-post-message-target-origin.md
7059
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/require-post-message-target-origin.md
7017
7060
  */
7018
7061
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
7019
7062
  /**
7020
7063
  * Enforce better string content.
7021
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/string-content.md
7064
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/string-content.md
7022
7065
  */
7023
7066
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
7024
7067
  /**
7025
7068
  * Enforce consistent brace style for `case` clauses.
7026
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/switch-case-braces.md
7069
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/switch-case-braces.md
7027
7070
  */
7028
7071
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
7072
+ /**
7073
+ * Enforce consistent `break`/`return`/`continue`/`throw` position in `case` clauses.
7074
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/switch-case-break-position.md
7075
+ */
7076
+ 'unicorn/switch-case-break-position'?: Linter.RuleEntry<[]>;
7029
7077
  /**
7030
7078
  * Fix whitespace-insensitive template indentation.
7031
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/template-indent.md
7079
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/template-indent.md
7032
7080
  */
7033
7081
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
7034
7082
  /**
7035
7083
  * Enforce consistent case for text encoding identifiers.
7036
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/text-encoding-identifier-case.md
7084
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/text-encoding-identifier-case.md
7037
7085
  */
7038
7086
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<UnicornTextEncodingIdentifierCase>;
7039
7087
  /**
7040
7088
  * Require `new` when creating an error.
7041
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/throw-new-error.md
7089
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v64.0.0/docs/rules/throw-new-error.md
7042
7090
  */
7043
7091
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
7044
7092
  }
@@ -7058,6 +7106,7 @@ type UnicornEscapeCase = [] | [("uppercase" | "lowercase")]; // ----- unicorn/ex
7058
7106
  type UnicornExpiringTodoComments = [] | [{
7059
7107
  terms?: string[];
7060
7108
  ignore?: unknown[];
7109
+ ignoreDates?: boolean;
7061
7110
  ignoreDatesOnPullRequests?: boolean;
7062
7111
  allowWarningComments?: boolean;
7063
7112
  date?: string;
@@ -7214,6 +7263,9 @@ type _UnicornPreventAbbreviationsReplacements = (false | _UnicornPreventAbbrevia
7214
7263
  interface _UnicornPreventAbbreviations_Abbreviations {
7215
7264
  [k: string]: _UnicornPreventAbbreviationsReplacements | undefined;
7216
7265
  }
7266
+ interface _UnicornPreventAbbreviations_BooleanObject {
7267
+ [k: string]: boolean | undefined;
7268
+ }
7217
7269
  interface _UnicornPreventAbbreviations_BooleanObject {
7218
7270
  [k: string]: boolean | undefined;
7219
7271
  } // ----- unicorn/relative-url-style -----