@coderwyd/eslint-config 4.1.1 → 4.2.1

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
@@ -391,233 +391,233 @@ interface RuleOptions {
391
391
  'implicit-arrow-linebreak'?: Linter.RuleEntry<ImplicitArrowLinebreak>
392
392
  /**
393
393
  * Enforce or ban the use of inline type-only markers for named imports.
394
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/consistent-type-specifier-style.md
394
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/consistent-type-specifier-style.md
395
395
  */
396
396
  'import/consistent-type-specifier-style'?: Linter.RuleEntry<ImportConsistentTypeSpecifierStyle>
397
397
  /**
398
398
  * Ensure a default export is present, given a default import.
399
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/default.md
399
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/default.md
400
400
  */
401
401
  'import/default'?: Linter.RuleEntry<[]>
402
402
  /**
403
403
  * Enforce a leading comment with the webpackChunkName for dynamic imports.
404
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/dynamic-import-chunkname.md
404
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/dynamic-import-chunkname.md
405
405
  */
406
406
  'import/dynamic-import-chunkname'?: Linter.RuleEntry<ImportDynamicImportChunkname>
407
407
  /**
408
408
  * Forbid any invalid exports, i.e. re-export of the same name.
409
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/export.md
409
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/export.md
410
410
  */
411
411
  'import/export'?: Linter.RuleEntry<[]>
412
412
  /**
413
413
  * Ensure all exports appear after other statements.
414
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/exports-last.md
414
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/exports-last.md
415
415
  */
416
416
  'import/exports-last'?: Linter.RuleEntry<[]>
417
417
  /**
418
418
  * Ensure consistent use of file extension within the import path.
419
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/extensions.md
419
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/extensions.md
420
420
  */
421
421
  'import/extensions'?: Linter.RuleEntry<ImportExtensions>
422
422
  /**
423
423
  * Ensure all imports appear before other statements.
424
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/first.md
424
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/first.md
425
425
  */
426
426
  'import/first'?: Linter.RuleEntry<ImportFirst>
427
427
  /**
428
428
  * Prefer named exports to be grouped together in a single export declaration.
429
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/group-exports.md
429
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/group-exports.md
430
430
  */
431
431
  'import/group-exports'?: Linter.RuleEntry<[]>
432
432
  /**
433
433
  * Replaced by `import-x/first`.
434
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/imports-first.md
434
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/imports-first.md
435
435
  * @deprecated
436
436
  */
437
437
  'import/imports-first'?: Linter.RuleEntry<ImportImportsFirst>
438
438
  /**
439
439
  * Enforce the maximum number of dependencies a module can have.
440
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/max-dependencies.md
440
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/max-dependencies.md
441
441
  */
442
442
  'import/max-dependencies'?: Linter.RuleEntry<ImportMaxDependencies>
443
443
  /**
444
444
  * Ensure named imports correspond to a named export in the remote file.
445
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/named.md
445
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/named.md
446
446
  */
447
447
  'import/named'?: Linter.RuleEntry<ImportNamed>
448
448
  /**
449
449
  * Ensure imported namespaces contain dereferenced properties as they are dereferenced.
450
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/namespace.md
450
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/namespace.md
451
451
  */
452
452
  'import/namespace'?: Linter.RuleEntry<ImportNamespace>
453
453
  /**
454
454
  * Enforce a newline after import statements.
455
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/newline-after-import.md
455
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/newline-after-import.md
456
456
  */
457
457
  'import/newline-after-import'?: Linter.RuleEntry<ImportNewlineAfterImport>
458
458
  /**
459
459
  * Forbid import of modules using absolute paths.
460
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-absolute-path.md
460
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-absolute-path.md
461
461
  */
462
462
  'import/no-absolute-path'?: Linter.RuleEntry<ImportNoAbsolutePath>
463
463
  /**
464
464
  * Forbid AMD `require` and `define` calls.
465
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-amd.md
465
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-amd.md
466
466
  */
467
467
  'import/no-amd'?: Linter.RuleEntry<[]>
468
468
  /**
469
469
  * Forbid anonymous values as default exports.
470
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-anonymous-default-export.md
470
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-anonymous-default-export.md
471
471
  */
472
472
  'import/no-anonymous-default-export'?: Linter.RuleEntry<ImportNoAnonymousDefaultExport>
473
473
  /**
474
474
  * Forbid CommonJS `require` calls and `module.exports` or `exports.*`.
475
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-commonjs.md
475
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-commonjs.md
476
476
  */
477
477
  'import/no-commonjs'?: Linter.RuleEntry<ImportNoCommonjs>
478
478
  /**
479
479
  * Forbid a module from importing a module with a dependency path back to itself.
480
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-cycle.md
480
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-cycle.md
481
481
  */
482
482
  'import/no-cycle'?: Linter.RuleEntry<ImportNoCycle>
483
483
  /**
484
484
  * Forbid default exports.
485
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-default-export.md
485
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-default-export.md
486
486
  */
487
487
  'import/no-default-export'?: Linter.RuleEntry<[]>
488
488
  /**
489
489
  * Forbid imported names marked with `@deprecated` documentation tag.
490
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-deprecated.md
490
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-deprecated.md
491
491
  */
492
492
  'import/no-deprecated'?: Linter.RuleEntry<[]>
493
493
  /**
494
494
  * Forbid repeated import of the same module in multiple places.
495
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-duplicates.md
495
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-duplicates.md
496
496
  */
497
497
  'import/no-duplicates'?: Linter.RuleEntry<ImportNoDuplicates>
498
498
  /**
499
499
  * Forbid `require()` calls with expressions.
500
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-dynamic-require.md
500
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-dynamic-require.md
501
501
  */
502
502
  'import/no-dynamic-require'?: Linter.RuleEntry<ImportNoDynamicRequire>
503
503
  /**
504
504
  * Forbid empty named import blocks.
505
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-empty-named-blocks.md
505
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-empty-named-blocks.md
506
506
  */
507
507
  'import/no-empty-named-blocks'?: Linter.RuleEntry<[]>
508
508
  /**
509
509
  * Forbid the use of extraneous packages.
510
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-extraneous-dependencies.md
510
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-extraneous-dependencies.md
511
511
  */
512
512
  'import/no-extraneous-dependencies'?: Linter.RuleEntry<ImportNoExtraneousDependencies>
513
513
  /**
514
514
  * Forbid import statements with CommonJS module.exports.
515
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-import-module-exports.md
515
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-import-module-exports.md
516
516
  */
517
517
  'import/no-import-module-exports'?: Linter.RuleEntry<ImportNoImportModuleExports>
518
518
  /**
519
519
  * Forbid importing the submodules of other modules.
520
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-internal-modules.md
520
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-internal-modules.md
521
521
  */
522
522
  'import/no-internal-modules'?: Linter.RuleEntry<ImportNoInternalModules>
523
523
  /**
524
524
  * Forbid the use of mutable exports with `var` or `let`.
525
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-mutable-exports.md
525
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-mutable-exports.md
526
526
  */
527
527
  'import/no-mutable-exports'?: Linter.RuleEntry<[]>
528
528
  /**
529
529
  * Forbid use of exported name as identifier of default export.
530
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-named-as-default.md
530
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-named-as-default.md
531
531
  */
532
532
  'import/no-named-as-default'?: Linter.RuleEntry<[]>
533
533
  /**
534
534
  * Forbid use of exported name as property of default export.
535
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-named-as-default-member.md
535
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-named-as-default-member.md
536
536
  */
537
537
  'import/no-named-as-default-member'?: Linter.RuleEntry<[]>
538
538
  /**
539
539
  * Forbid named default exports.
540
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-named-default.md
540
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-named-default.md
541
541
  */
542
542
  'import/no-named-default'?: Linter.RuleEntry<[]>
543
543
  /**
544
544
  * Forbid named exports.
545
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-named-export.md
545
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-named-export.md
546
546
  */
547
547
  'import/no-named-export'?: Linter.RuleEntry<[]>
548
548
  /**
549
549
  * Forbid namespace (a.k.a. "wildcard" `*`) imports.
550
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-namespace.md
550
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-namespace.md
551
551
  */
552
552
  'import/no-namespace'?: Linter.RuleEntry<ImportNoNamespace>
553
553
  /**
554
554
  * Forbid Node.js builtin modules.
555
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-nodejs-modules.md
555
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-nodejs-modules.md
556
556
  */
557
557
  'import/no-nodejs-modules'?: Linter.RuleEntry<ImportNoNodejsModules>
558
558
  /**
559
559
  * Forbid importing packages through relative paths.
560
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-relative-packages.md
560
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-relative-packages.md
561
561
  */
562
562
  'import/no-relative-packages'?: Linter.RuleEntry<ImportNoRelativePackages>
563
563
  /**
564
564
  * Forbid importing modules from parent directories.
565
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-relative-parent-imports.md
565
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-relative-parent-imports.md
566
566
  */
567
567
  'import/no-relative-parent-imports'?: Linter.RuleEntry<ImportNoRelativeParentImports>
568
568
  /**
569
569
  * Forbid importing a default export by a different name.
570
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-rename-default.md
570
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-rename-default.md
571
571
  */
572
572
  'import/no-rename-default'?: Linter.RuleEntry<ImportNoRenameDefault>
573
573
  /**
574
574
  * Enforce which files can be imported in a given folder.
575
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-restricted-paths.md
575
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-restricted-paths.md
576
576
  */
577
577
  'import/no-restricted-paths'?: Linter.RuleEntry<ImportNoRestrictedPaths>
578
578
  /**
579
579
  * Forbid a module from importing itself.
580
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-self-import.md
580
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-self-import.md
581
581
  */
582
582
  'import/no-self-import'?: Linter.RuleEntry<[]>
583
583
  /**
584
584
  * Forbid unassigned imports.
585
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-unassigned-import.md
585
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-unassigned-import.md
586
586
  */
587
587
  'import/no-unassigned-import'?: Linter.RuleEntry<ImportNoUnassignedImport>
588
588
  /**
589
589
  * Ensure imports point to a file/module that can be resolved.
590
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-unresolved.md
590
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-unresolved.md
591
591
  */
592
592
  'import/no-unresolved'?: Linter.RuleEntry<ImportNoUnresolved>
593
593
  /**
594
594
  * Forbid modules without exports, or exports without matching import in another module.
595
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-unused-modules.md
595
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-unused-modules.md
596
596
  */
597
597
  'import/no-unused-modules'?: Linter.RuleEntry<ImportNoUnusedModules>
598
598
  /**
599
599
  * Forbid unnecessary path segments in import and require statements.
600
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-useless-path-segments.md
600
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-useless-path-segments.md
601
601
  */
602
602
  'import/no-useless-path-segments'?: Linter.RuleEntry<ImportNoUselessPathSegments>
603
603
  /**
604
604
  * Forbid webpack loader syntax in imports.
605
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/no-webpack-loader-syntax.md
605
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/no-webpack-loader-syntax.md
606
606
  */
607
607
  'import/no-webpack-loader-syntax'?: Linter.RuleEntry<[]>
608
608
  /**
609
609
  * Enforce a convention in module import order.
610
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/order.md
610
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/order.md
611
611
  */
612
612
  'import/order'?: Linter.RuleEntry<ImportOrder>
613
613
  /**
614
614
  * Prefer a default export if module exports a single name or multiple names.
615
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/prefer-default-export.md
615
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/prefer-default-export.md
616
616
  */
617
617
  'import/prefer-default-export'?: Linter.RuleEntry<ImportPreferDefaultExport>
618
618
  /**
619
619
  * Forbid potentially ambiguous parse goal (`script` vs. `module`).
620
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.6.1/docs/rules/unambiguous.md
620
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.9.1/docs/rules/unambiguous.md
621
621
  */
622
622
  'import/unambiguous'?: Linter.RuleEntry<[]>
623
623
  /**
@@ -2542,122 +2542,142 @@ interface RuleOptions {
2542
2542
  */
2543
2543
  'react-compiler/react-compiler'?: Linter.RuleEntry<ReactCompilerReactCompiler>
2544
2544
  /**
2545
- * disallow void elements (AKA self-closing elements) from having children
2545
+ * Disallow `children` in void DOM elements.
2546
2546
  * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
2547
2547
  */
2548
2548
  'react-dom/no-children-in-void-dom-elements'?: Linter.RuleEntry<[]>
2549
2549
  /**
2550
- * disallow when a DOM component is using 'dangerouslySetInnerHTML'
2550
+ * Disallow `dangerouslySetInnerHTML`.
2551
2551
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml
2552
2552
  */
2553
2553
  'react-dom/no-dangerously-set-innerhtml'?: Linter.RuleEntry<[]>
2554
2554
  /**
2555
- * disallow when a DOM component is using both 'children' and 'dangerouslySetInnerHTML'
2555
+ * Disallow `dangerouslySetInnerHTML` and `children` at the same time.
2556
2556
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml-with-children
2557
2557
  */
2558
2558
  'react-dom/no-dangerously-set-innerhtml-with-children'?: Linter.RuleEntry<[]>
2559
2559
  /**
2560
- * disallow 'findDOMNode'
2560
+ * Disallow `findDOMNode`.
2561
2561
  * @see https://eslint-react.xyz/docs/rules/dom-no-find-dom-node
2562
2562
  */
2563
2563
  'react-dom/no-find-dom-node'?: Linter.RuleEntry<[]>
2564
2564
  /**
2565
- * warns against using `flushSync`
2565
+ * Disallow `flushSync`.
2566
2566
  * @see https://eslint-react.xyz/docs/rules/dom-no-flush-sync
2567
2567
  */
2568
2568
  'react-dom/no-flush-sync'?: Linter.RuleEntry<[]>
2569
2569
  /**
2570
- * enforce that button component have an explicit 'type' attribute
2570
+ * Replaces usages of `ReactDom.hydrate()` with `hydrateRoot()`.
2571
+ * @see https://eslint-react.xyz/docs/rules/dom-no-hydrate
2572
+ */
2573
+ 'react-dom/no-hydrate'?: Linter.RuleEntry<[]>
2574
+ /**
2575
+ * Enforces explicit `type` attribute for `button` elements.
2571
2576
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-button-type
2572
2577
  */
2573
2578
  'react-dom/no-missing-button-type'?: Linter.RuleEntry<[]>
2574
2579
  /**
2575
- * enforce that 'iframe' component have an explicit 'sandbox' attribute
2580
+ * Enforces explicit `sandbox` attribute for `iframe` elements.
2576
2581
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox
2577
2582
  */
2578
2583
  'react-dom/no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>
2579
2584
  /**
2580
- * enforce that namespaces are not used in React elements
2585
+ * Enforces the absence of a `namespace` in React elements.
2581
2586
  * @see https://eslint-react.xyz/docs/rules/dom-no-namespace
2582
2587
  */
2583
2588
  'react-dom/no-namespace'?: Linter.RuleEntry<[]>
2584
2589
  /**
2585
- * disallow usage of the return value of 'ReactDOM.render'
2590
+ * Replaces usages of `ReactDom.render()` with `createRoot(node).render()`.
2591
+ * @see https://eslint-react.xyz/docs/rules/dom-no-render
2592
+ */
2593
+ 'react-dom/no-render'?: Linter.RuleEntry<[]>
2594
+ /**
2595
+ * Disallow the return value of `ReactDOM.render`.
2586
2596
  * @see https://eslint-react.xyz/docs/rules/dom-no-render-return-value
2587
2597
  */
2588
2598
  'react-dom/no-render-return-value'?: Linter.RuleEntry<[]>
2589
2599
  /**
2590
- * disallow 'javascript:' URLs as JSX event handler prop's value
2600
+ * Disallow `javascript:` URLs as attribute values.
2591
2601
  * @see https://eslint-react.xyz/docs/rules/dom-no-script-url
2592
2602
  */
2593
2603
  'react-dom/no-script-url'?: Linter.RuleEntry<[]>
2594
2604
  /**
2595
- * disallow usage of unknown DOM property
2605
+ * Disallow unknown `DOM` property.
2596
2606
  * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property
2597
2607
  */
2598
2608
  'react-dom/no-unknown-property'?: Linter.RuleEntry<ReactDomNoUnknownProperty>
2599
2609
  /**
2600
- * disallow unsafe iframe 'sandbox' attribute combinations
2610
+ * Enforces `sandbox` attribute for `iframe` elements is not set to unsafe combinations.
2601
2611
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox
2602
2612
  */
2603
2613
  'react-dom/no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>
2604
2614
  /**
2605
- * disallow 'target="_blank"' on an external link without 'rel="noreferrer noopener"'
2615
+ * Disallow `target="_blank"` without `rel="noreferrer noopener"`.
2606
2616
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-target-blank
2607
2617
  */
2608
2618
  'react-dom/no-unsafe-target-blank'?: Linter.RuleEntry<[]>
2609
2619
  /**
2610
- * disallow void elements (AKA self-closing elements) from having children
2620
+ * Replaces usages of `useFormState` with `useActionState`.
2621
+ * @see https://eslint-react.xyz/docs/rules/dom-no-use-form-state
2622
+ */
2623
+ 'react-dom/no-use-form-state'?: Linter.RuleEntry<[]>
2624
+ /**
2625
+ * Disallow `children` in void DOM elements.
2611
2626
  * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
2612
2627
  */
2613
2628
  'react-dom/no-void-elements-with-children'?: Linter.RuleEntry<[]>
2614
2629
  /**
2615
- * enforce custom Hooks to use at least one other hook inside
2616
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-useless-custom-hooks
2630
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2631
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2617
2632
  */
2618
2633
  'react-hooks-extra/ensure-custom-hooks-using-other-hooks'?: Linter.RuleEntry<[]>
2619
2634
  /**
2620
- * disallow unnecessary usage of 'useCallback'
2635
+ * Disallow unnecessary usage of `useCallback`.
2621
2636
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-callback
2622
2637
  */
2623
2638
  'react-hooks-extra/ensure-use-callback-has-non-empty-deps'?: Linter.RuleEntry<[]>
2624
2639
  /**
2625
- * disallow unnecessary usage of 'useMemo'
2640
+ * Disallow unnecessary usage of `useMemo`.
2626
2641
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-memo
2627
2642
  */
2628
2643
  'react-hooks-extra/ensure-use-memo-has-non-empty-deps'?: Linter.RuleEntry<[]>
2629
2644
  /**
2630
- * disallow direct calls to the 'set' function of 'useState' in 'useEffect'
2645
+ * Disallow direct calls to the `set` function of `useState` in `useEffect`.
2631
2646
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
2632
2647
  */
2633
2648
  'react-hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>
2634
2649
  /**
2635
- * disallow direct calls to the 'set' function of 'useState' in 'useLayoutEffect'
2650
+ * Disallow direct calls to the `set` function of `useState` in `useLayoutEffect`.
2636
2651
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-layout-effect
2637
2652
  */
2638
2653
  'react-hooks-extra/no-direct-set-state-in-use-layout-effect'?: Linter.RuleEntry<[]>
2639
2654
  /**
2640
- * enforce custom Hooks to use at least one other hook inside
2641
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-useless-custom-hooks
2655
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2656
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2642
2657
  */
2643
2658
  'react-hooks-extra/no-redundant-custom-hook'?: Linter.RuleEntry<[]>
2644
2659
  /**
2645
- * disallow unnecessary usage of 'useCallback'
2660
+ * Disallow unnecessary usage of `useCallback`.
2646
2661
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-callback
2647
2662
  */
2648
2663
  'react-hooks-extra/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>
2649
2664
  /**
2650
- * disallow unnecessary usage of 'useMemo'
2665
+ * Disallow unnecessary usage of `useMemo`.
2651
2666
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-memo
2652
2667
  */
2653
2668
  'react-hooks-extra/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>
2654
2669
  /**
2655
- * enforce custom Hooks to use at least one other hook inside
2656
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-useless-custom-hooks
2670
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2671
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2672
+ */
2673
+ 'react-hooks-extra/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>
2674
+ /**
2675
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2676
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
2657
2677
  */
2658
2678
  'react-hooks-extra/no-useless-custom-hooks'?: Linter.RuleEntry<[]>
2659
2679
  /**
2660
- * disallow function calls in 'useState' that aren't wrapped in an initializer function
2680
+ * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
2661
2681
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-prefer-use-state-lazy-initialization
2662
2682
  */
2663
2683
  'react-hooks-extra/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>
@@ -2672,324 +2692,339 @@ interface RuleOptions {
2672
2692
  */
2673
2693
  'react-hooks/rules-of-hooks'?: Linter.RuleEntry<[]>
2674
2694
  /**
2675
- * enforce component naming convention to 'PascalCase' or 'CONSTANT_CASE'
2695
+ * Enforces naming conventions for components.
2676
2696
  * @see https://eslint-react.xyz/docs/rules/naming-convention-component-name
2677
2697
  */
2678
2698
  'react-naming-convention/component-name'?: Linter.RuleEntry<ReactNamingConventionComponentName>
2679
2699
  /**
2680
- * enforce context name to end with `Context`.
2700
+ * Enforces context name to be a valid component name with the suffix `Context`.
2681
2701
  * @see https://eslint-react.xyz/docs/rules/naming-convention-context-name
2682
2702
  */
2683
2703
  'react-naming-convention/context-name'?: Linter.RuleEntry<[]>
2684
2704
  /**
2685
- * enforce naming convention for JSX filenames
2705
+ * Enforces consistent file naming conventions.
2686
2706
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename
2687
2707
  */
2688
2708
  'react-naming-convention/filename'?: Linter.RuleEntry<ReactNamingConventionFilename>
2689
2709
  /**
2690
- * enforce naming convention for JSX file extensions
2710
+ * Enforces consistent file naming conventions.
2691
2711
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename-extension
2692
2712
  */
2693
2713
  'react-naming-convention/filename-extension'?: Linter.RuleEntry<ReactNamingConventionFilenameExtension>
2694
2714
  /**
2695
- * enforce destructuring and symmetric naming of 'useState' hook value and setter
2715
+ * Enforces destructuring and symmetric naming of `useState` hook value and setter.
2696
2716
  * @see https://eslint-react.xyz/docs/rules/naming-convention-use-state
2697
2717
  */
2698
2718
  'react-naming-convention/use-state'?: Linter.RuleEntry<[]>
2699
2719
  'react-refresh/only-export-components'?: Linter.RuleEntry<ReactRefreshOnlyExportComponents>
2700
2720
  /**
2701
- * enforce that every 'addEventListener' in a component or custom Hook has a corresponding 'removeEventListener'.
2721
+ * Prevents leaked `addEventListener` in a component or custom Hook.
2702
2722
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-event-listener
2703
2723
  */
2704
2724
  'react-web-api/no-leaked-event-listener'?: Linter.RuleEntry<[]>
2705
2725
  /**
2706
- * enforce that every 'setInterval' in a component or custom Hook has a corresponding 'clearInterval'.
2726
+ * Prevents leaked `setInterval` in a component or custom Hook.
2707
2727
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-interval
2708
2728
  */
2709
2729
  'react-web-api/no-leaked-interval'?: Linter.RuleEntry<[]>
2710
2730
  /**
2711
- * enforce cleanup of 'ResizeObserver' instances in components and custom Hooks.
2731
+ * Prevents leaked `ResizeObserver` in a component or custom Hook.
2712
2732
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-resize-observer
2713
2733
  */
2714
2734
  'react-web-api/no-leaked-resize-observer'?: Linter.RuleEntry<[]>
2715
2735
  /**
2716
- * enforce that every 'setTimeout' in a component or custom Hook has a corresponding 'clearTimeout'.
2736
+ * Prevents leaked `setTimeout` in a component or custom Hook.
2717
2737
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-timeout
2718
2738
  */
2719
2739
  'react-web-api/no-leaked-timeout'?: Linter.RuleEntry<[]>
2720
2740
  /**
2721
- * disallow using shorthand boolean attributes
2741
+ * Enforces explicit boolean values for boolean attributes.
2722
2742
  * @see https://eslint-react.xyz/docs/rules/avoid-shorthand-boolean
2723
2743
  */
2724
2744
  'react/avoid-shorthand-boolean'?: Linter.RuleEntry<[]>
2725
2745
  /**
2726
- * disallow using shorthand fragment syntax
2746
+ * Enforces explicit `<Fragment>` components instead of the shorthand `<>` or `</>` syntax.
2727
2747
  * @see https://eslint-react.xyz/docs/rules/avoid-shorthand-fragment
2728
2748
  */
2729
2749
  'react/avoid-shorthand-fragment'?: Linter.RuleEntry<[]>
2730
2750
  /**
2731
- * require a 'ref' parameter to be set when using 'forwardRef'
2732
- * @see https://eslint-react.xyz/docs/rules/ensure-forward-ref-using-ref
2751
+ * Disallow useless `forwardRef` calls on components that don't use `ref`s.
2752
+ * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
2733
2753
  */
2734
2754
  'react/ensure-forward-ref-using-ref'?: Linter.RuleEntry<[]>
2735
2755
  /**
2736
- * disallow duplicate props
2737
- * @see https://eslint-react.xyz/docs/rules/no-duplicate-jsx-props
2756
+ * Disallow duplicate props in JSX elements.
2757
+ * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
2738
2758
  */
2739
2759
  'react/jsx-no-duplicate-props'?: Linter.RuleEntry<[]>
2740
2760
  /**
2741
- * marks variables used in JSX as used
2742
- * @see https://eslint-react.xyz/docs/rules/use-jsx-vars
2761
+ * Disallow undefined variables in JSX.
2762
+ * @see https://eslint-react.xyz/docs/rules/jsx-no-undef
2763
+ */
2764
+ 'react/jsx-no-undef'?: Linter.RuleEntry<[]>
2765
+ /**
2766
+ * Marks variables used in JSX elements as used.
2767
+ * @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
2743
2768
  */
2744
2769
  'react/jsx-uses-vars'?: Linter.RuleEntry<[]>
2745
2770
  /**
2746
- * disallow accessing 'this.state' within 'setState'
2771
+ * Disallow accessing `this.state` inside `setState` calls.
2747
2772
  * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate
2748
2773
  */
2749
2774
  'react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>
2750
2775
  /**
2751
- * disallow using Array index as 'key'
2776
+ * Disallow an item's index in the array as its key.
2752
2777
  * @see https://eslint-react.xyz/docs/rules/no-array-index-key
2753
2778
  */
2754
2779
  'react/no-array-index-key'?: Linter.RuleEntry<[]>
2755
2780
  /**
2756
- * disallow using 'Children.count'
2781
+ * Disallow `Children.count`.
2757
2782
  * @see https://eslint-react.xyz/docs/rules/no-children-count
2758
2783
  */
2759
2784
  'react/no-children-count'?: Linter.RuleEntry<[]>
2760
2785
  /**
2761
- * disallow using 'Children.forEach'
2786
+ * Disallow 'Children.forEach'.
2762
2787
  * @see https://eslint-react.xyz/docs/rules/no-children-for-each
2763
2788
  */
2764
2789
  'react/no-children-for-each'?: Linter.RuleEntry<[]>
2765
2790
  /**
2766
- * disallow using 'Children.map'
2791
+ * Disallow `Children.map`.
2767
2792
  * @see https://eslint-react.xyz/docs/rules/no-children-map
2768
2793
  */
2769
2794
  'react/no-children-map'?: Linter.RuleEntry<[]>
2770
2795
  /**
2771
- * disallow using 'Children.only'
2796
+ * Disallow `Children.only`.
2772
2797
  * @see https://eslint-react.xyz/docs/rules/no-children-only
2773
2798
  */
2774
2799
  'react/no-children-only'?: Linter.RuleEntry<[]>
2775
2800
  /**
2776
- * disallow passing 'children' as props
2801
+ * Disallow passing `children` as a prop.
2777
2802
  * @see https://eslint-react.xyz/docs/rules/no-children-prop
2778
2803
  */
2779
2804
  'react/no-children-prop'?: Linter.RuleEntry<[]>
2780
2805
  /**
2781
- * disallow using 'Children.toArray'
2806
+ * Disallow `Children.toArray`.
2782
2807
  * @see https://eslint-react.xyz/docs/rules/no-children-to-array
2783
2808
  */
2784
2809
  'react/no-children-to-array'?: Linter.RuleEntry<[]>
2785
2810
  /**
2786
- * disallow using class components
2811
+ * Disallow class components.
2787
2812
  * @see https://eslint-react.xyz/docs/rules/no-class-component
2788
2813
  */
2789
2814
  'react/no-class-component'?: Linter.RuleEntry<[]>
2790
2815
  /**
2791
- * disallow using 'cloneElement'
2816
+ * Disallow `cloneElement`.
2792
2817
  * @see https://eslint-react.xyz/docs/rules/no-clone-element
2793
2818
  */
2794
2819
  'react/no-clone-element'?: Linter.RuleEntry<[]>
2795
2820
  /**
2796
- * disallow comments from being inserted as text nodes
2821
+ * Prevents comments from being inserted as text nodes.
2797
2822
  * @see https://eslint-react.xyz/docs/rules/no-comment-textnodes
2798
2823
  */
2799
2824
  'react/no-comment-textnodes'?: Linter.RuleEntry<[]>
2800
2825
  /**
2801
- * disallow complex conditional rendering
2826
+ * Disallow complex conditional rendering in JSX expressions.
2802
2827
  * @see https://eslint-react.xyz/docs/rules/no-complex-conditional-rendering
2803
2828
  */
2804
2829
  'react/no-complex-conditional-rendering'?: Linter.RuleEntry<[]>
2805
2830
  /**
2806
- * disallow complex conditional rendering
2831
+ * Disallow complex conditional rendering in JSX expressions.
2807
2832
  * @see https://eslint-react.xyz/docs/rules/no-complex-conditional-rendering
2808
2833
  */
2809
2834
  'react/no-complicated-conditional-rendering'?: Linter.RuleEntry<[]>
2810
2835
  /**
2811
- * disallow using 'componentWillMount'
2836
+ * Replace usages of `componentWillMount` with `UNSAFE_componentWillMount`.
2812
2837
  * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
2813
2838
  */
2814
2839
  'react/no-component-will-mount'?: Linter.RuleEntry<[]>
2815
2840
  /**
2816
- * disallow using 'componentWillReceiveProps'
2841
+ * Replace usages of `componentWillReceiveProps` with `UNSAFE_componentWillReceiveProps`.
2817
2842
  * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props
2818
2843
  */
2819
2844
  'react/no-component-will-receive-props'?: Linter.RuleEntry<[]>
2820
2845
  /**
2821
- * disallow using 'componentWillReceiveProps'
2846
+ * Replace usages of `componentWillUpdate` with `UNSAFE_componentWillUpdate`.
2822
2847
  * @see https://eslint-react.xyz/docs/rules/no-component-will-update
2823
2848
  */
2824
2849
  'react/no-component-will-update'?: Linter.RuleEntry<[]>
2825
2850
  /**
2826
- * disallow the use of '<Context.Provider>'
2851
+ * Replace usages of `<Context.Provider>` with `<Context>`.
2827
2852
  * @see https://eslint-react.xyz/docs/rules/no-context-provider
2828
2853
  */
2829
2854
  'react/no-context-provider'?: Linter.RuleEntry<[]>
2830
2855
  /**
2831
- * disallow using 'createRef' in function components
2856
+ * Disallow `createRef` in function components.
2832
2857
  * @see https://eslint-react.xyz/docs/rules/no-create-ref
2833
2858
  */
2834
2859
  'react/no-create-ref'?: Linter.RuleEntry<[]>
2835
2860
  /**
2836
- * disallow using 'defaultProps' property in components
2861
+ * Disallow `defaultProps` property in favor of ES6 default parameters.
2837
2862
  * @see https://eslint-react.xyz/docs/rules/no-default-props
2838
2863
  */
2839
2864
  'react/no-default-props'?: Linter.RuleEntry<[]>
2840
2865
  /**
2841
- * disallow direct mutation of state
2866
+ * Disallow direct mutation of `this.state`.
2842
2867
  * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
2843
2868
  */
2844
2869
  'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>
2845
2870
  /**
2846
- * disallow duplicate props
2847
- * @see https://eslint-react.xyz/docs/rules/no-duplicate-jsx-props
2871
+ * Disallow duplicate props in JSX elements.
2872
+ * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
2848
2873
  */
2849
2874
  'react/no-duplicate-jsx-props'?: Linter.RuleEntry<[]>
2850
2875
  /**
2851
- * disallow duplicate keys when rendering list
2876
+ * Disallow duplicate `key` on elements in the same array or a list of `children`.
2852
2877
  * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
2853
2878
  */
2854
2879
  'react/no-duplicate-key'?: Linter.RuleEntry<[]>
2855
2880
  /**
2856
- * disallow the use of 'forwardRef'
2881
+ * Replaces usages of `forwardRef` with passing `ref` as a prop.
2857
2882
  * @see https://eslint-react.xyz/docs/rules/no-forward-ref
2858
2883
  */
2859
2884
  'react/no-forward-ref'?: Linter.RuleEntry<[]>
2860
2885
  /**
2861
- * disallow implicit 'key' props
2886
+ * Prevents `key` from not being explicitly specified (e.g. spreading `key` from objects).
2862
2887
  * @see https://eslint-react.xyz/docs/rules/no-implicit-key
2863
2888
  */
2864
2889
  'react/no-implicit-key'?: Linter.RuleEntry<[]>
2865
2890
  /**
2866
- * disallow problematic leaked values from being rendered
2891
+ * Prevents problematic leaked values from being rendered.
2867
2892
  * @see https://eslint-react.xyz/docs/rules/no-leaked-conditional-rendering
2868
2893
  */
2869
2894
  'react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
2870
2895
  /**
2871
- * require 'displayName' for 'memo' and 'forwardRef' components
2896
+ * Enforces that all components have a `displayName` which can be used in devtools.
2872
2897
  * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
2873
2898
  */
2874
2899
  'react/no-missing-component-display-name'?: Linter.RuleEntry<[]>
2875
2900
  /**
2876
- * require 'displayName' for contexts.
2901
+ * Enforces that all contexts have a `displayName` which can be used in devtools.
2877
2902
  * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
2878
2903
  */
2879
2904
  'react/no-missing-context-display-name'?: Linter.RuleEntry<[]>
2880
2905
  /**
2881
- * require 'key' when rendering list
2906
+ * Disallow missing `key` on items in list rendering.
2882
2907
  * @see https://eslint-react.xyz/docs/rules/no-missing-key
2883
2908
  */
2884
2909
  'react/no-missing-key'?: Linter.RuleEntry<[]>
2885
2910
  /**
2886
- * disallow using unstable nested components
2887
- * @see https://eslint-react.xyz/docs/rules/no-nested-components
2911
+ * Disallow nesting component definitions inside other components.
2912
+ * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
2913
+ */
2914
+ 'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>
2915
+ /**
2916
+ * Disallow nesting component definitions inside other components.
2917
+ * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
2888
2918
  */
2889
2919
  'react/no-nested-components'?: Linter.RuleEntry<[]>
2890
2920
  /**
2891
- * disallow using 'propTypes' property in components
2921
+ * Disallow `propTypes` in favor of TypeScript or another type-checking solution.
2892
2922
  * @see https://eslint-react.xyz/docs/rules/no-prop-types
2893
2923
  */
2894
2924
  'react/no-prop-types'?: Linter.RuleEntry<[]>
2895
2925
  /**
2896
- * disallow using 'shouldComponentUpdate' in class component extends 'React.PureComponent'
2926
+ * Disallow `shouldComponentUpdate` when extending `React.PureComponent`.
2897
2927
  * @see https://eslint-react.xyz/docs/rules/no-redundant-should-component-update
2898
2928
  */
2899
2929
  'react/no-redundant-should-component-update'?: Linter.RuleEntry<[]>
2900
2930
  /**
2901
- * disallow using 'setState' in 'componentDidMount'
2931
+ * Disallow calling `this.setState` in `componentDidMount` outside of functions, such as callbacks.
2902
2932
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount
2903
2933
  */
2904
2934
  'react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>
2905
2935
  /**
2906
- * disallow using 'setState' in 'componentDidUpdate'
2936
+ * Disallows calling `this.setState` in `componentDidUpdate` outside of functions, such as callbacks.
2907
2937
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update
2908
2938
  */
2909
2939
  'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>
2910
2940
  /**
2911
- * disallow using 'setState' in 'componentWillUpdate'
2941
+ * Disallows calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
2912
2942
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
2913
2943
  */
2914
2944
  'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>
2915
2945
  /**
2916
- * disallow using deprecated string refs
2946
+ * Disallow deprecated string `refs`.
2917
2947
  * @see https://eslint-react.xyz/docs/rules/no-string-refs
2918
2948
  */
2919
2949
  'react/no-string-refs'?: Linter.RuleEntry<[]>
2920
2950
  /**
2921
- * disallow using 'UNSAFE_componentWillMount'
2951
+ * Warns the usage of `UNSAFE_componentWillMount` in class components.
2922
2952
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
2923
2953
  */
2924
2954
  'react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>
2925
2955
  /**
2926
- * disallow using 'UNSAFE_componentWillReceiveProps'
2956
+ * Warns the usage of `UNSAFE_componentWillReceiveProps` in class components.
2927
2957
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props
2928
2958
  */
2929
2959
  'react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>
2930
2960
  /**
2931
- * disallow using 'UNSAFE_componentWillUpdate'
2961
+ * Warns the usage of `UNSAFE_componentWillUpdate` in class components.
2932
2962
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update
2933
2963
  */
2934
2964
  'react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>
2935
2965
  /**
2936
- * disallow passing constructed values to context providers
2966
+ * Prevents non-stable values (i.e. object literals) from being used as a value for `Context.Provider`.
2937
2967
  * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value
2938
2968
  */
2939
2969
  'react/no-unstable-context-value'?: Linter.RuleEntry<[]>
2940
2970
  /**
2941
- * disallow using unstable value as default param in function component
2971
+ * Prevents using referential-type values as default props in object destructuring.
2942
2972
  * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
2943
2973
  */
2944
2974
  'react/no-unstable-default-props'?: Linter.RuleEntry<[]>
2945
2975
  /**
2946
- * disallow unused class component members
2976
+ * Warns unused class component methods and properties.
2947
2977
  * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
2948
2978
  */
2949
2979
  'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>
2950
2980
  /**
2951
- * disallow unused state of class component
2981
+ * Warns unused class component state.
2952
2982
  * @see https://eslint-react.xyz/docs/rules/no-unused-state
2953
2983
  */
2954
2984
  'react/no-unused-state'?: Linter.RuleEntry<[]>
2955
2985
  /**
2956
- * disallow the use of 'useContext'
2986
+ * Replaces usages of `useContext` with `use`.
2957
2987
  * @see https://eslint-react.xyz/docs/rules/no-use-context
2958
2988
  */
2959
2989
  'react/no-use-context'?: Linter.RuleEntry<[]>
2960
2990
  /**
2961
- * disallow useless fragments
2991
+ * Disallow useless `forwardRef` calls on components that don't use `ref`s.
2992
+ * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
2993
+ */
2994
+ 'react/no-useless-forward-ref'?: Linter.RuleEntry<[]>
2995
+ /**
2996
+ * Disallow useless fragment elements.
2962
2997
  * @see https://eslint-react.xyz/docs/rules/no-useless-fragment
2963
2998
  */
2964
2999
  'react/no-useless-fragment'?: Linter.RuleEntry<ReactNoUselessFragment>
2965
3000
  /**
2966
- * enforce using destructuring assignment in component props and context
3001
+ * Enforces destructuring assignment for component props and context.
2967
3002
  * @see https://eslint-react.xyz/docs/rules/prefer-destructuring-assignment
2968
3003
  */
2969
3004
  'react/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>
2970
3005
  /**
2971
- * enforce React is imported via a namespace import
3006
+ * Enforces React is imported via a namespace import.
2972
3007
  * @see https://eslint-react.xyz/docs/rules/prefer-react-namespace-import
2973
3008
  */
2974
3009
  'react/prefer-react-namespace-import'?: Linter.RuleEntry<[]>
2975
3010
  /**
2976
- * enforce read-only props in components
3011
+ * Enforces read-only props in components.
2977
3012
  * @see https://eslint-react.xyz/docs/rules/prefer-read-only-props
2978
3013
  */
2979
3014
  'react/prefer-read-only-props'?: Linter.RuleEntry<[]>
2980
3015
  /**
2981
- * enforce using shorthand boolean attributes
3016
+ * Enforces shorthand syntax for boolean attributes.
2982
3017
  * @see https://eslint-react.xyz/docs/rules/prefer-shorthand-boolean
2983
3018
  */
2984
3019
  'react/prefer-shorthand-boolean'?: Linter.RuleEntry<[]>
2985
3020
  /**
2986
- * enforce using fragment syntax instead of 'Fragment' component
3021
+ * Enforces shorthand syntax for fragments.
2987
3022
  * @see https://eslint-react.xyz/docs/rules/prefer-shorthand-fragment
2988
3023
  */
2989
3024
  'react/prefer-shorthand-fragment'?: Linter.RuleEntry<[]>
2990
3025
  /**
2991
- * marks variables used in JSX as used
2992
- * @see https://eslint-react.xyz/docs/rules/use-jsx-vars
3026
+ * Marks variables used in JSX elements as used.
3027
+ * @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
2993
3028
  */
2994
3029
  'react/use-jsx-vars'?: Linter.RuleEntry<[]>
2995
3030
  /**
@@ -3745,11 +3780,21 @@ interface RuleOptions {
3745
3780
  * @see https://sveltejs.github.io/eslint-plugin-svelte/rules/no-unknown-style-directive-property/
3746
3781
  */
3747
3782
  'svelte/no-unknown-style-directive-property'?: Linter.RuleEntry<SvelteNoUnknownStyleDirectiveProperty>
3783
+ /**
3784
+ * Disallow unnecessary $state wrapping of reactive classes
3785
+ * @see https://sveltejs.github.io/eslint-plugin-svelte/rules/no-unnecessary-state-wrap/
3786
+ */
3787
+ 'svelte/no-unnecessary-state-wrap'?: Linter.RuleEntry<SvelteNoUnnecessaryStateWrap>
3748
3788
  /**
3749
3789
  * disallow the use of a class in the template without a corresponding style
3750
3790
  * @see https://sveltejs.github.io/eslint-plugin-svelte/rules/no-unused-class-name/
3751
3791
  */
3752
3792
  'svelte/no-unused-class-name'?: Linter.RuleEntry<SvelteNoUnusedClassName>
3793
+ /**
3794
+ * Warns about defined Props properties that are unused
3795
+ * @see https://sveltejs.github.io/eslint-plugin-svelte/rules/no-unused-props/
3796
+ */
3797
+ 'svelte/no-unused-props'?: Linter.RuleEntry<SvelteNoUnusedProps>
3753
3798
  /**
3754
3799
  * disallow unused svelte-ignore comments
3755
3800
  * @see https://sveltejs.github.io/eslint-plugin-svelte/rules/no-unused-svelte-ignore/
@@ -4912,642 +4957,643 @@ interface RuleOptions {
4912
4957
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>
4913
4958
  /**
4914
4959
  * Improve regexes by making them shorter, consistent, and safer.
4915
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/better-regex.md
4960
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/better-regex.md
4916
4961
  */
4917
4962
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>
4918
4963
  /**
4919
4964
  * Enforce a specific parameter name in catch clauses.
4920
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/catch-error-name.md
4965
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/catch-error-name.md
4921
4966
  */
4922
4967
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>
4923
4968
  /**
4924
4969
  * Enforce consistent assertion style with `node:assert`.
4925
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-assert.md
4970
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-assert.md
4926
4971
  */
4927
4972
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>
4928
4973
  /**
4929
4974
  * Prefer passing `Date` directly to the constructor when cloning.
4930
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-date-clone.md
4975
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-date-clone.md
4931
4976
  */
4932
4977
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>
4933
4978
  /**
4934
4979
  * Use destructured variables over properties.
4935
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-destructuring.md
4980
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-destructuring.md
4936
4981
  */
4937
4982
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>
4938
4983
  /**
4939
4984
  * Prefer consistent types when spreading a ternary in an array literal.
4940
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-empty-array-spread.md
4985
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-empty-array-spread.md
4941
4986
  */
4942
4987
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>
4943
4988
  /**
4944
4989
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
4945
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-existence-index-check.md
4990
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-existence-index-check.md
4946
4991
  */
4947
4992
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>
4948
4993
  /**
4949
4994
  * Move function definitions to the highest possible scope.
4950
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/consistent-function-scoping.md
4995
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/consistent-function-scoping.md
4951
4996
  */
4952
4997
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>
4953
4998
  /**
4954
4999
  * Enforce correct `Error` subclassing.
4955
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/custom-error-definition.md
5000
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/custom-error-definition.md
4956
5001
  */
4957
5002
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>
4958
5003
  /**
4959
5004
  * Enforce no spaces between braces.
4960
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/empty-brace-spaces.md
5005
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/empty-brace-spaces.md
4961
5006
  */
4962
5007
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>
4963
5008
  /**
4964
5009
  * Enforce passing a `message` value when creating a built-in error.
4965
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/error-message.md
5010
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/error-message.md
4966
5011
  */
4967
5012
  'unicorn/error-message'?: Linter.RuleEntry<[]>
4968
5013
  /**
4969
- * Require escape sequences to use uppercase values.
4970
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/escape-case.md
5014
+ * Require escape sequences to use uppercase or lowercase values.
5015
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/escape-case.md
4971
5016
  */
4972
- 'unicorn/escape-case'?: Linter.RuleEntry<[]>
5017
+ 'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>
4973
5018
  /**
4974
5019
  * Add expiration conditions to TODO comments.
4975
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/expiring-todo-comments.md
5020
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/expiring-todo-comments.md
4976
5021
  */
4977
5022
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>
4978
5023
  /**
4979
5024
  * Enforce explicitly comparing the `length` or `size` property of a value.
4980
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/explicit-length-check.md
5025
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/explicit-length-check.md
4981
5026
  */
4982
5027
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>
4983
5028
  /**
4984
5029
  * Enforce a case style for filenames.
4985
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/filename-case.md
5030
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/filename-case.md
4986
5031
  */
4987
5032
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>
4988
5033
  /**
4989
5034
  * Enforce specific import styles per module.
4990
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/import-style.md
5035
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/import-style.md
4991
5036
  */
4992
5037
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>
4993
5038
  /**
4994
5039
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
4995
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/new-for-builtins.md
5040
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/new-for-builtins.md
4996
5041
  */
4997
5042
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>
4998
5043
  /**
4999
5044
  * Enforce specifying rules to disable in `eslint-disable` comments.
5000
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-abusive-eslint-disable.md
5045
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-abusive-eslint-disable.md
5001
5046
  */
5002
5047
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>
5003
5048
  /**
5004
5049
  * Disallow recursive access to `this` within getters and setters.
5005
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-accessor-recursion.md
5050
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-accessor-recursion.md
5006
5051
  */
5007
5052
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>
5008
5053
  /**
5009
5054
  * Disallow anonymous functions and classes as the default export.
5010
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-anonymous-default-export.md
5055
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-anonymous-default-export.md
5011
5056
  */
5012
5057
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>
5013
5058
  /**
5014
5059
  * Prevent passing a function reference directly to iterator methods.
5015
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-callback-reference.md
5060
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-callback-reference.md
5016
5061
  */
5017
5062
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>
5018
5063
  /**
5019
5064
  * Prefer `for…of` over the `forEach` method.
5020
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-for-each.md
5065
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-for-each.md
5021
5066
  */
5022
5067
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>
5023
5068
  /**
5024
5069
  * Disallow using the `this` argument in array methods.
5025
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-method-this-argument.md
5070
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-method-this-argument.md
5026
5071
  */
5027
5072
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>
5028
5073
  /**
5029
5074
  * Enforce combining multiple `Array#push()` into one call.
5030
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-push-push.md
5075
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-push-push.md
5031
5076
  */
5032
5077
  'unicorn/no-array-push-push'?: Linter.RuleEntry<UnicornNoArrayPushPush>
5033
5078
  /**
5034
5079
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
5035
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-array-reduce.md
5080
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-array-reduce.md
5036
5081
  */
5037
5082
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>
5038
5083
  /**
5039
5084
  * Disallow member access from await expression.
5040
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-await-expression-member.md
5085
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-await-expression-member.md
5041
5086
  */
5042
5087
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>
5043
5088
  /**
5044
5089
  * Disallow using `await` in `Promise` method parameters.
5045
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-await-in-promise-methods.md
5090
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-await-in-promise-methods.md
5046
5091
  */
5047
5092
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>
5048
5093
  /**
5049
5094
  * Do not use leading/trailing space between `console.log` parameters.
5050
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-console-spaces.md
5095
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-console-spaces.md
5051
5096
  */
5052
5097
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>
5053
5098
  /**
5054
5099
  * Do not use `document.cookie` directly.
5055
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-document-cookie.md
5100
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-document-cookie.md
5056
5101
  */
5057
5102
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>
5058
5103
  /**
5059
5104
  * Disallow empty files.
5060
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-empty-file.md
5105
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-empty-file.md
5061
5106
  */
5062
5107
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>
5063
5108
  /**
5064
5109
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
5065
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-for-loop.md
5110
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-for-loop.md
5066
5111
  */
5067
5112
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>
5068
5113
  /**
5069
5114
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
5070
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-hex-escape.md
5115
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-hex-escape.md
5071
5116
  */
5072
5117
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>
5073
5118
  /**
5074
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/deprecated-rules.md#no-instanceof-array
5119
+ * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
5120
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/deprecated-rules.md#no-instanceof-array
5075
5121
  * @deprecated
5076
5122
  */
5077
5123
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>
5078
5124
  /**
5079
5125
  * Disallow `instanceof` with built-in objects
5080
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-instanceof-builtins.md
5126
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-instanceof-builtins.md
5081
5127
  */
5082
5128
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>
5083
5129
  /**
5084
5130
  * Disallow invalid options in `fetch()` and `new Request()`.
5085
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-invalid-fetch-options.md
5131
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-invalid-fetch-options.md
5086
5132
  */
5087
5133
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>
5088
5134
  /**
5089
5135
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
5090
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-invalid-remove-event-listener.md
5136
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-invalid-remove-event-listener.md
5091
5137
  */
5092
5138
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>
5093
5139
  /**
5094
5140
  * Disallow identifiers starting with `new` or `class`.
5095
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-keyword-prefix.md
5141
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-keyword-prefix.md
5096
5142
  */
5097
5143
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>
5098
5144
  /**
5099
5145
  * Disallow using `.length` as the `end` argument of `{Array,String,TypedArray}#slice()`.
5100
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-length-as-slice-end.md
5146
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-length-as-slice-end.md
5101
5147
  */
5102
5148
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>
5103
5149
  /**
5104
5150
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
5105
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-lonely-if.md
5151
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-lonely-if.md
5106
5152
  */
5107
5153
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>
5108
5154
  /**
5109
5155
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
5110
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-magic-array-flat-depth.md
5156
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-magic-array-flat-depth.md
5111
5157
  */
5112
5158
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>
5113
5159
  /**
5114
5160
  * Disallow named usage of default import and export.
5115
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-named-default.md
5161
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-named-default.md
5116
5162
  */
5117
5163
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>
5118
5164
  /**
5119
5165
  * Disallow negated conditions.
5120
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-negated-condition.md
5166
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-negated-condition.md
5121
5167
  */
5122
5168
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>
5123
5169
  /**
5124
5170
  * Disallow negated expression in equality check.
5125
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-negation-in-equality-check.md
5171
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-negation-in-equality-check.md
5126
5172
  */
5127
5173
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>
5128
5174
  /**
5129
5175
  * Disallow nested ternary expressions.
5130
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-nested-ternary.md
5176
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-nested-ternary.md
5131
5177
  */
5132
5178
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>
5133
5179
  /**
5134
5180
  * Disallow `new Array()`.
5135
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-new-array.md
5181
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-new-array.md
5136
5182
  */
5137
5183
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>
5138
5184
  /**
5139
5185
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
5140
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-new-buffer.md
5186
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-new-buffer.md
5141
5187
  */
5142
5188
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>
5143
5189
  /**
5144
5190
  * Disallow the use of the `null` literal.
5145
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-null.md
5191
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-null.md
5146
5192
  */
5147
5193
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>
5148
5194
  /**
5149
5195
  * Disallow the use of objects as default parameters.
5150
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-object-as-default-parameter.md
5196
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-object-as-default-parameter.md
5151
5197
  */
5152
5198
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>
5153
5199
  /**
5154
5200
  * Disallow `process.exit()`.
5155
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-process-exit.md
5201
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-process-exit.md
5156
5202
  */
5157
5203
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>
5158
5204
  /**
5159
5205
  * Disallow passing single-element arrays to `Promise` methods.
5160
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-single-promise-in-promise-methods.md
5206
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-single-promise-in-promise-methods.md
5161
5207
  */
5162
5208
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>
5163
5209
  /**
5164
5210
  * Disallow classes that only have static members.
5165
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-static-only-class.md
5211
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-static-only-class.md
5166
5212
  */
5167
5213
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>
5168
5214
  /**
5169
5215
  * Disallow `then` property.
5170
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-thenable.md
5216
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-thenable.md
5171
5217
  */
5172
5218
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>
5173
5219
  /**
5174
5220
  * Disallow assigning `this` to a variable.
5175
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-this-assignment.md
5221
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-this-assignment.md
5176
5222
  */
5177
5223
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>
5178
5224
  /**
5179
5225
  * Disallow comparing `undefined` using `typeof`.
5180
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-typeof-undefined.md
5226
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-typeof-undefined.md
5181
5227
  */
5182
5228
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>
5183
5229
  /**
5184
5230
  * Disallow awaiting non-promise values.
5185
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unnecessary-await.md
5231
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unnecessary-await.md
5186
5232
  */
5187
5233
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>
5188
5234
  /**
5189
5235
  * Enforce the use of built-in methods instead of unnecessary polyfills.
5190
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unnecessary-polyfills.md
5236
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unnecessary-polyfills.md
5191
5237
  */
5192
5238
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>
5193
5239
  /**
5194
5240
  * Disallow unreadable array destructuring.
5195
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unreadable-array-destructuring.md
5241
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unreadable-array-destructuring.md
5196
5242
  */
5197
5243
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>
5198
5244
  /**
5199
5245
  * Disallow unreadable IIFEs.
5200
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unreadable-iife.md
5246
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unreadable-iife.md
5201
5247
  */
5202
5248
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>
5203
5249
  /**
5204
5250
  * Disallow unused object properties.
5205
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-unused-properties.md
5251
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-unused-properties.md
5206
5252
  */
5207
5253
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>
5208
5254
  /**
5209
5255
  * Disallow useless fallback when spreading in object literals.
5210
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-fallback-in-spread.md
5256
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-fallback-in-spread.md
5211
5257
  */
5212
5258
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>
5213
5259
  /**
5214
5260
  * Disallow useless array length check.
5215
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-length-check.md
5261
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-length-check.md
5216
5262
  */
5217
5263
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>
5218
5264
  /**
5219
5265
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
5220
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-promise-resolve-reject.md
5266
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-promise-resolve-reject.md
5221
5267
  */
5222
5268
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>
5223
5269
  /**
5224
5270
  * Disallow unnecessary spread.
5225
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-spread.md
5271
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-spread.md
5226
5272
  */
5227
5273
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>
5228
5274
  /**
5229
5275
  * Disallow useless case in switch statements.
5230
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-switch-case.md
5276
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-switch-case.md
5231
5277
  */
5232
5278
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>
5233
5279
  /**
5234
5280
  * Disallow useless `undefined`.
5235
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-useless-undefined.md
5281
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-useless-undefined.md
5236
5282
  */
5237
5283
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>
5238
5284
  /**
5239
5285
  * Disallow number literals with zero fractions or dangling dots.
5240
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/no-zero-fractions.md
5286
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/no-zero-fractions.md
5241
5287
  */
5242
5288
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>
5243
5289
  /**
5244
5290
  * Enforce proper case for numeric literals.
5245
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/number-literal-case.md
5291
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/number-literal-case.md
5246
5292
  */
5247
- 'unicorn/number-literal-case'?: Linter.RuleEntry<[]>
5293
+ 'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>
5248
5294
  /**
5249
5295
  * Enforce the style of numeric separators by correctly grouping digits.
5250
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/numeric-separators-style.md
5296
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/numeric-separators-style.md
5251
5297
  */
5252
5298
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>
5253
5299
  /**
5254
5300
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
5255
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-add-event-listener.md
5301
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-add-event-listener.md
5256
5302
  */
5257
5303
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>
5258
5304
  /**
5259
5305
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
5260
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-find.md
5306
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-find.md
5261
5307
  */
5262
5308
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>
5263
5309
  /**
5264
5310
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
5265
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-flat.md
5311
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-flat.md
5266
5312
  */
5267
5313
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>
5268
5314
  /**
5269
5315
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
5270
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-flat-map.md
5316
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-flat-map.md
5271
5317
  */
5272
5318
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>
5273
5319
  /**
5274
5320
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
5275
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-index-of.md
5321
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-index-of.md
5276
5322
  */
5277
5323
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>
5278
5324
  /**
5279
5325
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
5280
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-array-some.md
5326
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-array-some.md
5281
5327
  */
5282
5328
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>
5283
5329
  /**
5284
5330
  * Prefer `.at()` method for index access and `String#charAt()`.
5285
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-at.md
5331
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-at.md
5286
5332
  */
5287
5333
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>
5288
5334
  /**
5289
5335
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
5290
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-blob-reading-methods.md
5336
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-blob-reading-methods.md
5291
5337
  */
5292
5338
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>
5293
5339
  /**
5294
5340
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
5295
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-code-point.md
5341
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-code-point.md
5296
5342
  */
5297
5343
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>
5298
5344
  /**
5299
5345
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
5300
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-date-now.md
5346
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-date-now.md
5301
5347
  */
5302
5348
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>
5303
5349
  /**
5304
5350
  * Prefer default parameters over reassignment.
5305
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-default-parameters.md
5351
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-default-parameters.md
5306
5352
  */
5307
5353
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>
5308
5354
  /**
5309
5355
  * Prefer `Node#append()` over `Node#appendChild()`.
5310
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-dom-node-append.md
5356
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-append.md
5311
5357
  */
5312
5358
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>
5313
5359
  /**
5314
5360
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
5315
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-dom-node-dataset.md
5361
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-dataset.md
5316
5362
  */
5317
5363
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>
5318
5364
  /**
5319
5365
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
5320
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-dom-node-remove.md
5366
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-remove.md
5321
5367
  */
5322
5368
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>
5323
5369
  /**
5324
5370
  * Prefer `.textContent` over `.innerText`.
5325
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-dom-node-text-content.md
5371
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-dom-node-text-content.md
5326
5372
  */
5327
5373
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>
5328
5374
  /**
5329
5375
  * Prefer `EventTarget` over `EventEmitter`.
5330
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-event-target.md
5376
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-event-target.md
5331
5377
  */
5332
5378
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>
5333
5379
  /**
5334
5380
  * Prefer `export…from` when re-exporting.
5335
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-export-from.md
5381
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-export-from.md
5336
5382
  */
5337
5383
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>
5338
5384
  /**
5339
5385
  * Prefer `globalThis` over `window`, `self`, and `global`.
5340
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-global-this.md
5386
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-global-this.md
5341
5387
  */
5342
5388
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>
5343
5389
  /**
5344
5390
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
5345
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-includes.md
5391
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-includes.md
5346
5392
  */
5347
5393
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>
5348
5394
  /**
5349
5395
  * Prefer reading a JSON file as a buffer.
5350
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-json-parse-buffer.md
5396
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-json-parse-buffer.md
5351
5397
  */
5352
5398
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>
5353
5399
  /**
5354
5400
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
5355
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-keyboard-event-key.md
5401
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-keyboard-event-key.md
5356
5402
  */
5357
5403
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>
5358
5404
  /**
5359
5405
  * Prefer using a logical operator over a ternary.
5360
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-logical-operator-over-ternary.md
5406
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-logical-operator-over-ternary.md
5361
5407
  */
5362
5408
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>
5363
5409
  /**
5364
5410
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
5365
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-math-min-max.md
5411
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-math-min-max.md
5366
5412
  */
5367
5413
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>
5368
5414
  /**
5369
5415
  * Enforce the use of `Math.trunc` instead of bitwise operators.
5370
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-math-trunc.md
5416
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-math-trunc.md
5371
5417
  */
5372
5418
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>
5373
5419
  /**
5374
5420
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
5375
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-modern-dom-apis.md
5421
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-modern-dom-apis.md
5376
5422
  */
5377
5423
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>
5378
5424
  /**
5379
5425
  * Prefer modern `Math` APIs over legacy patterns.
5380
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-modern-math-apis.md
5426
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-modern-math-apis.md
5381
5427
  */
5382
5428
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>
5383
5429
  /**
5384
5430
  * Prefer JavaScript modules (ESM) over CommonJS.
5385
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-module.md
5431
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-module.md
5386
5432
  */
5387
5433
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>
5388
5434
  /**
5389
5435
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
5390
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-native-coercion-functions.md
5436
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-native-coercion-functions.md
5391
5437
  */
5392
5438
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>
5393
5439
  /**
5394
5440
  * Prefer negative index over `.length - index` when possible.
5395
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-negative-index.md
5441
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-negative-index.md
5396
5442
  */
5397
5443
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>
5398
5444
  /**
5399
5445
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
5400
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-node-protocol.md
5446
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-node-protocol.md
5401
5447
  */
5402
5448
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>
5403
5449
  /**
5404
5450
  * Prefer `Number` static properties over global ones.
5405
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-number-properties.md
5451
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-number-properties.md
5406
5452
  */
5407
5453
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>
5408
5454
  /**
5409
5455
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
5410
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-object-from-entries.md
5456
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-object-from-entries.md
5411
5457
  */
5412
5458
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>
5413
5459
  /**
5414
5460
  * Prefer omitting the `catch` binding parameter.
5415
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-optional-catch-binding.md
5461
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-optional-catch-binding.md
5416
5462
  */
5417
5463
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>
5418
5464
  /**
5419
5465
  * Prefer borrowing methods from the prototype instead of the instance.
5420
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-prototype-methods.md
5466
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-prototype-methods.md
5421
5467
  */
5422
5468
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>
5423
5469
  /**
5424
5470
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
5425
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-query-selector.md
5471
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-query-selector.md
5426
5472
  */
5427
5473
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>
5428
5474
  /**
5429
5475
  * Prefer `Reflect.apply()` over `Function#apply()`.
5430
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-reflect-apply.md
5476
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-reflect-apply.md
5431
5477
  */
5432
5478
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>
5433
5479
  /**
5434
5480
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
5435
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-regexp-test.md
5481
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-regexp-test.md
5436
5482
  */
5437
5483
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>
5438
5484
  /**
5439
5485
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
5440
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-set-has.md
5486
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-set-has.md
5441
5487
  */
5442
5488
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>
5443
5489
  /**
5444
5490
  * Prefer using `Set#size` instead of `Array#length`.
5445
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-set-size.md
5491
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-set-size.md
5446
5492
  */
5447
5493
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>
5448
5494
  /**
5449
5495
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
5450
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-spread.md
5496
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-spread.md
5451
5497
  */
5452
5498
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>
5453
5499
  /**
5454
5500
  * Prefer using the `String.raw` tag to avoid escaping `\`.
5455
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-raw.md
5501
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-raw.md
5456
5502
  */
5457
5503
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>
5458
5504
  /**
5459
5505
  * Prefer `String#replaceAll()` over regex searches with the global flag.
5460
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-replace-all.md
5506
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-replace-all.md
5461
5507
  */
5462
5508
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>
5463
5509
  /**
5464
5510
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
5465
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-slice.md
5511
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-slice.md
5466
5512
  */
5467
5513
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>
5468
5514
  /**
5469
5515
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
5470
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-starts-ends-with.md
5516
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-starts-ends-with.md
5471
5517
  */
5472
5518
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>
5473
5519
  /**
5474
5520
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
5475
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-string-trim-start-end.md
5521
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-string-trim-start-end.md
5476
5522
  */
5477
5523
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>
5478
5524
  /**
5479
5525
  * Prefer using `structuredClone` to create a deep clone.
5480
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-structured-clone.md
5526
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-structured-clone.md
5481
5527
  */
5482
5528
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>
5483
5529
  /**
5484
5530
  * Prefer `switch` over multiple `else-if`.
5485
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-switch.md
5531
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-switch.md
5486
5532
  */
5487
5533
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>
5488
5534
  /**
5489
5535
  * Prefer ternary expressions over simple `if-else` statements.
5490
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-ternary.md
5536
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-ternary.md
5491
5537
  */
5492
5538
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>
5493
5539
  /**
5494
5540
  * Prefer top-level await over top-level promises and async function calls.
5495
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-top-level-await.md
5541
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-top-level-await.md
5496
5542
  */
5497
5543
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>
5498
5544
  /**
5499
5545
  * Enforce throwing `TypeError` in type checking conditions.
5500
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prefer-type-error.md
5546
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prefer-type-error.md
5501
5547
  */
5502
5548
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>
5503
5549
  /**
5504
5550
  * Prevent abbreviations.
5505
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/prevent-abbreviations.md
5551
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/prevent-abbreviations.md
5506
5552
  */
5507
5553
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>
5508
5554
  /**
5509
5555
  * Enforce consistent relative URL style.
5510
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/relative-url-style.md
5556
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/relative-url-style.md
5511
5557
  */
5512
5558
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>
5513
5559
  /**
5514
5560
  * Enforce using the separator argument with `Array#join()`.
5515
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/require-array-join-separator.md
5561
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-array-join-separator.md
5516
5562
  */
5517
5563
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>
5518
5564
  /**
5519
5565
  * Enforce using the digits argument with `Number#toFixed()`.
5520
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/require-number-to-fixed-digits-argument.md
5566
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-number-to-fixed-digits-argument.md
5521
5567
  */
5522
5568
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>
5523
5569
  /**
5524
5570
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
5525
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/require-post-message-target-origin.md
5571
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/require-post-message-target-origin.md
5526
5572
  */
5527
5573
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>
5528
5574
  /**
5529
5575
  * Enforce better string content.
5530
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/string-content.md
5576
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/string-content.md
5531
5577
  */
5532
5578
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>
5533
5579
  /**
5534
5580
  * Enforce consistent brace style for `case` clauses.
5535
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/switch-case-braces.md
5581
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/switch-case-braces.md
5536
5582
  */
5537
5583
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>
5538
5584
  /**
5539
5585
  * Fix whitespace-insensitive template indentation.
5540
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/template-indent.md
5586
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/template-indent.md
5541
5587
  */
5542
5588
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>
5543
5589
  /**
5544
5590
  * Enforce consistent case for text encoding identifiers.
5545
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/text-encoding-identifier-case.md
5591
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/text-encoding-identifier-case.md
5546
5592
  */
5547
5593
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>
5548
5594
  /**
5549
5595
  * Require `new` when creating an error.
5550
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v57.0.0/docs/rules/throw-new-error.md
5596
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v58.0.0/docs/rules/throw-new-error.md
5551
5597
  */
5552
5598
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>
5553
5599
  /**
@@ -5695,12 +5741,6 @@ interface RuleOptions {
5695
5741
  * @see https://eslint.vuejs.org/rules/component-options-name-casing.html
5696
5742
  */
5697
5743
  'vue/component-options-name-casing'?: Linter.RuleEntry<VueComponentOptionsNameCasing>
5698
- /**
5699
- * enforce order of component top-level elements
5700
- * @see https://eslint.vuejs.org/rules/component-tags-order.html
5701
- * @deprecated
5702
- */
5703
- 'vue/component-tags-order'?: Linter.RuleEntry<VueComponentTagsOrder>
5704
5744
  /**
5705
5745
  * enforce specific casing for custom event name
5706
5746
  * @see https://eslint.vuejs.org/rules/custom-event-name-casing.html
@@ -5767,7 +5807,7 @@ interface RuleOptions {
5767
5807
  */
5768
5808
  'vue/html-closing-bracket-spacing'?: Linter.RuleEntry<VueHtmlClosingBracketSpacing>
5769
5809
  /**
5770
- * enforce unified line brake in HTML comments
5810
+ * enforce unified line break in HTML comments
5771
5811
  * @see https://eslint.vuejs.org/rules/html-comment-content-newline.html
5772
5812
  */
5773
5813
  'vue/html-comment-content-newline'?: Linter.RuleEntry<VueHtmlCommentContentNewline>
@@ -6077,11 +6117,15 @@ interface RuleOptions {
6077
6117
  */
6078
6118
  'vue/no-extra-parens'?: Linter.RuleEntry<VueNoExtraParens>
6079
6119
  /**
6080
- * require valid keys in model option
6081
- * @see https://eslint.vuejs.org/rules/no-invalid-model-keys.html
6082
- * @deprecated
6120
+ * Disallow shorthand type conversions in `<template>`
6121
+ * @see https://eslint.vuejs.org/rules/no-implicit-coercion.html
6083
6122
  */
6084
- 'vue/no-invalid-model-keys'?: Linter.RuleEntry<[]>
6123
+ 'vue/no-implicit-coercion'?: Linter.RuleEntry<VueNoImplicitCoercion>
6124
+ /**
6125
+ * disallow importing Vue compiler macros
6126
+ * @see https://eslint.vuejs.org/rules/no-import-compiler-macros.html
6127
+ */
6128
+ 'vue/no-import-compiler-macros'?: Linter.RuleEntry<[]>
6085
6129
  /**
6086
6130
  * disallow irregular whitespace in `.vue` files
6087
6131
  * @see https://eslint.vuejs.org/rules/no-irregular-whitespace.html
@@ -6108,12 +6152,12 @@ interface RuleOptions {
6108
6152
  */
6109
6153
  'vue/no-multi-spaces'?: Linter.RuleEntry<VueNoMultiSpaces>
6110
6154
  /**
6111
- * disallow to pass multiple objects into array to class
6155
+ * disallow passing multiple objects in an array to class
6112
6156
  * @see https://eslint.vuejs.org/rules/no-multiple-objects-in-class.html
6113
6157
  */
6114
6158
  'vue/no-multiple-objects-in-class'?: Linter.RuleEntry<[]>
6115
6159
  /**
6116
- * disallow to pass multiple arguments to scoped slots
6160
+ * disallow passing multiple arguments to scoped slots
6117
6161
  * @see https://eslint.vuejs.org/rules/no-multiple-slot-args.html
6118
6162
  */
6119
6163
  'vue/no-multiple-slot-args'?: Linter.RuleEntry<[]>
@@ -6142,12 +6186,6 @@ interface RuleOptions {
6142
6186
  * @see https://eslint.vuejs.org/rules/no-ref-as-operand.html
6143
6187
  */
6144
6188
  'vue/no-ref-as-operand'?: Linter.RuleEntry<[]>
6145
- /**
6146
- * disallow usages of ref objects that can lead to loss of reactivity
6147
- * @see https://eslint.vuejs.org/rules/no-ref-object-destructure.html
6148
- * @deprecated
6149
- */
6150
- 'vue/no-ref-object-destructure'?: Linter.RuleEntry<[]>
6151
6189
  /**
6152
6190
  * disallow usages of ref objects that can lead to loss of reactivity
6153
6191
  * @see https://eslint.vuejs.org/rules/no-ref-object-reactivity-loss.html
@@ -6238,12 +6276,6 @@ interface RuleOptions {
6238
6276
  * @see https://eslint.vuejs.org/rules/no-root-v-if.html
6239
6277
  */
6240
6278
  'vue/no-root-v-if'?: Linter.RuleEntry<[]>
6241
- /**
6242
- * disallow usages that lose the reactivity of `props` passed to `setup`
6243
- * @see https://eslint.vuejs.org/rules/no-setup-props-destructure.html
6244
- * @deprecated
6245
- */
6246
- 'vue/no-setup-props-destructure'?: Linter.RuleEntry<[]>
6247
6279
  /**
6248
6280
  * disallow usages that lose the reactivity of `props` passed to `setup`
6249
6281
  * @see https://eslint.vuejs.org/rules/no-setup-props-reactivity-loss.html
@@ -6377,6 +6409,7 @@ interface RuleOptions {
6377
6409
  /**
6378
6410
  * disallow `key` attribute on `<template v-for>`
6379
6411
  * @see https://eslint.vuejs.org/rules/no-v-for-template-key.html
6412
+ * @deprecated
6380
6413
  */
6381
6414
  'vue/no-v-for-template-key'?: Linter.RuleEntry<[]>
6382
6415
  /**
@@ -6392,6 +6425,7 @@ interface RuleOptions {
6392
6425
  /**
6393
6426
  * disallow adding an argument to `v-model` used in custom component
6394
6427
  * @see https://eslint.vuejs.org/rules/no-v-model-argument.html
6428
+ * @deprecated
6395
6429
  */
6396
6430
  'vue/no-v-model-argument'?: Linter.RuleEntry<[]>
6397
6431
  /**
@@ -6624,12 +6658,6 @@ interface RuleOptions {
6624
6658
  * @see https://eslint.vuejs.org/rules/script-indent.html
6625
6659
  */
6626
6660
  'vue/script-indent'?: Linter.RuleEntry<VueScriptIndent>
6627
- /**
6628
- * prevent `<script setup>` variables used in `<template>` to be marked as unused
6629
- * @see https://eslint.vuejs.org/rules/script-setup-uses-vars.html
6630
- * @deprecated
6631
- */
6632
- 'vue/script-setup-uses-vars'?: Linter.RuleEntry<[]>
6633
6661
  /**
6634
6662
  * require a line break before and after the contents of a singleline element
6635
6663
  * @see https://eslint.vuejs.org/rules/singleline-html-element-content-newline.html
@@ -6700,12 +6728,6 @@ interface RuleOptions {
6700
6728
  * @see https://eslint.vuejs.org/rules/v-on-event-hyphenation.html
6701
6729
  */
6702
6730
  'vue/v-on-event-hyphenation'?: Linter.RuleEntry<VueVOnEventHyphenation>
6703
- /**
6704
- * enforce or forbid parentheses after method calls without arguments in `v-on` directives
6705
- * @see https://eslint.vuejs.org/rules/v-on-function-call.html
6706
- * @deprecated
6707
- */
6708
- 'vue/v-on-function-call'?: Linter.RuleEntry<VueVOnFunctionCall>
6709
6731
  /**
6710
6732
  * enforce writing style for handlers in `v-on` directives
6711
6733
  * @see https://eslint.vuejs.org/rules/v-on-handler-style.html
@@ -6744,6 +6766,7 @@ interface RuleOptions {
6744
6766
  /**
6745
6767
  * require valid keys in model option
6746
6768
  * @see https://eslint.vuejs.org/rules/valid-model-definition.html
6769
+ * @deprecated
6747
6770
  */
6748
6771
  'vue/valid-model-definition'?: Linter.RuleEntry<[]>
6749
6772
  /**
@@ -6764,6 +6787,7 @@ interface RuleOptions {
6764
6787
  /**
6765
6788
  * enforce valid `.sync` modifier on `v-bind` directives
6766
6789
  * @see https://eslint.vuejs.org/rules/valid-v-bind-sync.html
6790
+ * @deprecated
6767
6791
  */
6768
6792
  'vue/valid-v-bind-sync'?: Linter.RuleEntry<[]>
6769
6793
  /**
@@ -7131,7 +7155,7 @@ type IdMatch = []|[string]|[string, {
7131
7155
  // ----- implicit-arrow-linebreak -----
7132
7156
  type ImplicitArrowLinebreak = []|[("beside" | "below")]
7133
7157
  // ----- import/consistent-type-specifier-style -----
7134
- type ImportConsistentTypeSpecifierStyle = []|[("prefer-inline" | "prefer-top-level")]
7158
+ type ImportConsistentTypeSpecifierStyle = []|[("prefer-top-level" | "prefer-inline")]
7135
7159
  // ----- import/dynamic-import-chunkname -----
7136
7160
  type ImportDynamicImportChunkname = []|[{
7137
7161
  importFunctions?: string[]
@@ -7351,6 +7375,17 @@ type ImportOrder = []|[{
7351
7375
  position?: ("after" | "before")
7352
7376
  }[]
7353
7377
  "newlines-between"?: ("ignore" | "always" | "always-and-inside-groups" | "never")
7378
+ "newlines-between-types"?: ("ignore" | "always" | "always-and-inside-groups" | "never")
7379
+ consolidateIslands?: ("inside-groups" | "never")
7380
+ sortTypesGroup?: boolean
7381
+ named?: (boolean | {
7382
+ enabled?: boolean
7383
+ import?: boolean
7384
+ export?: boolean
7385
+ require?: boolean
7386
+ cjsExports?: boolean
7387
+ types?: ("mixed" | "types-first" | "types-last")
7388
+ })
7354
7389
  alphabetize?: {
7355
7390
  caseInsensitive?: boolean
7356
7391
  order?: ("ignore" | "asc" | "desc")
@@ -9178,18 +9213,7 @@ type NodeNoRestrictedRequire = []|[(string | {
9178
9213
  // ----- node/no-sync -----
9179
9214
  type NodeNoSync = []|[{
9180
9215
  allowAtRootLevel?: boolean
9181
- ignores?: (string | {
9182
- from?: "file"
9183
- path?: string
9184
- name?: string[]
9185
- } | {
9186
- from?: "lib"
9187
- name?: string[]
9188
- } | {
9189
- from?: "package"
9190
- package?: string
9191
- name?: string[]
9192
- })[]
9216
+ ignores?: string[]
9193
9217
  }]
9194
9218
  // ----- node/no-unpublished-bin -----
9195
9219
  type NodeNoUnpublishedBin = []|[{
@@ -9420,8 +9444,6 @@ type PaddingLineBetweenStatements = {
9420
9444
  // ----- perfectionist/sort-array-includes -----
9421
9445
  type PerfectionistSortArrayIncludes = {
9422
9446
 
9423
- specialCharacters?: ("remove" | "trim" | "keep")
9424
-
9425
9447
  fallbackSort?: {
9426
9448
 
9427
9449
  order?: ("asc" | "desc")
@@ -9430,6 +9452,8 @@ type PerfectionistSortArrayIncludes = {
9430
9452
  [k: string]: unknown | undefined
9431
9453
  }
9432
9454
 
9455
+ specialCharacters?: ("remove" | "trim" | "keep")
9456
+
9433
9457
  ignoreCase?: boolean
9434
9458
 
9435
9459
  alphabet?: string
@@ -9444,13 +9468,21 @@ type PerfectionistSortArrayIncludes = {
9444
9468
 
9445
9469
  customGroups?: ({
9446
9470
 
9447
- groupName?: string
9471
+ newlinesInside?: ("always" | "never")
9472
+
9473
+ fallbackSort?: {
9474
+
9475
+ order?: ("asc" | "desc")
9476
+
9477
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9478
+ [k: string]: unknown | undefined
9479
+ }
9448
9480
 
9449
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9481
+ groupName?: string
9450
9482
 
9451
- order?: ("desc" | "asc")
9483
+ order?: ("asc" | "desc")
9452
9484
 
9453
- newlinesInside?: ("always" | "never")
9485
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9454
9486
  anyOf?: {
9455
9487
 
9456
9488
  selector?: ("literal" | "spread")
@@ -9465,13 +9497,21 @@ type PerfectionistSortArrayIncludes = {
9465
9497
  }[]
9466
9498
  } | {
9467
9499
 
9468
- groupName?: string
9500
+ newlinesInside?: ("always" | "never")
9469
9501
 
9470
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9502
+ fallbackSort?: {
9503
+
9504
+ order?: ("asc" | "desc")
9505
+
9506
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9507
+ [k: string]: unknown | undefined
9508
+ }
9471
9509
 
9472
- order?: ("desc" | "asc")
9510
+ groupName?: string
9473
9511
 
9474
- newlinesInside?: ("always" | "never")
9512
+ order?: ("asc" | "desc")
9513
+
9514
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9475
9515
 
9476
9516
  selector?: ("literal" | "spread")
9477
9517
 
@@ -9529,8 +9569,6 @@ type PerfectionistSortArrayIncludes = {
9529
9569
  // ----- perfectionist/sort-classes -----
9530
9570
  type PerfectionistSortClasses = []|[{
9531
9571
 
9532
- specialCharacters?: ("remove" | "trim" | "keep")
9533
-
9534
9572
  fallbackSort?: {
9535
9573
 
9536
9574
  order?: ("asc" | "desc")
@@ -9539,6 +9577,8 @@ type PerfectionistSortClasses = []|[{
9539
9577
  [k: string]: unknown | undefined
9540
9578
  }
9541
9579
 
9580
+ specialCharacters?: ("remove" | "trim" | "keep")
9581
+
9542
9582
  ignoreCase?: boolean
9543
9583
 
9544
9584
  alphabet?: string
@@ -9551,13 +9591,21 @@ type PerfectionistSortClasses = []|[{
9551
9591
 
9552
9592
  customGroups?: ({
9553
9593
 
9554
- groupName?: string
9594
+ newlinesInside?: ("always" | "never")
9595
+
9596
+ fallbackSort?: {
9597
+
9598
+ order?: ("asc" | "desc")
9599
+
9600
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9601
+ [k: string]: unknown | undefined
9602
+ }
9555
9603
 
9556
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9604
+ groupName?: string
9557
9605
 
9558
- order?: ("desc" | "asc")
9606
+ order?: ("asc" | "desc")
9559
9607
 
9560
- newlinesInside?: ("always" | "never")
9608
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9561
9609
  anyOf?: {
9562
9610
 
9563
9611
  modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
@@ -9590,13 +9638,21 @@ type PerfectionistSortClasses = []|[{
9590
9638
  }[]
9591
9639
  } | {
9592
9640
 
9593
- groupName?: string
9641
+ newlinesInside?: ("always" | "never")
9594
9642
 
9595
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9643
+ fallbackSort?: {
9644
+
9645
+ order?: ("asc" | "desc")
9646
+
9647
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9648
+ [k: string]: unknown | undefined
9649
+ }
9596
9650
 
9597
- order?: ("desc" | "asc")
9651
+ groupName?: string
9598
9652
 
9599
- newlinesInside?: ("always" | "never")
9653
+ order?: ("asc" | "desc")
9654
+
9655
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9600
9656
 
9601
9657
  modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
9602
9658
 
@@ -9670,8 +9726,6 @@ type PerfectionistSortClasses = []|[{
9670
9726
  // ----- perfectionist/sort-decorators -----
9671
9727
  type PerfectionistSortDecorators = []|[{
9672
9728
 
9673
- specialCharacters?: ("remove" | "trim" | "keep")
9674
-
9675
9729
  fallbackSort?: {
9676
9730
 
9677
9731
  order?: ("asc" | "desc")
@@ -9680,6 +9734,8 @@ type PerfectionistSortDecorators = []|[{
9680
9734
  [k: string]: unknown | undefined
9681
9735
  }
9682
9736
 
9737
+ specialCharacters?: ("remove" | "trim" | "keep")
9738
+
9683
9739
  ignoreCase?: boolean
9684
9740
 
9685
9741
  alphabet?: string
@@ -9735,8 +9791,6 @@ type PerfectionistSortDecorators = []|[{
9735
9791
  // ----- perfectionist/sort-enums -----
9736
9792
  type PerfectionistSortEnums = []|[{
9737
9793
 
9738
- specialCharacters?: ("remove" | "trim" | "keep")
9739
-
9740
9794
  fallbackSort?: {
9741
9795
 
9742
9796
  order?: ("asc" | "desc")
@@ -9745,6 +9799,8 @@ type PerfectionistSortEnums = []|[{
9745
9799
  [k: string]: unknown | undefined
9746
9800
  }
9747
9801
 
9802
+ specialCharacters?: ("remove" | "trim" | "keep")
9803
+
9748
9804
  ignoreCase?: boolean
9749
9805
 
9750
9806
  alphabet?: string
@@ -9760,13 +9816,21 @@ type PerfectionistSortEnums = []|[{
9760
9816
  [k: string]: (string | string[]) | undefined
9761
9817
  } | ({
9762
9818
 
9763
- groupName?: string
9819
+ newlinesInside?: ("always" | "never")
9820
+
9821
+ fallbackSort?: {
9822
+
9823
+ order?: ("asc" | "desc")
9824
+
9825
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9826
+ [k: string]: unknown | undefined
9827
+ }
9764
9828
 
9765
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9829
+ groupName?: string
9766
9830
 
9767
- order?: ("desc" | "asc")
9831
+ order?: ("asc" | "desc")
9768
9832
 
9769
- newlinesInside?: ("always" | "never")
9833
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9770
9834
  anyOf?: {
9771
9835
 
9772
9836
  elementValuePattern?: (({
@@ -9787,13 +9851,21 @@ type PerfectionistSortEnums = []|[{
9787
9851
  }[]
9788
9852
  } | {
9789
9853
 
9790
- groupName?: string
9854
+ newlinesInside?: ("always" | "never")
9855
+
9856
+ fallbackSort?: {
9857
+
9858
+ order?: ("asc" | "desc")
9859
+
9860
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9861
+ [k: string]: unknown | undefined
9862
+ }
9791
9863
 
9792
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9864
+ groupName?: string
9793
9865
 
9794
- order?: ("desc" | "asc")
9866
+ order?: ("asc" | "desc")
9795
9867
 
9796
- newlinesInside?: ("always" | "never")
9868
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9797
9869
 
9798
9870
  elementValuePattern?: (({
9799
9871
  pattern?: string
@@ -9849,8 +9921,6 @@ type PerfectionistSortEnums = []|[{
9849
9921
  // ----- perfectionist/sort-exports -----
9850
9922
  type PerfectionistSortExports = []|[{
9851
9923
 
9852
- specialCharacters?: ("remove" | "trim" | "keep")
9853
-
9854
9924
  fallbackSort?: {
9855
9925
 
9856
9926
  order?: ("asc" | "desc")
@@ -9859,6 +9929,8 @@ type PerfectionistSortExports = []|[{
9859
9929
  [k: string]: unknown | undefined
9860
9930
  }
9861
9931
 
9932
+ specialCharacters?: ("remove" | "trim" | "keep")
9933
+
9862
9934
  ignoreCase?: boolean
9863
9935
 
9864
9936
  alphabet?: string
@@ -9899,8 +9971,6 @@ type PerfectionistSortExports = []|[{
9899
9971
  // ----- perfectionist/sort-heritage-clauses -----
9900
9972
  type PerfectionistSortHeritageClauses = []|[{
9901
9973
 
9902
- specialCharacters?: ("remove" | "trim" | "keep")
9903
-
9904
9974
  fallbackSort?: {
9905
9975
 
9906
9976
  order?: ("asc" | "desc")
@@ -9909,6 +9979,8 @@ type PerfectionistSortHeritageClauses = []|[{
9909
9979
  [k: string]: unknown | undefined
9910
9980
  }
9911
9981
 
9982
+ specialCharacters?: ("remove" | "trim" | "keep")
9983
+
9912
9984
  ignoreCase?: boolean
9913
9985
 
9914
9986
  alphabet?: string
@@ -9932,8 +10004,6 @@ type PerfectionistSortHeritageClauses = []|[{
9932
10004
  type PerfectionistSortImports = []|[_PerfectionistSortImportsSortImports]
9933
10005
  type _PerfectionistSortImportsSortImports = (_PerfectionistSortImportsMaxLineLengthRequiresLineLengthType & {
9934
10006
 
9935
- specialCharacters?: ("remove" | "trim" | "keep")
9936
-
9937
10007
  fallbackSort?: {
9938
10008
 
9939
10009
  order?: ("asc" | "desc")
@@ -9942,6 +10012,8 @@ type _PerfectionistSortImportsSortImports = (_PerfectionistSortImportsMaxLineLen
9942
10012
  [k: string]: unknown | undefined
9943
10013
  }
9944
10014
 
10015
+ specialCharacters?: ("remove" | "trim" | "keep")
10016
+
9945
10017
  ignoreCase?: boolean
9946
10018
 
9947
10019
  alphabet?: string
@@ -10021,8 +10093,6 @@ interface _PerfectionistSortImports_IsLineLength {
10021
10093
  // ----- perfectionist/sort-interfaces -----
10022
10094
  type PerfectionistSortInterfaces = {
10023
10095
 
10024
- specialCharacters?: ("remove" | "trim" | "keep")
10025
-
10026
10096
  fallbackSort?: {
10027
10097
 
10028
10098
  order?: ("asc" | "desc")
@@ -10031,6 +10101,8 @@ type PerfectionistSortInterfaces = {
10031
10101
  [k: string]: unknown | undefined
10032
10102
  }
10033
10103
 
10104
+ specialCharacters?: ("remove" | "trim" | "keep")
10105
+
10034
10106
  ignoreCase?: boolean
10035
10107
 
10036
10108
  alphabet?: string
@@ -10044,19 +10116,36 @@ type PerfectionistSortInterfaces = {
10044
10116
  [k: string]: (string | string[]) | undefined
10045
10117
  } | ({
10046
10118
 
10047
- groupName?: string
10119
+ newlinesInside?: ("always" | "never")
10048
10120
 
10049
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10121
+ fallbackSort?: {
10122
+
10123
+ order?: ("asc" | "desc")
10124
+
10125
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10126
+ sortBy?: ("name" | "value")
10127
+ [k: string]: unknown | undefined
10128
+ }
10050
10129
 
10051
- order?: ("desc" | "asc")
10130
+ groupName?: string
10052
10131
 
10053
- newlinesInside?: ("always" | "never")
10132
+ order?: ("asc" | "desc")
10133
+
10134
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10054
10135
  anyOf?: {
10055
10136
 
10056
10137
  modifiers?: ("optional" | "required" | "multiline")[]
10057
10138
 
10058
10139
  selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
10059
10140
 
10141
+ elementValuePattern?: (({
10142
+ pattern?: string
10143
+ flags?: string
10144
+ } | string)[] | ({
10145
+ pattern?: string
10146
+ flags?: string
10147
+ } | string))
10148
+
10060
10149
  elementNamePattern?: (({
10061
10150
  pattern?: string
10062
10151
  flags?: string
@@ -10064,21 +10153,39 @@ type PerfectionistSortInterfaces = {
10064
10153
  pattern?: string
10065
10154
  flags?: string
10066
10155
  } | string))
10156
+ sortBy?: ("name" | "value")
10067
10157
  }[]
10068
10158
  } | {
10069
10159
 
10070
- groupName?: string
10160
+ newlinesInside?: ("always" | "never")
10071
10161
 
10072
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10162
+ fallbackSort?: {
10163
+
10164
+ order?: ("asc" | "desc")
10165
+
10166
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10167
+ sortBy?: ("name" | "value")
10168
+ [k: string]: unknown | undefined
10169
+ }
10073
10170
 
10074
- order?: ("desc" | "asc")
10171
+ groupName?: string
10075
10172
 
10076
- newlinesInside?: ("always" | "never")
10173
+ order?: ("asc" | "desc")
10174
+
10175
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10077
10176
 
10078
10177
  modifiers?: ("optional" | "required" | "multiline")[]
10079
10178
 
10080
10179
  selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
10081
10180
 
10181
+ elementValuePattern?: (({
10182
+ pattern?: string
10183
+ flags?: string
10184
+ } | string)[] | ({
10185
+ pattern?: string
10186
+ flags?: string
10187
+ } | string))
10188
+
10082
10189
  elementNamePattern?: (({
10083
10190
  pattern?: string
10084
10191
  flags?: string
@@ -10086,6 +10193,7 @@ type PerfectionistSortInterfaces = {
10086
10193
  pattern?: string
10087
10194
  flags?: string
10088
10195
  } | string))
10196
+ sortBy?: ("name" | "value")
10089
10197
  })[])
10090
10198
  useConfigurationIf?: {
10091
10199
 
@@ -10142,6 +10250,7 @@ type PerfectionistSortInterfaces = {
10142
10250
  pattern?: string
10143
10251
  flags?: string
10144
10252
  } | string))
10253
+ sortBy?: ("name" | "value")
10145
10254
 
10146
10255
  groups?: (string | string[] | {
10147
10256
 
@@ -10151,8 +10260,6 @@ type PerfectionistSortInterfaces = {
10151
10260
  // ----- perfectionist/sort-intersection-types -----
10152
10261
  type PerfectionistSortIntersectionTypes = []|[{
10153
10262
 
10154
- specialCharacters?: ("remove" | "trim" | "keep")
10155
-
10156
10263
  fallbackSort?: {
10157
10264
 
10158
10265
  order?: ("asc" | "desc")
@@ -10161,6 +10268,8 @@ type PerfectionistSortIntersectionTypes = []|[{
10161
10268
  [k: string]: unknown | undefined
10162
10269
  }
10163
10270
 
10271
+ specialCharacters?: ("remove" | "trim" | "keep")
10272
+
10164
10273
  ignoreCase?: boolean
10165
10274
 
10166
10275
  alphabet?: string
@@ -10206,8 +10315,6 @@ type PerfectionistSortIntersectionTypes = []|[{
10206
10315
  // ----- perfectionist/sort-jsx-props -----
10207
10316
  type PerfectionistSortJsxProps = {
10208
10317
 
10209
- specialCharacters?: ("remove" | "trim" | "keep")
10210
-
10211
10318
  fallbackSort?: {
10212
10319
 
10213
10320
  order?: ("asc" | "desc")
@@ -10216,6 +10323,8 @@ type PerfectionistSortJsxProps = {
10216
10323
  [k: string]: unknown | undefined
10217
10324
  }
10218
10325
 
10326
+ specialCharacters?: ("remove" | "trim" | "keep")
10327
+
10219
10328
  ignoreCase?: boolean
10220
10329
 
10221
10330
  alphabet?: string
@@ -10268,8 +10377,6 @@ type PerfectionistSortJsxProps = {
10268
10377
  // ----- perfectionist/sort-maps -----
10269
10378
  type PerfectionistSortMaps = {
10270
10379
 
10271
- specialCharacters?: ("remove" | "trim" | "keep")
10272
-
10273
10380
  fallbackSort?: {
10274
10381
 
10275
10382
  order?: ("asc" | "desc")
@@ -10278,6 +10385,8 @@ type PerfectionistSortMaps = {
10278
10385
  [k: string]: unknown | undefined
10279
10386
  }
10280
10387
 
10388
+ specialCharacters?: ("remove" | "trim" | "keep")
10389
+
10281
10390
  ignoreCase?: boolean
10282
10391
 
10283
10392
  alphabet?: string
@@ -10290,13 +10399,21 @@ type PerfectionistSortMaps = {
10290
10399
 
10291
10400
  customGroups?: ({
10292
10401
 
10293
- groupName?: string
10402
+ newlinesInside?: ("always" | "never")
10403
+
10404
+ fallbackSort?: {
10405
+
10406
+ order?: ("asc" | "desc")
10407
+
10408
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10409
+ [k: string]: unknown | undefined
10410
+ }
10294
10411
 
10295
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10412
+ groupName?: string
10296
10413
 
10297
- order?: ("desc" | "asc")
10414
+ order?: ("asc" | "desc")
10298
10415
 
10299
- newlinesInside?: ("always" | "never")
10416
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10300
10417
  anyOf?: {
10301
10418
 
10302
10419
  elementNamePattern?: (({
@@ -10309,13 +10426,21 @@ type PerfectionistSortMaps = {
10309
10426
  }[]
10310
10427
  } | {
10311
10428
 
10312
- groupName?: string
10429
+ newlinesInside?: ("always" | "never")
10313
10430
 
10314
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10431
+ fallbackSort?: {
10432
+
10433
+ order?: ("asc" | "desc")
10434
+
10435
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10436
+ [k: string]: unknown | undefined
10437
+ }
10315
10438
 
10316
- order?: ("desc" | "asc")
10439
+ groupName?: string
10317
10440
 
10318
- newlinesInside?: ("always" | "never")
10441
+ order?: ("asc" | "desc")
10442
+
10443
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10319
10444
 
10320
10445
  elementNamePattern?: (({
10321
10446
  pattern?: string
@@ -10371,8 +10496,6 @@ type PerfectionistSortMaps = {
10371
10496
  // ----- perfectionist/sort-modules -----
10372
10497
  type PerfectionistSortModules = []|[{
10373
10498
 
10374
- specialCharacters?: ("remove" | "trim" | "keep")
10375
-
10376
10499
  fallbackSort?: {
10377
10500
 
10378
10501
  order?: ("asc" | "desc")
@@ -10381,6 +10504,8 @@ type PerfectionistSortModules = []|[{
10381
10504
  [k: string]: unknown | undefined
10382
10505
  }
10383
10506
 
10507
+ specialCharacters?: ("remove" | "trim" | "keep")
10508
+
10384
10509
  ignoreCase?: boolean
10385
10510
 
10386
10511
  alphabet?: string
@@ -10393,13 +10518,21 @@ type PerfectionistSortModules = []|[{
10393
10518
 
10394
10519
  customGroups?: ({
10395
10520
 
10396
- groupName?: string
10521
+ newlinesInside?: ("always" | "never")
10522
+
10523
+ fallbackSort?: {
10524
+
10525
+ order?: ("asc" | "desc")
10526
+
10527
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10528
+ [k: string]: unknown | undefined
10529
+ }
10397
10530
 
10398
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10531
+ groupName?: string
10399
10532
 
10400
- order?: ("desc" | "asc")
10533
+ order?: ("asc" | "desc")
10401
10534
 
10402
- newlinesInside?: ("always" | "never")
10535
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10403
10536
  anyOf?: {
10404
10537
 
10405
10538
  modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
@@ -10424,13 +10557,21 @@ type PerfectionistSortModules = []|[{
10424
10557
  }[]
10425
10558
  } | {
10426
10559
 
10427
- groupName?: string
10560
+ newlinesInside?: ("always" | "never")
10561
+
10562
+ fallbackSort?: {
10563
+
10564
+ order?: ("asc" | "desc")
10565
+
10566
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10567
+ [k: string]: unknown | undefined
10568
+ }
10428
10569
 
10429
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10570
+ groupName?: string
10430
10571
 
10431
- order?: ("desc" | "asc")
10572
+ order?: ("asc" | "desc")
10432
10573
 
10433
- newlinesInside?: ("always" | "never")
10574
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10434
10575
 
10435
10576
  modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
10436
10577
 
@@ -10488,8 +10629,6 @@ type PerfectionistSortModules = []|[{
10488
10629
  // ----- perfectionist/sort-named-exports -----
10489
10630
  type PerfectionistSortNamedExports = []|[{
10490
10631
 
10491
- specialCharacters?: ("remove" | "trim" | "keep")
10492
-
10493
10632
  fallbackSort?: {
10494
10633
 
10495
10634
  order?: ("asc" | "desc")
@@ -10498,6 +10637,8 @@ type PerfectionistSortNamedExports = []|[{
10498
10637
  [k: string]: unknown | undefined
10499
10638
  }
10500
10639
 
10640
+ specialCharacters?: ("remove" | "trim" | "keep")
10641
+
10501
10642
  ignoreCase?: boolean
10502
10643
 
10503
10644
  alphabet?: string
@@ -10540,8 +10681,6 @@ type PerfectionistSortNamedExports = []|[{
10540
10681
  // ----- perfectionist/sort-named-imports -----
10541
10682
  type PerfectionistSortNamedImports = []|[{
10542
10683
 
10543
- specialCharacters?: ("remove" | "trim" | "keep")
10544
-
10545
10684
  fallbackSort?: {
10546
10685
 
10547
10686
  order?: ("asc" | "desc")
@@ -10550,6 +10689,8 @@ type PerfectionistSortNamedImports = []|[{
10550
10689
  [k: string]: unknown | undefined
10551
10690
  }
10552
10691
 
10692
+ specialCharacters?: ("remove" | "trim" | "keep")
10693
+
10553
10694
  ignoreCase?: boolean
10554
10695
 
10555
10696
  alphabet?: string
@@ -10592,8 +10733,6 @@ type PerfectionistSortNamedImports = []|[{
10592
10733
  // ----- perfectionist/sort-object-types -----
10593
10734
  type PerfectionistSortObjectTypes = {
10594
10735
 
10595
- specialCharacters?: ("remove" | "trim" | "keep")
10596
-
10597
10736
  fallbackSort?: {
10598
10737
 
10599
10738
  order?: ("asc" | "desc")
@@ -10602,6 +10741,8 @@ type PerfectionistSortObjectTypes = {
10602
10741
  [k: string]: unknown | undefined
10603
10742
  }
10604
10743
 
10744
+ specialCharacters?: ("remove" | "trim" | "keep")
10745
+
10605
10746
  ignoreCase?: boolean
10606
10747
 
10607
10748
  alphabet?: string
@@ -10615,19 +10756,36 @@ type PerfectionistSortObjectTypes = {
10615
10756
  [k: string]: (string | string[]) | undefined
10616
10757
  } | ({
10617
10758
 
10618
- groupName?: string
10759
+ newlinesInside?: ("always" | "never")
10760
+
10761
+ fallbackSort?: {
10762
+
10763
+ order?: ("asc" | "desc")
10764
+
10765
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10766
+ sortBy?: ("name" | "value")
10767
+ [k: string]: unknown | undefined
10768
+ }
10619
10769
 
10620
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10770
+ groupName?: string
10621
10771
 
10622
- order?: ("desc" | "asc")
10772
+ order?: ("asc" | "desc")
10623
10773
 
10624
- newlinesInside?: ("always" | "never")
10774
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10625
10775
  anyOf?: {
10626
10776
 
10627
10777
  modifiers?: ("optional" | "required" | "multiline")[]
10628
10778
 
10629
10779
  selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
10630
10780
 
10781
+ elementValuePattern?: (({
10782
+ pattern?: string
10783
+ flags?: string
10784
+ } | string)[] | ({
10785
+ pattern?: string
10786
+ flags?: string
10787
+ } | string))
10788
+
10631
10789
  elementNamePattern?: (({
10632
10790
  pattern?: string
10633
10791
  flags?: string
@@ -10635,21 +10793,39 @@ type PerfectionistSortObjectTypes = {
10635
10793
  pattern?: string
10636
10794
  flags?: string
10637
10795
  } | string))
10796
+ sortBy?: ("name" | "value")
10638
10797
  }[]
10639
10798
  } | {
10640
10799
 
10641
- groupName?: string
10800
+ newlinesInside?: ("always" | "never")
10801
+
10802
+ fallbackSort?: {
10803
+
10804
+ order?: ("asc" | "desc")
10805
+
10806
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10807
+ sortBy?: ("name" | "value")
10808
+ [k: string]: unknown | undefined
10809
+ }
10642
10810
 
10643
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10811
+ groupName?: string
10644
10812
 
10645
- order?: ("desc" | "asc")
10813
+ order?: ("asc" | "desc")
10646
10814
 
10647
- newlinesInside?: ("always" | "never")
10815
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10648
10816
 
10649
10817
  modifiers?: ("optional" | "required" | "multiline")[]
10650
10818
 
10651
10819
  selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
10652
10820
 
10821
+ elementValuePattern?: (({
10822
+ pattern?: string
10823
+ flags?: string
10824
+ } | string)[] | ({
10825
+ pattern?: string
10826
+ flags?: string
10827
+ } | string))
10828
+
10653
10829
  elementNamePattern?: (({
10654
10830
  pattern?: string
10655
10831
  flags?: string
@@ -10657,6 +10833,7 @@ type PerfectionistSortObjectTypes = {
10657
10833
  pattern?: string
10658
10834
  flags?: string
10659
10835
  } | string))
10836
+ sortBy?: ("name" | "value")
10660
10837
  })[])
10661
10838
  useConfigurationIf?: {
10662
10839
 
@@ -10713,6 +10890,7 @@ type PerfectionistSortObjectTypes = {
10713
10890
  pattern?: string
10714
10891
  flags?: string
10715
10892
  } | string))
10893
+ sortBy?: ("name" | "value")
10716
10894
 
10717
10895
  groups?: (string | string[] | {
10718
10896
 
@@ -10722,8 +10900,6 @@ type PerfectionistSortObjectTypes = {
10722
10900
  // ----- perfectionist/sort-objects -----
10723
10901
  type PerfectionistSortObjects = {
10724
10902
 
10725
- specialCharacters?: ("remove" | "trim" | "keep")
10726
-
10727
10903
  fallbackSort?: {
10728
10904
 
10729
10905
  order?: ("asc" | "desc")
@@ -10732,6 +10908,8 @@ type PerfectionistSortObjects = {
10732
10908
  [k: string]: unknown | undefined
10733
10909
  }
10734
10910
 
10911
+ specialCharacters?: ("remove" | "trim" | "keep")
10912
+
10735
10913
  ignoreCase?: boolean
10736
10914
 
10737
10915
  alphabet?: string
@@ -10750,13 +10928,21 @@ type PerfectionistSortObjects = {
10750
10928
  [k: string]: (string | string[]) | undefined
10751
10929
  } | ({
10752
10930
 
10753
- groupName?: string
10931
+ newlinesInside?: ("always" | "never")
10932
+
10933
+ fallbackSort?: {
10934
+
10935
+ order?: ("asc" | "desc")
10936
+
10937
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10938
+ [k: string]: unknown | undefined
10939
+ }
10754
10940
 
10755
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10941
+ groupName?: string
10756
10942
 
10757
- order?: ("desc" | "asc")
10943
+ order?: ("asc" | "desc")
10758
10944
 
10759
- newlinesInside?: ("always" | "never")
10945
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10760
10946
  anyOf?: {
10761
10947
 
10762
10948
  modifiers?: ("optional" | "required" | "multiline")[]
@@ -10781,13 +10967,21 @@ type PerfectionistSortObjects = {
10781
10967
  }[]
10782
10968
  } | {
10783
10969
 
10784
- groupName?: string
10970
+ newlinesInside?: ("always" | "never")
10785
10971
 
10786
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10972
+ fallbackSort?: {
10973
+
10974
+ order?: ("asc" | "desc")
10975
+
10976
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10977
+ [k: string]: unknown | undefined
10978
+ }
10787
10979
 
10788
- order?: ("desc" | "asc")
10980
+ groupName?: string
10789
10981
 
10790
- newlinesInside?: ("always" | "never")
10982
+ order?: ("asc" | "desc")
10983
+
10984
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10791
10985
 
10792
10986
  modifiers?: ("optional" | "required" | "multiline")[]
10793
10987
 
@@ -10877,8 +11071,6 @@ type PerfectionistSortObjects = {
10877
11071
  // ----- perfectionist/sort-sets -----
10878
11072
  type PerfectionistSortSets = {
10879
11073
 
10880
- specialCharacters?: ("remove" | "trim" | "keep")
10881
-
10882
11074
  fallbackSort?: {
10883
11075
 
10884
11076
  order?: ("asc" | "desc")
@@ -10887,6 +11079,8 @@ type PerfectionistSortSets = {
10887
11079
  [k: string]: unknown | undefined
10888
11080
  }
10889
11081
 
11082
+ specialCharacters?: ("remove" | "trim" | "keep")
11083
+
10890
11084
  ignoreCase?: boolean
10891
11085
 
10892
11086
  alphabet?: string
@@ -10901,13 +11095,21 @@ type PerfectionistSortSets = {
10901
11095
 
10902
11096
  customGroups?: ({
10903
11097
 
10904
- groupName?: string
11098
+ newlinesInside?: ("always" | "never")
11099
+
11100
+ fallbackSort?: {
11101
+
11102
+ order?: ("asc" | "desc")
11103
+
11104
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11105
+ [k: string]: unknown | undefined
11106
+ }
10905
11107
 
10906
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
11108
+ groupName?: string
10907
11109
 
10908
- order?: ("desc" | "asc")
11110
+ order?: ("asc" | "desc")
10909
11111
 
10910
- newlinesInside?: ("always" | "never")
11112
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10911
11113
  anyOf?: {
10912
11114
 
10913
11115
  selector?: ("literal" | "spread")
@@ -10922,13 +11124,21 @@ type PerfectionistSortSets = {
10922
11124
  }[]
10923
11125
  } | {
10924
11126
 
10925
- groupName?: string
11127
+ newlinesInside?: ("always" | "never")
11128
+
11129
+ fallbackSort?: {
11130
+
11131
+ order?: ("asc" | "desc")
11132
+
11133
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11134
+ [k: string]: unknown | undefined
11135
+ }
10926
11136
 
10927
- type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
11137
+ groupName?: string
10928
11138
 
10929
- order?: ("desc" | "asc")
11139
+ order?: ("asc" | "desc")
10930
11140
 
10931
- newlinesInside?: ("always" | "never")
11141
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10932
11142
 
10933
11143
  selector?: ("literal" | "spread")
10934
11144
 
@@ -10986,8 +11196,6 @@ type PerfectionistSortSets = {
10986
11196
  // ----- perfectionist/sort-switch-case -----
10987
11197
  type PerfectionistSortSwitchCase = []|[{
10988
11198
 
10989
- specialCharacters?: ("remove" | "trim" | "keep")
10990
-
10991
11199
  fallbackSort?: {
10992
11200
 
10993
11201
  order?: ("asc" | "desc")
@@ -10996,6 +11204,8 @@ type PerfectionistSortSwitchCase = []|[{
10996
11204
  [k: string]: unknown | undefined
10997
11205
  }
10998
11206
 
11207
+ specialCharacters?: ("remove" | "trim" | "keep")
11208
+
10999
11209
  ignoreCase?: boolean
11000
11210
 
11001
11211
  alphabet?: string
@@ -11009,8 +11219,6 @@ type PerfectionistSortSwitchCase = []|[{
11009
11219
  // ----- perfectionist/sort-union-types -----
11010
11220
  type PerfectionistSortUnionTypes = []|[{
11011
11221
 
11012
- specialCharacters?: ("remove" | "trim" | "keep")
11013
-
11014
11222
  fallbackSort?: {
11015
11223
 
11016
11224
  order?: ("asc" | "desc")
@@ -11019,6 +11227,8 @@ type PerfectionistSortUnionTypes = []|[{
11019
11227
  [k: string]: unknown | undefined
11020
11228
  }
11021
11229
 
11230
+ specialCharacters?: ("remove" | "trim" | "keep")
11231
+
11022
11232
  ignoreCase?: boolean
11023
11233
 
11024
11234
  alphabet?: string
@@ -11064,8 +11274,6 @@ type PerfectionistSortUnionTypes = []|[{
11064
11274
  // ----- perfectionist/sort-variable-declarations -----
11065
11275
  type PerfectionistSortVariableDeclarations = []|[{
11066
11276
 
11067
- specialCharacters?: ("remove" | "trim" | "keep")
11068
-
11069
11277
  fallbackSort?: {
11070
11278
 
11071
11279
  order?: ("asc" | "desc")
@@ -11074,6 +11282,8 @@ type PerfectionistSortVariableDeclarations = []|[{
11074
11282
  [k: string]: unknown | undefined
11075
11283
  }
11076
11284
 
11285
+ specialCharacters?: ("remove" | "trim" | "keep")
11286
+
11077
11287
  ignoreCase?: boolean
11078
11288
 
11079
11289
  alphabet?: string
@@ -11564,10 +11774,21 @@ type SvelteNoUnknownStyleDirectiveProperty = []|[{
11564
11774
  ignoreProperties?: [string, ...(string)[]]
11565
11775
  ignorePrefixed?: boolean
11566
11776
  }]
11777
+ // ----- svelte/no-unnecessary-state-wrap -----
11778
+ type SvelteNoUnnecessaryStateWrap = []|[{
11779
+ additionalReactiveClasses?: string[]
11780
+ allowReassign?: boolean
11781
+ }]
11567
11782
  // ----- svelte/no-unused-class-name -----
11568
11783
  type SvelteNoUnusedClassName = []|[{
11569
11784
  allowedClassNames?: string[]
11570
11785
  }]
11786
+ // ----- svelte/no-unused-props -----
11787
+ type SvelteNoUnusedProps = []|[{
11788
+ checkImportedTypes?: boolean
11789
+ ignoreTypePatterns?: string[]
11790
+ ignorePropertyPatterns?: string[]
11791
+ }]
11571
11792
  // ----- svelte/no-useless-mustaches -----
11572
11793
  type SvelteNoUselessMustaches = []|[{
11573
11794
  ignoreIncludesComment?: boolean
@@ -11581,6 +11802,7 @@ type SveltePreferClassDirective = []|[{
11581
11802
  type SveltePreferConst = []|[{
11582
11803
  destructuring?: ("any" | "all")
11583
11804
  ignoreReadBeforeAssign?: boolean
11805
+ excludedRunes?: string[]
11584
11806
  }]
11585
11807
  // ----- svelte/shorthand-attribute -----
11586
11808
  type SvelteShorthandAttribute = []|[{
@@ -11929,6 +12151,8 @@ type TsExplicitModuleBoundaryTypes = []|[{
11929
12151
 
11930
12152
  allowHigherOrderFunctions?: boolean
11931
12153
 
12154
+ allowOverloadFunctions?: boolean
12155
+
11932
12156
  allowTypedFunctionExpressions?: boolean
11933
12157
  }]
11934
12158
  // ----- ts/init-declarations -----
@@ -12960,6 +13184,8 @@ type TsUnboundMethod = []|[{
12960
13184
  type TsUnifiedSignatures = []|[{
12961
13185
 
12962
13186
  ignoreDifferentlyNamedParameters?: boolean
13187
+
13188
+ ignoreOverloadsWithDifferentJSDoc?: boolean
12963
13189
  }]
12964
13190
  // ----- unicode-bom -----
12965
13191
  type UnicodeBom = []|[("always" | "never")]
@@ -12976,6 +13202,8 @@ type UnicornCatchErrorName = []|[{
12976
13202
  type UnicornConsistentFunctionScoping = []|[{
12977
13203
  checkArrowFunctions?: boolean
12978
13204
  }]
13205
+ // ----- unicorn/escape-case -----
13206
+ type UnicornEscapeCase = []|[("uppercase" | "lowercase")]
12979
13207
  // ----- unicorn/expiring-todo-comments -----
12980
13208
  type UnicornExpiringTodoComments = []|[{
12981
13209
  terms?: string[]
@@ -13060,6 +13288,10 @@ type UnicornNoUselessUndefined = []|[{
13060
13288
  checkArguments?: boolean
13061
13289
  checkArrowFunctionBody?: boolean
13062
13290
  }]
13291
+ // ----- unicorn/number-literal-case -----
13292
+ type UnicornNumberLiteralCase = []|[{
13293
+ hexadecimalValue?: ("uppercase" | "lowercase")
13294
+ }]
13063
13295
  // ----- unicorn/numeric-separators-style -----
13064
13296
  type UnicornNumericSeparatorsStyle = []|[{
13065
13297
  binary?: {
@@ -13343,16 +13575,10 @@ type VueComponentNameInTemplateCasing = []|[("PascalCase" | "kebab-case")]|[("Pa
13343
13575
  }]
13344
13576
  // ----- vue/component-options-name-casing -----
13345
13577
  type VueComponentOptionsNameCasing = []|[("camelCase" | "kebab-case" | "PascalCase")]
13346
- // ----- vue/component-tags-order -----
13347
- type VueComponentTagsOrder = []|[{
13348
- order?: (string | string[])[]
13349
- }]
13350
13578
  // ----- vue/custom-event-name-casing -----
13351
- type VueCustomEventNameCasing = ([]|[("kebab-case" | "camelCase")]|[("kebab-case" | "camelCase"), {
13579
+ type VueCustomEventNameCasing = []|[("kebab-case" | "camelCase")]|[("kebab-case" | "camelCase"), {
13352
13580
  ignores?: string[]
13353
- }] | []|[{
13354
- ignores?: string[]
13355
- }])
13581
+ }]
13356
13582
  // ----- vue/define-emits-declaration -----
13357
13583
  type VueDefineEmitsDeclaration = []|[("type-based" | "type-literal" | "runtime")]
13358
13584
  // ----- vue/define-macros-order -----
@@ -13983,6 +14209,14 @@ type VueNoExtraParens = ([]|["functions"] | []|["all"]|["all", {
13983
14209
  enforceForFunctionPrototypeMethods?: boolean
13984
14210
  allowParensAfterCommentPattern?: string
13985
14211
  }])
14212
+ // ----- vue/no-implicit-coercion -----
14213
+ type VueNoImplicitCoercion = []|[{
14214
+ boolean?: boolean
14215
+ number?: boolean
14216
+ string?: boolean
14217
+ disallowTemplateShorthand?: boolean
14218
+ allow?: ("~" | "!!" | "+" | "- -" | "-" | "*")[]
14219
+ }]
13986
14220
  // ----- vue/no-irregular-whitespace -----
13987
14221
  type VueNoIrregularWhitespace = []|[{
13988
14222
  skipComments?: boolean
@@ -14274,9 +14508,13 @@ type VuePaddingLinesInComponentDefinition = []|[(("always" | "never") | {
14274
14508
  groupSingleLineProperties?: boolean
14275
14509
  })]
14276
14510
  // ----- vue/prefer-true-attribute-shorthand -----
14277
- type VuePreferTrueAttributeShorthand = []|[("always" | "never")]
14511
+ type VuePreferTrueAttributeShorthand = []|[("always" | "never")]|[("always" | "never"), {
14512
+ except?: string[]
14513
+ }]
14278
14514
  // ----- vue/prop-name-casing -----
14279
- type VuePropNameCasing = []|[("camelCase" | "snake_case")]
14515
+ type VuePropNameCasing = []|[("camelCase" | "snake_case")]|[("camelCase" | "snake_case"), {
14516
+ ignoreProps?: string[]
14517
+ }]
14280
14518
  // ----- vue/quote-props -----
14281
14519
  type VueQuoteProps = ([]|[("always" | "as-needed" | "consistent" | "consistent-as-needed")] | []|[("always" | "as-needed" | "consistent" | "consistent-as-needed")]|[("always" | "as-needed" | "consistent" | "consistent-as-needed"), {
14282
14520
  keywords?: boolean
@@ -14341,7 +14579,6 @@ type VueSortKeys = []|[("asc" | "desc")]|[("asc" | "desc"), {
14341
14579
  ignoreGrandchildrenOf?: unknown[]
14342
14580
  minKeys?: number
14343
14581
  natural?: boolean
14344
- runOutsideVue?: boolean
14345
14582
  }]
14346
14583
  // ----- vue/space-in-parens -----
14347
14584
  type VueSpaceInParens = []|[("always" | "never")]|[("always" | "never"), {
@@ -14379,10 +14616,6 @@ type VueVOnEventHyphenation = []|[("always" | "never")]|[("always" | "never"), {
14379
14616
  })[]
14380
14617
  ignoreTags?: string[]
14381
14618
  }]
14382
- // ----- vue/v-on-function-call -----
14383
- type VueVOnFunctionCall = []|[("always" | "never")]|[("always" | "never"), {
14384
- ignoreIncludesComment?: boolean
14385
- }]
14386
14619
  // ----- vue/v-on-handler-style -----
14387
14620
  type VueVOnHandlerStyle = []|[(("inline" | "inline-function") | ["method", ("inline" | "inline-function")])]|[(("inline" | "inline-function") | ["method", ("inline" | "inline-function")]), {
14388
14621
  ignoreIncludesComment?: boolean
@@ -14550,6 +14783,12 @@ interface OptionsConfig extends OptionsComponentExts {
14550
14783
  * @default true
14551
14784
  */
14552
14785
  jsonc?: boolean | OptionsOverrides;
14786
+ /**
14787
+ * Enable YAML support.
14788
+ *
14789
+ * @default true
14790
+ */
14791
+ yaml?: boolean | OptionsOverrides;
14553
14792
  /**
14554
14793
  * Enable react rules.
14555
14794
  *