@ghettoddos/eslint-config 2.0.1 → 3.0.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
@@ -1,9 +1,9 @@
1
1
  import { FlatConfigComposer } from "eslint-flat-config-utils";
2
+ import { Linter } from "eslint";
2
3
  import { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
3
4
  import { ParserOptions } from "@typescript-eslint/parser";
4
5
  import { FlatGitignoreOptions } from "eslint-config-flat-gitignore";
5
6
  import { Options } from "eslint-processor-vue-blocks";
6
- import { Linter } from "eslint";
7
7
 
8
8
  //#region src/typegen.d.ts
9
9
  interface RuleOptions {
@@ -330,6 +330,26 @@ interface RuleOptions {
330
330
  * @see https://eslint.org/docs/latest/rules/eqeqeq
331
331
  */
332
332
  'eqeqeq'?: Linter.RuleEntry<Eqeqeq>;
333
+ /**
334
+ * Avoid using TypeScript's enums.
335
+ * @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only/blob/main/docs/rules/enums.md
336
+ */
337
+ 'erasable-syntax-only/enums'?: Linter.RuleEntry<[]>;
338
+ /**
339
+ * Avoid using TypeScript's import aliases.
340
+ * @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only/blob/main/docs/rules/import-aliases.md
341
+ */
342
+ 'erasable-syntax-only/import-aliases'?: Linter.RuleEntry<[]>;
343
+ /**
344
+ * Avoid using TypeScript's namespaces.
345
+ * @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only/blob/main/docs/rules/namespaces.md
346
+ */
347
+ 'erasable-syntax-only/namespaces'?: Linter.RuleEntry<[]>;
348
+ /**
349
+ * Avoid using TypeScript's class parameter properties.
350
+ * @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only/blob/main/docs/rules/parameter-properties.md
351
+ */
352
+ 'erasable-syntax-only/parameter-properties'?: Linter.RuleEntry<[]>;
333
353
  /**
334
354
  * require a `eslint-enable` comment for every `eslint-disable` comment
335
355
  * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/disable-enable-pair.html
@@ -543,6 +563,381 @@ interface RuleOptions {
543
563
  * @see https://eslint.org/docs/latest/rules/init-declarations
544
564
  */
545
565
  'init-declarations'?: Linter.RuleEntry<InitDeclarations>;
566
+ /**
567
+ * Checks that `@access` tags have a valid value.
568
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-access.md#repos-sticky-header
569
+ */
570
+ 'jsdoc/check-access'?: Linter.RuleEntry<[]>;
571
+ /**
572
+ * Reports invalid alignment of JSDoc block asterisks.
573
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-alignment.md#repos-sticky-header
574
+ */
575
+ 'jsdoc/check-alignment'?: Linter.RuleEntry<JsdocCheckAlignment>;
576
+ /**
577
+ * @deprecated - Use `getJsdocProcessorPlugin` processor; ensures that (JavaScript) samples within `@example` tags adhere to ESLint rules.
578
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-examples.md#repos-sticky-header
579
+ */
580
+ 'jsdoc/check-examples'?: Linter.RuleEntry<JsdocCheckExamples>;
581
+ /**
582
+ * Reports invalid padding inside JSDoc blocks.
583
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-indentation.md#repos-sticky-header
584
+ */
585
+ 'jsdoc/check-indentation'?: Linter.RuleEntry<JsdocCheckIndentation>;
586
+ /**
587
+ * Reports invalid alignment of JSDoc block lines.
588
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-line-alignment.md#repos-sticky-header
589
+ */
590
+ 'jsdoc/check-line-alignment'?: Linter.RuleEntry<JsdocCheckLineAlignment>;
591
+ /**
592
+ * Checks for dupe `@param` names, that nested param names have roots, and that parameter names in function declarations match JSDoc param names.
593
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-param-names.md#repos-sticky-header
594
+ */
595
+ 'jsdoc/check-param-names'?: Linter.RuleEntry<JsdocCheckParamNames>;
596
+ /**
597
+ * Ensures that property names in JSDoc are not duplicated on the same block and that nested properties have defined roots.
598
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-property-names.md#repos-sticky-header
599
+ */
600
+ 'jsdoc/check-property-names'?: Linter.RuleEntry<JsdocCheckPropertyNames>;
601
+ /**
602
+ * Reports against syntax not valid for the mode (e.g., Google Closure Compiler in non-Closure mode).
603
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-syntax.md#repos-sticky-header
604
+ */
605
+ 'jsdoc/check-syntax'?: Linter.RuleEntry<[]>;
606
+ /**
607
+ * Reports invalid block tag names.
608
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-tag-names.md#repos-sticky-header
609
+ */
610
+ 'jsdoc/check-tag-names'?: Linter.RuleEntry<JsdocCheckTagNames>;
611
+ /**
612
+ * Checks that any `@template` names are actually used in the connected `@typedef` or type alias.
613
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-template-names.md#repos-sticky-header
614
+ */
615
+ 'jsdoc/check-template-names'?: Linter.RuleEntry<[]>;
616
+ /**
617
+ * Reports types deemed invalid (customizable and with defaults, for preventing and/or recommending replacements).
618
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-types.md#repos-sticky-header
619
+ */
620
+ 'jsdoc/check-types'?: Linter.RuleEntry<JsdocCheckTypes>;
621
+ /**
622
+ * This rule checks the values for a handful of tags: `@version`, `@since`, `@license` and `@author`.
623
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-values.md#repos-sticky-header
624
+ */
625
+ 'jsdoc/check-values'?: Linter.RuleEntry<JsdocCheckValues>;
626
+ /**
627
+ * Converts non-JSDoc comments preceding or following nodes into JSDoc ones
628
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/convert-to-jsdoc-comments.md#repos-sticky-header
629
+ */
630
+ 'jsdoc/convert-to-jsdoc-comments'?: Linter.RuleEntry<JsdocConvertToJsdocComments>;
631
+ /**
632
+ * Checks tags that are expected to be empty (e.g., `@abstract` or `@async`), reporting if they have content
633
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/empty-tags.md#repos-sticky-header
634
+ */
635
+ 'jsdoc/empty-tags'?: Linter.RuleEntry<JsdocEmptyTags>;
636
+ /**
637
+ * Reports use of JSDoc tags in non-tag positions (in the default "typescript" mode).
638
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/escape-inline-tags.md#repos-sticky-header
639
+ */
640
+ 'jsdoc/escape-inline-tags'?: Linter.RuleEntry<JsdocEscapeInlineTags>;
641
+ /**
642
+ * Prohibits use of `@implements` on non-constructor functions (to enforce the tag only being used on classes/constructors).
643
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/implements-on-classes.md#repos-sticky-header
644
+ */
645
+ 'jsdoc/implements-on-classes'?: Linter.RuleEntry<JsdocImplementsOnClasses>;
646
+ /**
647
+ * Reports if JSDoc `import()` statements point to a package which is not listed in `dependencies` or `devDependencies`
648
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/imports-as-dependencies.md#repos-sticky-header
649
+ */
650
+ 'jsdoc/imports-as-dependencies'?: Linter.RuleEntry<[]>;
651
+ /**
652
+ * This rule reports doc comments that only restate their attached name.
653
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/informative-docs.md#repos-sticky-header
654
+ */
655
+ 'jsdoc/informative-docs'?: Linter.RuleEntry<JsdocInformativeDocs>;
656
+ /**
657
+ * Enforces minimum number of newlines before JSDoc comment blocks
658
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/lines-before-block.md#repos-sticky-header
659
+ */
660
+ 'jsdoc/lines-before-block'?: Linter.RuleEntry<JsdocLinesBeforeBlock>;
661
+ /**
662
+ * Enforces a regular expression pattern on descriptions.
663
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/match-description.md#repos-sticky-header
664
+ */
665
+ 'jsdoc/match-description'?: Linter.RuleEntry<JsdocMatchDescription>;
666
+ /**
667
+ * Reports the name portion of a JSDoc tag if matching or not matching a given regular expression.
668
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/match-name.md#repos-sticky-header
669
+ */
670
+ 'jsdoc/match-name'?: Linter.RuleEntry<JsdocMatchName>;
671
+ /**
672
+ * Controls how and whether JSDoc blocks can be expressed as single or multiple line blocks.
673
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/multiline-blocks.md#repos-sticky-header
674
+ */
675
+ 'jsdoc/multiline-blocks'?: Linter.RuleEntry<JsdocMultilineBlocks>;
676
+ /**
677
+ * This rule checks for multi-line-style comments which fail to meet the criteria of a JSDoc block.
678
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-bad-blocks.md#repos-sticky-header
679
+ */
680
+ 'jsdoc/no-bad-blocks'?: Linter.RuleEntry<JsdocNoBadBlocks>;
681
+ /**
682
+ * If tags are present, this rule will prevent empty lines in the block description. If no tags are present, this rule will prevent extra empty lines in the block description.
683
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-blank-block-descriptions.md#repos-sticky-header
684
+ */
685
+ 'jsdoc/no-blank-block-descriptions'?: Linter.RuleEntry<[]>;
686
+ /**
687
+ * Removes empty blocks with nothing but possibly line breaks
688
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-blank-blocks.md#repos-sticky-header
689
+ */
690
+ 'jsdoc/no-blank-blocks'?: Linter.RuleEntry<JsdocNoBlankBlocks>;
691
+ /**
692
+ * This rule reports defaults being used on the relevant portion of `@param` or `@default`.
693
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-defaults.md#repos-sticky-header
694
+ */
695
+ 'jsdoc/no-defaults'?: Linter.RuleEntry<JsdocNoDefaults>;
696
+ /**
697
+ * Reports when certain comment structures are always expected.
698
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-missing-syntax.md#repos-sticky-header
699
+ */
700
+ 'jsdoc/no-missing-syntax'?: Linter.RuleEntry<JsdocNoMissingSyntax>;
701
+ /**
702
+ * Prevents use of multiple asterisks at the beginning of lines.
703
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-multi-asterisks.md#repos-sticky-header
704
+ */
705
+ 'jsdoc/no-multi-asterisks'?: Linter.RuleEntry<JsdocNoMultiAsterisks>;
706
+ /**
707
+ * Reports when certain comment structures are present.
708
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-restricted-syntax.md#repos-sticky-header
709
+ */
710
+ 'jsdoc/no-restricted-syntax'?: Linter.RuleEntry<JsdocNoRestrictedSyntax>;
711
+ /**
712
+ * This rule reports types being used on `@param` or `@returns` (redundant with TypeScript).
713
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-types.md#repos-sticky-header
714
+ */
715
+ 'jsdoc/no-types'?: Linter.RuleEntry<JsdocNoTypes>;
716
+ /**
717
+ * Besides some expected built-in types, prohibits any types not specified as globals or within `@typedef`.
718
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/no-undefined-types.md#repos-sticky-header
719
+ */
720
+ 'jsdoc/no-undefined-types'?: Linter.RuleEntry<JsdocNoUndefinedTypes>;
721
+ /**
722
+ * Prefer `@import` tags to inline `import()` statements.
723
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/prefer-import-tag.md#repos-sticky-header
724
+ */
725
+ 'jsdoc/prefer-import-tag'?: Linter.RuleEntry<JsdocPreferImportTag>;
726
+ /**
727
+ * Reports use of `any` or `*` type
728
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/reject-any-type.md#repos-sticky-header
729
+ */
730
+ 'jsdoc/reject-any-type'?: Linter.RuleEntry<[]>;
731
+ /**
732
+ * Reports use of `Function` type
733
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/reject-function-type.md#repos-sticky-header
734
+ */
735
+ 'jsdoc/reject-function-type'?: Linter.RuleEntry<[]>;
736
+ /**
737
+ * Requires that each JSDoc line starts with an `*`.
738
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-asterisk-prefix.md#repos-sticky-header
739
+ */
740
+ 'jsdoc/require-asterisk-prefix'?: Linter.RuleEntry<JsdocRequireAsteriskPrefix>;
741
+ /**
742
+ * Requires that all functions (and potentially other contexts) have a description.
743
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-description.md#repos-sticky-header
744
+ */
745
+ 'jsdoc/require-description'?: Linter.RuleEntry<JsdocRequireDescription>;
746
+ /**
747
+ * Requires that block description, explicit `@description`, and `@param`/`@returns` tag descriptions are written in complete sentences.
748
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-description-complete-sentence.md#repos-sticky-header
749
+ */
750
+ 'jsdoc/require-description-complete-sentence'?: Linter.RuleEntry<JsdocRequireDescriptionCompleteSentence>;
751
+ /**
752
+ * Requires that all functions (and potentially other contexts) have examples.
753
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-example.md#repos-sticky-header
754
+ */
755
+ 'jsdoc/require-example'?: Linter.RuleEntry<JsdocRequireExample>;
756
+ /**
757
+ * Checks that all files have one `@file`, `@fileoverview`, or `@overview` tag at the beginning of the file.
758
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-file-overview.md#repos-sticky-header
759
+ */
760
+ 'jsdoc/require-file-overview'?: Linter.RuleEntry<JsdocRequireFileOverview>;
761
+ /**
762
+ * Requires a hyphen before the `@param` description (and optionally before `@property` descriptions).
763
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-hyphen-before-param-description.md#repos-sticky-header
764
+ */
765
+ 'jsdoc/require-hyphen-before-param-description'?: Linter.RuleEntry<JsdocRequireHyphenBeforeParamDescription>;
766
+ /**
767
+ * Checks for presence of JSDoc comments, on functions and potentially other contexts (optionally limited to exports).
768
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-jsdoc.md#repos-sticky-header
769
+ */
770
+ 'jsdoc/require-jsdoc'?: Linter.RuleEntry<JsdocRequireJsdoc>;
771
+ /**
772
+ * Requires a description for `@next` tags
773
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-description.md#repos-sticky-header
774
+ */
775
+ 'jsdoc/require-next-description'?: Linter.RuleEntry<[]>;
776
+ /**
777
+ * Requires a type for `@next` tags
778
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-next-type.md#repos-sticky-header
779
+ */
780
+ 'jsdoc/require-next-type'?: Linter.RuleEntry<[]>;
781
+ /**
782
+ * Requires that all function parameters are documented with a `@param` tag.
783
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param.md#repos-sticky-header
784
+ */
785
+ 'jsdoc/require-param'?: Linter.RuleEntry<JsdocRequireParam>;
786
+ /**
787
+ * Requires that each `@param` tag has a `description` value.
788
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-description.md#repos-sticky-header
789
+ */
790
+ 'jsdoc/require-param-description'?: Linter.RuleEntry<JsdocRequireParamDescription>;
791
+ /**
792
+ * Requires that all `@param` tags have names.
793
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-name.md#repos-sticky-header
794
+ */
795
+ 'jsdoc/require-param-name'?: Linter.RuleEntry<JsdocRequireParamName>;
796
+ /**
797
+ * Requires that each `@param` tag has a type value (in curly brackets).
798
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-param-type.md#repos-sticky-header
799
+ */
800
+ 'jsdoc/require-param-type'?: Linter.RuleEntry<JsdocRequireParamType>;
801
+ /**
802
+ * Requires that all `@typedef` and `@namespace` tags have `@property` when their type is a plain `object`, `Object`, or `PlainObject`.
803
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property.md#repos-sticky-header
804
+ */
805
+ 'jsdoc/require-property'?: Linter.RuleEntry<[]>;
806
+ /**
807
+ * Requires that each `@property` tag has a `description` value.
808
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-description.md#repos-sticky-header
809
+ */
810
+ 'jsdoc/require-property-description'?: Linter.RuleEntry<[]>;
811
+ /**
812
+ * Requires that all `@property` tags have names.
813
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-name.md#repos-sticky-header
814
+ */
815
+ 'jsdoc/require-property-name'?: Linter.RuleEntry<[]>;
816
+ /**
817
+ * Requires that each `@property` tag has a type value (in curly brackets).
818
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-type.md#repos-sticky-header
819
+ */
820
+ 'jsdoc/require-property-type'?: Linter.RuleEntry<[]>;
821
+ /**
822
+ * Requires that Promise rejections are documented with `@rejects` tags.
823
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-rejects.md#repos-sticky-header
824
+ */
825
+ 'jsdoc/require-rejects'?: Linter.RuleEntry<JsdocRequireRejects>;
826
+ /**
827
+ * Requires that returns are documented with `@returns`.
828
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns.md#repos-sticky-header
829
+ */
830
+ 'jsdoc/require-returns'?: Linter.RuleEntry<JsdocRequireReturns>;
831
+ /**
832
+ * Requires a return statement in function body if a `@returns` tag is specified in JSDoc comment(and reports if multiple `@returns` tags are present).
833
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-check.md#repos-sticky-header
834
+ */
835
+ 'jsdoc/require-returns-check'?: Linter.RuleEntry<JsdocRequireReturnsCheck>;
836
+ /**
837
+ * Requires that the `@returns` tag has a `description` value (not including `void`/`undefined` type returns).
838
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-description.md#repos-sticky-header
839
+ */
840
+ 'jsdoc/require-returns-description'?: Linter.RuleEntry<JsdocRequireReturnsDescription>;
841
+ /**
842
+ * Requires that `@returns` tag has type value (in curly brackets).
843
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns-type.md#repos-sticky-header
844
+ */
845
+ 'jsdoc/require-returns-type'?: Linter.RuleEntry<JsdocRequireReturnsType>;
846
+ /**
847
+ * Requires tags be present, optionally for specific contexts
848
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-tags.md#repos-sticky-header
849
+ */
850
+ 'jsdoc/require-tags'?: Linter.RuleEntry<JsdocRequireTags>;
851
+ /**
852
+ * Requires `@template` tags be present when type parameters are used.
853
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-template.md#repos-sticky-header
854
+ */
855
+ 'jsdoc/require-template'?: Linter.RuleEntry<JsdocRequireTemplate>;
856
+ /**
857
+ * Requires a description for `@template` tags
858
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-template-description.md#repos-sticky-header
859
+ */
860
+ 'jsdoc/require-template-description'?: Linter.RuleEntry<[]>;
861
+ /**
862
+ * Requires that throw statements are documented with `@throws` tags.
863
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws.md#repos-sticky-header
864
+ */
865
+ 'jsdoc/require-throws'?: Linter.RuleEntry<JsdocRequireThrows>;
866
+ /**
867
+ * Requires a description for `@throws` tags
868
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-description.md#repos-sticky-header
869
+ */
870
+ 'jsdoc/require-throws-description'?: Linter.RuleEntry<[]>;
871
+ /**
872
+ * Requires a type for `@throws` tags
873
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-throws-type.md#repos-sticky-header
874
+ */
875
+ 'jsdoc/require-throws-type'?: Linter.RuleEntry<[]>;
876
+ /**
877
+ * Requires yields are documented with `@yields` tags.
878
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields.md#repos-sticky-header
879
+ */
880
+ 'jsdoc/require-yields'?: Linter.RuleEntry<JsdocRequireYields>;
881
+ /**
882
+ * Ensures that if a `@yields` is present that a `yield` (or `yield` with a value) is present in the function body (or that if a `@next` is present that there is a yield with a return value present).
883
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-check.md#repos-sticky-header
884
+ */
885
+ 'jsdoc/require-yields-check'?: Linter.RuleEntry<JsdocRequireYieldsCheck>;
886
+ /**
887
+ * Requires a description for `@yields` tags
888
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-description.md#repos-sticky-header
889
+ */
890
+ 'jsdoc/require-yields-description'?: Linter.RuleEntry<[]>;
891
+ /**
892
+ * Requires a type for `@yields` tags
893
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-yields-type.md#repos-sticky-header
894
+ */
895
+ 'jsdoc/require-yields-type'?: Linter.RuleEntry<[]>;
896
+ /**
897
+ * Sorts tags by a specified sequence according to tag name, optionally adding line breaks between tag groups.
898
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/sort-tags.md#repos-sticky-header
899
+ */
900
+ 'jsdoc/sort-tags'?: Linter.RuleEntry<JsdocSortTags>;
901
+ /**
902
+ * Enforces lines (or no lines) before, after, or between tags.
903
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/tag-lines.md#repos-sticky-header
904
+ */
905
+ 'jsdoc/tag-lines'?: Linter.RuleEntry<JsdocTagLines>;
906
+ /**
907
+ * Auto-escape certain characters that are input within block and tag descriptions.
908
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/text-escaping.md#repos-sticky-header
909
+ */
910
+ 'jsdoc/text-escaping'?: Linter.RuleEntry<JsdocTextEscaping>;
911
+ /**
912
+ * Prefers either function properties or method signatures
913
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/ts-method-signature-style.md#repos-sticky-header
914
+ */
915
+ 'jsdoc/ts-method-signature-style'?: Linter.RuleEntry<JsdocTsMethodSignatureStyle>;
916
+ /**
917
+ * Warns against use of the empty object type
918
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/ts-no-empty-object-type.md#repos-sticky-header
919
+ */
920
+ 'jsdoc/ts-no-empty-object-type'?: Linter.RuleEntry<[]>;
921
+ /**
922
+ * Catches unnecessary template expressions such as string expressions within a template literal.
923
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/ts-no-unnecessary-template-expression.md#repos-sticky-header
924
+ */
925
+ 'jsdoc/ts-no-unnecessary-template-expression'?: Linter.RuleEntry<JsdocTsNoUnnecessaryTemplateExpression>;
926
+ /**
927
+ * Prefers function types over call signatures when there are no other properties.
928
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/ts-prefer-function-type.md#repos-sticky-header
929
+ */
930
+ 'jsdoc/ts-prefer-function-type'?: Linter.RuleEntry<JsdocTsPreferFunctionType>;
931
+ /**
932
+ * Formats JSDoc type values.
933
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/type-formatting.md#repos-sticky-header
934
+ */
935
+ 'jsdoc/type-formatting'?: Linter.RuleEntry<JsdocTypeFormatting>;
936
+ /**
937
+ * Requires all types/namepaths to be valid JSDoc, Closure compiler, or TypeScript types (configurable in settings).
938
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/valid-types.md#repos-sticky-header
939
+ */
940
+ 'jsdoc/valid-types'?: Linter.RuleEntry<JsdocValidTypes>;
546
941
  /**
547
942
  * enforce line breaks after opening and before closing array brackets
548
943
  * @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/array-bracket-newline.html
@@ -1073,7 +1468,7 @@ interface RuleOptions {
1073
1468
  * Disallow missing label references
1074
1469
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-label-refs.md
1075
1470
  */
1076
- 'markdown/no-missing-label-refs'?: Linter.RuleEntry<[]>;
1471
+ 'markdown/no-missing-label-refs'?: Linter.RuleEntry<MarkdownNoMissingLabelRefs>;
1077
1472
  /**
1078
1473
  * Disallow link fragments that do not reference valid headings
1079
1474
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-link-fragments.md
@@ -1084,6 +1479,11 @@ interface RuleOptions {
1084
1479
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-multiple-h1.md
1085
1480
  */
1086
1481
  'markdown/no-multiple-h1'?: Linter.RuleEntry<MarkdownNoMultipleH1>;
1482
+ /**
1483
+ * Disallow URLs that match defined reference identifiers
1484
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reference-like-urls.md
1485
+ */
1486
+ 'markdown/no-reference-like-urls'?: Linter.RuleEntry<[]>;
1087
1487
  /**
1088
1488
  * Disallow reversed link and image syntax
1089
1489
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reversed-media-syntax.md
@@ -2169,12 +2569,12 @@ interface RuleOptions {
2169
2569
  */
2170
2570
  'node/no-hide-core-modules'?: Linter.RuleEntry<NodeNoHideCoreModules>;
2171
2571
  /**
2172
- * disallow `import` declarations which import non-existence modules
2572
+ * disallow `import` declarations which import missing modules
2173
2573
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-missing-import.md
2174
2574
  */
2175
2575
  'node/no-missing-import'?: Linter.RuleEntry<NodeNoMissingImport>;
2176
2576
  /**
2177
- * disallow `require()` expressions which import non-existence modules
2577
+ * disallow `require()` expressions which import missing modules
2178
2578
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-missing-require.md
2179
2579
  */
2180
2580
  'node/no-missing-require'?: Linter.RuleEntry<NodeNoMissingRequire>;
@@ -2492,6 +2892,11 @@ interface RuleOptions {
2492
2892
  * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/json/json-valid-catalog.test.ts
2493
2893
  */
2494
2894
  'pnpm/json-valid-catalog'?: Linter.RuleEntry<PnpmJsonValidCatalog>;
2895
+ /**
2896
+ * Enforce settings in `pnpm-workspace.yaml`
2897
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-enforce-settings.test.ts
2898
+ */
2899
+ 'pnpm/yaml-enforce-settings'?: Linter.RuleEntry<PnpmYamlEnforceSettings>;
2495
2900
  /**
2496
2901
  * Disallow duplicate catalog items in `pnpm-workspace.yaml`
2497
2902
  * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-no-duplicate-catalog-item.test.ts
@@ -2502,6 +2907,11 @@ interface RuleOptions {
2502
2907
  * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-no-unused-catalog-item.test.ts
2503
2908
  */
2504
2909
  'pnpm/yaml-no-unused-catalog-item'?: Linter.RuleEntry<[]>;
2910
+ /**
2911
+ * Ensure all package patterns in `pnpm-workspace.yaml` match at least one directory
2912
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-valid-packages.test.ts
2913
+ */
2914
+ 'pnpm/yaml-valid-packages'?: Linter.RuleEntry<[]>;
2505
2915
  /**
2506
2916
  * Require using arrow functions for callbacks
2507
2917
  * @see https://eslint.org/docs/latest/rules/prefer-arrow-callback
@@ -2573,6 +2983,11 @@ interface RuleOptions {
2573
2983
  * @see https://eslint.org/docs/latest/rules/prefer-template
2574
2984
  */
2575
2985
  'prefer-template'?: Linter.RuleEntry<[]>;
2986
+ /**
2987
+ * Disallow losing originally caught error when re-throwing custom errors
2988
+ * @see https://eslint.org/docs/latest/rules/preserve-caught-error
2989
+ */
2990
+ 'preserve-caught-error'?: Linter.RuleEntry<PreserveCaughtError>;
2576
2991
  /**
2577
2992
  * Require quotes around object literal property names
2578
2993
  * @see https://eslint.org/docs/latest/rules/quote-props
@@ -2590,11 +3005,6 @@ interface RuleOptions {
2590
3005
  * @see https://eslint.org/docs/latest/rules/radix
2591
3006
  */
2592
3007
  'radix'?: Linter.RuleEntry<Radix>;
2593
- /**
2594
- * Disallow `children` in void DOM elements.
2595
- * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
2596
- */
2597
- 'react-dom/no-children-in-void-dom-elements'?: Linter.RuleEntry<[]>;
2598
3008
  /**
2599
3009
  * Disallow `dangerouslySetInnerHTML`.
2600
3010
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml
@@ -2626,7 +3036,7 @@ interface RuleOptions {
2626
3036
  */
2627
3037
  'react-dom/no-missing-button-type'?: Linter.RuleEntry<[]>;
2628
3038
  /**
2629
- * Enforces explicit `sandbox` attribute for `iframe` elements.
3039
+ * Enforces explicit `sandbox` prop for `iframe` elements.
2630
3040
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox
2631
3041
  */
2632
3042
  'react-dom/no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>;
@@ -2650,6 +3060,11 @@ interface RuleOptions {
2650
3060
  * @see https://eslint-react.xyz/docs/rules/dom-no-script-url
2651
3061
  */
2652
3062
  'react-dom/no-script-url'?: Linter.RuleEntry<[]>;
3063
+ /**
3064
+ * Disallows the use of string style prop.
3065
+ * @see https://eslint-react.xyz/docs/rules/dom-no-string-style-prop
3066
+ */
3067
+ 'react-dom/no-string-style-prop'?: Linter.RuleEntry<[]>;
2653
3068
  /**
2654
3069
  * Disallow unknown `DOM` property.
2655
3070
  * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property
@@ -2676,70 +3091,133 @@ interface RuleOptions {
2676
3091
  */
2677
3092
  'react-dom/no-void-elements-with-children'?: Linter.RuleEntry<[]>;
2678
3093
  /**
2679
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2680
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
3094
+ * Enforces React Dom is imported via a namespace import.
3095
+ * @see https://eslint-react.xyz/docs/rules/dom-prefer-namespace-import
2681
3096
  */
2682
- 'react-hooks-extra/ensure-custom-hooks-using-other-hooks'?: Linter.RuleEntry<[]>;
3097
+ 'react-dom/prefer-namespace-import'?: Linter.RuleEntry<[]>;
2683
3098
  /**
2684
- * Disallow unnecessary usage of `useCallback`.
2685
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-callback
3099
+ * Disallow direct calls to the `set` function of `useState` in `useEffect`.
3100
+ * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
2686
3101
  */
2687
- 'react-hooks-extra/ensure-use-callback-has-non-empty-deps'?: Linter.RuleEntry<[]>;
3102
+ 'react-hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>;
2688
3103
  /**
2689
- * Disallow unnecessary usage of `useMemo`.
2690
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-memo
3104
+ * Verifies that automatic effect dependencies are compiled if opted-in
2691
3105
  */
2692
- 'react-hooks-extra/ensure-use-memo-has-non-empty-deps'?: Linter.RuleEntry<[]>;
3106
+ 'react-hooks/automatic-effect-dependencies'?: Linter.RuleEntry<ReactHooksAutomaticEffectDependencies>;
2693
3107
  /**
2694
- * Disallow direct calls to the `set` function of `useState` in `useEffect`.
2695
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
3108
+ * Validates against calling capitalized functions/methods instead of using JSX
2696
3109
  */
2697
- 'react-hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>;
3110
+ 'react-hooks/capitalized-calls'?: Linter.RuleEntry<ReactHooksCapitalizedCalls>;
2698
3111
  /**
2699
- * Disallow direct calls to the `set` function of `useState` in `useLayoutEffect`.
2700
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-layout-effect
3112
+ * Validates against higher order functions defining nested components or hooks. Components and hooks should be defined at the module level
2701
3113
  */
2702
- 'react-hooks-extra/no-direct-set-state-in-use-layout-effect'?: Linter.RuleEntry<[]>;
3114
+ 'react-hooks/component-hook-factories'?: Linter.RuleEntry<ReactHooksComponentHookFactories>;
2703
3115
  /**
2704
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2705
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
3116
+ * Validates the compiler configuration options
2706
3117
  */
2707
- 'react-hooks-extra/no-redundant-custom-hook'?: Linter.RuleEntry<[]>;
3118
+ 'react-hooks/config'?: Linter.RuleEntry<ReactHooksConfig>;
2708
3119
  /**
2709
- * Disallow unnecessary usage of `useCallback`.
2710
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-callback
3120
+ * Validates usage of error boundaries instead of try/catch for errors in child components
2711
3121
  */
2712
- 'react-hooks-extra/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>;
3122
+ 'react-hooks/error-boundaries'?: Linter.RuleEntry<ReactHooksErrorBoundaries>;
2713
3123
  /**
2714
- * Disallow unnecessary usage of `useMemo`.
2715
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-memo
3124
+ * verifies the list of dependencies for Hooks like useEffect and similar
3125
+ * @see https://github.com/facebook/react/issues/14920
2716
3126
  */
2717
- 'react-hooks-extra/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>;
3127
+ 'react-hooks/exhaustive-deps'?: Linter.RuleEntry<ReactHooksExhaustiveDeps>;
2718
3128
  /**
2719
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2720
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
3129
+ * Validates usage of fbt
2721
3130
  */
2722
- 'react-hooks-extra/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>;
3131
+ 'react-hooks/fbt'?: Linter.RuleEntry<ReactHooksFbt>;
2723
3132
  /**
2724
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
2725
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-unnecessary-use-prefix
3133
+ * Validates usage of `fire`
2726
3134
  */
2727
- 'react-hooks-extra/no-useless-custom-hooks'?: Linter.RuleEntry<[]>;
3135
+ 'react-hooks/fire'?: Linter.RuleEntry<ReactHooksFire>;
2728
3136
  /**
2729
- * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
2730
- * @see https://eslint-react.xyz/docs/rules/hooks-extra-prefer-use-state-lazy-initialization
3137
+ * Validates configuration of [gating mode](https://react.dev/reference/react-compiler/gating)
2731
3138
  */
2732
- 'react-hooks-extra/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>;
3139
+ 'react-hooks/gating'?: Linter.RuleEntry<ReactHooksGating>;
2733
3140
  /**
2734
- * verifies the list of dependencies for Hooks like useEffect and similar
2735
- * @see https://github.com/facebook/react/issues/14920
3141
+ * Validates against assignment/mutation of globals during render, part of ensuring that [side effects must render outside of render](https://react.dev/reference/rules/components-and-hooks-must-be-pure#side-effects-must-run-outside-of-render)
2736
3142
  */
2737
- 'react-hooks/exhaustive-deps'?: Linter.RuleEntry<ReactHooksExhaustiveDeps>;
3143
+ 'react-hooks/globals'?: Linter.RuleEntry<ReactHooksGlobals>;
3144
+ /**
3145
+ * Validates the rules of hooks
3146
+ */
3147
+ 'react-hooks/hooks'?: Linter.RuleEntry<ReactHooksHooks>;
3148
+ /**
3149
+ * Validates against mutating props, state, and other values that [are immutable](https://react.dev/reference/rules/components-and-hooks-must-be-pure#props-and-state-are-immutable)
3150
+ */
3151
+ 'react-hooks/immutability'?: Linter.RuleEntry<ReactHooksImmutability>;
3152
+ /**
3153
+ * Validates against usage of libraries which are incompatible with memoization (manual or automatic)
3154
+ */
3155
+ 'react-hooks/incompatible-library'?: Linter.RuleEntry<ReactHooksIncompatibleLibrary>;
3156
+ /**
3157
+ * Internal invariants
3158
+ */
3159
+ 'react-hooks/invariant'?: Linter.RuleEntry<ReactHooksInvariant>;
3160
+ /**
3161
+ * Validates that effect dependencies are memoized
3162
+ */
3163
+ 'react-hooks/memoized-effect-dependencies'?: Linter.RuleEntry<ReactHooksMemoizedEffectDependencies>;
3164
+ /**
3165
+ * Validates against deriving values from state in an effect
3166
+ */
3167
+ 'react-hooks/no-deriving-state-in-effects'?: Linter.RuleEntry<ReactHooksNoDerivingStateInEffects>;
3168
+ /**
3169
+ * Validates that existing manual memoized is preserved by the compiler. React Compiler will only compile components and hooks if its inference [matches or exceeds the existing manual memoization](https://react.dev/learn/react-compiler/introduction#what-should-i-do-about-usememo-usecallback-and-reactmemo)
3170
+ */
3171
+ 'react-hooks/preserve-manual-memoization'?: Linter.RuleEntry<ReactHooksPreserveManualMemoization>;
3172
+ /**
3173
+ * Validates that [components/hooks are pure](https://react.dev/reference/rules/components-and-hooks-must-be-pure) by checking that they do not call known-impure functions
3174
+ */
3175
+ 'react-hooks/purity'?: Linter.RuleEntry<ReactHooksPurity>;
3176
+ /**
3177
+ * Validates correct usage of refs, not reading/writing during render. See the "pitfalls" section in [`useRef()` usage](https://react.dev/reference/react/useRef#usage)
3178
+ */
3179
+ 'react-hooks/refs'?: Linter.RuleEntry<ReactHooksRefs>;
3180
+ /**
3181
+ * Validates against suppression of other rules
3182
+ */
3183
+ 'react-hooks/rule-suppression'?: Linter.RuleEntry<ReactHooksRuleSuppression>;
2738
3184
  /**
2739
3185
  * enforces the Rules of Hooks
2740
- * @see https://reactjs.org/docs/hooks-rules.html
3186
+ * @see https://react.dev/reference/rules/rules-of-hooks
3187
+ */
3188
+ 'react-hooks/rules-of-hooks'?: Linter.RuleEntry<ReactHooksRulesOfHooks>;
3189
+ /**
3190
+ * Validates against calling setState synchronously in an effect, which can lead to re-renders that degrade performance
3191
+ */
3192
+ 'react-hooks/set-state-in-effect'?: Linter.RuleEntry<ReactHooksSetStateInEffect>;
3193
+ /**
3194
+ * Validates against setting state during render, which can trigger additional renders and potential infinite render loops
3195
+ */
3196
+ 'react-hooks/set-state-in-render'?: Linter.RuleEntry<ReactHooksSetStateInRender>;
3197
+ /**
3198
+ * Validates that components are static, not recreated every render. Components that are recreated dynamically can reset state and trigger excessive re-rendering
3199
+ */
3200
+ 'react-hooks/static-components'?: Linter.RuleEntry<ReactHooksStaticComponents>;
3201
+ /**
3202
+ * Validates against invalid syntax
3203
+ */
3204
+ 'react-hooks/syntax'?: Linter.RuleEntry<ReactHooksSyntax>;
3205
+ /**
3206
+ * Unimplemented features
3207
+ */
3208
+ 'react-hooks/todo'?: Linter.RuleEntry<ReactHooksTodo>;
3209
+ /**
3210
+ * Validates against syntax that we do not plan to support in React Compiler
3211
+ */
3212
+ 'react-hooks/unsupported-syntax'?: Linter.RuleEntry<ReactHooksUnsupportedSyntax>;
3213
+ /**
3214
+ * Validates usage of the useMemo() hook against common mistakes. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
3215
+ */
3216
+ 'react-hooks/use-memo'?: Linter.RuleEntry<ReactHooksUseMemo>;
3217
+ /**
3218
+ * Validates that useMemos always return a value and that the result of the useMemo is used by the component/hook. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
2741
3219
  */
2742
- 'react-hooks/rules-of-hooks'?: Linter.RuleEntry<[]>;
3220
+ 'react-hooks/void-use-memo'?: Linter.RuleEntry<ReactHooksVoidUseMemo>;
2743
3221
  /**
2744
3222
  * Enforces naming conventions for components.
2745
3223
  * @see https://eslint-react.xyz/docs/rules/naming-convention-component-name
@@ -2805,25 +3283,20 @@ interface RuleOptions {
2805
3283
  */
2806
3284
  'react-web-api/no-leaked-timeout'?: Linter.RuleEntry<[]>;
2807
3285
  /**
2808
- * Enforces explicit boolean values for boolean attributes.
2809
- * @see https://eslint-react.xyz/docs/rules/avoid-shorthand-boolean
2810
- */
2811
- 'react/avoid-shorthand-boolean'?: Linter.RuleEntry<[]>;
2812
- /**
2813
- * Enforces explicit `<Fragment>` components instead of the shorthand `<>` or `</>` syntax.
2814
- * @see https://eslint-react.xyz/docs/rules/avoid-shorthand-fragment
2815
- */
2816
- 'react/avoid-shorthand-fragment'?: Linter.RuleEntry<[]>;
2817
- /**
2818
- * Disallow useless `forwardRef` calls on components that don't use `ref`s.
2819
- * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
3286
+ * Prevents dollar signs from being inserted as text nodes before expressions.
3287
+ * @see https://eslint-react.xyz/docs/rules/jsx-dollar
2820
3288
  */
2821
- 'react/ensure-forward-ref-using-ref'?: Linter.RuleEntry<[]>;
3289
+ 'react/jsx-dollar'?: Linter.RuleEntry<[]>;
2822
3290
  /**
2823
- * Enforces that the 'key' attribute is placed before the spread attribute in JSX elements.
3291
+ * Enforces that the 'key' prop is placed before the spread prop in JSX elements.
2824
3292
  * @see https://eslint-react.xyz/docs/rules/jsx-key-before-spread
2825
3293
  */
2826
3294
  'react/jsx-key-before-spread'?: Linter.RuleEntry<[]>;
3295
+ /**
3296
+ * Prevents comments from being inserted as text nodes.
3297
+ * @see https://eslint-react.xyz/docs/rules/jsx-no-comment-textnodes
3298
+ */
3299
+ 'react/jsx-no-comment-textnodes'?: Linter.RuleEntry<[]>;
2827
3300
  /**
2828
3301
  * Disallow duplicate props in JSX elements.
2829
3302
  * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
@@ -2839,6 +3312,16 @@ interface RuleOptions {
2839
3312
  * @see https://eslint-react.xyz/docs/rules/jsx-no-undef
2840
3313
  */
2841
3314
  'react/jsx-no-undef'?: Linter.RuleEntry<[]>;
3315
+ /**
3316
+ * Enforces shorthand syntax for boolean attributes.
3317
+ * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-boolean
3318
+ */
3319
+ 'react/jsx-shorthand-boolean'?: Linter.RuleEntry<ReactJsxShorthandBoolean>;
3320
+ /**
3321
+ * Enforces shorthand syntax for fragments.
3322
+ * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-fragment
3323
+ */
3324
+ 'react/jsx-shorthand-fragment'?: Linter.RuleEntry<ReactJsxShorthandFragment>;
2842
3325
  /**
2843
3326
  * Marks React variables as used when JSX is used.
2844
3327
  * @see https://eslint-react.xyz/docs/rules/jsx-uses-react
@@ -2899,21 +3382,6 @@ interface RuleOptions {
2899
3382
  * @see https://eslint-react.xyz/docs/rules/no-clone-element
2900
3383
  */
2901
3384
  'react/no-clone-element'?: Linter.RuleEntry<[]>;
2902
- /**
2903
- * Prevents comments from being inserted as text nodes.
2904
- * @see https://eslint-react.xyz/docs/rules/no-comment-textnodes
2905
- */
2906
- 'react/no-comment-textnodes'?: Linter.RuleEntry<[]>;
2907
- /**
2908
- * Disallow complex conditional rendering in JSX expressions.
2909
- * @see https://eslint-react.xyz/docs/rules/no-complex-conditional-rendering
2910
- */
2911
- 'react/no-complex-conditional-rendering'?: Linter.RuleEntry<[]>;
2912
- /**
2913
- * Disallow complex conditional rendering in JSX expressions.
2914
- * @see https://eslint-react.xyz/docs/rules/no-complex-conditional-rendering
2915
- */
2916
- 'react/no-complicated-conditional-rendering'?: Linter.RuleEntry<[]>;
2917
3385
  /**
2918
3386
  * Replace usages of `componentWillMount` with `UNSAFE_componentWillMount`.
2919
3387
  * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
@@ -2949,16 +3417,17 @@ interface RuleOptions {
2949
3417
  * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
2950
3418
  */
2951
3419
  'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>;
2952
- /**
2953
- * Disallow duplicate props in JSX elements.
2954
- * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
2955
- */
2956
- 'react/no-duplicate-jsx-props'?: Linter.RuleEntry<[]>;
2957
3420
  /**
2958
3421
  * Disallow duplicate `key` on elements in the same array or a list of `children`.
2959
3422
  * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
2960
3423
  */
2961
3424
  'react/no-duplicate-key'?: Linter.RuleEntry<[]>;
3425
+ /**
3426
+ * Disallow certain props on components.
3427
+ * @see https://eslint-react.xyz/docs/rules/no-forbidden-props
3428
+ * @deprecated
3429
+ */
3430
+ 'react/no-forbidden-props'?: Linter.RuleEntry<ReactNoForbiddenProps>;
2962
3431
  /**
2963
3432
  * Replaces usages of `forwardRef` with passing `ref` as a prop.
2964
3433
  * @see https://eslint-react.xyz/docs/rules/no-forward-ref
@@ -2999,11 +3468,6 @@ interface RuleOptions {
2999
3468
  * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
3000
3469
  */
3001
3470
  'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>;
3002
- /**
3003
- * Disallow nesting component definitions inside other components.
3004
- * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
3005
- */
3006
- 'react/no-nested-components'?: Linter.RuleEntry<[]>;
3007
3471
  /**
3008
3472
  * Disallow nesting lazy component declarations inside other components.
3009
3473
  * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations
@@ -3030,7 +3494,7 @@ interface RuleOptions {
3030
3494
  */
3031
3495
  'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>;
3032
3496
  /**
3033
- * Disallows calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
3497
+ * Disallow calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
3034
3498
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
3035
3499
  */
3036
3500
  'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>;
@@ -3039,6 +3503,26 @@ interface RuleOptions {
3039
3503
  * @see https://eslint-react.xyz/docs/rules/no-string-refs
3040
3504
  */
3041
3505
  'react/no-string-refs'?: Linter.RuleEntry<[]>;
3506
+ /**
3507
+ * Prevents the use of unnecessary `key` props on JSX elements when rendering lists.
3508
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-key
3509
+ */
3510
+ 'react/no-unnecessary-key'?: Linter.RuleEntry<[]>;
3511
+ /**
3512
+ * Disallow unnecessary usage of `useCallback`.
3513
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-callback
3514
+ */
3515
+ 'react/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>;
3516
+ /**
3517
+ * Disallow unnecessary usage of `useMemo`.
3518
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-memo
3519
+ */
3520
+ 'react/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>;
3521
+ /**
3522
+ * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
3523
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix
3524
+ */
3525
+ 'react/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>;
3042
3526
  /**
3043
3527
  * Warns the usage of `UNSAFE_componentWillMount` in class components.
3044
3528
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
@@ -3063,12 +3547,17 @@ interface RuleOptions {
3063
3547
  * Prevents using referential-type values as default props in object destructuring.
3064
3548
  * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
3065
3549
  */
3066
- 'react/no-unstable-default-props'?: Linter.RuleEntry<[]>;
3550
+ 'react/no-unstable-default-props'?: Linter.RuleEntry<ReactNoUnstableDefaultProps>;
3067
3551
  /**
3068
3552
  * Warns unused class component methods and properties.
3069
3553
  * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
3070
3554
  */
3071
3555
  'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>;
3556
+ /**
3557
+ * Warns component props that are defined but never used.
3558
+ * @see https://eslint-react.xyz/docs/rules/no-unused-props
3559
+ */
3560
+ 'react/no-unused-props'?: Linter.RuleEntry<[]>;
3072
3561
  /**
3073
3562
  * Warns unused class component state.
3074
3563
  * @see https://eslint-react.xyz/docs/rules/no-unused-state
@@ -3096,29 +3585,19 @@ interface RuleOptions {
3096
3585
  'react/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>;
3097
3586
  /**
3098
3587
  * Enforces React is imported via a namespace import.
3099
- * @see https://eslint-react.xyz/docs/rules/prefer-react-namespace-import
3588
+ * @see https://eslint-react.xyz/docs/rules/prefer-namespace-import
3100
3589
  */
3101
- 'react/prefer-react-namespace-import'?: Linter.RuleEntry<[]>;
3590
+ 'react/prefer-namespace-import'?: Linter.RuleEntry<[]>;
3102
3591
  /**
3103
3592
  * Enforces read-only props in components.
3104
3593
  * @see https://eslint-react.xyz/docs/rules/prefer-read-only-props
3105
3594
  */
3106
3595
  'react/prefer-read-only-props'?: Linter.RuleEntry<[]>;
3107
3596
  /**
3108
- * Enforces shorthand syntax for boolean attributes.
3109
- * @see https://eslint-react.xyz/docs/rules/prefer-shorthand-boolean
3110
- */
3111
- 'react/prefer-shorthand-boolean'?: Linter.RuleEntry<[]>;
3112
- /**
3113
- * Enforces shorthand syntax for fragments.
3114
- * @see https://eslint-react.xyz/docs/rules/prefer-shorthand-fragment
3115
- */
3116
- 'react/prefer-shorthand-fragment'?: Linter.RuleEntry<[]>;
3117
- /**
3118
- * Marks variables used in JSX elements as used.
3119
- * @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
3597
+ * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
3598
+ * @see https://eslint-react.xyz/docs/rules/prefer-use-state-lazy-initialization
3120
3599
  */
3121
- 'react/use-jsx-vars'?: Linter.RuleEntry<[]>;
3600
+ 'react/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>;
3122
3601
  /**
3123
3602
  * disallow confusing quantifiers
3124
3603
  * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/confusing-quantifier.html
@@ -3699,6 +4178,11 @@ interface RuleOptions {
3699
4178
  * @see https://eslint.style/rules/eol-last
3700
4179
  */
3701
4180
  'style/eol-last'?: Linter.RuleEntry<StyleEolLast>;
4181
+ /**
4182
+ * Enforce consistent spacing and line break styles inside brackets.
4183
+ * @see https://eslint.style/rules/list-style
4184
+ */
4185
+ 'style/exp-list-style'?: Linter.RuleEntry<StyleExpListStyle>;
3702
4186
  /**
3703
4187
  * Enforce line breaks between arguments of a function call
3704
4188
  * @see https://eslint.style/rules/function-call-argument-newline
@@ -3972,163 +4456,559 @@ interface RuleOptions {
3972
4456
  */
3973
4457
  'style/object-curly-newline'?: Linter.RuleEntry<StyleObjectCurlyNewline>;
3974
4458
  /**
3975
- * Enforce consistent spacing inside braces
3976
- * @see https://eslint.style/rules/object-curly-spacing
4459
+ * Enforce consistent spacing inside braces
4460
+ * @see https://eslint.style/rules/object-curly-spacing
4461
+ */
4462
+ 'style/object-curly-spacing'?: Linter.RuleEntry<StyleObjectCurlySpacing>;
4463
+ /**
4464
+ * Enforce placing object properties on separate lines
4465
+ * @see https://eslint.style/rules/object-property-newline
4466
+ */
4467
+ 'style/object-property-newline'?: Linter.RuleEntry<StyleObjectPropertyNewline>;
4468
+ /**
4469
+ * Require or disallow newlines around variable declarations
4470
+ * @see https://eslint.style/rules/one-var-declaration-per-line
4471
+ */
4472
+ 'style/one-var-declaration-per-line'?: Linter.RuleEntry<StyleOneVarDeclarationPerLine>;
4473
+ /**
4474
+ * Enforce consistent linebreak style for operators
4475
+ * @see https://eslint.style/rules/operator-linebreak
4476
+ */
4477
+ 'style/operator-linebreak'?: Linter.RuleEntry<StyleOperatorLinebreak>;
4478
+ /**
4479
+ * Require or disallow padding within blocks
4480
+ * @see https://eslint.style/rules/padded-blocks
4481
+ */
4482
+ 'style/padded-blocks'?: Linter.RuleEntry<StylePaddedBlocks>;
4483
+ /**
4484
+ * Require or disallow padding lines between statements
4485
+ * @see https://eslint.style/rules/padding-line-between-statements
4486
+ */
4487
+ 'style/padding-line-between-statements'?: Linter.RuleEntry<StylePaddingLineBetweenStatements>;
4488
+ /**
4489
+ * Require quotes around object literal, type literal, interfaces and enums property names
4490
+ * @see https://eslint.style/rules/quote-props
4491
+ */
4492
+ 'style/quote-props'?: Linter.RuleEntry<StyleQuoteProps>;
4493
+ /**
4494
+ * Enforce the consistent use of either backticks, double, or single quotes
4495
+ * @see https://eslint.style/rules/quotes
4496
+ */
4497
+ 'style/quotes'?: Linter.RuleEntry<StyleQuotes>;
4498
+ /**
4499
+ * Enforce spacing between rest and spread operators and their expressions
4500
+ * @see https://eslint.style/rules/rest-spread-spacing
4501
+ */
4502
+ 'style/rest-spread-spacing'?: Linter.RuleEntry<StyleRestSpreadSpacing>;
4503
+ /**
4504
+ * Require or disallow semicolons instead of ASI
4505
+ * @see https://eslint.style/rules/semi
4506
+ */
4507
+ 'style/semi'?: Linter.RuleEntry<StyleSemi>;
4508
+ /**
4509
+ * Enforce consistent spacing before and after semicolons
4510
+ * @see https://eslint.style/rules/semi-spacing
4511
+ */
4512
+ 'style/semi-spacing'?: Linter.RuleEntry<StyleSemiSpacing>;
4513
+ /**
4514
+ * Enforce location of semicolons
4515
+ * @see https://eslint.style/rules/semi-style
4516
+ */
4517
+ 'style/semi-style'?: Linter.RuleEntry<StyleSemiStyle>;
4518
+ /**
4519
+ * Enforce consistent spacing before blocks
4520
+ * @see https://eslint.style/rules/space-before-blocks
4521
+ */
4522
+ 'style/space-before-blocks'?: Linter.RuleEntry<StyleSpaceBeforeBlocks>;
4523
+ /**
4524
+ * Enforce consistent spacing before function parenthesis
4525
+ * @see https://eslint.style/rules/space-before-function-paren
4526
+ */
4527
+ 'style/space-before-function-paren'?: Linter.RuleEntry<StyleSpaceBeforeFunctionParen>;
4528
+ /**
4529
+ * Enforce consistent spacing inside parentheses
4530
+ * @see https://eslint.style/rules/space-in-parens
4531
+ */
4532
+ 'style/space-in-parens'?: Linter.RuleEntry<StyleSpaceInParens>;
4533
+ /**
4534
+ * Require spacing around infix operators
4535
+ * @see https://eslint.style/rules/space-infix-ops
4536
+ */
4537
+ 'style/space-infix-ops'?: Linter.RuleEntry<StyleSpaceInfixOps>;
4538
+ /**
4539
+ * Enforce consistent spacing before or after unary operators
4540
+ * @see https://eslint.style/rules/space-unary-ops
4541
+ */
4542
+ 'style/space-unary-ops'?: Linter.RuleEntry<StyleSpaceUnaryOps>;
4543
+ /**
4544
+ * Enforce consistent spacing after the `//` or `/*` in a comment
4545
+ * @see https://eslint.style/rules/spaced-comment
4546
+ */
4547
+ 'style/spaced-comment'?: Linter.RuleEntry<StyleSpacedComment>;
4548
+ /**
4549
+ * Enforce spacing around colons of switch statements
4550
+ * @see https://eslint.style/rules/switch-colon-spacing
4551
+ */
4552
+ 'style/switch-colon-spacing'?: Linter.RuleEntry<StyleSwitchColonSpacing>;
4553
+ /**
4554
+ * Require or disallow spacing around embedded expressions of template strings
4555
+ * @see https://eslint.style/rules/template-curly-spacing
4556
+ */
4557
+ 'style/template-curly-spacing'?: Linter.RuleEntry<StyleTemplateCurlySpacing>;
4558
+ /**
4559
+ * Require or disallow spacing between template tags and their literals
4560
+ * @see https://eslint.style/rules/template-tag-spacing
4561
+ */
4562
+ 'style/template-tag-spacing'?: Linter.RuleEntry<StyleTemplateTagSpacing>;
4563
+ /**
4564
+ * Require consistent spacing around type annotations
4565
+ * @see https://eslint.style/rules/type-annotation-spacing
4566
+ */
4567
+ 'style/type-annotation-spacing'?: Linter.RuleEntry<StyleTypeAnnotationSpacing>;
4568
+ /**
4569
+ * Enforces consistent spacing inside TypeScript type generics
4570
+ * @see https://eslint.style/rules/type-generic-spacing
4571
+ */
4572
+ 'style/type-generic-spacing'?: Linter.RuleEntry<[]>;
4573
+ /**
4574
+ * Expect space before the type declaration in the named tuple
4575
+ * @see https://eslint.style/rules/type-named-tuple-spacing
4576
+ */
4577
+ 'style/type-named-tuple-spacing'?: Linter.RuleEntry<[]>;
4578
+ /**
4579
+ * Require parentheses around immediate `function` invocations
4580
+ * @see https://eslint.style/rules/wrap-iife
4581
+ */
4582
+ 'style/wrap-iife'?: Linter.RuleEntry<StyleWrapIife>;
4583
+ /**
4584
+ * Require parenthesis around regex literals
4585
+ * @see https://eslint.style/rules/wrap-regex
4586
+ */
4587
+ 'style/wrap-regex'?: Linter.RuleEntry<[]>;
4588
+ /**
4589
+ * Require or disallow spacing around the `*` in `yield*` expressions
4590
+ * @see https://eslint.style/rules/yield-star-spacing
4591
+ */
4592
+ 'style/yield-star-spacing'?: Linter.RuleEntry<StyleYieldStarSpacing>;
4593
+ /**
4594
+ * Enforce spacing around colons of switch statements
4595
+ * @see https://eslint.org/docs/latest/rules/switch-colon-spacing
4596
+ * @deprecated
4597
+ */
4598
+ 'switch-colon-spacing'?: Linter.RuleEntry<SwitchColonSpacing>;
4599
+ /**
4600
+ * Require symbol descriptions
4601
+ * @see https://eslint.org/docs/latest/rules/symbol-description
4602
+ */
4603
+ 'symbol-description'?: Linter.RuleEntry<[]>;
4604
+ /**
4605
+ * Require or disallow spacing around embedded expressions of template strings
4606
+ * @see https://eslint.org/docs/latest/rules/template-curly-spacing
4607
+ * @deprecated
4608
+ */
4609
+ 'template-curly-spacing'?: Linter.RuleEntry<TemplateCurlySpacing>;
4610
+ /**
4611
+ * Require or disallow spacing between template tags and their literals
4612
+ * @see https://eslint.org/docs/latest/rules/template-tag-spacing
4613
+ * @deprecated
4614
+ */
4615
+ 'template-tag-spacing'?: Linter.RuleEntry<TemplateTagSpacing>;
4616
+ /**
4617
+ * enforce using `.each` or `.for` consistently
4618
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-each-for.md
4619
+ */
4620
+ 'test/consistent-each-for'?: Linter.RuleEntry<TestConsistentEachFor>;
4621
+ /**
4622
+ * require test file pattern
4623
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-filename.md
4624
+ */
4625
+ 'test/consistent-test-filename'?: Linter.RuleEntry<TestConsistentTestFilename>;
4626
+ /**
4627
+ * enforce using test or it but not both
4628
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-it.md
4629
+ */
4630
+ 'test/consistent-test-it'?: Linter.RuleEntry<TestConsistentTestIt>;
4631
+ /**
4632
+ * enforce using vitest or vi but not both
4633
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-vitest-vi.md
4634
+ */
4635
+ 'test/consistent-vitest-vi'?: Linter.RuleEntry<TestConsistentVitestVi>;
4636
+ /**
4637
+ * enforce having expectation in test body
4638
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/expect-expect.md
4639
+ */
4640
+ 'test/expect-expect'?: Linter.RuleEntry<TestExpectExpect>;
4641
+ /**
4642
+ * enforce hoisted APIs to be on top of the file
4643
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/hoisted-apis-on-top.md
4644
+ */
4645
+ 'test/hoisted-apis-on-top'?: Linter.RuleEntry<[]>;
4646
+ /**
4647
+ * enforce a maximum number of expect per test
4648
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/max-expects.md
4649
+ */
4650
+ 'test/max-expects'?: Linter.RuleEntry<TestMaxExpects>;
4651
+ /**
4652
+ * require describe block to be less than set max value or default value
4653
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/max-nested-describe.md
4654
+ */
4655
+ 'test/max-nested-describe'?: Linter.RuleEntry<TestMaxNestedDescribe>;
4656
+ /**
4657
+ * disallow alias methods
4658
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-alias-methods.md
4659
+ */
4660
+ 'test/no-alias-methods'?: Linter.RuleEntry<[]>;
4661
+ /**
4662
+ * disallow commented out tests
4663
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-commented-out-tests.md
4664
+ */
4665
+ 'test/no-commented-out-tests'?: Linter.RuleEntry<[]>;
4666
+ /**
4667
+ * disallow conditional expects
4668
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-expect.md
4669
+ */
4670
+ 'test/no-conditional-expect'?: Linter.RuleEntry<[]>;
4671
+ /**
4672
+ * disallow conditional tests
4673
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-in-test.md
4674
+ */
4675
+ 'test/no-conditional-in-test'?: Linter.RuleEntry<[]>;
4676
+ /**
4677
+ * disallow conditional tests
4678
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-tests.md
4679
+ */
4680
+ 'test/no-conditional-tests'?: Linter.RuleEntry<[]>;
4681
+ /**
4682
+ * disallow disabled tests
4683
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-disabled-tests.md
4684
+ */
4685
+ 'test/no-disabled-tests'?: Linter.RuleEntry<[]>;
4686
+ /**
4687
+ * disallow using a callback in asynchronous tests and hooks
4688
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-done-callback.md
4689
+ * @deprecated
4690
+ */
4691
+ 'test/no-done-callback'?: Linter.RuleEntry<[]>;
4692
+ /**
4693
+ * disallow duplicate hooks and teardown hooks
4694
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-duplicate-hooks.md
4695
+ */
4696
+ 'test/no-duplicate-hooks'?: Linter.RuleEntry<[]>;
4697
+ /**
4698
+ * disallow focused tests
4699
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-focused-tests.md
4700
+ */
4701
+ 'test/no-focused-tests'?: Linter.RuleEntry<TestNoFocusedTests>;
4702
+ /**
4703
+ * disallow setup and teardown hooks
4704
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-hooks.md
4705
+ */
4706
+ 'test/no-hooks'?: Linter.RuleEntry<TestNoHooks>;
4707
+ /**
4708
+ * disallow identical titles
4709
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-identical-title.md
4710
+ */
4711
+ 'test/no-identical-title'?: Linter.RuleEntry<[]>;
4712
+ /**
4713
+ * disallow importing `node:test`
4714
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-import-node-test.md
4715
+ */
4716
+ 'test/no-import-node-test'?: Linter.RuleEntry<[]>;
4717
+ /**
4718
+ * disallow importing Vitest globals
4719
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-importing-vitest-globals.md
4720
+ */
4721
+ 'test/no-importing-vitest-globals'?: Linter.RuleEntry<[]>;
4722
+ /**
4723
+ * disallow string interpolation in snapshots
4724
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-interpolation-in-snapshots.md
4725
+ */
4726
+ 'test/no-interpolation-in-snapshots'?: Linter.RuleEntry<[]>;
4727
+ /**
4728
+ * disallow large snapshots
4729
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-large-snapshots.md
4730
+ */
4731
+ 'test/no-large-snapshots'?: Linter.RuleEntry<TestNoLargeSnapshots>;
4732
+ /**
4733
+ * disallow importing from __mocks__ directory
4734
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-mocks-import.md
4735
+ */
4736
+ 'test/no-mocks-import'?: Linter.RuleEntry<[]>;
4737
+ /**
4738
+ * disallow .only blocks in tests
4739
+ * @see https://github.com/levibuzolic/eslint-plugin-no-only-tests
4740
+ */
4741
+ 'test/no-only-tests'?: Linter.RuleEntry<TestNoOnlyTests>;
4742
+ /**
4743
+ * disallow the use of certain matchers
4744
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-restricted-matchers.md
4745
+ */
4746
+ 'test/no-restricted-matchers'?: Linter.RuleEntry<TestNoRestrictedMatchers>;
4747
+ /**
4748
+ * disallow specific `vi.` methods
4749
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-restricted-vi-methods.md
4750
+ */
4751
+ 'test/no-restricted-vi-methods'?: Linter.RuleEntry<TestNoRestrictedViMethods>;
4752
+ /**
4753
+ * disallow using `expect` outside of `it` or `test` blocks
4754
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-standalone-expect.md
4755
+ */
4756
+ 'test/no-standalone-expect'?: Linter.RuleEntry<TestNoStandaloneExpect>;
4757
+ /**
4758
+ * disallow using the `f` and `x` prefixes in favour of `.only` and `.skip`
4759
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-prefixes.md
4760
+ */
4761
+ 'test/no-test-prefixes'?: Linter.RuleEntry<[]>;
4762
+ /**
4763
+ * disallow return statements in tests
4764
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-return-statement.md
4765
+ */
4766
+ 'test/no-test-return-statement'?: Linter.RuleEntry<[]>;
4767
+ /**
4768
+ * Enforce padding around `afterAll` blocks
4769
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-all-blocks.md
4770
+ */
4771
+ 'test/padding-around-after-all-blocks'?: Linter.RuleEntry<[]>;
4772
+ /**
4773
+ * Enforce padding around `afterEach` blocks
4774
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-each-blocks.md
4775
+ */
4776
+ 'test/padding-around-after-each-blocks'?: Linter.RuleEntry<[]>;
4777
+ /**
4778
+ * Enforce padding around vitest functions
4779
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-all.md
4780
+ */
4781
+ 'test/padding-around-all'?: Linter.RuleEntry<[]>;
4782
+ /**
4783
+ * Enforce padding around `beforeAll` blocks
4784
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-before-all-blocks.md
4785
+ */
4786
+ 'test/padding-around-before-all-blocks'?: Linter.RuleEntry<[]>;
4787
+ /**
4788
+ * Enforce padding around `beforeEach` blocks
4789
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-before-each-blocks.md
4790
+ */
4791
+ 'test/padding-around-before-each-blocks'?: Linter.RuleEntry<[]>;
4792
+ /**
4793
+ * Enforce padding around `describe` blocks
4794
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-describe-blocks.md
4795
+ */
4796
+ 'test/padding-around-describe-blocks'?: Linter.RuleEntry<[]>;
4797
+ /**
4798
+ * Enforce padding around `expect` groups
4799
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-expect-groups.md
4800
+ */
4801
+ 'test/padding-around-expect-groups'?: Linter.RuleEntry<[]>;
4802
+ /**
4803
+ * Enforce padding around `test` blocks
4804
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-test-blocks.md
4805
+ */
4806
+ 'test/padding-around-test-blocks'?: Linter.RuleEntry<[]>;
4807
+ /**
4808
+ * Prefer `toHaveBeenCalledExactlyOnceWith` over `toHaveBeenCalledOnce` and `toHaveBeenCalledWith`
4809
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-exactly-once-with.md
4810
+ */
4811
+ 'test/prefer-called-exactly-once-with'?: Linter.RuleEntry<[]>;
4812
+ /**
4813
+ * enforce using `toBeCalledOnce()` or `toHaveBeenCalledOnce()`
4814
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-once.md
4815
+ */
4816
+ 'test/prefer-called-once'?: Linter.RuleEntry<[]>;
4817
+ /**
4818
+ * enforce using `toBeCalledTimes(1)` or `toHaveBeenCalledTimes(1)`
4819
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-times.md
4820
+ */
4821
+ 'test/prefer-called-times'?: Linter.RuleEntry<[]>;
4822
+ /**
4823
+ * enforce using `toBeCalledWith()` or `toHaveBeenCalledWith()`
4824
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-with.md
4825
+ */
4826
+ 'test/prefer-called-with'?: Linter.RuleEntry<[]>;
4827
+ /**
4828
+ * enforce using the built-in comparison matchers
4829
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-comparison-matcher.md
4830
+ */
4831
+ 'test/prefer-comparison-matcher'?: Linter.RuleEntry<[]>;
4832
+ /**
4833
+ * enforce using a function as a describe title over an equivalent string
4834
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-describe-function-title.md
4835
+ */
4836
+ 'test/prefer-describe-function-title'?: Linter.RuleEntry<[]>;
4837
+ /**
4838
+ * enforce using `each` rather than manual loops
4839
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-each.md
4840
+ */
4841
+ 'test/prefer-each'?: Linter.RuleEntry<[]>;
4842
+ /**
4843
+ * enforce using the built-in equality matchers
4844
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-equality-matcher.md
4845
+ */
4846
+ 'test/prefer-equality-matcher'?: Linter.RuleEntry<[]>;
4847
+ /**
4848
+ * enforce using expect assertions instead of callbacks
4849
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-assertions.md
4850
+ */
4851
+ 'test/prefer-expect-assertions'?: Linter.RuleEntry<TestPreferExpectAssertions>;
4852
+ /**
4853
+ * enforce using `expect().resolves` over `expect(await ...)` syntax
4854
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-resolves.md
4855
+ */
4856
+ 'test/prefer-expect-resolves'?: Linter.RuleEntry<[]>;
4857
+ /**
4858
+ * enforce using `expectTypeOf` instead of `expect(typeof ...)`
4859
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-type-of.md
3977
4860
  */
3978
- 'style/object-curly-spacing'?: Linter.RuleEntry<StyleObjectCurlySpacing>;
4861
+ 'test/prefer-expect-type-of'?: Linter.RuleEntry<[]>;
3979
4862
  /**
3980
- * Enforce placing object properties on separate lines
3981
- * @see https://eslint.style/rules/object-property-newline
4863
+ * enforce having hooks in consistent order
4864
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-in-order.md
3982
4865
  */
3983
- 'style/object-property-newline'?: Linter.RuleEntry<StyleObjectPropertyNewline>;
4866
+ 'test/prefer-hooks-in-order'?: Linter.RuleEntry<[]>;
3984
4867
  /**
3985
- * Require or disallow newlines around variable declarations
3986
- * @see https://eslint.style/rules/one-var-declaration-per-line
4868
+ * enforce having hooks before any test cases
4869
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-on-top.md
3987
4870
  */
3988
- 'style/one-var-declaration-per-line'?: Linter.RuleEntry<StyleOneVarDeclarationPerLine>;
4871
+ 'test/prefer-hooks-on-top'?: Linter.RuleEntry<[]>;
3989
4872
  /**
3990
- * Enforce consistent linebreak style for operators
3991
- * @see https://eslint.style/rules/operator-linebreak
4873
+ * prefer dynamic import in mock
4874
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-import-in-mock.md
3992
4875
  */
3993
- 'style/operator-linebreak'?: Linter.RuleEntry<StyleOperatorLinebreak>;
4876
+ 'test/prefer-import-in-mock'?: Linter.RuleEntry<[]>;
3994
4877
  /**
3995
- * Require or disallow padding within blocks
3996
- * @see https://eslint.style/rules/padded-blocks
4878
+ * enforce importing Vitest globals
4879
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-importing-vitest-globals.md
3997
4880
  */
3998
- 'style/padded-blocks'?: Linter.RuleEntry<StylePaddedBlocks>;
4881
+ 'test/prefer-importing-vitest-globals'?: Linter.RuleEntry<[]>;
3999
4882
  /**
4000
- * Require or disallow padding lines between statements
4001
- * @see https://eslint.style/rules/padding-line-between-statements
4883
+ * enforce lowercase titles
4884
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-lowercase-title.md
4002
4885
  */
4003
- 'style/padding-line-between-statements'?: Linter.RuleEntry<StylePaddingLineBetweenStatements>;
4886
+ 'test/prefer-lowercase-title'?: Linter.RuleEntry<TestPreferLowercaseTitle>;
4004
4887
  /**
4005
- * Require quotes around object literal, type literal, interfaces and enums property names
4006
- * @see https://eslint.style/rules/quote-props
4888
+ * enforce mock resolved/rejected shorthands for promises
4889
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-promise-shorthand.md
4007
4890
  */
4008
- 'style/quote-props'?: Linter.RuleEntry<StyleQuoteProps>;
4891
+ 'test/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>;
4009
4892
  /**
4010
- * Enforce the consistent use of either backticks, double, or single quotes
4011
- * @see https://eslint.style/rules/quotes
4893
+ * enforce including a hint with external snapshots
4894
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-snapshot-hint.md
4012
4895
  */
4013
- 'style/quotes'?: Linter.RuleEntry<StyleQuotes>;
4896
+ 'test/prefer-snapshot-hint'?: Linter.RuleEntry<TestPreferSnapshotHint>;
4014
4897
  /**
4015
- * Enforce spacing between rest and spread operators and their expressions
4016
- * @see https://eslint.style/rules/rest-spread-spacing
4898
+ * enforce using `vi.spyOn`
4899
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-spy-on.md
4017
4900
  */
4018
- 'style/rest-spread-spacing'?: Linter.RuleEntry<StyleRestSpreadSpacing>;
4901
+ 'test/prefer-spy-on'?: Linter.RuleEntry<[]>;
4019
4902
  /**
4020
- * Require or disallow semicolons instead of ASI
4021
- * @see https://eslint.style/rules/semi
4903
+ * enforce using `toBe(true)` and `toBe(false)` over matchers that coerce types to boolean
4904
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-strict-boolean-matchers.md
4022
4905
  */
4023
- 'style/semi'?: Linter.RuleEntry<StyleSemi>;
4906
+ 'test/prefer-strict-boolean-matchers'?: Linter.RuleEntry<[]>;
4024
4907
  /**
4025
- * Enforce consistent spacing before and after semicolons
4026
- * @see https://eslint.style/rules/semi-spacing
4908
+ * enforce strict equal over equal
4909
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-strict-equal.md
4027
4910
  */
4028
- 'style/semi-spacing'?: Linter.RuleEntry<StyleSemiSpacing>;
4911
+ 'test/prefer-strict-equal'?: Linter.RuleEntry<[]>;
4029
4912
  /**
4030
- * Enforce location of semicolons
4031
- * @see https://eslint.style/rules/semi-style
4913
+ * enforce using toBe()
4914
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be.md
4032
4915
  */
4033
- 'style/semi-style'?: Linter.RuleEntry<StyleSemiStyle>;
4916
+ 'test/prefer-to-be'?: Linter.RuleEntry<[]>;
4034
4917
  /**
4035
- * Enforce consistent spacing before blocks
4036
- * @see https://eslint.style/rules/space-before-blocks
4918
+ * enforce using toBeFalsy()
4919
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-falsy.md
4037
4920
  */
4038
- 'style/space-before-blocks'?: Linter.RuleEntry<StyleSpaceBeforeBlocks>;
4921
+ 'test/prefer-to-be-falsy'?: Linter.RuleEntry<[]>;
4039
4922
  /**
4040
- * Enforce consistent spacing before function parenthesis
4041
- * @see https://eslint.style/rules/space-before-function-paren
4923
+ * enforce using toBeObject()
4924
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-object.md
4042
4925
  */
4043
- 'style/space-before-function-paren'?: Linter.RuleEntry<StyleSpaceBeforeFunctionParen>;
4926
+ 'test/prefer-to-be-object'?: Linter.RuleEntry<[]>;
4044
4927
  /**
4045
- * Enforce consistent spacing inside parentheses
4046
- * @see https://eslint.style/rules/space-in-parens
4928
+ * enforce using `toBeTruthy`
4929
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-truthy.md
4047
4930
  */
4048
- 'style/space-in-parens'?: Linter.RuleEntry<StyleSpaceInParens>;
4931
+ 'test/prefer-to-be-truthy'?: Linter.RuleEntry<[]>;
4049
4932
  /**
4050
- * Require spacing around infix operators
4051
- * @see https://eslint.style/rules/space-infix-ops
4933
+ * enforce using toContain()
4934
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-contain.md
4052
4935
  */
4053
- 'style/space-infix-ops'?: Linter.RuleEntry<StyleSpaceInfixOps>;
4936
+ 'test/prefer-to-contain'?: Linter.RuleEntry<[]>;
4054
4937
  /**
4055
- * Enforce consistent spacing before or after unary operators
4056
- * @see https://eslint.style/rules/space-unary-ops
4938
+ * enforce using toHaveLength()
4939
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md
4057
4940
  */
4058
- 'style/space-unary-ops'?: Linter.RuleEntry<StyleSpaceUnaryOps>;
4941
+ 'test/prefer-to-have-length'?: Linter.RuleEntry<[]>;
4059
4942
  /**
4060
- * Enforce consistent spacing after the `//` or `/*` in a comment
4061
- * @see https://eslint.style/rules/spaced-comment
4943
+ * enforce using `test.todo`
4944
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-todo.md
4062
4945
  */
4063
- 'style/spaced-comment'?: Linter.RuleEntry<StyleSpacedComment>;
4946
+ 'test/prefer-todo'?: Linter.RuleEntry<[]>;
4064
4947
  /**
4065
- * Enforce spacing around colons of switch statements
4066
- * @see https://eslint.style/rules/switch-colon-spacing
4948
+ * require `vi.mocked()` over `fn as Mock`
4949
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-vi-mocked.md
4067
4950
  */
4068
- 'style/switch-colon-spacing'?: Linter.RuleEntry<StyleSwitchColonSpacing>;
4951
+ 'test/prefer-vi-mocked'?: Linter.RuleEntry<[]>;
4069
4952
  /**
4070
- * Require or disallow spacing around embedded expressions of template strings
4071
- * @see https://eslint.style/rules/template-curly-spacing
4953
+ * ensure that every `expect.poll` call is awaited
4954
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-awaited-expect-poll.md
4072
4955
  */
4073
- 'style/template-curly-spacing'?: Linter.RuleEntry<StyleTemplateCurlySpacing>;
4956
+ 'test/require-awaited-expect-poll'?: Linter.RuleEntry<[]>;
4074
4957
  /**
4075
- * Require or disallow spacing between template tags and their literals
4076
- * @see https://eslint.style/rules/template-tag-spacing
4958
+ * require setup and teardown to be within a hook
4959
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-hook.md
4077
4960
  */
4078
- 'style/template-tag-spacing'?: Linter.RuleEntry<StyleTemplateTagSpacing>;
4961
+ 'test/require-hook'?: Linter.RuleEntry<TestRequireHook>;
4079
4962
  /**
4080
- * Require consistent spacing around type annotations
4081
- * @see https://eslint.style/rules/type-annotation-spacing
4963
+ * require usage of import in vi.mock()
4964
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-import-vi-mock.md
4082
4965
  */
4083
- 'style/type-annotation-spacing'?: Linter.RuleEntry<StyleTypeAnnotationSpacing>;
4966
+ 'test/require-import-vi-mock'?: Linter.RuleEntry<[]>;
4084
4967
  /**
4085
- * Enforces consistent spacing inside TypeScript type generics
4086
- * @see https://eslint.style/rules/type-generic-spacing
4968
+ * require local Test Context for concurrent snapshot tests
4969
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-local-test-context-for-concurrent-snapshots.md
4087
4970
  */
4088
- 'style/type-generic-spacing'?: Linter.RuleEntry<[]>;
4971
+ 'test/require-local-test-context-for-concurrent-snapshots'?: Linter.RuleEntry<[]>;
4089
4972
  /**
4090
- * Expect space before the type declaration in the named tuple
4091
- * @see https://eslint.style/rules/type-named-tuple-spacing
4973
+ * enforce using type parameters with vitest mock functions
4974
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-mock-type-parameters.md
4092
4975
  */
4093
- 'style/type-named-tuple-spacing'?: Linter.RuleEntry<[]>;
4976
+ 'test/require-mock-type-parameters'?: Linter.RuleEntry<TestRequireMockTypeParameters>;
4094
4977
  /**
4095
- * Require parentheses around immediate `function` invocations
4096
- * @see https://eslint.style/rules/wrap-iife
4978
+ * require toThrow() to be called with an error message
4979
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-to-throw-message.md
4097
4980
  */
4098
- 'style/wrap-iife'?: Linter.RuleEntry<StyleWrapIife>;
4981
+ 'test/require-to-throw-message'?: Linter.RuleEntry<[]>;
4099
4982
  /**
4100
- * Require parenthesis around regex literals
4101
- * @see https://eslint.style/rules/wrap-regex
4983
+ * enforce that all tests are in a top-level describe
4984
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-top-level-describe.md
4102
4985
  */
4103
- 'style/wrap-regex'?: Linter.RuleEntry<[]>;
4986
+ 'test/require-top-level-describe'?: Linter.RuleEntry<TestRequireTopLevelDescribe>;
4104
4987
  /**
4105
- * Require or disallow spacing around the `*` in `yield*` expressions
4106
- * @see https://eslint.style/rules/yield-star-spacing
4988
+ * enforce valid describe callback
4989
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-describe-callback.md
4107
4990
  */
4108
- 'style/yield-star-spacing'?: Linter.RuleEntry<StyleYieldStarSpacing>;
4991
+ 'test/valid-describe-callback'?: Linter.RuleEntry<[]>;
4109
4992
  /**
4110
- * Enforce spacing around colons of switch statements
4111
- * @see https://eslint.org/docs/latest/rules/switch-colon-spacing
4112
- * @deprecated
4993
+ * enforce valid `expect()` usage
4994
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-expect.md
4113
4995
  */
4114
- 'switch-colon-spacing'?: Linter.RuleEntry<SwitchColonSpacing>;
4996
+ 'test/valid-expect'?: Linter.RuleEntry<TestValidExpect>;
4115
4997
  /**
4116
- * Require symbol descriptions
4117
- * @see https://eslint.org/docs/latest/rules/symbol-description
4998
+ * require promises that have expectations in their chain to be valid
4999
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-expect-in-promise.md
4118
5000
  */
4119
- 'symbol-description'?: Linter.RuleEntry<[]>;
5001
+ 'test/valid-expect-in-promise'?: Linter.RuleEntry<[]>;
4120
5002
  /**
4121
- * Require or disallow spacing around embedded expressions of template strings
4122
- * @see https://eslint.org/docs/latest/rules/template-curly-spacing
4123
- * @deprecated
5003
+ * enforce valid titles
5004
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-title.md
4124
5005
  */
4125
- 'template-curly-spacing'?: Linter.RuleEntry<TemplateCurlySpacing>;
5006
+ 'test/valid-title'?: Linter.RuleEntry<TestValidTitle>;
4126
5007
  /**
4127
- * Require or disallow spacing between template tags and their literals
4128
- * @see https://eslint.org/docs/latest/rules/template-tag-spacing
4129
- * @deprecated
5008
+ * disallow `.todo` usage
5009
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/warn-todo.md
4130
5010
  */
4131
- 'template-tag-spacing'?: Linter.RuleEntry<TemplateTagSpacing>;
5011
+ 'test/warn-todo'?: Linter.RuleEntry<[]>;
4132
5012
  /**
4133
5013
  * enforce linebreaks after opening and before closing array brackets
4134
5014
  * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/array-bracket-newline.html
@@ -4662,7 +5542,7 @@ interface RuleOptions {
4662
5542
  * Disallow member access on a value with type `any`
4663
5543
  * @see https://typescript-eslint.io/rules/no-unsafe-member-access
4664
5544
  */
4665
- 'ts/no-unsafe-member-access'?: Linter.RuleEntry<[]>;
5545
+ 'ts/no-unsafe-member-access'?: Linter.RuleEntry<TsNoUnsafeMemberAccess>;
4666
5546
  /**
4667
5547
  * Disallow returning a value with type `any` from a function
4668
5548
  * @see https://typescript-eslint.io/rules/no-unsafe-return
@@ -4683,6 +5563,11 @@ interface RuleOptions {
4683
5563
  * @see https://typescript-eslint.io/rules/no-unused-expressions
4684
5564
  */
4685
5565
  'ts/no-unused-expressions'?: Linter.RuleEntry<TsNoUnusedExpressions>;
5566
+ /**
5567
+ * Disallow unused private class members
5568
+ * @see https://typescript-eslint.io/rules/no-unused-private-class-members
5569
+ */
5570
+ 'ts/no-unused-private-class-members'?: Linter.RuleEntry<[]>;
4686
5571
  /**
4687
5572
  * Disallow unused variables
4688
5573
  * @see https://typescript-eslint.io/rules/no-unused-vars
@@ -4909,690 +5794,725 @@ interface RuleOptions {
4909
5794
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>;
4910
5795
  /**
4911
5796
  * Improve regexes by making them shorter, consistent, and safer.
4912
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/better-regex.md
5797
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/better-regex.md
4913
5798
  */
4914
5799
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>;
4915
5800
  /**
4916
5801
  * Enforce a specific parameter name in catch clauses.
4917
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/catch-error-name.md
5802
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/catch-error-name.md
4918
5803
  */
4919
5804
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
4920
5805
  /**
4921
5806
  * Enforce consistent assertion style with `node:assert`.
4922
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-assert.md
5807
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-assert.md
4923
5808
  */
4924
5809
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
4925
5810
  /**
4926
5811
  * Prefer passing `Date` directly to the constructor when cloning.
4927
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-date-clone.md
5812
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-date-clone.md
4928
5813
  */
4929
5814
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
4930
5815
  /**
4931
5816
  * Use destructured variables over properties.
4932
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-destructuring.md
5817
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-destructuring.md
4933
5818
  */
4934
5819
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
4935
5820
  /**
4936
5821
  * Prefer consistent types when spreading a ternary in an array literal.
4937
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-empty-array-spread.md
5822
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-empty-array-spread.md
4938
5823
  */
4939
5824
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
4940
5825
  /**
4941
5826
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
4942
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-existence-index-check.md
5827
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-existence-index-check.md
4943
5828
  */
4944
5829
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
4945
5830
  /**
4946
5831
  * Move function definitions to the highest possible scope.
4947
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-function-scoping.md
5832
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-function-scoping.md
4948
5833
  */
4949
5834
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
4950
5835
  /**
4951
5836
  * Enforce correct `Error` subclassing.
4952
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/custom-error-definition.md
5837
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/custom-error-definition.md
4953
5838
  */
4954
5839
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
4955
5840
  /**
4956
5841
  * Enforce no spaces between braces.
4957
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/empty-brace-spaces.md
5842
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/empty-brace-spaces.md
4958
5843
  */
4959
5844
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
4960
5845
  /**
4961
5846
  * Enforce passing a `message` value when creating a built-in error.
4962
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/error-message.md
5847
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/error-message.md
4963
5848
  */
4964
5849
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
4965
5850
  /**
4966
5851
  * Require escape sequences to use uppercase or lowercase values.
4967
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/escape-case.md
5852
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/escape-case.md
4968
5853
  */
4969
5854
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
4970
5855
  /**
4971
5856
  * Add expiration conditions to TODO comments.
4972
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/expiring-todo-comments.md
5857
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/expiring-todo-comments.md
4973
5858
  */
4974
5859
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
4975
5860
  /**
4976
5861
  * Enforce explicitly comparing the `length` or `size` property of a value.
4977
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/explicit-length-check.md
5862
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/explicit-length-check.md
4978
5863
  */
4979
5864
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
4980
5865
  /**
4981
5866
  * Enforce a case style for filenames.
4982
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/filename-case.md
5867
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/filename-case.md
4983
5868
  */
4984
5869
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
4985
5870
  /**
4986
5871
  * Enforce specific import styles per module.
4987
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/import-style.md
5872
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/import-style.md
4988
5873
  */
4989
5874
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
4990
5875
  /**
4991
5876
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
4992
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/new-for-builtins.md
5877
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/new-for-builtins.md
4993
5878
  */
4994
5879
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
4995
5880
  /**
4996
5881
  * Enforce specifying rules to disable in `eslint-disable` comments.
4997
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-abusive-eslint-disable.md
5882
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-abusive-eslint-disable.md
4998
5883
  */
4999
5884
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
5000
5885
  /**
5001
5886
  * Disallow recursive access to `this` within getters and setters.
5002
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-accessor-recursion.md
5887
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-accessor-recursion.md
5003
5888
  */
5004
5889
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
5005
5890
  /**
5006
5891
  * Disallow anonymous functions and classes as the default export.
5007
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-anonymous-default-export.md
5892
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-anonymous-default-export.md
5008
5893
  */
5009
5894
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
5010
5895
  /**
5011
5896
  * Prevent passing a function reference directly to iterator methods.
5012
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-callback-reference.md
5897
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-callback-reference.md
5013
5898
  */
5014
5899
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>;
5015
5900
  /**
5016
5901
  * Prefer `for…of` over the `forEach` method.
5017
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-for-each.md
5902
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-for-each.md
5018
5903
  */
5019
5904
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
5020
5905
  /**
5021
5906
  * Disallow using the `this` argument in array methods.
5022
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-method-this-argument.md
5907
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-method-this-argument.md
5023
5908
  */
5024
5909
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
5025
5910
  /**
5026
5911
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
5027
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-array-push-push
5912
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-array-push-push
5028
5913
  * @deprecated
5029
5914
  */
5030
5915
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
5031
5916
  /**
5032
5917
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
5033
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reduce.md
5918
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-reduce.md
5034
5919
  */
5035
5920
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
5036
5921
  /**
5037
5922
  * Prefer `Array#toReversed()` over `Array#reverse()`.
5038
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reverse.md
5923
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-reverse.md
5039
5924
  */
5040
5925
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
5926
+ /**
5927
+ * Prefer `Array#toSorted()` over `Array#sort()`.
5928
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-sort.md
5929
+ */
5930
+ 'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
5041
5931
  /**
5042
5932
  * Disallow member access from await expression.
5043
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-expression-member.md
5933
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-await-expression-member.md
5044
5934
  */
5045
5935
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
5046
5936
  /**
5047
5937
  * Disallow using `await` in `Promise` method parameters.
5048
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-in-promise-methods.md
5938
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-await-in-promise-methods.md
5049
5939
  */
5050
5940
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
5051
5941
  /**
5052
5942
  * Do not use leading/trailing space between `console.log` parameters.
5053
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-console-spaces.md
5943
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-console-spaces.md
5054
5944
  */
5055
5945
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
5056
5946
  /**
5057
5947
  * Do not use `document.cookie` directly.
5058
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-document-cookie.md
5948
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-document-cookie.md
5059
5949
  */
5060
5950
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
5061
5951
  /**
5062
5952
  * Disallow empty files.
5063
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-empty-file.md
5953
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-empty-file.md
5064
5954
  */
5065
5955
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>;
5066
5956
  /**
5067
5957
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
5068
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-for-loop.md
5958
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-for-loop.md
5069
5959
  */
5070
5960
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
5071
5961
  /**
5072
5962
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
5073
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-hex-escape.md
5963
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-hex-escape.md
5074
5964
  */
5075
5965
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
5966
+ /**
5967
+ * Disallow immediate mutation after variable assignment.
5968
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-immediate-mutation.md
5969
+ */
5970
+ 'unicorn/no-immediate-mutation'?: Linter.RuleEntry<[]>;
5076
5971
  /**
5077
5972
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
5078
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-instanceof-array
5973
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-instanceof-array
5079
5974
  * @deprecated
5080
5975
  */
5081
5976
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
5082
5977
  /**
5083
5978
  * Disallow `instanceof` with built-in objects
5084
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-instanceof-builtins.md
5979
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-instanceof-builtins.md
5085
5980
  */
5086
5981
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
5087
5982
  /**
5088
5983
  * Disallow invalid options in `fetch()` and `new Request()`.
5089
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-fetch-options.md
5984
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-invalid-fetch-options.md
5090
5985
  */
5091
5986
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
5092
5987
  /**
5093
5988
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
5094
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-remove-event-listener.md
5989
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-invalid-remove-event-listener.md
5095
5990
  */
5096
5991
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
5097
5992
  /**
5098
5993
  * Disallow identifiers starting with `new` or `class`.
5099
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-keyword-prefix.md
5994
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-keyword-prefix.md
5100
5995
  */
5101
5996
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
5102
5997
  /**
5103
5998
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
5104
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-length-as-slice-end
5999
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-length-as-slice-end
5105
6000
  * @deprecated
5106
6001
  */
5107
6002
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
5108
6003
  /**
5109
6004
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
5110
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-lonely-if.md
6005
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-lonely-if.md
5111
6006
  */
5112
6007
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
5113
6008
  /**
5114
6009
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
5115
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-magic-array-flat-depth.md
6010
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-magic-array-flat-depth.md
5116
6011
  */
5117
6012
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
5118
6013
  /**
5119
6014
  * Disallow named usage of default import and export.
5120
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-named-default.md
6015
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-named-default.md
5121
6016
  */
5122
6017
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
5123
6018
  /**
5124
6019
  * Disallow negated conditions.
5125
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negated-condition.md
6020
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-negated-condition.md
5126
6021
  */
5127
6022
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
5128
6023
  /**
5129
6024
  * Disallow negated expression in equality check.
5130
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negation-in-equality-check.md
6025
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-negation-in-equality-check.md
5131
6026
  */
5132
6027
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
5133
6028
  /**
5134
6029
  * Disallow nested ternary expressions.
5135
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-nested-ternary.md
6030
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-nested-ternary.md
5136
6031
  */
5137
6032
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
5138
6033
  /**
5139
6034
  * Disallow `new Array()`.
5140
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-array.md
6035
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-new-array.md
5141
6036
  */
5142
6037
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
5143
6038
  /**
5144
6039
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
5145
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-buffer.md
6040
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-new-buffer.md
5146
6041
  */
5147
6042
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
5148
6043
  /**
5149
6044
  * Disallow the use of the `null` literal.
5150
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-null.md
6045
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-null.md
5151
6046
  */
5152
6047
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
5153
6048
  /**
5154
6049
  * Disallow the use of objects as default parameters.
5155
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-object-as-default-parameter.md
6050
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-object-as-default-parameter.md
5156
6051
  */
5157
6052
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
5158
6053
  /**
5159
6054
  * Disallow `process.exit()`.
5160
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-process-exit.md
6055
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-process-exit.md
5161
6056
  */
5162
6057
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
5163
6058
  /**
5164
6059
  * Disallow passing single-element arrays to `Promise` methods.
5165
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-single-promise-in-promise-methods.md
6060
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-single-promise-in-promise-methods.md
5166
6061
  */
5167
6062
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
5168
6063
  /**
5169
6064
  * Disallow classes that only have static members.
5170
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-static-only-class.md
6065
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-static-only-class.md
5171
6066
  */
5172
6067
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
5173
6068
  /**
5174
6069
  * Disallow `then` property.
5175
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-thenable.md
6070
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-thenable.md
5176
6071
  */
5177
6072
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
5178
6073
  /**
5179
6074
  * Disallow assigning `this` to a variable.
5180
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-this-assignment.md
6075
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-this-assignment.md
5181
6076
  */
5182
6077
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
5183
6078
  /**
5184
6079
  * Disallow comparing `undefined` using `typeof`.
5185
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-typeof-undefined.md
6080
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-typeof-undefined.md
5186
6081
  */
5187
6082
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
5188
6083
  /**
5189
6084
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
5190
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-flat-depth.md
6085
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-array-flat-depth.md
5191
6086
  */
5192
6087
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
5193
6088
  /**
5194
6089
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
5195
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-splice-count.md
6090
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-array-splice-count.md
5196
6091
  */
5197
6092
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
5198
6093
  /**
5199
6094
  * Disallow awaiting non-promise values.
5200
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-await.md
6095
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-await.md
5201
6096
  */
5202
6097
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
5203
6098
  /**
5204
6099
  * Enforce the use of built-in methods instead of unnecessary polyfills.
5205
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-polyfills.md
6100
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-polyfills.md
5206
6101
  */
5207
6102
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
5208
6103
  /**
5209
6104
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
5210
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-slice-end.md
6105
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-slice-end.md
5211
6106
  */
5212
6107
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
5213
6108
  /**
5214
6109
  * Disallow unreadable array destructuring.
5215
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-array-destructuring.md
6110
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unreadable-array-destructuring.md
5216
6111
  */
5217
6112
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
5218
6113
  /**
5219
6114
  * Disallow unreadable IIFEs.
5220
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-iife.md
6115
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unreadable-iife.md
5221
6116
  */
5222
6117
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
5223
6118
  /**
5224
6119
  * Disallow unused object properties.
5225
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unused-properties.md
6120
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unused-properties.md
5226
6121
  */
5227
6122
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
6123
+ /**
6124
+ * Disallow useless values or fallbacks in `Set`, `Map`, `WeakSet`, or `WeakMap`.
6125
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-collection-argument.md
6126
+ */
6127
+ 'unicorn/no-useless-collection-argument'?: Linter.RuleEntry<[]>;
5228
6128
  /**
5229
6129
  * Disallow unnecessary `Error.captureStackTrace(…)`.
5230
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-error-capture-stack-trace.md
6130
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-error-capture-stack-trace.md
5231
6131
  */
5232
6132
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
5233
6133
  /**
5234
6134
  * Disallow useless fallback when spreading in object literals.
5235
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-fallback-in-spread.md
6135
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-fallback-in-spread.md
5236
6136
  */
5237
6137
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
5238
6138
  /**
5239
6139
  * Disallow useless array length check.
5240
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-length-check.md
6140
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-length-check.md
5241
6141
  */
5242
6142
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
5243
6143
  /**
5244
6144
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
5245
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-promise-resolve-reject.md
6145
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-promise-resolve-reject.md
5246
6146
  */
5247
6147
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
5248
6148
  /**
5249
6149
  * Disallow unnecessary spread.
5250
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-spread.md
6150
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-spread.md
5251
6151
  */
5252
6152
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
5253
6153
  /**
5254
6154
  * Disallow useless case in switch statements.
5255
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-switch-case.md
6155
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-switch-case.md
5256
6156
  */
5257
6157
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
5258
6158
  /**
5259
6159
  * Disallow useless `undefined`.
5260
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-undefined.md
6160
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-undefined.md
5261
6161
  */
5262
6162
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
5263
6163
  /**
5264
6164
  * Disallow number literals with zero fractions or dangling dots.
5265
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-zero-fractions.md
6165
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-zero-fractions.md
5266
6166
  */
5267
6167
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
5268
6168
  /**
5269
6169
  * Enforce proper case for numeric literals.
5270
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/number-literal-case.md
6170
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/number-literal-case.md
5271
6171
  */
5272
6172
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
5273
6173
  /**
5274
6174
  * Enforce the style of numeric separators by correctly grouping digits.
5275
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/numeric-separators-style.md
6175
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/numeric-separators-style.md
5276
6176
  */
5277
6177
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
5278
6178
  /**
5279
6179
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
5280
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-add-event-listener.md
6180
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-add-event-listener.md
5281
6181
  */
5282
6182
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
5283
6183
  /**
5284
6184
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
5285
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-find.md
6185
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-find.md
5286
6186
  */
5287
6187
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
5288
6188
  /**
5289
6189
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
5290
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat.md
6190
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-flat.md
5291
6191
  */
5292
6192
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
5293
6193
  /**
5294
6194
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
5295
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat-map.md
6195
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-flat-map.md
5296
6196
  */
5297
6197
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
5298
6198
  /**
5299
6199
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
5300
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-index-of.md
6200
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-index-of.md
5301
6201
  */
5302
6202
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
5303
6203
  /**
5304
6204
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
5305
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-some.md
6205
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-some.md
5306
6206
  */
5307
6207
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
5308
6208
  /**
5309
6209
  * Prefer `.at()` method for index access and `String#charAt()`.
5310
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-at.md
6210
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-at.md
5311
6211
  */
5312
6212
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
6213
+ /**
6214
+ * Prefer `BigInt` literals over the constructor.
6215
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-bigint-literals.md
6216
+ */
6217
+ 'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
5313
6218
  /**
5314
6219
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
5315
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-blob-reading-methods.md
6220
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-blob-reading-methods.md
5316
6221
  */
5317
6222
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
5318
6223
  /**
5319
6224
  * Prefer class field declarations over `this` assignments in constructors.
5320
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-class-fields.md
6225
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-class-fields.md
5321
6226
  */
5322
6227
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
6228
+ /**
6229
+ * Prefer using `Element#classList.toggle()` to toggle class names.
6230
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-classlist-toggle.md
6231
+ */
6232
+ 'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
5323
6233
  /**
5324
6234
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
5325
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-code-point.md
6235
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-code-point.md
5326
6236
  */
5327
6237
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
5328
6238
  /**
5329
6239
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
5330
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-date-now.md
6240
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-date-now.md
5331
6241
  */
5332
6242
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
5333
6243
  /**
5334
6244
  * Prefer default parameters over reassignment.
5335
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-default-parameters.md
6245
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-default-parameters.md
5336
6246
  */
5337
6247
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
5338
6248
  /**
5339
6249
  * Prefer `Node#append()` over `Node#appendChild()`.
5340
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-append.md
6250
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-append.md
5341
6251
  */
5342
6252
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
5343
6253
  /**
5344
6254
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
5345
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-dataset.md
6255
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-dataset.md
5346
6256
  */
5347
6257
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
5348
6258
  /**
5349
6259
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
5350
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-remove.md
6260
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-remove.md
5351
6261
  */
5352
6262
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
5353
6263
  /**
5354
6264
  * Prefer `.textContent` over `.innerText`.
5355
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-text-content.md
6265
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-text-content.md
5356
6266
  */
5357
6267
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
5358
6268
  /**
5359
6269
  * Prefer `EventTarget` over `EventEmitter`.
5360
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-event-target.md
6270
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-event-target.md
5361
6271
  */
5362
6272
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
5363
6273
  /**
5364
6274
  * Prefer `export…from` when re-exporting.
5365
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-export-from.md
6275
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-export-from.md
5366
6276
  */
5367
6277
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
5368
6278
  /**
5369
6279
  * Prefer `globalThis` over `window`, `self`, and `global`.
5370
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-global-this.md
6280
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-global-this.md
5371
6281
  */
5372
6282
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
5373
6283
  /**
5374
6284
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
5375
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-import-meta-properties.md
6285
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-import-meta-properties.md
5376
6286
  */
5377
6287
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
5378
6288
  /**
5379
6289
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
5380
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-includes.md
6290
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-includes.md
5381
6291
  */
5382
6292
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
5383
6293
  /**
5384
6294
  * Prefer reading a JSON file as a buffer.
5385
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-json-parse-buffer.md
6295
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-json-parse-buffer.md
5386
6296
  */
5387
6297
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
5388
6298
  /**
5389
6299
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
5390
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-keyboard-event-key.md
6300
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-keyboard-event-key.md
5391
6301
  */
5392
6302
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
5393
6303
  /**
5394
6304
  * Prefer using a logical operator over a ternary.
5395
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-logical-operator-over-ternary.md
6305
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-logical-operator-over-ternary.md
5396
6306
  */
5397
6307
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
5398
6308
  /**
5399
6309
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
5400
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-min-max.md
6310
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-math-min-max.md
5401
6311
  */
5402
6312
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
5403
6313
  /**
5404
6314
  * Enforce the use of `Math.trunc` instead of bitwise operators.
5405
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-trunc.md
6315
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-math-trunc.md
5406
6316
  */
5407
6317
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
5408
6318
  /**
5409
6319
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
5410
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-dom-apis.md
6320
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-modern-dom-apis.md
5411
6321
  */
5412
6322
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
5413
6323
  /**
5414
6324
  * Prefer modern `Math` APIs over legacy patterns.
5415
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-math-apis.md
6325
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-modern-math-apis.md
5416
6326
  */
5417
6327
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
5418
6328
  /**
5419
6329
  * Prefer JavaScript modules (ESM) over CommonJS.
5420
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-module.md
6330
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-module.md
5421
6331
  */
5422
6332
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
5423
6333
  /**
5424
6334
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
5425
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-native-coercion-functions.md
6335
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-native-coercion-functions.md
5426
6336
  */
5427
6337
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
5428
6338
  /**
5429
6339
  * Prefer negative index over `.length - index` when possible.
5430
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-negative-index.md
6340
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-negative-index.md
5431
6341
  */
5432
6342
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
5433
6343
  /**
5434
6344
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
5435
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-node-protocol.md
6345
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-node-protocol.md
5436
6346
  */
5437
6347
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
5438
6348
  /**
5439
6349
  * Prefer `Number` static properties over global ones.
5440
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-number-properties.md
6350
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-number-properties.md
5441
6351
  */
5442
6352
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
5443
6353
  /**
5444
6354
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
5445
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-object-from-entries.md
6355
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-object-from-entries.md
5446
6356
  */
5447
6357
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
5448
6358
  /**
5449
6359
  * Prefer omitting the `catch` binding parameter.
5450
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-optional-catch-binding.md
6360
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-optional-catch-binding.md
5451
6361
  */
5452
6362
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
5453
6363
  /**
5454
6364
  * Prefer borrowing methods from the prototype instead of the instance.
5455
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-prototype-methods.md
6365
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-prototype-methods.md
5456
6366
  */
5457
6367
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
5458
6368
  /**
5459
6369
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
5460
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-query-selector.md
6370
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-query-selector.md
5461
6371
  */
5462
6372
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>;
5463
6373
  /**
5464
6374
  * Prefer `Reflect.apply()` over `Function#apply()`.
5465
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-reflect-apply.md
6375
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-reflect-apply.md
5466
6376
  */
5467
6377
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
5468
6378
  /**
5469
6379
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
5470
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-regexp-test.md
6380
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-regexp-test.md
5471
6381
  */
5472
6382
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
6383
+ /**
6384
+ * Prefer `Response.json()` over `new Response(JSON.stringify())`.
6385
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-response-static-json.md
6386
+ */
6387
+ 'unicorn/prefer-response-static-json'?: Linter.RuleEntry<[]>;
5473
6388
  /**
5474
6389
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
5475
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-has.md
6390
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-set-has.md
5476
6391
  */
5477
6392
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>;
5478
6393
  /**
5479
6394
  * Prefer using `Set#size` instead of `Array#length`.
5480
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-size.md
6395
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-set-size.md
5481
6396
  */
5482
6397
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
5483
6398
  /**
5484
6399
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
5485
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-single-call.md
6400
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-single-call.md
5486
6401
  */
5487
6402
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
5488
6403
  /**
5489
6404
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
5490
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-spread.md
6405
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-spread.md
5491
6406
  */
5492
6407
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
5493
6408
  /**
5494
6409
  * Prefer using the `String.raw` tag to avoid escaping `\`.
5495
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-raw.md
6410
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-raw.md
5496
6411
  */
5497
6412
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
5498
6413
  /**
5499
6414
  * Prefer `String#replaceAll()` over regex searches with the global flag.
5500
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-replace-all.md
6415
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-replace-all.md
5501
6416
  */
5502
6417
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
5503
6418
  /**
5504
6419
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
5505
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-slice.md
6420
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-slice.md
5506
6421
  */
5507
6422
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
5508
6423
  /**
5509
6424
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
5510
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-starts-ends-with.md
6425
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-starts-ends-with.md
5511
6426
  */
5512
6427
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
5513
6428
  /**
5514
6429
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
5515
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-trim-start-end.md
6430
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-trim-start-end.md
5516
6431
  */
5517
6432
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
5518
6433
  /**
5519
6434
  * Prefer using `structuredClone` to create a deep clone.
5520
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-structured-clone.md
6435
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-structured-clone.md
5521
6436
  */
5522
6437
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
5523
6438
  /**
5524
6439
  * Prefer `switch` over multiple `else-if`.
5525
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-switch.md
6440
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-switch.md
5526
6441
  */
5527
6442
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
5528
6443
  /**
5529
6444
  * Prefer ternary expressions over simple `if-else` statements.
5530
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-ternary.md
6445
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-ternary.md
5531
6446
  */
5532
6447
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
5533
6448
  /**
5534
6449
  * Prefer top-level await over top-level promises and async function calls.
5535
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-top-level-await.md
6450
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-top-level-await.md
5536
6451
  */
5537
6452
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
5538
6453
  /**
5539
6454
  * Enforce throwing `TypeError` in type checking conditions.
5540
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-type-error.md
6455
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-type-error.md
5541
6456
  */
5542
6457
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
5543
6458
  /**
5544
6459
  * Prevent abbreviations.
5545
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prevent-abbreviations.md
6460
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prevent-abbreviations.md
5546
6461
  */
5547
6462
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
5548
6463
  /**
5549
6464
  * Enforce consistent relative URL style.
5550
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/relative-url-style.md
6465
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/relative-url-style.md
5551
6466
  */
5552
6467
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
5553
6468
  /**
5554
6469
  * Enforce using the separator argument with `Array#join()`.
5555
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-array-join-separator.md
6470
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-array-join-separator.md
5556
6471
  */
5557
6472
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
6473
+ /**
6474
+ * Require non-empty module attributes for imports and exports
6475
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-module-attributes.md
6476
+ */
6477
+ 'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
5558
6478
  /**
5559
6479
  * Require non-empty specifier list in import and export statements.
5560
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-module-specifiers.md
6480
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-module-specifiers.md
5561
6481
  */
5562
6482
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
5563
6483
  /**
5564
6484
  * Enforce using the digits argument with `Number#toFixed()`.
5565
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-number-to-fixed-digits-argument.md
6485
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-number-to-fixed-digits-argument.md
5566
6486
  */
5567
6487
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
5568
6488
  /**
5569
6489
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
5570
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-post-message-target-origin.md
6490
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-post-message-target-origin.md
5571
6491
  */
5572
6492
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
5573
6493
  /**
5574
6494
  * Enforce better string content.
5575
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/string-content.md
6495
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/string-content.md
5576
6496
  */
5577
6497
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
5578
6498
  /**
5579
6499
  * Enforce consistent brace style for `case` clauses.
5580
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/switch-case-braces.md
6500
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/switch-case-braces.md
5581
6501
  */
5582
6502
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
5583
6503
  /**
5584
6504
  * Fix whitespace-insensitive template indentation.
5585
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/template-indent.md
6505
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/template-indent.md
5586
6506
  */
5587
6507
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
5588
6508
  /**
5589
6509
  * Enforce consistent case for text encoding identifiers.
5590
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/text-encoding-identifier-case.md
6510
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/text-encoding-identifier-case.md
5591
6511
  */
5592
- 'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>;
6512
+ 'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<UnicornTextEncodingIdentifierCase>;
5593
6513
  /**
5594
6514
  * Require `new` when creating an error.
5595
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/throw-new-error.md
6515
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/throw-new-error.md
5596
6516
  */
5597
6517
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
5598
6518
  /**
@@ -5640,6 +6560,99 @@ interface RuleOptions {
5640
6560
  * @see https://eslint.org/docs/latest/rules/vars-on-top
5641
6561
  */
5642
6562
  'vars-on-top'?: Linter.RuleEntry<[]>;
6563
+ /**
6564
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/alt-text.html
6565
+ */
6566
+ 'vue-a11y/alt-text'?: Linter.RuleEntry<VueA11YAltText>;
6567
+ /**
6568
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/anchor-has-content.html
6569
+ */
6570
+ 'vue-a11y/anchor-has-content'?: Linter.RuleEntry<VueA11YAnchorHasContent>;
6571
+ /**
6572
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/aria-props.html
6573
+ */
6574
+ 'vue-a11y/aria-props'?: Linter.RuleEntry<[]>;
6575
+ /**
6576
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/aria-role.html
6577
+ */
6578
+ 'vue-a11y/aria-role'?: Linter.RuleEntry<VueA11YAriaRole>;
6579
+ /**
6580
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/aria-unsupported-elements.html
6581
+ */
6582
+ 'vue-a11y/aria-unsupported-elements'?: Linter.RuleEntry<[]>;
6583
+ /**
6584
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/click-events-have-key-events.html
6585
+ */
6586
+ 'vue-a11y/click-events-have-key-events'?: Linter.RuleEntry<[]>;
6587
+ /**
6588
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/form-control-has-label.html
6589
+ */
6590
+ 'vue-a11y/form-control-has-label'?: Linter.RuleEntry<VueA11YFormControlHasLabel>;
6591
+ /**
6592
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/heading-has-content.html
6593
+ */
6594
+ 'vue-a11y/heading-has-content'?: Linter.RuleEntry<VueA11YHeadingHasContent>;
6595
+ /**
6596
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/iframe-has-title.html
6597
+ */
6598
+ 'vue-a11y/iframe-has-title'?: Linter.RuleEntry<[]>;
6599
+ /**
6600
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/interactive-supports-focus.html
6601
+ */
6602
+ 'vue-a11y/interactive-supports-focus'?: Linter.RuleEntry<VueA11YInteractiveSupportsFocus>;
6603
+ /**
6604
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/label-has-for.html
6605
+ */
6606
+ 'vue-a11y/label-has-for'?: Linter.RuleEntry<VueA11YLabelHasFor>;
6607
+ /**
6608
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/media-has-caption.html
6609
+ */
6610
+ 'vue-a11y/media-has-caption'?: Linter.RuleEntry<VueA11YMediaHasCaption>;
6611
+ /**
6612
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/mouse-events-have-key-events.html
6613
+ */
6614
+ 'vue-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<[]>;
6615
+ /**
6616
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/no-access-key.html
6617
+ */
6618
+ 'vue-a11y/no-access-key'?: Linter.RuleEntry<[]>;
6619
+ /**
6620
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/no-aria-hidden-on-focusable.html
6621
+ */
6622
+ 'vue-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<[]>;
6623
+ /**
6624
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/no-autofocus.html
6625
+ */
6626
+ 'vue-a11y/no-autofocus'?: Linter.RuleEntry<VueA11YNoAutofocus>;
6627
+ /**
6628
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/no-distracting-elements.html
6629
+ */
6630
+ 'vue-a11y/no-distracting-elements'?: Linter.RuleEntry<VueA11YNoDistractingElements>;
6631
+ /**
6632
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/no-onchange.html
6633
+ * @deprecated
6634
+ */
6635
+ 'vue-a11y/no-onchange'?: Linter.RuleEntry<[]>;
6636
+ /**
6637
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/no-redundant-roles.html
6638
+ */
6639
+ 'vue-a11y/no-redundant-roles'?: Linter.RuleEntry<VueA11YNoRedundantRoles>;
6640
+ /**
6641
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/no-role-presentation-on-focusable.html
6642
+ */
6643
+ 'vue-a11y/no-role-presentation-on-focusable'?: Linter.RuleEntry<[]>;
6644
+ /**
6645
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/no-static-element-interactions.html
6646
+ */
6647
+ 'vue-a11y/no-static-element-interactions'?: Linter.RuleEntry<[]>;
6648
+ /**
6649
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/role-has-required-aria-props.html
6650
+ */
6651
+ 'vue-a11y/role-has-required-aria-props'?: Linter.RuleEntry<[]>;
6652
+ /**
6653
+ * @see https://vue-a11y.github.io/eslint-plugin-vuejs-accessibility/rules/tabindex-no-positive.html
6654
+ */
6655
+ 'vue-a11y/tabindex-no-positive'?: Linter.RuleEntry<[]>;
5643
6656
  /**
5644
6657
  * Enforce linebreaks after opening and before closing array brackets in `<template>`
5645
6658
  * @see https://eslint.vuejs.org/rules/array-bracket-newline.html
@@ -5934,7 +6947,7 @@ interface RuleOptions {
5934
6947
  * disallow asynchronous actions in computed properties
5935
6948
  * @see https://eslint.vuejs.org/rules/no-async-in-computed-properties.html
5936
6949
  */
5937
- 'vue/no-async-in-computed-properties'?: Linter.RuleEntry<[]>;
6950
+ 'vue/no-async-in-computed-properties'?: Linter.RuleEntry<VueNoAsyncInComputedProperties>;
5938
6951
  /**
5939
6952
  * disallow the use of bare strings in `<template>`
5940
6953
  * @see https://eslint.vuejs.org/rules/no-bare-strings-in-template.html
@@ -6095,6 +7108,11 @@ interface RuleOptions {
6095
7108
  * @see https://eslint.vuejs.org/rules/no-duplicate-attributes.html
6096
7109
  */
6097
7110
  'vue/no-duplicate-attributes'?: Linter.RuleEntry<VueNoDuplicateAttributes>;
7111
+ /**
7112
+ * disallow duplication of class names in class attributes
7113
+ * @see https://eslint.vuejs.org/rules/no-duplicate-class-names.html
7114
+ */
7115
+ 'vue/no-duplicate-class-names'?: Linter.RuleEntry<[]>;
6098
7116
  /**
6099
7117
  * disallow the `<template>` `<script>` `<style>` block to be empty
6100
7118
  * @see https://eslint.vuejs.org/rules/no-empty-component-block.html
@@ -6435,7 +7453,7 @@ interface RuleOptions {
6435
7453
  * disallow use of v-html to prevent XSS attack
6436
7454
  * @see https://eslint.vuejs.org/rules/no-v-html.html
6437
7455
  */
6438
- 'vue/no-v-html'?: Linter.RuleEntry<[]>;
7456
+ 'vue/no-v-html'?: Linter.RuleEntry<VueNoVHtml>;
6439
7457
  /**
6440
7458
  * disallow adding an argument to `v-model` used in custom component
6441
7459
  * @see https://eslint.vuejs.org/rules/no-v-model-argument.html
@@ -7043,7 +8061,6 @@ interface RuleOptions {
7043
8061
  */
7044
8062
  'yoda'?: Linter.RuleEntry<Yoda>;
7045
8063
  }
7046
-
7047
8064
  /* ======= Declarations ======= */
7048
8065
  // ----- accessor-pairs -----
7049
8066
  type AccessorPairs = [] | [{
@@ -7403,6 +8420,552 @@ type IndentLegacy = [] | [("tab" | number)] | [("tab" | number), {
7403
8420
  type InitDeclarations = ([] | ["always"] | [] | ["never"] | ["never", {
7404
8421
  ignoreForLoopInit?: boolean;
7405
8422
  }]);
8423
+ // ----- jsdoc/check-alignment -----
8424
+ type JsdocCheckAlignment = [] | [{
8425
+ innerIndent?: number;
8426
+ }];
8427
+ // ----- jsdoc/check-examples -----
8428
+ type JsdocCheckExamples = [] | [{
8429
+ allowInlineConfig?: boolean;
8430
+ baseConfig?: {
8431
+ [k: string]: unknown | undefined;
8432
+ };
8433
+ captionRequired?: boolean;
8434
+ checkDefaults?: boolean;
8435
+ checkEslintrc?: boolean;
8436
+ checkParams?: boolean;
8437
+ checkProperties?: boolean;
8438
+ configFile?: string;
8439
+ exampleCodeRegex?: string;
8440
+ matchingFileName?: string;
8441
+ matchingFileNameDefaults?: string;
8442
+ matchingFileNameParams?: string;
8443
+ matchingFileNameProperties?: string;
8444
+ noDefaultExampleRules?: boolean;
8445
+ paddedIndent?: number;
8446
+ rejectExampleCodeRegex?: string;
8447
+ reportUnusedDisableDirectives?: boolean;
8448
+ }];
8449
+ // ----- jsdoc/check-indentation -----
8450
+ type JsdocCheckIndentation = [] | [{
8451
+ allowIndentedSections?: boolean;
8452
+ excludeTags?: string[];
8453
+ }];
8454
+ // ----- jsdoc/check-line-alignment -----
8455
+ type JsdocCheckLineAlignment = [] | [("always" | "never" | "any")] | [("always" | "never" | "any"), {
8456
+ customSpacings?: {
8457
+ postDelimiter?: number;
8458
+ postHyphen?: number;
8459
+ postName?: number;
8460
+ postTag?: number;
8461
+ postType?: number;
8462
+ };
8463
+ disableWrapIndent?: boolean;
8464
+ preserveMainDescriptionPostDelimiter?: boolean;
8465
+ tags?: string[];
8466
+ wrapIndent?: string;
8467
+ }];
8468
+ // ----- jsdoc/check-param-names -----
8469
+ type JsdocCheckParamNames = [] | [{
8470
+ allowExtraTrailingParamDocs?: boolean;
8471
+ checkDestructured?: boolean;
8472
+ checkRestProperty?: boolean;
8473
+ checkTypesPattern?: string;
8474
+ disableExtraPropertyReporting?: boolean;
8475
+ disableMissingParamChecks?: boolean;
8476
+ enableFixer?: boolean;
8477
+ useDefaultObjectProperties?: boolean;
8478
+ }];
8479
+ // ----- jsdoc/check-property-names -----
8480
+ type JsdocCheckPropertyNames = [] | [{
8481
+ enableFixer?: boolean;
8482
+ }];
8483
+ // ----- jsdoc/check-tag-names -----
8484
+ type JsdocCheckTagNames = [] | [{
8485
+ definedTags?: string[];
8486
+ enableFixer?: boolean;
8487
+ inlineTags?: string[];
8488
+ jsxTags?: boolean;
8489
+ typed?: boolean;
8490
+ }];
8491
+ // ----- jsdoc/check-types -----
8492
+ type JsdocCheckTypes = [] | [{
8493
+ exemptTagContexts?: {
8494
+ tag?: string;
8495
+ types?: (boolean | string[]);
8496
+ }[];
8497
+ noDefaults?: boolean;
8498
+ unifyParentAndChildTypeChecks?: boolean;
8499
+ }];
8500
+ // ----- jsdoc/check-values -----
8501
+ type JsdocCheckValues = [] | [{
8502
+ allowedAuthors?: string[];
8503
+ allowedLicenses?: (string[] | boolean);
8504
+ licensePattern?: string;
8505
+ numericOnlyVariation?: boolean;
8506
+ }];
8507
+ // ----- jsdoc/convert-to-jsdoc-comments -----
8508
+ type JsdocConvertToJsdocComments = [] | [{
8509
+ allowedPrefixes?: string[];
8510
+ contexts?: (string | {
8511
+ context?: string;
8512
+ inlineCommentBlock?: boolean;
8513
+ })[];
8514
+ contextsAfter?: (string | {
8515
+ context?: string;
8516
+ inlineCommentBlock?: boolean;
8517
+ })[];
8518
+ contextsBeforeAndAfter?: (string | {
8519
+ context?: string;
8520
+ inlineCommentBlock?: boolean;
8521
+ })[];
8522
+ enableFixer?: boolean;
8523
+ enforceJsdocLineStyle?: ("multi" | "single");
8524
+ lineOrBlockStyle?: ("block" | "line" | "both");
8525
+ }];
8526
+ // ----- jsdoc/empty-tags -----
8527
+ type JsdocEmptyTags = [] | [{
8528
+ tags?: string[];
8529
+ }];
8530
+ // ----- jsdoc/escape-inline-tags -----
8531
+ type JsdocEscapeInlineTags = [] | [{
8532
+ allowedInlineTags?: string[];
8533
+ enableFixer?: boolean;
8534
+ fixType?: ("backticks" | "backslash");
8535
+ }];
8536
+ // ----- jsdoc/implements-on-classes -----
8537
+ type JsdocImplementsOnClasses = [] | [{
8538
+ contexts?: (string | {
8539
+ comment?: string;
8540
+ context?: string;
8541
+ })[];
8542
+ }];
8543
+ // ----- jsdoc/informative-docs -----
8544
+ type JsdocInformativeDocs = [] | [{
8545
+ aliases?: {
8546
+ [k: string]: string[];
8547
+ };
8548
+ excludedTags?: string[];
8549
+ uselessWords?: string[];
8550
+ }];
8551
+ // ----- jsdoc/lines-before-block -----
8552
+ type JsdocLinesBeforeBlock = [] | [{
8553
+ checkBlockStarts?: boolean;
8554
+ excludedTags?: string[];
8555
+ ignoreSameLine?: boolean;
8556
+ ignoreSingleLines?: boolean;
8557
+ lines?: number;
8558
+ }];
8559
+ // ----- jsdoc/match-description -----
8560
+ type JsdocMatchDescription = [] | [{
8561
+ contexts?: (string | {
8562
+ comment?: string;
8563
+ context?: string;
8564
+ })[];
8565
+ mainDescription?: (string | boolean | {
8566
+ match?: (string | boolean);
8567
+ message?: string;
8568
+ });
8569
+ matchDescription?: string;
8570
+ message?: string;
8571
+ nonemptyTags?: boolean;
8572
+ tags?: {
8573
+ [k: string]: (string | true | {
8574
+ match?: (string | true);
8575
+ message?: string;
8576
+ });
8577
+ };
8578
+ }];
8579
+ // ----- jsdoc/match-name -----
8580
+ type JsdocMatchName = [] | [{
8581
+ match: {
8582
+ allowName?: string;
8583
+ comment?: string;
8584
+ context?: string;
8585
+ disallowName?: string;
8586
+ message?: string;
8587
+ replacement?: string;
8588
+ tags?: string[];
8589
+ }[];
8590
+ }];
8591
+ // ----- jsdoc/multiline-blocks -----
8592
+ type JsdocMultilineBlocks = [] | [{
8593
+ allowMultipleTags?: boolean;
8594
+ minimumLengthForMultiline?: number;
8595
+ multilineTags?: ("*" | string[]);
8596
+ noFinalLineText?: boolean;
8597
+ noMultilineBlocks?: boolean;
8598
+ noSingleLineBlocks?: boolean;
8599
+ noZeroLineText?: boolean;
8600
+ requireSingleLineUnderCount?: number;
8601
+ singleLineTags?: string[];
8602
+ }];
8603
+ // ----- jsdoc/no-bad-blocks -----
8604
+ type JsdocNoBadBlocks = [] | [{
8605
+ ignore?: string[];
8606
+ preventAllMultiAsteriskBlocks?: boolean;
8607
+ }];
8608
+ // ----- jsdoc/no-blank-blocks -----
8609
+ type JsdocNoBlankBlocks = [] | [{
8610
+ enableFixer?: boolean;
8611
+ }];
8612
+ // ----- jsdoc/no-defaults -----
8613
+ type JsdocNoDefaults = [] | [{
8614
+ contexts?: (string | {
8615
+ comment?: string;
8616
+ context?: string;
8617
+ })[];
8618
+ noOptionalParamNames?: boolean;
8619
+ }];
8620
+ // ----- jsdoc/no-missing-syntax -----
8621
+ type JsdocNoMissingSyntax = [] | [{
8622
+ contexts?: (string | {
8623
+ comment?: string;
8624
+ context?: string;
8625
+ message?: string;
8626
+ minimum?: number;
8627
+ })[];
8628
+ }];
8629
+ // ----- jsdoc/no-multi-asterisks -----
8630
+ type JsdocNoMultiAsterisks = [] | [{
8631
+ allowWhitespace?: boolean;
8632
+ preventAtEnd?: boolean;
8633
+ preventAtMiddleLines?: boolean;
8634
+ }];
8635
+ // ----- jsdoc/no-restricted-syntax -----
8636
+ type JsdocNoRestrictedSyntax = [] | [{
8637
+ contexts: (string | {
8638
+ comment?: string;
8639
+ context?: string;
8640
+ message?: string;
8641
+ })[];
8642
+ }];
8643
+ // ----- jsdoc/no-types -----
8644
+ type JsdocNoTypes = [] | [{
8645
+ contexts?: (string | {
8646
+ comment?: string;
8647
+ context?: string;
8648
+ })[];
8649
+ }];
8650
+ // ----- jsdoc/no-undefined-types -----
8651
+ type JsdocNoUndefinedTypes = [] | [{
8652
+ checkUsedTypedefs?: boolean;
8653
+ definedTypes?: string[];
8654
+ disableReporting?: boolean;
8655
+ markVariablesAsUsed?: boolean;
8656
+ }];
8657
+ // ----- jsdoc/prefer-import-tag -----
8658
+ type JsdocPreferImportTag = [] | [{
8659
+ enableFixer?: boolean;
8660
+ exemptTypedefs?: boolean;
8661
+ outputType?: ("named-import" | "namespaced-import");
8662
+ }];
8663
+ // ----- jsdoc/require-asterisk-prefix -----
8664
+ type JsdocRequireAsteriskPrefix = [] | [("always" | "never" | "any")] | [("always" | "never" | "any"), {
8665
+ tags?: {
8666
+ always?: string[];
8667
+ any?: string[];
8668
+ never?: string[];
8669
+ };
8670
+ }];
8671
+ // ----- jsdoc/require-description -----
8672
+ type JsdocRequireDescription = [] | [{
8673
+ checkConstructors?: boolean;
8674
+ checkGetters?: boolean;
8675
+ checkSetters?: boolean;
8676
+ contexts?: (string | {
8677
+ comment?: string;
8678
+ context?: string;
8679
+ })[];
8680
+ descriptionStyle?: ("body" | "tag" | "any");
8681
+ exemptedBy?: string[];
8682
+ }];
8683
+ // ----- jsdoc/require-description-complete-sentence -----
8684
+ type JsdocRequireDescriptionCompleteSentence = [] | [{
8685
+ abbreviations?: string[];
8686
+ newlineBeforeCapsAssumesBadSentenceEnd?: boolean;
8687
+ tags?: string[];
8688
+ }];
8689
+ // ----- jsdoc/require-example -----
8690
+ type JsdocRequireExample = [] | [{
8691
+ checkConstructors?: boolean;
8692
+ checkGetters?: boolean;
8693
+ checkSetters?: boolean;
8694
+ contexts?: (string | {
8695
+ comment?: string;
8696
+ context?: string;
8697
+ })[];
8698
+ enableFixer?: boolean;
8699
+ exemptedBy?: string[];
8700
+ exemptNoArguments?: boolean;
8701
+ }];
8702
+ // ----- jsdoc/require-file-overview -----
8703
+ type JsdocRequireFileOverview = [] | [{
8704
+ tags?: {
8705
+ [k: string]: {
8706
+ initialCommentsOnly?: boolean;
8707
+ mustExist?: boolean;
8708
+ preventDuplicates?: boolean;
8709
+ };
8710
+ };
8711
+ }];
8712
+ // ----- jsdoc/require-hyphen-before-param-description -----
8713
+ type JsdocRequireHyphenBeforeParamDescription = [] | [("always" | "never")] | [("always" | "never"), {
8714
+ tags?: ({
8715
+ [k: string]: ("always" | "never");
8716
+ } | "any");
8717
+ }];
8718
+ // ----- jsdoc/require-jsdoc -----
8719
+ type JsdocRequireJsdoc = [] | [{
8720
+ checkConstructors?: boolean;
8721
+ checkGetters?: (boolean | "no-setter");
8722
+ checkSetters?: (boolean | "no-getter");
8723
+ contexts?: (string | {
8724
+ context?: string;
8725
+ inlineCommentBlock?: boolean;
8726
+ minLineCount?: number;
8727
+ })[];
8728
+ enableFixer?: boolean;
8729
+ exemptEmptyConstructors?: boolean;
8730
+ exemptEmptyFunctions?: boolean;
8731
+ exemptOverloadedImplementations?: boolean;
8732
+ fixerMessage?: string;
8733
+ minLineCount?: number;
8734
+ publicOnly?: (boolean | {
8735
+ ancestorsOnly?: boolean;
8736
+ cjs?: boolean;
8737
+ esm?: boolean;
8738
+ window?: boolean;
8739
+ });
8740
+ require?: {
8741
+ ArrowFunctionExpression?: boolean;
8742
+ ClassDeclaration?: boolean;
8743
+ ClassExpression?: boolean;
8744
+ FunctionDeclaration?: boolean;
8745
+ FunctionExpression?: boolean;
8746
+ MethodDefinition?: boolean;
8747
+ };
8748
+ skipInterveningOverloadedDeclarations?: boolean;
8749
+ }];
8750
+ // ----- jsdoc/require-param -----
8751
+ type JsdocRequireParam = [] | [{
8752
+ autoIncrementBase?: number;
8753
+ checkConstructors?: boolean;
8754
+ checkDestructured?: boolean;
8755
+ checkDestructuredRoots?: boolean;
8756
+ checkGetters?: boolean;
8757
+ checkRestProperty?: boolean;
8758
+ checkSetters?: boolean;
8759
+ checkTypesPattern?: string;
8760
+ contexts?: (string | {
8761
+ comment?: string;
8762
+ context?: string;
8763
+ })[];
8764
+ enableFixer?: boolean;
8765
+ enableRestElementFixer?: boolean;
8766
+ enableRootFixer?: boolean;
8767
+ exemptedBy?: string[];
8768
+ ignoreWhenAllParamsMissing?: boolean;
8769
+ interfaceExemptsParamsCheck?: boolean;
8770
+ unnamedRootBase?: string[];
8771
+ useDefaultObjectProperties?: boolean;
8772
+ }];
8773
+ // ----- jsdoc/require-param-description -----
8774
+ type JsdocRequireParamDescription = [] | [{
8775
+ contexts?: (string | {
8776
+ comment?: string;
8777
+ context?: string;
8778
+ })[];
8779
+ defaultDestructuredRootDescription?: string;
8780
+ setDefaultDestructuredRootDescription?: boolean;
8781
+ }];
8782
+ // ----- jsdoc/require-param-name -----
8783
+ type JsdocRequireParamName = [] | [{
8784
+ contexts?: (string | {
8785
+ comment?: string;
8786
+ context?: string;
8787
+ })[];
8788
+ }];
8789
+ // ----- jsdoc/require-param-type -----
8790
+ type JsdocRequireParamType = [] | [{
8791
+ contexts?: (string | {
8792
+ comment?: string;
8793
+ context?: string;
8794
+ })[];
8795
+ defaultDestructuredRootType?: string;
8796
+ setDefaultDestructuredRootType?: boolean;
8797
+ }];
8798
+ // ----- jsdoc/require-rejects -----
8799
+ type JsdocRequireRejects = [] | [{
8800
+ contexts?: (string | {
8801
+ comment?: string;
8802
+ context?: string;
8803
+ })[];
8804
+ exemptedBy?: string[];
8805
+ }];
8806
+ // ----- jsdoc/require-returns -----
8807
+ type JsdocRequireReturns = [] | [{
8808
+ checkConstructors?: boolean;
8809
+ checkGetters?: boolean;
8810
+ contexts?: (string | {
8811
+ comment?: string;
8812
+ context?: string;
8813
+ forceRequireReturn?: boolean;
8814
+ })[];
8815
+ enableFixer?: boolean;
8816
+ exemptedBy?: string[];
8817
+ forceRequireReturn?: boolean;
8818
+ forceReturnsWithAsync?: boolean;
8819
+ publicOnly?: (boolean | {
8820
+ ancestorsOnly?: boolean;
8821
+ cjs?: boolean;
8822
+ esm?: boolean;
8823
+ window?: boolean;
8824
+ });
8825
+ }];
8826
+ // ----- jsdoc/require-returns-check -----
8827
+ type JsdocRequireReturnsCheck = [] | [{
8828
+ exemptAsync?: boolean;
8829
+ exemptGenerators?: boolean;
8830
+ noNativeTypes?: boolean;
8831
+ reportMissingReturnForUndefinedTypes?: boolean;
8832
+ }];
8833
+ // ----- jsdoc/require-returns-description -----
8834
+ type JsdocRequireReturnsDescription = [] | [{
8835
+ contexts?: (string | {
8836
+ comment?: string;
8837
+ context?: string;
8838
+ })[];
8839
+ }];
8840
+ // ----- jsdoc/require-returns-type -----
8841
+ type JsdocRequireReturnsType = [] | [{
8842
+ contexts?: (string | {
8843
+ comment?: string;
8844
+ context?: string;
8845
+ })[];
8846
+ }];
8847
+ // ----- jsdoc/require-tags -----
8848
+ type JsdocRequireTags = [] | [{
8849
+ tags?: (string | {
8850
+ context?: string;
8851
+ tag?: string;
8852
+ [k: string]: unknown | undefined;
8853
+ })[];
8854
+ }];
8855
+ // ----- jsdoc/require-template -----
8856
+ type JsdocRequireTemplate = [] | [{
8857
+ exemptedBy?: string[];
8858
+ requireSeparateTemplates?: boolean;
8859
+ }];
8860
+ // ----- jsdoc/require-throws -----
8861
+ type JsdocRequireThrows = [] | [{
8862
+ contexts?: (string | {
8863
+ comment?: string;
8864
+ context?: string;
8865
+ })[];
8866
+ exemptedBy?: string[];
8867
+ }];
8868
+ // ----- jsdoc/require-yields -----
8869
+ type JsdocRequireYields = [] | [{
8870
+ contexts?: (string | {
8871
+ comment?: string;
8872
+ context?: string;
8873
+ })[];
8874
+ exemptedBy?: string[];
8875
+ forceRequireNext?: boolean;
8876
+ forceRequireYields?: boolean;
8877
+ next?: boolean;
8878
+ nextWithGeneratorTag?: boolean;
8879
+ withGeneratorTag?: boolean;
8880
+ }];
8881
+ // ----- jsdoc/require-yields-check -----
8882
+ type JsdocRequireYieldsCheck = [] | [{
8883
+ checkGeneratorsOnly?: boolean;
8884
+ contexts?: (string | {
8885
+ comment?: string;
8886
+ context?: string;
8887
+ })[];
8888
+ next?: boolean;
8889
+ }];
8890
+ // ----- jsdoc/sort-tags -----
8891
+ type JsdocSortTags = [] | [{
8892
+ alphabetizeExtras?: boolean;
8893
+ linesBetween?: number;
8894
+ reportIntraTagGroupSpacing?: boolean;
8895
+ reportTagGroupSpacing?: boolean;
8896
+ tagExceptions?: {
8897
+ [k: string]: number;
8898
+ };
8899
+ tagSequence?: {
8900
+ tags?: string[];
8901
+ }[];
8902
+ }];
8903
+ // ----- jsdoc/tag-lines -----
8904
+ type JsdocTagLines = [] | [("always" | "any" | "never")] | [("always" | "any" | "never"), {
8905
+ applyToEndTag?: boolean;
8906
+ count?: number;
8907
+ endLines?: (number | null);
8908
+ maxBlockLines?: (number | null);
8909
+ startLines?: (number | null);
8910
+ tags?: {
8911
+ [k: string]: {
8912
+ count?: number;
8913
+ lines?: ("always" | "never" | "any");
8914
+ };
8915
+ };
8916
+ }];
8917
+ // ----- jsdoc/text-escaping -----
8918
+ type JsdocTextEscaping = [] | [{
8919
+ escapeHTML?: boolean;
8920
+ escapeMarkdown?: boolean;
8921
+ }];
8922
+ // ----- jsdoc/ts-method-signature-style -----
8923
+ type JsdocTsMethodSignatureStyle = [] | [("method" | "property")] | [("method" | "property"), {
8924
+ enableFixer?: boolean;
8925
+ }];
8926
+ // ----- jsdoc/ts-no-unnecessary-template-expression -----
8927
+ type JsdocTsNoUnnecessaryTemplateExpression = [] | [{
8928
+ enableFixer?: boolean;
8929
+ }];
8930
+ // ----- jsdoc/ts-prefer-function-type -----
8931
+ type JsdocTsPreferFunctionType = [] | [{
8932
+ enableFixer?: boolean;
8933
+ }];
8934
+ // ----- jsdoc/type-formatting -----
8935
+ type JsdocTypeFormatting = [] | [{
8936
+ arrayBrackets?: ("angle" | "square");
8937
+ arrowFunctionPostReturnMarkerSpacing?: string;
8938
+ arrowFunctionPreReturnMarkerSpacing?: string;
8939
+ enableFixer?: boolean;
8940
+ functionOrClassParameterSpacing?: string;
8941
+ functionOrClassPostGenericSpacing?: string;
8942
+ functionOrClassPostReturnMarkerSpacing?: string;
8943
+ functionOrClassPreReturnMarkerSpacing?: string;
8944
+ functionOrClassTypeParameterSpacing?: string;
8945
+ genericAndTupleElementSpacing?: string;
8946
+ genericDot?: boolean;
8947
+ keyValuePostColonSpacing?: string;
8948
+ keyValuePostKeySpacing?: string;
8949
+ keyValuePostOptionalSpacing?: string;
8950
+ keyValuePostVariadicSpacing?: string;
8951
+ methodQuotes?: ("double" | "single");
8952
+ objectFieldIndent?: string;
8953
+ objectFieldQuote?: ("double" | "single" | null);
8954
+ objectFieldSeparator?: ("comma" | "comma-and-linebreak" | "linebreak" | "semicolon" | "semicolon-and-linebreak");
8955
+ objectFieldSeparatorOptionalLinebreak?: boolean;
8956
+ objectFieldSeparatorTrailingPunctuation?: boolean;
8957
+ parameterDefaultValueSpacing?: string;
8958
+ postMethodNameSpacing?: string;
8959
+ postNewSpacing?: string;
8960
+ separatorForSingleObjectField?: boolean;
8961
+ stringQuotes?: ("double" | "single");
8962
+ typeBracketSpacing?: string;
8963
+ unionSpacing?: string;
8964
+ }];
8965
+ // ----- jsdoc/valid-types -----
8966
+ type JsdocValidTypes = [] | [{
8967
+ allowEmptyNamepaths?: boolean;
8968
+ }];
7406
8969
  // ----- jsonc/array-bracket-newline -----
7407
8970
  type JsoncArrayBracketNewline = [] | [(("always" | "never" | "consistent") | {
7408
8971
  multiline?: boolean;
@@ -8290,6 +9853,10 @@ type MarkdownNoHtml = [] | [{
8290
9853
  type MarkdownNoMissingAtxHeadingSpace = [] | [{
8291
9854
  checkClosedHeadings?: boolean;
8292
9855
  }];
9856
+ // ----- markdown/no-missing-label-refs -----
9857
+ type MarkdownNoMissingLabelRefs = [] | [{
9858
+ allowLabels?: string[];
9859
+ }];
8293
9860
  // ----- markdown/no-missing-link-fragments -----
8294
9861
  type MarkdownNoMissingLinkFragments = [] | [{
8295
9862
  ignoreCase?: boolean;
@@ -8676,12 +10243,14 @@ type NoRestrictedImports = ((string | {
8676
10243
  message?: string;
8677
10244
  importNames?: string[];
8678
10245
  allowImportNames?: string[];
10246
+ allowTypeImports?: boolean;
8679
10247
  })[] | [] | [{
8680
10248
  paths?: (string | {
8681
10249
  name: string;
8682
10250
  message?: string;
8683
10251
  importNames?: string[];
8684
10252
  allowImportNames?: string[];
10253
+ allowTypeImports?: boolean;
8685
10254
  })[];
8686
10255
  patterns?: (string[] | ({
8687
10256
  [k: string]: unknown | undefined;
@@ -8869,7 +10438,7 @@ type NodeHashbang = [] | [{
8869
10438
  // ----- node/no-deprecated-api -----
8870
10439
  type NodeNoDeprecatedApi = [] | [{
8871
10440
  version?: string;
8872
- ignoreModuleItems?: ("_linklist" | "_stream_wrap" | "async_hooks.currentId" | "async_hooks.triggerId" | "buffer.Buffer()" | "new buffer.Buffer()" | "buffer.SlowBuffer" | "constants" | "crypto._toBuf" | "crypto.Credentials" | "crypto.DEFAULT_ENCODING" | "crypto.createCipher" | "crypto.createCredentials" | "crypto.createDecipher" | "crypto.fips" | "crypto.prng" | "crypto.pseudoRandomBytes" | "crypto.rng" | "domain" | "events.EventEmitter.listenerCount" | "events.listenerCount" | "freelist" | "fs.SyncWriteStream" | "fs.exists" | "fs.lchmod" | "fs.lchmodSync" | "http.createClient" | "module.Module.createRequireFromPath" | "module.Module.requireRepl" | "module.Module._debug" | "module.createRequireFromPath" | "module.requireRepl" | "module._debug" | "net._setSimultaneousAccepts" | "os.getNetworkInterfaces" | "os.tmpDir" | "path._makeLong" | "process.EventEmitter" | "process.assert" | "process.binding" | "process.env.NODE_REPL_HISTORY_FILE" | "process.report.triggerReport" | "punycode" | "readline.codePointAt" | "readline.getStringWidth" | "readline.isFullWidthCodePoint" | "readline.stripVTControlCharacters" | "repl.REPLServer" | "repl.Recoverable" | "repl.REPL_MODE_MAGIC" | "safe-buffer.Buffer()" | "new safe-buffer.Buffer()" | "safe-buffer.SlowBuffer" | "sys" | "timers.enroll" | "timers.unenroll" | "tls.CleartextStream" | "tls.CryptoStream" | "tls.SecurePair" | "tls.convertNPNProtocols" | "tls.createSecurePair" | "tls.parseCertString" | "tty.setRawMode" | "url.parse" | "url.resolve" | "util.debug" | "util.error" | "util.isArray" | "util.isBoolean" | "util.isBuffer" | "util.isDate" | "util.isError" | "util.isFunction" | "util.isNull" | "util.isNullOrUndefined" | "util.isNumber" | "util.isObject" | "util.isPrimitive" | "util.isRegExp" | "util.isString" | "util.isSymbol" | "util.isUndefined" | "util.log" | "util.print" | "util.pump" | "util.puts" | "util._extend" | "vm.runInDebugContext" | "zlib.BrotliCompress()" | "zlib.BrotliDecompress()" | "zlib.Deflate()" | "zlib.DeflateRaw()" | "zlib.Gunzip()" | "zlib.Gzip()" | "zlib.Inflate()" | "zlib.InflateRaw()" | "zlib.Unzip()")[];
10441
+ ignoreModuleItems?: ("_linklist" | "_stream_wrap" | "async_hooks.currentId" | "async_hooks.triggerId" | "buffer.Buffer()" | "new buffer.Buffer()" | "buffer.SlowBuffer" | "constants" | "crypto._toBuf" | "crypto.Credentials" | "crypto.DEFAULT_ENCODING" | "crypto.createCipher" | "crypto.createCredentials" | "crypto.createDecipher" | "crypto.fips" | "crypto.prng" | "crypto.pseudoRandomBytes" | "crypto.rng" | "domain" | "events.EventEmitter.listenerCount" | "events.listenerCount" | "freelist" | "fs.SyncWriteStream" | "fs.exists" | "fs.lchmod" | "fs.lchmodSync" | "http.createClient" | "module.Module.createRequireFromPath" | "module.Module.requireRepl" | "module.Module._debug" | "module.createRequireFromPath" | "module.requireRepl" | "module._debug" | "net._setSimultaneousAccepts" | "os.getNetworkInterfaces" | "os.tmpDir" | "path._makeLong" | "process.EventEmitter" | "process.assert" | "process.binding" | "process.env.NODE_REPL_HISTORY_FILE" | "process.report.triggerReport" | "punycode" | "readline.codePointAt" | "readline.getStringWidth" | "readline.isFullWidthCodePoint" | "readline.stripVTControlCharacters" | "repl.REPLServer" | "repl.Recoverable" | "repl.REPL_MODE_MAGIC" | "repl.builtinModules" | "safe-buffer.Buffer()" | "new safe-buffer.Buffer()" | "safe-buffer.SlowBuffer" | "sys" | "timers.enroll" | "timers.unenroll" | "tls.CleartextStream" | "tls.CryptoStream" | "tls.SecurePair" | "tls.convertNPNProtocols" | "tls.createSecurePair" | "tls.parseCertString" | "tty.setRawMode" | "url.parse" | "url.resolve" | "util.debug" | "util.error" | "util.isArray" | "util.isBoolean" | "util.isBuffer" | "util.isDate" | "util.isError" | "util.isFunction" | "util.isNull" | "util.isNullOrUndefined" | "util.isNumber" | "util.isObject" | "util.isPrimitive" | "util.isRegExp" | "util.isString" | "util.isSymbol" | "util.isUndefined" | "util.log" | "util.print" | "util.pump" | "util.puts" | "util._extend" | "vm.runInDebugContext" | "zlib.BrotliCompress()" | "zlib.BrotliDecompress()" | "zlib.Deflate()" | "zlib.DeflateRaw()" | "zlib.Gunzip()" | "zlib.Gzip()" | "zlib.Inflate()" | "zlib.InflateRaw()" | "zlib.Unzip()")[];
8873
10442
  ignoreGlobalItems?: ("Buffer()" | "new Buffer()" | "COUNTER_NET_SERVER_CONNECTION" | "COUNTER_NET_SERVER_CONNECTION_CLOSE" | "COUNTER_HTTP_SERVER_REQUEST" | "COUNTER_HTTP_SERVER_RESPONSE" | "COUNTER_HTTP_CLIENT_REQUEST" | "COUNTER_HTTP_CLIENT_RESPONSE" | "GLOBAL" | "Intl.v8BreakIterator" | "require.extensions" | "root" | "process.EventEmitter" | "process.assert" | "process.binding" | "process.env.NODE_REPL_HISTORY_FILE" | "process.report.triggerReport")[];
8874
10443
  ignoreIndirectDependencies?: boolean;
8875
10444
  }];
@@ -9063,7 +10632,7 @@ type NodeNoUnsupportedFeaturesEsSyntax = [] | [{
9063
10632
  type NodeNoUnsupportedFeaturesNodeBuiltins = [] | [{
9064
10633
  version?: string;
9065
10634
  allowExperimental?: boolean;
9066
- ignores?: ("__filename" | "__dirname" | "require" | "require.cache" | "require.extensions" | "require.main" | "require.resolve" | "require.resolve.paths" | "module" | "module.children" | "module.exports" | "module.filename" | "module.id" | "module.isPreloading" | "module.loaded" | "module.parent" | "module.path" | "module.paths" | "module.require" | "exports" | "AbortController" | "AbortSignal" | "AbortSignal.abort" | "AbortSignal.timeout" | "AbortSignal.any" | "DOMException" | "FormData" | "Headers" | "MessageEvent" | "Navigator" | "Request" | "Response" | "WebAssembly" | "WebSocket" | "fetch" | "global" | "queueMicrotask" | "navigator" | "navigator.hardwareConcurrency" | "navigator.language" | "navigator.languages" | "navigator.platform" | "navigator.userAgent" | "structuredClone" | "localStorage" | "sessionStorage" | "Storage" | "Blob" | "new Buffer()" | "Buffer" | "Buffer.alloc" | "Buffer.allocUnsafe" | "Buffer.allocUnsafeSlow" | "Buffer.byteLength" | "Buffer.compare" | "Buffer.concat" | "Buffer.copyBytesFrom" | "Buffer.from" | "Buffer.isBuffer" | "Buffer.isEncoding" | "File" | "atob" | "btoa" | "console" | "console.profile" | "console.profileEnd" | "console.timeStamp" | "console.Console" | "console.assert" | "console.clear" | "console.count" | "console.countReset" | "console.debug" | "console.dir" | "console.dirxml" | "console.error" | "console.group" | "console.groupCollapsed" | "console.groupEnd" | "console.info" | "console.log" | "console.table" | "console.time" | "console.timeEnd" | "console.timeLog" | "console.trace" | "console.warn" | "crypto" | "crypto.subtle" | "crypto.subtle.decrypt" | "crypto.subtle.deriveBits" | "crypto.subtle.deriveKey" | "crypto.subtle.digest" | "crypto.subtle.encrypt" | "crypto.subtle.exportKey" | "crypto.subtle.generateKey" | "crypto.subtle.importKey" | "crypto.subtle.sign" | "crypto.subtle.unwrapKey" | "crypto.subtle.verify" | "crypto.subtle.wrapKey" | "crypto.getRandomValues" | "crypto.randomUUID" | "Crypto" | "CryptoKey" | "SubtleCrypto" | "CloseEvent" | "CustomEvent" | "Event" | "EventSource" | "EventTarget" | "PerformanceEntry" | "PerformanceMark" | "PerformanceMeasure" | "PerformanceObserver" | "PerformanceObserverEntryList" | "PerformanceResourceTiming" | "performance" | "performance.clearMarks" | "performance.clearMeasures" | "performance.clearResourceTimings" | "performance.eventLoopUtilization" | "performance.getEntries" | "performance.getEntriesByName" | "performance.getEntriesByType" | "performance.mark" | "performance.markResourceTiming" | "performance.measure" | "performance.nodeTiming" | "performance.nodeTiming.bootstrapComplete" | "performance.nodeTiming.environment" | "performance.nodeTiming.idleTime" | "performance.nodeTiming.loopExit" | "performance.nodeTiming.loopStart" | "performance.nodeTiming.nodeStart" | "performance.nodeTiming.uvMetricsInfo" | "performance.nodeTiming.v8Start" | "performance.now" | "performance.onresourcetimingbufferfull" | "performance.setResourceTimingBufferSize" | "performance.timeOrigin" | "performance.timerify" | "performance.toJSON" | "process" | "process.allowedNodeEnvironmentFlags" | "process.availableMemory" | "process.arch" | "process.argv" | "process.argv0" | "process.channel" | "process.config" | "process.connected" | "process.debugPort" | "process.env" | "process.execArgv" | "process.execPath" | "process.exitCode" | "process.features.cached_builtins" | "process.features.debug" | "process.features.inspector" | "process.features.ipv6" | "process.features.require_module" | "process.features.tls" | "process.features.tls_alpn" | "process.features.tls_ocsp" | "process.features.tls_sni" | "process.features.typescript" | "process.features.uv" | "process.finalization.register" | "process.finalization.registerBeforeExit" | "process.finalization.unregister" | "process.getBuiltinModule" | "process.mainModule" | "process.noDeprecation" | "process.permission" | "process.pid" | "process.platform" | "process.ppid" | "process.release" | "process.report" | "process.report.excludeEnv" | "process.sourceMapsEnabled" | "process.stdin" | "process.stdin.isRaw" | "process.stdin.isTTY" | "process.stdin.setRawMode" | "process.stdout" | "process.stdout.clearLine" | "process.stdout.clearScreenDown" | "process.stdout.columns" | "process.stdout.cursorTo" | "process.stdout.getColorDepth" | "process.stdout.getWindowSize" | "process.stdout.hasColors" | "process.stdout.isTTY" | "process.stdout.moveCursor" | "process.stdout.rows" | "process.stderr" | "process.stderr.clearLine" | "process.stderr.clearScreenDown" | "process.stderr.columns" | "process.stderr.cursorTo" | "process.stderr.getColorDepth" | "process.stderr.getWindowSize" | "process.stderr.hasColors" | "process.stderr.isTTY" | "process.stderr.moveCursor" | "process.stderr.rows" | "process.throwDeprecation" | "process.title" | "process.traceDeprecation" | "process.version" | "process.versions" | "process.abort" | "process.chdir" | "process.constrainedMemory" | "process.cpuUsage" | "process.cwd" | "process.disconnect" | "process.dlopen" | "process.emitWarning" | "process.exit" | "process.getActiveResourcesInfo" | "process.getegid" | "process.geteuid" | "process.getgid" | "process.getgroups" | "process.getuid" | "process.hasUncaughtExceptionCaptureCallback" | "process.hrtime" | "process.hrtime.bigint" | "process.initgroups" | "process.kill" | "process.loadEnvFile" | "process.memoryUsage" | "process.rss" | "process.nextTick" | "process.resourceUsage" | "process.send" | "process.setegid" | "process.seteuid" | "process.setgid" | "process.setgroups" | "process.setuid" | "process.setSourceMapsEnabled" | "process.setUncaughtExceptionCaptureCallback" | "process.umask" | "process.uptime" | "ReadableStream" | "ReadableStream.from" | "ReadableStreamDefaultReader" | "ReadableStreamBYOBReader" | "ReadableStreamDefaultController" | "ReadableByteStreamController" | "ReadableStreamBYOBRequest" | "WritableStream" | "WritableStreamDefaultWriter" | "WritableStreamDefaultController" | "TransformStream" | "TransformStreamDefaultController" | "ByteLengthQueuingStrategy" | "CountQueuingStrategy" | "TextEncoderStream" | "TextDecoderStream" | "CompressionStream" | "DecompressionStream" | "setInterval" | "clearInterval" | "setTimeout" | "clearTimeout" | "setImmediate" | "clearImmediate" | "URL" | "URL.canParse" | "URL.createObjectURL" | "URL.revokeObjectURL" | "URLSearchParams" | "TextDecoder" | "TextEncoder" | "BroadcastChannel" | "MessageChannel" | "MessagePort" | "assert" | "assert.assert" | "assert.deepEqual" | "assert.deepStrictEqual" | "assert.doesNotMatch" | "assert.doesNotReject" | "assert.doesNotThrow" | "assert.equal" | "assert.fail" | "assert.ifError" | "assert.match" | "assert.notDeepEqual" | "assert.notDeepStrictEqual" | "assert.notEqual" | "assert.notStrictEqual" | "assert.ok" | "assert.rejects" | "assert.strictEqual" | "assert.throws" | "assert.CallTracker" | "assert.strict" | "assert.strict.assert" | "assert.strict.deepEqual" | "assert.strict.deepStrictEqual" | "assert.strict.doesNotMatch" | "assert.strict.doesNotReject" | "assert.strict.doesNotThrow" | "assert.strict.equal" | "assert.strict.fail" | "assert.strict.ifError" | "assert.strict.match" | "assert.strict.notDeepEqual" | "assert.strict.notDeepStrictEqual" | "assert.strict.notEqual" | "assert.strict.notStrictEqual" | "assert.strict.ok" | "assert.strict.rejects" | "assert.strict.strictEqual" | "assert.strict.throws" | "assert.strict.CallTracker" | "assert/strict" | "assert/strict.assert" | "assert/strict.deepEqual" | "assert/strict.deepStrictEqual" | "assert/strict.doesNotMatch" | "assert/strict.doesNotReject" | "assert/strict.doesNotThrow" | "assert/strict.equal" | "assert/strict.fail" | "assert/strict.ifError" | "assert/strict.match" | "assert/strict.notDeepEqual" | "assert/strict.notDeepStrictEqual" | "assert/strict.notEqual" | "assert/strict.notStrictEqual" | "assert/strict.ok" | "assert/strict.rejects" | "assert/strict.strictEqual" | "assert/strict.throws" | "assert/strict.CallTracker" | "async_hooks" | "async_hooks.createHook" | "async_hooks.executionAsyncResource" | "async_hooks.executionAsyncId" | "async_hooks.triggerAsyncId" | "async_hooks.AsyncLocalStorage" | "async_hooks.AsyncLocalStorage.bind" | "async_hooks.AsyncLocalStorage.snapshot" | "async_hooks.AsyncResource" | "async_hooks.AsyncResource.bind" | "buffer" | "buffer.constants" | "buffer.INSPECT_MAX_BYTES" | "buffer.kMaxLength" | "buffer.kStringMaxLength" | "buffer.atob" | "buffer.btoa" | "buffer.isAscii" | "buffer.isUtf8" | "buffer.resolveObjectURL" | "buffer.transcode" | "buffer.SlowBuffer" | "buffer.Blob" | "new buffer.Buffer()" | "buffer.Buffer" | "buffer.Buffer.alloc" | "buffer.Buffer.allocUnsafe" | "buffer.Buffer.allocUnsafeSlow" | "buffer.Buffer.byteLength" | "buffer.Buffer.compare" | "buffer.Buffer.concat" | "buffer.Buffer.copyBytesFrom" | "buffer.Buffer.from" | "buffer.Buffer.isBuffer" | "buffer.Buffer.isEncoding" | "buffer.File" | "child_process" | "child_process.exec" | "child_process.execFile" | "child_process.fork" | "child_process.spawn" | "child_process.execFileSync" | "child_process.execSync" | "child_process.spawnSync" | "child_process.ChildProcess" | "cluster" | "cluster.isMaster" | "cluster.isPrimary" | "cluster.isWorker" | "cluster.schedulingPolicy" | "cluster.settings" | "cluster.worker" | "cluster.workers" | "cluster.disconnect" | "cluster.fork" | "cluster.setupMaster" | "cluster.setupPrimary" | "cluster.Worker" | "crypto.constants" | "crypto.fips" | "crypto.webcrypto" | "crypto.webcrypto.subtle" | "crypto.webcrypto.subtle.decrypt" | "crypto.webcrypto.subtle.deriveBits" | "crypto.webcrypto.subtle.deriveKey" | "crypto.webcrypto.subtle.digest" | "crypto.webcrypto.subtle.encrypt" | "crypto.webcrypto.subtle.exportKey" | "crypto.webcrypto.subtle.generateKey" | "crypto.webcrypto.subtle.importKey" | "crypto.webcrypto.subtle.sign" | "crypto.webcrypto.subtle.unwrapKey" | "crypto.webcrypto.subtle.verify" | "crypto.webcrypto.subtle.wrapKey" | "crypto.webcrypto.getRandomValues" | "crypto.webcrypto.randomUUID" | "crypto.checkPrime" | "crypto.checkPrimeSync" | "crypto.createCipher" | "crypto.createCipheriv" | "crypto.createDecipher" | "crypto.createDecipheriv" | "crypto.createDiffieHellman" | "crypto.createDiffieHellmanGroup" | "crypto.createECDH" | "crypto.createHash" | "crypto.createHmac" | "crypto.createPrivateKey" | "crypto.createPublicKey" | "crypto.createSecretKey" | "crypto.createSign" | "crypto.createVerify" | "crypto.diffieHellman" | "crypto.generateKey" | "crypto.generateKeyPair" | "crypto.generateKeyPairSync" | "crypto.generateKeySync" | "crypto.generatePrime" | "crypto.generatePrimeSync" | "crypto.getCipherInfo" | "crypto.getCiphers" | "crypto.getCurves" | "crypto.getDiffieHellman" | "crypto.getFips" | "crypto.getHashes" | "crypto.hash" | "crypto.hkdf" | "crypto.hkdfSync" | "crypto.pbkdf2" | "crypto.pbkdf2Sync" | "crypto.privateDecrypt" | "crypto.privateEncrypt" | "crypto.publicDecrypt" | "crypto.publicEncrypt" | "crypto.randomBytes" | "crypto.randomFillSync" | "crypto.randomFill" | "crypto.randomInt" | "crypto.scrypt" | "crypto.scryptSync" | "crypto.secureHeapUsed" | "crypto.setEngine" | "crypto.setFips" | "crypto.sign" | "crypto.timingSafeEqual" | "crypto.verify" | "crypto.Certificate" | "crypto.Certificate.exportChallenge" | "crypto.Certificate.exportPublicKey" | "crypto.Certificate.verifySpkac" | "crypto.Cipher" | "crypto.Decipher" | "crypto.DiffieHellman" | "crypto.DiffieHellmanGroup" | "crypto.ECDH" | "crypto.ECDH.convertKey" | "crypto.Hash()" | "new crypto.Hash()" | "crypto.Hash" | "crypto.Hmac()" | "new crypto.Hmac()" | "crypto.Hmac" | "crypto.KeyObject" | "crypto.KeyObject.from" | "crypto.Sign" | "crypto.Verify" | "crypto.X509Certificate" | "dgram" | "dgram.createSocket" | "dgram.Socket" | "diagnostics_channel" | "diagnostics_channel.hasSubscribers" | "diagnostics_channel.channel" | "diagnostics_channel.subscribe" | "diagnostics_channel.unsubscribe" | "diagnostics_channel.tracingChannel" | "diagnostics_channel.Channel" | "diagnostics_channel.TracingChannel" | "dns" | "dns.Resolver" | "dns.getServers" | "dns.lookup" | "dns.lookupService" | "dns.resolve" | "dns.resolve4" | "dns.resolve6" | "dns.resolveAny" | "dns.resolveCname" | "dns.resolveCaa" | "dns.resolveMx" | "dns.resolveNaptr" | "dns.resolveNs" | "dns.resolvePtr" | "dns.resolveSoa" | "dns.resolveSrv" | "dns.resolveTxt" | "dns.reverse" | "dns.setDefaultResultOrder" | "dns.getDefaultResultOrder" | "dns.setServers" | "dns.promises" | "dns.promises.Resolver" | "dns.promises.cancel" | "dns.promises.getServers" | "dns.promises.lookup" | "dns.promises.lookupService" | "dns.promises.resolve" | "dns.promises.resolve4" | "dns.promises.resolve6" | "dns.promises.resolveAny" | "dns.promises.resolveCaa" | "dns.promises.resolveCname" | "dns.promises.resolveMx" | "dns.promises.resolveNaptr" | "dns.promises.resolveNs" | "dns.promises.resolvePtr" | "dns.promises.resolveSoa" | "dns.promises.resolveSrv" | "dns.promises.resolveTxt" | "dns.promises.reverse" | "dns.promises.setDefaultResultOrder" | "dns.promises.getDefaultResultOrder" | "dns.promises.setServers" | "dns/promises" | "dns/promises.Resolver" | "dns/promises.cancel" | "dns/promises.getServers" | "dns/promises.lookup" | "dns/promises.lookupService" | "dns/promises.resolve" | "dns/promises.resolve4" | "dns/promises.resolve6" | "dns/promises.resolveAny" | "dns/promises.resolveCaa" | "dns/promises.resolveCname" | "dns/promises.resolveMx" | "dns/promises.resolveNaptr" | "dns/promises.resolveNs" | "dns/promises.resolvePtr" | "dns/promises.resolveSoa" | "dns/promises.resolveSrv" | "dns/promises.resolveTxt" | "dns/promises.reverse" | "dns/promises.setDefaultResultOrder" | "dns/promises.getDefaultResultOrder" | "dns/promises.setServers" | "domain" | "domain.create" | "domain.Domain" | "events" | "events.Event" | "events.EventTarget" | "events.CustomEvent" | "events.NodeEventTarget" | "events.EventEmitter" | "events.EventEmitter.defaultMaxListeners" | "events.EventEmitter.errorMonitor" | "events.EventEmitter.captureRejections" | "events.EventEmitter.captureRejectionSymbol" | "events.EventEmitter.getEventListeners" | "events.EventEmitter.getMaxListeners" | "events.EventEmitter.once" | "events.EventEmitter.listenerCount" | "events.EventEmitter.on" | "events.EventEmitter.setMaxListeners" | "events.EventEmitter.addAbortListener" | "events.EventEmitterAsyncResource" | "events.EventEmitterAsyncResource.defaultMaxListeners" | "events.EventEmitterAsyncResource.errorMonitor" | "events.EventEmitterAsyncResource.captureRejections" | "events.EventEmitterAsyncResource.captureRejectionSymbol" | "events.EventEmitterAsyncResource.getEventListeners" | "events.EventEmitterAsyncResource.getMaxListeners" | "events.EventEmitterAsyncResource.once" | "events.EventEmitterAsyncResource.listenerCount" | "events.EventEmitterAsyncResource.on" | "events.EventEmitterAsyncResource.setMaxListeners" | "events.EventEmitterAsyncResource.addAbortListener" | "events.defaultMaxListeners" | "events.errorMonitor" | "events.captureRejections" | "events.captureRejectionSymbol" | "events.getEventListeners" | "events.getMaxListeners" | "events.once" | "events.listenerCount" | "events.on" | "events.setMaxListeners" | "events.addAbortListener" | "fs" | "fs.promises" | "fs.promises.FileHandle" | "fs.promises.access" | "fs.promises.appendFile" | "fs.promises.chmod" | "fs.promises.chown" | "fs.promises.constants" | "fs.promises.copyFile" | "fs.promises.cp" | "fs.promises.glob" | "fs.promises.lchmod" | "fs.promises.lchown" | "fs.promises.link" | "fs.promises.lstat" | "fs.promises.lutimes" | "fs.promises.mkdir" | "fs.promises.mkdtemp" | "fs.promises.open" | "fs.promises.opendir" | "fs.promises.readFile" | "fs.promises.readdir" | "fs.promises.readlink" | "fs.promises.realpath" | "fs.promises.rename" | "fs.promises.rm" | "fs.promises.rmdir" | "fs.promises.stat" | "fs.promises.statfs" | "fs.promises.symlink" | "fs.promises.truncate" | "fs.promises.unlink" | "fs.promises.utimes" | "fs.promises.watch" | "fs.promises.writeFile" | "fs.access" | "fs.appendFile" | "fs.chmod" | "fs.chown" | "fs.close" | "fs.copyFile" | "fs.cp" | "fs.createReadStream" | "fs.createWriteStream" | "fs.exists" | "fs.fchmod" | "fs.fchown" | "fs.fdatasync" | "fs.fstat" | "fs.fsync" | "fs.ftruncate" | "fs.futimes" | "fs.glob" | "fs.lchmod" | "fs.lchown" | "fs.link" | "fs.lstat" | "fs.lutimes" | "fs.mkdir" | "fs.mkdtemp" | "fs.native" | "fs.open" | "fs.openAsBlob" | "fs.opendir" | "fs.read" | "fs.readdir" | "fs.readFile" | "fs.readlink" | "fs.readv" | "fs.realpath" | "fs.realpath.native" | "fs.rename" | "fs.rm" | "fs.rmdir" | "fs.stat" | "fs.statfs" | "fs.symlink" | "fs.truncate" | "fs.unlink" | "fs.unwatchFile" | "fs.utimes" | "fs.watch" | "fs.watchFile" | "fs.write" | "fs.writeFile" | "fs.writev" | "fs.accessSync" | "fs.appendFileSync" | "fs.chmodSync" | "fs.chownSync" | "fs.closeSync" | "fs.copyFileSync" | "fs.cpSync" | "fs.existsSync" | "fs.fchmodSync" | "fs.fchownSync" | "fs.fdatasyncSync" | "fs.fstatSync" | "fs.fsyncSync" | "fs.ftruncateSync" | "fs.futimesSync" | "fs.globSync" | "fs.lchmodSync" | "fs.lchownSync" | "fs.linkSync" | "fs.lstatSync" | "fs.lutimesSync" | "fs.mkdirSync" | "fs.mkdtempSync" | "fs.opendirSync" | "fs.openSync" | "fs.readdirSync" | "fs.readFileSync" | "fs.readlinkSync" | "fs.readSync" | "fs.readvSync" | "fs.realpathSync" | "fs.realpathSync.native" | "fs.renameSync" | "fs.rmdirSync" | "fs.rmSync" | "fs.statfsSync" | "fs.statSync" | "fs.symlinkSync" | "fs.truncateSync" | "fs.unlinkSync" | "fs.utimesSync" | "fs.writeFileSync" | "fs.writeSync" | "fs.writevSync" | "fs.constants" | "fs.Dir" | "fs.Dirent" | "fs.FSWatcher" | "fs.StatWatcher" | "fs.ReadStream" | "fs.Stats()" | "new fs.Stats()" | "fs.Stats" | "fs.StatFs" | "fs.WriteStream" | "fs.common_objects" | "fs/promises" | "fs/promises.FileHandle" | "fs/promises.access" | "fs/promises.appendFile" | "fs/promises.chmod" | "fs/promises.chown" | "fs/promises.constants" | "fs/promises.copyFile" | "fs/promises.cp" | "fs/promises.glob" | "fs/promises.lchmod" | "fs/promises.lchown" | "fs/promises.link" | "fs/promises.lstat" | "fs/promises.lutimes" | "fs/promises.mkdir" | "fs/promises.mkdtemp" | "fs/promises.open" | "fs/promises.opendir" | "fs/promises.readFile" | "fs/promises.readdir" | "fs/promises.readlink" | "fs/promises.realpath" | "fs/promises.rename" | "fs/promises.rm" | "fs/promises.rmdir" | "fs/promises.stat" | "fs/promises.statfs" | "fs/promises.symlink" | "fs/promises.truncate" | "fs/promises.unlink" | "fs/promises.utimes" | "fs/promises.watch" | "fs/promises.writeFile" | "http2" | "http2.constants" | "http2.sensitiveHeaders" | "http2.createServer" | "http2.createSecureServer" | "http2.connect" | "http2.getDefaultSettings" | "http2.getPackedSettings" | "http2.getUnpackedSettings" | "http2.performServerHandshake" | "http2.Http2Session" | "http2.ServerHttp2Session" | "http2.ClientHttp2Session" | "http2.Http2Stream" | "http2.ClientHttp2Stream" | "http2.ServerHttp2Stream" | "http2.Http2Server" | "http2.Http2SecureServer" | "http2.Http2ServerRequest" | "http2.Http2ServerResponse" | "http" | "http.METHODS" | "http.STATUS_CODES" | "http.globalAgent" | "http.maxHeaderSize" | "http.createServer" | "http.get" | "http.request" | "http.validateHeaderName" | "http.validateHeaderValue" | "http.setMaxIdleHTTPParsers" | "http.Agent" | "http.ClientRequest" | "http.Server" | "http.ServerResponse" | "http.IncomingMessage" | "http.OutgoingMessage" | "http.WebSocket" | "https" | "https.globalAgent" | "https.createServer" | "https.get" | "https.request" | "https.Agent" | "https.Server" | "inspector" | "inspector.Session" | "inspector.Network.loadingFailed" | "inspector.Network.loadingFinished" | "inspector.Network.requestWillBeSent" | "inspector.Network.responseReceived" | "inspector.console" | "inspector.close" | "inspector.open" | "inspector.url" | "inspector.waitForDebugger" | "inspector/promises" | "inspector/promises.Session" | "inspector/promises.Network.loadingFailed" | "inspector/promises.Network.loadingFinished" | "inspector/promises.Network.requestWillBeSent" | "inspector/promises.Network.responseReceived" | "inspector/promises.console" | "inspector/promises.close" | "inspector/promises.open" | "inspector/promises.url" | "inspector/promises.waitForDebugger" | "module.builtinModules" | "module.constants.compileCacheStatus" | "module.createRequire" | "module.createRequireFromPath" | "module.enableCompileCache" | "module.findPackageJSON" | "module.flushCompileCache" | "module.getCompileCacheDir" | "module.isBuiltin" | "module.register" | "module.stripTypeScriptTypes" | "module.syncBuiltinESMExports" | "module.findSourceMap" | "module.SourceMap" | "module.Module.builtinModules" | "module.Module.createRequire" | "module.Module.createRequireFromPath" | "module.Module.enableCompileCache" | "module.Module.findPackageJSON" | "module.Module.flushCompileCache" | "module.Module.getCompileCacheDir" | "module.Module.isBuiltin" | "module.Module.register" | "module.Module.stripTypeScriptTypes" | "module.Module.syncBuiltinESMExports" | "module.Module.findSourceMap" | "module.Module.SourceMap" | "net" | "net.connect" | "net.createConnection" | "net.createServer" | "net.getDefaultAutoSelectFamily" | "net.setDefaultAutoSelectFamily" | "net.getDefaultAutoSelectFamilyAttemptTimeout" | "net.setDefaultAutoSelectFamilyAttemptTimeout" | "net.isIP" | "net.isIPv4" | "net.isIPv6" | "net.BlockList" | "net.SocketAddress" | "net.Server" | "net.Socket" | "os" | "os.EOL" | "os.constants" | "os.constants.priority" | "os.devNull" | "os.availableParallelism" | "os.arch" | "os.cpus" | "os.endianness" | "os.freemem" | "os.getPriority" | "os.homedir" | "os.hostname" | "os.loadavg" | "os.machine" | "os.networkInterfaces" | "os.platform" | "os.release" | "os.setPriority" | "os.tmpdir" | "os.totalmem" | "os.type" | "os.uptime" | "os.userInfo" | "os.version" | "path" | "path.posix" | "path.posix.delimiter" | "path.posix.sep" | "path.posix.basename" | "path.posix.dirname" | "path.posix.extname" | "path.posix.format" | "path.posix.matchesGlob" | "path.posix.isAbsolute" | "path.posix.join" | "path.posix.normalize" | "path.posix.parse" | "path.posix.relative" | "path.posix.resolve" | "path.posix.toNamespacedPath" | "path.win32" | "path.win32.delimiter" | "path.win32.sep" | "path.win32.basename" | "path.win32.dirname" | "path.win32.extname" | "path.win32.format" | "path.win32.matchesGlob" | "path.win32.isAbsolute" | "path.win32.join" | "path.win32.normalize" | "path.win32.parse" | "path.win32.relative" | "path.win32.resolve" | "path.win32.toNamespacedPath" | "path.delimiter" | "path.sep" | "path.basename" | "path.dirname" | "path.extname" | "path.format" | "path.matchesGlob" | "path.isAbsolute" | "path.join" | "path.normalize" | "path.parse" | "path.relative" | "path.resolve" | "path.toNamespacedPath" | "path/posix" | "path/posix.delimiter" | "path/posix.sep" | "path/posix.basename" | "path/posix.dirname" | "path/posix.extname" | "path/posix.format" | "path/posix.matchesGlob" | "path/posix.isAbsolute" | "path/posix.join" | "path/posix.normalize" | "path/posix.parse" | "path/posix.relative" | "path/posix.resolve" | "path/posix.toNamespacedPath" | "path/win32" | "path/win32.delimiter" | "path/win32.sep" | "path/win32.basename" | "path/win32.dirname" | "path/win32.extname" | "path/win32.format" | "path/win32.matchesGlob" | "path/win32.isAbsolute" | "path/win32.join" | "path/win32.normalize" | "path/win32.parse" | "path/win32.relative" | "path/win32.resolve" | "path/win32.toNamespacedPath" | "perf_hooks" | "perf_hooks.performance" | "perf_hooks.performance.clearMarks" | "perf_hooks.performance.clearMeasures" | "perf_hooks.performance.clearResourceTimings" | "perf_hooks.performance.eventLoopUtilization" | "perf_hooks.performance.getEntries" | "perf_hooks.performance.getEntriesByName" | "perf_hooks.performance.getEntriesByType" | "perf_hooks.performance.mark" | "perf_hooks.performance.markResourceTiming" | "perf_hooks.performance.measure" | "perf_hooks.performance.nodeTiming" | "perf_hooks.performance.nodeTiming.bootstrapComplete" | "perf_hooks.performance.nodeTiming.environment" | "perf_hooks.performance.nodeTiming.idleTime" | "perf_hooks.performance.nodeTiming.loopExit" | "perf_hooks.performance.nodeTiming.loopStart" | "perf_hooks.performance.nodeTiming.nodeStart" | "perf_hooks.performance.nodeTiming.uvMetricsInfo" | "perf_hooks.performance.nodeTiming.v8Start" | "perf_hooks.performance.now" | "perf_hooks.performance.onresourcetimingbufferfull" | "perf_hooks.performance.setResourceTimingBufferSize" | "perf_hooks.performance.timeOrigin" | "perf_hooks.performance.timerify" | "perf_hooks.performance.toJSON" | "perf_hooks.createHistogram" | "perf_hooks.monitorEventLoopDelay" | "perf_hooks.PerformanceEntry" | "perf_hooks.PerformanceMark" | "perf_hooks.PerformanceMeasure" | "perf_hooks.PerformanceNodeEntry" | "perf_hooks.PerformanceNodeTiming" | "perf_hooks.PerformanceResourceTiming" | "perf_hooks.PerformanceObserver" | "perf_hooks.PerformanceObserverEntryList" | "perf_hooks.Histogram" | "perf_hooks.IntervalHistogram" | "perf_hooks.RecordableHistogram" | "punycode" | "punycode.ucs2" | "punycode.version" | "punycode.decode" | "punycode.encode" | "punycode.toASCII" | "punycode.toUnicode" | "querystring" | "querystring.decode" | "querystring.encode" | "querystring.escape" | "querystring.parse" | "querystring.stringify" | "querystring.unescape" | "readline" | "readline.promises" | "readline.promises.createInterface" | "readline.promises.Interface" | "readline.promises.Readline" | "readline.clearLine" | "readline.clearScreenDown" | "readline.createInterface" | "readline.cursorTo" | "readline.moveCursor" | "readline.Interface" | "readline.emitKeypressEvents" | "readline.InterfaceConstructor" | "readline/promises" | "readline/promises.createInterface" | "readline/promises.Interface" | "readline/promises.Readline" | "repl" | "repl.start" | "repl.writer" | "repl.REPLServer()" | "repl.REPLServer" | "repl.REPL_MODE_MAGIC" | "repl.REPL_MODE_SLOPPY" | "repl.REPL_MODE_STRICT" | "repl.Recoverable()" | "repl.Recoverable" | "repl.builtinModules" | "sea" | "sea.isSea" | "sea.getAsset" | "sea.getAssetAsBlob" | "sea.getRawAsset" | "sea.sea.isSea" | "sea.sea.getAsset" | "sea.sea.getAssetAsBlob" | "sea.sea.getRawAsset" | "stream" | "stream.promises" | "stream.promises.pipeline" | "stream.promises.finished" | "stream.finished" | "stream.pipeline" | "stream.compose" | "stream.duplexPair" | "stream.Readable" | "stream.Readable.from" | "stream.Readable.isDisturbed" | "stream.Readable.fromWeb" | "stream.Readable.toWeb" | "stream.Writable" | "stream.Writable.fromWeb" | "stream.Writable.toWeb" | "stream.Duplex" | "stream.Duplex.from" | "stream.Duplex.fromWeb" | "stream.Duplex.toWeb" | "stream.Transform" | "stream.isErrored" | "stream.isReadable" | "stream.addAbortSignal" | "stream.getDefaultHighWaterMark" | "stream.setDefaultHighWaterMark" | "stream/promises.pipeline" | "stream/promises.finished" | "stream/web" | "stream/web.ReadableStream" | "stream/web.ReadableStream.from" | "stream/web.ReadableStreamDefaultReader" | "stream/web.ReadableStreamBYOBReader" | "stream/web.ReadableStreamDefaultController" | "stream/web.ReadableByteStreamController" | "stream/web.ReadableStreamBYOBRequest" | "stream/web.WritableStream" | "stream/web.WritableStreamDefaultWriter" | "stream/web.WritableStreamDefaultController" | "stream/web.TransformStream" | "stream/web.TransformStreamDefaultController" | "stream/web.ByteLengthQueuingStrategy" | "stream/web.CountQueuingStrategy" | "stream/web.TextEncoderStream" | "stream/web.TextDecoderStream" | "stream/web.CompressionStream" | "stream/web.DecompressionStream" | "stream/consumers" | "stream/consumers.arrayBuffer" | "stream/consumers.blob" | "stream/consumers.buffer" | "stream/consumers.json" | "stream/consumers.text" | "string_decoder" | "string_decoder.StringDecoder" | "sqlite" | "sqlite.DatabaseSync" | "sqlite.StatementSync" | "sqlite.SQLITE_CHANGESET_OMIT" | "sqlite.SQLITE_CHANGESET_REPLACE" | "sqlite.SQLITE_CHANGESET_ABORT" | "test" | "test.after" | "test.afterEach" | "test.before" | "test.beforeEach" | "test.describe" | "test.describe.only" | "test.describe.skip" | "test.describe.todo" | "test.it" | "test.it.only" | "test.it.skip" | "test.it.todo" | "test.mock" | "test.mock.fn" | "test.mock.getter" | "test.mock.method" | "test.mock.module" | "test.mock.reset" | "test.mock.restoreAll" | "test.mock.setter" | "test.mock.timers" | "test.mock.timers.enable" | "test.mock.timers.reset" | "test.mock.timers.tick" | "test.only" | "test.run" | "test.snapshot" | "test.snapshot.setDefaultSnapshotSerializers" | "test.snapshot.setResolveSnapshotPath" | "test.skip" | "test.suite" | "test.test" | "test.test.only" | "test.test.skip" | "test.test.todo" | "test.todo" | "timers" | "timers.Immediate" | "timers.Timeout" | "timers.setImmediate" | "timers.clearImmediate" | "timers.setInterval" | "timers.clearInterval" | "timers.setTimeout" | "timers.clearTimeout" | "timers.promises" | "timers.promises.setTimeout" | "timers.promises.setImmediate" | "timers.promises.setInterval" | "timers.promises.scheduler.wait" | "timers.promises.scheduler.yield" | "timers/promises" | "timers/promises.setTimeout" | "timers/promises.setImmediate" | "timers/promises.setInterval" | "timers/promises.scheduler.wait" | "timers/promises.scheduler.yield" | "tls" | "tls.rootCertificates" | "tls.DEFAULT_ECDH_CURVE" | "tls.DEFAULT_MAX_VERSION" | "tls.DEFAULT_MIN_VERSION" | "tls.DEFAULT_CIPHERS" | "tls.checkServerIdentity" | "tls.connect" | "tls.createSecureContext" | "tls.createSecurePair" | "tls.createServer" | "tls.getCiphers" | "tls.SecureContext" | "tls.CryptoStream" | "tls.SecurePair" | "tls.Server" | "tls.TLSSocket" | "trace_events" | "trace_events.createTracing" | "trace_events.getEnabledCategories" | "tty" | "tty.isatty" | "tty.ReadStream" | "tty.WriteStream" | "url" | "url.domainToASCII" | "url.domainToUnicode" | "url.fileURLToPath" | "url.format" | "url.pathToFileURL" | "url.urlToHttpOptions" | "url.URL" | "url.URL.canParse" | "url.URL.createObjectURL" | "url.URL.revokeObjectURL" | "url.URLSearchParams" | "url.Url" | "util.promisify" | "util.promisify.custom" | "util.callbackify" | "util.debuglog" | "util.debug" | "util.deprecate" | "util.format" | "util.formatWithOptions" | "util.getCallSite" | "util.getCallSites" | "util.getSystemErrorName" | "util.getSystemErrorMap" | "util.getSystemErrorMessage" | "util.inherits" | "util.inspect" | "util.inspect.custom" | "util.inspect.defaultOptions" | "util.inspect.replDefaults" | "util.isDeepStrictEqual" | "util.parseArgs" | "util.parseEnv" | "util.stripVTControlCharacters" | "util.styleText" | "util.toUSVString" | "util.transferableAbortController" | "util.transferableAbortSignal" | "util.aborted" | "util.MIMEType" | "util.MIMEParams" | "util.TextDecoder" | "util.TextEncoder" | "util.types" | "util.types.isExternal" | "util.types.isDate" | "util.types.isArgumentsObject" | "util.types.isBigIntObject" | "util.types.isBooleanObject" | "util.types.isNumberObject" | "util.types.isStringObject" | "util.types.isSymbolObject" | "util.types.isNativeError" | "util.types.isRegExp" | "util.types.isAsyncFunction" | "util.types.isGeneratorFunction" | "util.types.isGeneratorObject" | "util.types.isPromise" | "util.types.isMap" | "util.types.isSet" | "util.types.isMapIterator" | "util.types.isSetIterator" | "util.types.isWeakMap" | "util.types.isWeakSet" | "util.types.isArrayBuffer" | "util.types.isDataView" | "util.types.isSharedArrayBuffer" | "util.types.isProxy" | "util.types.isModuleNamespaceObject" | "util.types.isAnyArrayBuffer" | "util.types.isBoxedPrimitive" | "util.types.isArrayBufferView" | "util.types.isTypedArray" | "util.types.isUint8Array" | "util.types.isUint8ClampedArray" | "util.types.isUint16Array" | "util.types.isUint32Array" | "util.types.isInt8Array" | "util.types.isInt16Array" | "util.types.isInt32Array" | "util.types.isFloat32Array" | "util.types.isFloat64Array" | "util.types.isBigInt64Array" | "util.types.isBigUint64Array" | "util.types.isKeyObject" | "util.types.isCryptoKey" | "util.types.isWebAssemblyCompiledModule" | "util._extend" | "util.isArray" | "util.isBoolean" | "util.isBuffer" | "util.isDate" | "util.isError" | "util.isFunction" | "util.isNull" | "util.isNullOrUndefined" | "util.isNumber" | "util.isObject" | "util.isPrimitive" | "util.isRegExp" | "util.isString" | "util.isSymbol" | "util.isUndefined" | "util.log" | "util" | "util/types" | "util/types.isExternal" | "util/types.isDate" | "util/types.isArgumentsObject" | "util/types.isBigIntObject" | "util/types.isBooleanObject" | "util/types.isNumberObject" | "util/types.isStringObject" | "util/types.isSymbolObject" | "util/types.isNativeError" | "util/types.isRegExp" | "util/types.isAsyncFunction" | "util/types.isGeneratorFunction" | "util/types.isGeneratorObject" | "util/types.isPromise" | "util/types.isMap" | "util/types.isSet" | "util/types.isMapIterator" | "util/types.isSetIterator" | "util/types.isWeakMap" | "util/types.isWeakSet" | "util/types.isArrayBuffer" | "util/types.isDataView" | "util/types.isSharedArrayBuffer" | "util/types.isProxy" | "util/types.isModuleNamespaceObject" | "util/types.isAnyArrayBuffer" | "util/types.isBoxedPrimitive" | "util/types.isArrayBufferView" | "util/types.isTypedArray" | "util/types.isUint8Array" | "util/types.isUint8ClampedArray" | "util/types.isUint16Array" | "util/types.isUint32Array" | "util/types.isInt8Array" | "util/types.isInt16Array" | "util/types.isInt32Array" | "util/types.isFloat32Array" | "util/types.isFloat64Array" | "util/types.isBigInt64Array" | "util/types.isBigUint64Array" | "util/types.isKeyObject" | "util/types.isCryptoKey" | "util/types.isWebAssemblyCompiledModule" | "v8" | "v8.serialize" | "v8.deserialize" | "v8.Serializer" | "v8.Deserializer" | "v8.DefaultSerializer" | "v8.DefaultDeserializer" | "v8.promiseHooks" | "v8.promiseHooks.onInit" | "v8.promiseHooks.onSettled" | "v8.promiseHooks.onBefore" | "v8.promiseHooks.onAfter" | "v8.promiseHooks.createHook" | "v8.startupSnapshot" | "v8.startupSnapshot.addSerializeCallback" | "v8.startupSnapshot.addDeserializeCallback" | "v8.startupSnapshot.setDeserializeMainFunction" | "v8.startupSnapshot.isBuildingSnapshot" | "v8.cachedDataVersionTag" | "v8.getHeapCodeStatistics" | "v8.getHeapSnapshot" | "v8.getHeapSpaceStatistics" | "v8.getHeapStatistics" | "v8.queryObjects" | "v8.setFlagsFromString" | "v8.stopCoverage" | "v8.takeCoverage" | "v8.writeHeapSnapshot" | "v8.setHeapSnapshotNearHeapLimit" | "v8.GCProfiler" | "vm.constants" | "vm.compileFunction" | "vm.createContext" | "vm.isContext" | "vm.measureMemory" | "vm.runInContext" | "vm.runInNewContext" | "vm.runInThisContext" | "vm.Script" | "vm.Module" | "vm.SourceTextModule" | "vm.SyntheticModule" | "vm" | "wasi.WASI" | "wasi" | "worker_threads" | "worker_threads.isMainThread" | "worker_threads.parentPort" | "worker_threads.resourceLimits" | "worker_threads.SHARE_ENV" | "worker_threads.threadId" | "worker_threads.workerData" | "worker_threads.getEnvironmentData" | "worker_threads.markAsUncloneable" | "worker_threads.markAsUntransferable" | "worker_threads.isMarkedAsUntransferable" | "worker_threads.moveMessagePortToContext" | "worker_threads.postMessageToThread" | "worker_threads.receiveMessageOnPort" | "worker_threads.setEnvironmentData" | "worker_threads.BroadcastChannel" | "worker_threads.MessageChannel" | "worker_threads.MessagePort" | "worker_threads.Worker" | "zlib.constants" | "zlib.crc32" | "zlib.createBrotliCompress" | "zlib.createBrotliDecompress" | "zlib.createDeflate" | "zlib.createDeflateRaw" | "zlib.createGunzip" | "zlib.createGzip" | "zlib.createInflate" | "zlib.createInflateRaw" | "zlib.createUnzip" | "zlib.brotliCompress" | "zlib.brotliCompressSync" | "zlib.brotliDecompress" | "zlib.brotliDecompressSync" | "zlib.deflate" | "zlib.deflateSync" | "zlib.deflateRaw" | "zlib.deflateRawSync" | "zlib.gunzip" | "zlib.gunzipSync" | "zlib.gzip" | "zlib.gzipSync" | "zlib.inflate" | "zlib.inflateSync" | "zlib.inflateRaw" | "zlib.inflateRawSync" | "zlib.unzip" | "zlib.unzipSync" | "zlib.BrotliCompress()" | "zlib.BrotliCompress" | "zlib.BrotliDecompress()" | "zlib.BrotliDecompress" | "zlib.Deflate()" | "zlib.Deflate" | "zlib.DeflateRaw()" | "zlib.DeflateRaw" | "zlib.Gunzip()" | "zlib.Gunzip" | "zlib.Gzip()" | "zlib.Gzip" | "zlib.Inflate()" | "zlib.Inflate" | "zlib.InflateRaw()" | "zlib.InflateRaw" | "zlib.Unzip()" | "zlib.Unzip" | "zlib" | "import.meta.resolve" | "import.meta.dirname" | "import.meta.filename")[];
10635
+ ignores?: ("__filename" | "__dirname" | "require" | "require.cache" | "require.extensions" | "require.main" | "require.resolve" | "require.resolve.paths" | "module" | "module.children" | "module.exports" | "module.filename" | "module.id" | "module.isPreloading" | "module.loaded" | "module.parent" | "module.path" | "module.paths" | "module.require" | "exports" | "AbortController" | "AbortSignal" | "AbortSignal.abort" | "AbortSignal.timeout" | "AbortSignal.any" | "DOMException" | "FormData" | "Headers" | "MessageEvent" | "Navigator" | "Request" | "Response" | "WebAssembly" | "WebSocket" | "fetch" | "global" | "queueMicrotask" | "navigator" | "navigator.hardwareConcurrency" | "navigator.language" | "navigator.languages" | "navigator.platform" | "navigator.userAgent" | "structuredClone" | "localStorage" | "sessionStorage" | "Storage" | "Blob" | "new Buffer()" | "Buffer" | "Buffer.alloc" | "Buffer.allocUnsafe" | "Buffer.allocUnsafeSlow" | "Buffer.byteLength" | "Buffer.compare" | "Buffer.concat" | "Buffer.copyBytesFrom" | "Buffer.from" | "Buffer.isBuffer" | "Buffer.isEncoding" | "File" | "atob" | "btoa" | "console" | "console.profile" | "console.profileEnd" | "console.timeStamp" | "console.Console" | "console.assert" | "console.clear" | "console.count" | "console.countReset" | "console.debug" | "console.dir" | "console.dirxml" | "console.error" | "console.group" | "console.groupCollapsed" | "console.groupEnd" | "console.info" | "console.log" | "console.table" | "console.time" | "console.timeEnd" | "console.timeLog" | "console.trace" | "console.warn" | "crypto" | "crypto.subtle" | "crypto.subtle.decrypt" | "crypto.subtle.deriveBits" | "crypto.subtle.deriveKey" | "crypto.subtle.digest" | "crypto.subtle.encrypt" | "crypto.subtle.exportKey" | "crypto.subtle.generateKey" | "crypto.subtle.importKey" | "crypto.subtle.sign" | "crypto.subtle.unwrapKey" | "crypto.subtle.verify" | "crypto.subtle.wrapKey" | "crypto.getRandomValues" | "crypto.randomUUID" | "Crypto" | "CryptoKey" | "SubtleCrypto" | "CloseEvent" | "CustomEvent" | "Event" | "EventSource" | "EventTarget" | "PerformanceEntry" | "PerformanceMark" | "PerformanceMeasure" | "PerformanceObserver" | "PerformanceObserverEntryList" | "PerformanceResourceTiming" | "performance" | "performance.clearMarks" | "performance.clearMeasures" | "performance.clearResourceTimings" | "performance.eventLoopUtilization" | "performance.getEntries" | "performance.getEntriesByName" | "performance.getEntriesByType" | "performance.mark" | "performance.markResourceTiming" | "performance.measure" | "performance.nodeTiming" | "performance.nodeTiming.bootstrapComplete" | "performance.nodeTiming.environment" | "performance.nodeTiming.idleTime" | "performance.nodeTiming.loopExit" | "performance.nodeTiming.loopStart" | "performance.nodeTiming.nodeStart" | "performance.nodeTiming.uvMetricsInfo" | "performance.nodeTiming.v8Start" | "performance.now" | "performance.onresourcetimingbufferfull" | "performance.setResourceTimingBufferSize" | "performance.timeOrigin" | "performance.timerify" | "performance.toJSON" | "process" | "process.allowedNodeEnvironmentFlags" | "process.availableMemory" | "process.arch" | "process.argv" | "process.argv0" | "process.channel" | "process.config" | "process.connected" | "process.debugPort" | "process.env" | "process.execArgv" | "process.execPath" | "process.execve" | "process.exitCode" | "process.features.cached_builtins" | "process.features.debug" | "process.features.inspector" | "process.features.ipv6" | "process.features.require_module" | "process.features.tls" | "process.features.tls_alpn" | "process.features.tls_ocsp" | "process.features.tls_sni" | "process.features.typescript" | "process.features.uv" | "process.finalization.register" | "process.finalization.registerBeforeExit" | "process.finalization.unregister" | "process.getBuiltinModule" | "process.mainModule" | "process.noDeprecation" | "process.permission" | "process.pid" | "process.platform" | "process.ppid" | "process.ref" | "process.release" | "process.report" | "process.report.excludeEnv" | "process.sourceMapsEnabled" | "process.stdin" | "process.stdin.isRaw" | "process.stdin.isTTY" | "process.stdin.setRawMode" | "process.stdout" | "process.stdout.clearLine" | "process.stdout.clearScreenDown" | "process.stdout.columns" | "process.stdout.cursorTo" | "process.stdout.getColorDepth" | "process.stdout.getWindowSize" | "process.stdout.hasColors" | "process.stdout.isTTY" | "process.stdout.moveCursor" | "process.stdout.rows" | "process.stderr" | "process.stderr.clearLine" | "process.stderr.clearScreenDown" | "process.stderr.columns" | "process.stderr.cursorTo" | "process.stderr.getColorDepth" | "process.stderr.getWindowSize" | "process.stderr.hasColors" | "process.stderr.isTTY" | "process.stderr.moveCursor" | "process.stderr.rows" | "process.threadCpuUsage" | "process.throwDeprecation" | "process.title" | "process.traceDeprecation" | "process.version" | "process.versions" | "process.abort" | "process.chdir" | "process.constrainedMemory" | "process.cpuUsage" | "process.cwd" | "process.disconnect" | "process.dlopen" | "process.emitWarning" | "process.exit" | "process.getActiveResourcesInfo" | "process.getegid" | "process.geteuid" | "process.getgid" | "process.getgroups" | "process.getuid" | "process.hasUncaughtExceptionCaptureCallback" | "process.hrtime" | "process.hrtime.bigint" | "process.initgroups" | "process.kill" | "process.loadEnvFile" | "process.memoryUsage" | "process.rss" | "process.nextTick" | "process.resourceUsage" | "process.send" | "process.setegid" | "process.seteuid" | "process.setgid" | "process.setgroups" | "process.setuid" | "process.setSourceMapsEnabled" | "process.setUncaughtExceptionCaptureCallback" | "process.umask" | "process.unref" | "process.uptime" | "ReadableStream" | "ReadableStream.from" | "ReadableStreamDefaultReader" | "ReadableStreamBYOBReader" | "ReadableStreamDefaultController" | "ReadableByteStreamController" | "ReadableStreamBYOBRequest" | "WritableStream" | "WritableStreamDefaultWriter" | "WritableStreamDefaultController" | "TransformStream" | "TransformStreamDefaultController" | "ByteLengthQueuingStrategy" | "CountQueuingStrategy" | "TextEncoderStream" | "TextDecoderStream" | "CompressionStream" | "DecompressionStream" | "setInterval" | "clearInterval" | "setTimeout" | "clearTimeout" | "setImmediate" | "clearImmediate" | "URL" | "URL.canParse" | "URL.createObjectURL" | "URL.revokeObjectURL" | "URLSearchParams" | "TextDecoder" | "TextEncoder" | "BroadcastChannel" | "MessageChannel" | "MessagePort" | "assert" | "assert.Assert" | "assert.assert" | "assert.deepEqual" | "assert.deepStrictEqual" | "assert.doesNotMatch" | "assert.doesNotReject" | "assert.doesNotThrow" | "assert.equal" | "assert.fail" | "assert.ifError" | "assert.match" | "assert.notDeepEqual" | "assert.notDeepStrictEqual" | "assert.notEqual" | "assert.notStrictEqual" | "assert.ok" | "assert.partialDeepStrictEqual" | "assert.rejects" | "assert.strictEqual" | "assert.throws" | "assert.CallTracker" | "assert.strict" | "assert.strict.Assert" | "assert.strict.assert" | "assert.strict.deepEqual" | "assert.strict.deepStrictEqual" | "assert.strict.doesNotMatch" | "assert.strict.doesNotReject" | "assert.strict.doesNotThrow" | "assert.strict.equal" | "assert.strict.fail" | "assert.strict.ifError" | "assert.strict.match" | "assert.strict.notDeepEqual" | "assert.strict.notDeepStrictEqual" | "assert.strict.notEqual" | "assert.strict.notStrictEqual" | "assert.strict.ok" | "assert.strict.partialDeepStrictEqual" | "assert.strict.rejects" | "assert.strict.strictEqual" | "assert.strict.throws" | "assert.strict.CallTracker" | "assert/strict" | "assert/strict.Assert" | "assert/strict.assert" | "assert/strict.deepEqual" | "assert/strict.deepStrictEqual" | "assert/strict.doesNotMatch" | "assert/strict.doesNotReject" | "assert/strict.doesNotThrow" | "assert/strict.equal" | "assert/strict.fail" | "assert/strict.ifError" | "assert/strict.match" | "assert/strict.notDeepEqual" | "assert/strict.notDeepStrictEqual" | "assert/strict.notEqual" | "assert/strict.notStrictEqual" | "assert/strict.ok" | "assert/strict.partialDeepStrictEqual" | "assert/strict.rejects" | "assert/strict.strictEqual" | "assert/strict.throws" | "assert/strict.CallTracker" | "async_hooks" | "async_hooks.createHook" | "async_hooks.executionAsyncResource" | "async_hooks.executionAsyncId" | "async_hooks.triggerAsyncId" | "async_hooks.AsyncLocalStorage" | "async_hooks.AsyncLocalStorage.bind" | "async_hooks.AsyncLocalStorage.snapshot" | "async_hooks.AsyncResource" | "async_hooks.AsyncResource.bind" | "buffer" | "buffer.constants" | "buffer.INSPECT_MAX_BYTES" | "buffer.kMaxLength" | "buffer.kStringMaxLength" | "buffer.atob" | "buffer.btoa" | "buffer.isAscii" | "buffer.isUtf8" | "buffer.resolveObjectURL" | "buffer.transcode" | "buffer.SlowBuffer" | "buffer.Blob" | "new buffer.Buffer()" | "buffer.Buffer" | "buffer.Buffer.alloc" | "buffer.Buffer.allocUnsafe" | "buffer.Buffer.allocUnsafeSlow" | "buffer.Buffer.byteLength" | "buffer.Buffer.compare" | "buffer.Buffer.concat" | "buffer.Buffer.copyBytesFrom" | "buffer.Buffer.from" | "buffer.Buffer.isBuffer" | "buffer.Buffer.isEncoding" | "buffer.File" | "child_process" | "child_process.exec" | "child_process.execFile" | "child_process.fork" | "child_process.spawn" | "child_process.execFileSync" | "child_process.execSync" | "child_process.spawnSync" | "child_process.ChildProcess" | "cluster" | "cluster.isMaster" | "cluster.isPrimary" | "cluster.isWorker" | "cluster.schedulingPolicy" | "cluster.settings" | "cluster.worker" | "cluster.workers" | "cluster.disconnect" | "cluster.fork" | "cluster.setupMaster" | "cluster.setupPrimary" | "cluster.Worker" | "crypto.constants" | "crypto.fips" | "crypto.webcrypto" | "crypto.webcrypto.subtle" | "crypto.webcrypto.subtle.decrypt" | "crypto.webcrypto.subtle.deriveBits" | "crypto.webcrypto.subtle.deriveKey" | "crypto.webcrypto.subtle.digest" | "crypto.webcrypto.subtle.encrypt" | "crypto.webcrypto.subtle.exportKey" | "crypto.webcrypto.subtle.generateKey" | "crypto.webcrypto.subtle.importKey" | "crypto.webcrypto.subtle.sign" | "crypto.webcrypto.subtle.unwrapKey" | "crypto.webcrypto.subtle.verify" | "crypto.webcrypto.subtle.wrapKey" | "crypto.webcrypto.getRandomValues" | "crypto.webcrypto.randomUUID" | "crypto.checkPrime" | "crypto.checkPrimeSync" | "crypto.createCipher" | "crypto.createCipheriv" | "crypto.createDecipher" | "crypto.createDecipheriv" | "crypto.createDiffieHellman" | "crypto.createDiffieHellmanGroup" | "crypto.createECDH" | "crypto.createHash" | "crypto.createHmac" | "crypto.createPrivateKey" | "crypto.createPublicKey" | "crypto.createSecretKey" | "crypto.createSign" | "crypto.createVerify" | "crypto.diffieHellman" | "crypto.generateKey" | "crypto.generateKeyPair" | "crypto.generateKeyPairSync" | "crypto.generateKeySync" | "crypto.generatePrime" | "crypto.generatePrimeSync" | "crypto.getCipherInfo" | "crypto.getCiphers" | "crypto.getCurves" | "crypto.getDiffieHellman" | "crypto.getFips" | "crypto.getHashes" | "crypto.hash" | "crypto.hkdf" | "crypto.hkdfSync" | "crypto.pbkdf2" | "crypto.pbkdf2Sync" | "crypto.privateDecrypt" | "crypto.privateEncrypt" | "crypto.publicDecrypt" | "crypto.publicEncrypt" | "crypto.randomBytes" | "crypto.randomFillSync" | "crypto.randomFill" | "crypto.randomInt" | "crypto.scrypt" | "crypto.scryptSync" | "crypto.secureHeapUsed" | "crypto.setEngine" | "crypto.setFips" | "crypto.sign" | "crypto.timingSafeEqual" | "crypto.verify" | "crypto.Certificate" | "crypto.Certificate.exportChallenge" | "crypto.Certificate.exportPublicKey" | "crypto.Certificate.verifySpkac" | "crypto.Cipher" | "crypto.Decipher" | "crypto.DiffieHellman" | "crypto.DiffieHellmanGroup" | "crypto.ECDH" | "crypto.ECDH.convertKey" | "crypto.Hash()" | "new crypto.Hash()" | "crypto.Hash" | "crypto.Hmac()" | "new crypto.Hmac()" | "crypto.Hmac" | "crypto.KeyObject" | "crypto.KeyObject.from" | "crypto.Sign" | "crypto.Verify" | "crypto.X509Certificate" | "dgram" | "dgram.createSocket" | "dgram.Socket" | "diagnostics_channel" | "diagnostics_channel.hasSubscribers" | "diagnostics_channel.channel" | "diagnostics_channel.subscribe" | "diagnostics_channel.unsubscribe" | "diagnostics_channel.tracingChannel" | "diagnostics_channel.Channel" | "diagnostics_channel.TracingChannel" | "dns" | "dns.Resolver" | "dns.getServers" | "dns.lookup" | "dns.lookupService" | "dns.resolve" | "dns.resolve4" | "dns.resolve6" | "dns.resolveAny" | "dns.resolveCname" | "dns.resolveCaa" | "dns.resolveMx" | "dns.resolveNaptr" | "dns.resolveNs" | "dns.resolvePtr" | "dns.resolveSoa" | "dns.resolveSrv" | "dns.resolveTlsa" | "dns.resolveTxt" | "dns.reverse" | "dns.setDefaultResultOrder" | "dns.getDefaultResultOrder" | "dns.setServers" | "dns.promises" | "dns.promises.Resolver" | "dns.promises.cancel" | "dns.promises.getServers" | "dns.promises.lookup" | "dns.promises.lookupService" | "dns.promises.resolve" | "dns.promises.resolve4" | "dns.promises.resolve6" | "dns.promises.resolveAny" | "dns.promises.resolveCaa" | "dns.promises.resolveCname" | "dns.promises.resolveMx" | "dns.promises.resolveNaptr" | "dns.promises.resolveNs" | "dns.promises.resolvePtr" | "dns.promises.resolveSoa" | "dns.promises.resolveSrv" | "dns.promises.resolveTlsa" | "dns.promises.resolveTxt" | "dns.promises.reverse" | "dns.promises.setDefaultResultOrder" | "dns.promises.getDefaultResultOrder" | "dns.promises.setServers" | "dns/promises" | "dns/promises.Resolver" | "dns/promises.cancel" | "dns/promises.getServers" | "dns/promises.lookup" | "dns/promises.lookupService" | "dns/promises.resolve" | "dns/promises.resolve4" | "dns/promises.resolve6" | "dns/promises.resolveAny" | "dns/promises.resolveCaa" | "dns/promises.resolveCname" | "dns/promises.resolveMx" | "dns/promises.resolveNaptr" | "dns/promises.resolveNs" | "dns/promises.resolvePtr" | "dns/promises.resolveSoa" | "dns/promises.resolveSrv" | "dns/promises.resolveTlsa" | "dns/promises.resolveTxt" | "dns/promises.reverse" | "dns/promises.setDefaultResultOrder" | "dns/promises.getDefaultResultOrder" | "dns/promises.setServers" | "domain" | "domain.create" | "domain.Domain" | "events" | "events.Event" | "events.EventTarget" | "events.CustomEvent" | "events.NodeEventTarget" | "events.EventEmitter" | "events.EventEmitter.defaultMaxListeners" | "events.EventEmitter.errorMonitor" | "events.EventEmitter.captureRejections" | "events.EventEmitter.captureRejectionSymbol" | "events.EventEmitter.getEventListeners" | "events.EventEmitter.getMaxListeners" | "events.EventEmitter.once" | "events.EventEmitter.listenerCount" | "events.EventEmitter.on" | "events.EventEmitter.setMaxListeners" | "events.EventEmitter.addAbortListener" | "events.EventEmitterAsyncResource" | "events.EventEmitterAsyncResource.defaultMaxListeners" | "events.EventEmitterAsyncResource.errorMonitor" | "events.EventEmitterAsyncResource.captureRejections" | "events.EventEmitterAsyncResource.captureRejectionSymbol" | "events.EventEmitterAsyncResource.getEventListeners" | "events.EventEmitterAsyncResource.getMaxListeners" | "events.EventEmitterAsyncResource.once" | "events.EventEmitterAsyncResource.listenerCount" | "events.EventEmitterAsyncResource.on" | "events.EventEmitterAsyncResource.setMaxListeners" | "events.EventEmitterAsyncResource.addAbortListener" | "events.defaultMaxListeners" | "events.errorMonitor" | "events.captureRejections" | "events.captureRejectionSymbol" | "events.getEventListeners" | "events.getMaxListeners" | "events.once" | "events.listenerCount" | "events.on" | "events.setMaxListeners" | "events.addAbortListener" | "fs" | "fs.promises" | "fs.promises.FileHandle" | "fs.promises.access" | "fs.promises.appendFile" | "fs.promises.chmod" | "fs.promises.chown" | "fs.promises.constants" | "fs.promises.copyFile" | "fs.promises.cp" | "fs.promises.glob" | "fs.promises.lchmod" | "fs.promises.lchown" | "fs.promises.link" | "fs.promises.lstat" | "fs.promises.lutimes" | "fs.promises.mkdir" | "fs.promises.mkdtemp" | "fs.promises.open" | "fs.promises.opendir" | "fs.promises.readFile" | "fs.promises.readdir" | "fs.promises.readlink" | "fs.promises.realpath" | "fs.promises.rename" | "fs.promises.rm" | "fs.promises.rmdir" | "fs.promises.stat" | "fs.promises.statfs" | "fs.promises.symlink" | "fs.promises.truncate" | "fs.promises.unlink" | "fs.promises.utimes" | "fs.promises.watch" | "fs.promises.writeFile" | "fs.access" | "fs.appendFile" | "fs.chmod" | "fs.chown" | "fs.close" | "fs.copyFile" | "fs.cp" | "fs.createReadStream" | "fs.createWriteStream" | "fs.exists" | "fs.fchmod" | "fs.fchown" | "fs.fdatasync" | "fs.fstat" | "fs.fsync" | "fs.ftruncate" | "fs.futimes" | "fs.glob" | "fs.lchmod" | "fs.lchown" | "fs.link" | "fs.lstat" | "fs.lutimes" | "fs.mkdir" | "fs.mkdtemp" | "fs.native" | "fs.open" | "fs.openAsBlob" | "fs.opendir" | "fs.read" | "fs.readdir" | "fs.readFile" | "fs.readlink" | "fs.readv" | "fs.realpath" | "fs.realpath.native" | "fs.rename" | "fs.rm" | "fs.rmdir" | "fs.stat" | "fs.statfs" | "fs.symlink" | "fs.truncate" | "fs.unlink" | "fs.unwatchFile" | "fs.utimes" | "fs.watch" | "fs.watchFile" | "fs.write" | "fs.writeFile" | "fs.writev" | "fs.accessSync" | "fs.appendFileSync" | "fs.chmodSync" | "fs.chownSync" | "fs.closeSync" | "fs.copyFileSync" | "fs.cpSync" | "fs.existsSync" | "fs.fchmodSync" | "fs.fchownSync" | "fs.fdatasyncSync" | "fs.fstatSync" | "fs.fsyncSync" | "fs.ftruncateSync" | "fs.futimesSync" | "fs.globSync" | "fs.lchmodSync" | "fs.lchownSync" | "fs.linkSync" | "fs.lstatSync" | "fs.lutimesSync" | "fs.mkdirSync" | "fs.mkdtempSync" | "fs.opendirSync" | "fs.openSync" | "fs.readdirSync" | "fs.readFileSync" | "fs.readlinkSync" | "fs.readSync" | "fs.readvSync" | "fs.realpathSync" | "fs.realpathSync.native" | "fs.renameSync" | "fs.rmdirSync" | "fs.rmSync" | "fs.statfsSync" | "fs.statSync" | "fs.symlinkSync" | "fs.truncateSync" | "fs.unlinkSync" | "fs.utimesSync" | "fs.writeFileSync" | "fs.writeSync" | "fs.writevSync" | "fs.constants" | "fs.Dir" | "fs.Dirent" | "fs.FSWatcher" | "fs.StatWatcher" | "fs.ReadStream" | "fs.Stats()" | "new fs.Stats()" | "fs.Stats" | "fs.StatFs" | "fs.WriteStream" | "fs.common_objects" | "fs/promises" | "fs/promises.FileHandle" | "fs/promises.access" | "fs/promises.appendFile" | "fs/promises.chmod" | "fs/promises.chown" | "fs/promises.constants" | "fs/promises.copyFile" | "fs/promises.cp" | "fs/promises.glob" | "fs/promises.lchmod" | "fs/promises.lchown" | "fs/promises.link" | "fs/promises.lstat" | "fs/promises.lutimes" | "fs/promises.mkdir" | "fs/promises.mkdtemp" | "fs/promises.open" | "fs/promises.opendir" | "fs/promises.readFile" | "fs/promises.readdir" | "fs/promises.readlink" | "fs/promises.realpath" | "fs/promises.rename" | "fs/promises.rm" | "fs/promises.rmdir" | "fs/promises.stat" | "fs/promises.statfs" | "fs/promises.symlink" | "fs/promises.truncate" | "fs/promises.unlink" | "fs/promises.utimes" | "fs/promises.watch" | "fs/promises.writeFile" | "http2" | "http2.constants" | "http2.sensitiveHeaders" | "http2.createServer" | "http2.createSecureServer" | "http2.connect" | "http2.getDefaultSettings" | "http2.getPackedSettings" | "http2.getUnpackedSettings" | "http2.performServerHandshake" | "http2.Http2Session" | "http2.ServerHttp2Session" | "http2.ClientHttp2Session" | "http2.Http2Stream" | "http2.ClientHttp2Stream" | "http2.ServerHttp2Stream" | "http2.Http2Server" | "http2.Http2SecureServer" | "http2.Http2ServerRequest" | "http2.Http2ServerResponse" | "http" | "http.METHODS" | "http.STATUS_CODES" | "http.globalAgent" | "http.maxHeaderSize" | "http.createServer" | "http.get" | "http.request" | "http.validateHeaderName" | "http.validateHeaderValue" | "http.setMaxIdleHTTPParsers" | "http.Agent" | "http.ClientRequest" | "http.Server" | "http.ServerResponse" | "http.IncomingMessage" | "http.OutgoingMessage" | "http.WebSocket" | "_http_agent" | "_http_client" | "_http_common" | "_http_incoming" | "_http_outgoing" | "_http_server" | "https" | "https.globalAgent" | "https.createServer" | "https.get" | "https.request" | "https.Agent" | "https.Server" | "inspector" | "inspector.Session" | "inspector.Network.dataReceived" | "inspector.Network.dataSent" | "inspector.Network.loadingFailed" | "inspector.Network.loadingFinished" | "inspector.Network.requestWillBeSent" | "inspector.Network.responseReceived" | "inspector.NetworkResources.put" | "inspector.console" | "inspector.close" | "inspector.open" | "inspector.url" | "inspector.waitForDebugger" | "inspector/promises" | "inspector/promises.Session" | "inspector/promises.Network.dataReceived" | "inspector/promises.Network.dataSent" | "inspector/promises.Network.loadingFailed" | "inspector/promises.Network.loadingFinished" | "inspector/promises.Network.requestWillBeSent" | "inspector/promises.Network.responseReceived" | "inspector/promises.NetworkResources.put" | "inspector/promises.console" | "inspector/promises.close" | "inspector/promises.open" | "inspector/promises.url" | "inspector/promises.waitForDebugger" | "module.builtinModules" | "module.constants.compileCacheStatus" | "module.createRequire" | "module.createRequireFromPath" | "module.enableCompileCache" | "module.findPackageJSON" | "module.flushCompileCache" | "module.getCompileCacheDir" | "module.getSourceMapsSupport" | "module.isBuiltin" | "module.registerHooks" | "module.register" | "module.setSourceMapsSupport" | "module.stripTypeScriptTypes" | "module.syncBuiltinESMExports" | "module.findSourceMap" | "module.SourceMap" | "module.Module.builtinModules" | "module.Module.createRequire" | "module.Module.createRequireFromPath" | "module.Module.enableCompileCache" | "module.Module.findPackageJSON" | "module.Module.flushCompileCache" | "module.Module.getCompileCacheDir" | "module.Module.getSourceMapsSupport" | "module.Module.isBuiltin" | "module.Module.registerHooks" | "module.Module.register" | "module.Module.setSourceMapsSupport" | "module.Module.stripTypeScriptTypes" | "module.Module.syncBuiltinESMExports" | "module.Module.findSourceMap" | "module.Module.SourceMap" | "net" | "net.connect" | "net.createConnection" | "net.createServer" | "net.getDefaultAutoSelectFamily" | "net.setDefaultAutoSelectFamily" | "net.getDefaultAutoSelectFamilyAttemptTimeout" | "net.setDefaultAutoSelectFamilyAttemptTimeout" | "net.isIP" | "net.isIPv4" | "net.isIPv6" | "net.BlockList" | "net.BlockList.isBlockList" | "net.SocketAddress" | "net.SocketAddress.parse" | "net.Server" | "net.Socket" | "os" | "os.EOL" | "os.constants" | "os.constants.priority" | "os.devNull" | "os.availableParallelism" | "os.arch" | "os.cpus" | "os.endianness" | "os.freemem" | "os.getPriority" | "os.homedir" | "os.hostname" | "os.loadavg" | "os.machine" | "os.networkInterfaces" | "os.platform" | "os.release" | "os.setPriority" | "os.tmpdir" | "os.totalmem" | "os.type" | "os.uptime" | "os.userInfo" | "os.version" | "path" | "path.posix" | "path.posix.delimiter" | "path.posix.sep" | "path.posix.basename" | "path.posix.dirname" | "path.posix.extname" | "path.posix.format" | "path.posix.matchesGlob" | "path.posix.isAbsolute" | "path.posix.join" | "path.posix.normalize" | "path.posix.parse" | "path.posix.relative" | "path.posix.resolve" | "path.posix.toNamespacedPath" | "path.win32" | "path.win32.delimiter" | "path.win32.sep" | "path.win32.basename" | "path.win32.dirname" | "path.win32.extname" | "path.win32.format" | "path.win32.matchesGlob" | "path.win32.isAbsolute" | "path.win32.join" | "path.win32.normalize" | "path.win32.parse" | "path.win32.relative" | "path.win32.resolve" | "path.win32.toNamespacedPath" | "path.delimiter" | "path.sep" | "path.basename" | "path.dirname" | "path.extname" | "path.format" | "path.matchesGlob" | "path.isAbsolute" | "path.join" | "path.normalize" | "path.parse" | "path.relative" | "path.resolve" | "path.toNamespacedPath" | "path/posix" | "path/posix.delimiter" | "path/posix.sep" | "path/posix.basename" | "path/posix.dirname" | "path/posix.extname" | "path/posix.format" | "path/posix.matchesGlob" | "path/posix.isAbsolute" | "path/posix.join" | "path/posix.normalize" | "path/posix.parse" | "path/posix.relative" | "path/posix.resolve" | "path/posix.toNamespacedPath" | "path/win32" | "path/win32.delimiter" | "path/win32.sep" | "path/win32.basename" | "path/win32.dirname" | "path/win32.extname" | "path/win32.format" | "path/win32.matchesGlob" | "path/win32.isAbsolute" | "path/win32.join" | "path/win32.normalize" | "path/win32.parse" | "path/win32.relative" | "path/win32.resolve" | "path/win32.toNamespacedPath" | "perf_hooks" | "perf_hooks.performance" | "perf_hooks.performance.clearMarks" | "perf_hooks.performance.clearMeasures" | "perf_hooks.performance.clearResourceTimings" | "perf_hooks.performance.eventLoopUtilization" | "perf_hooks.performance.getEntries" | "perf_hooks.performance.getEntriesByName" | "perf_hooks.performance.getEntriesByType" | "perf_hooks.performance.mark" | "perf_hooks.performance.markResourceTiming" | "perf_hooks.performance.measure" | "perf_hooks.performance.nodeTiming" | "perf_hooks.performance.nodeTiming.bootstrapComplete" | "perf_hooks.performance.nodeTiming.environment" | "perf_hooks.performance.nodeTiming.idleTime" | "perf_hooks.performance.nodeTiming.loopExit" | "perf_hooks.performance.nodeTiming.loopStart" | "perf_hooks.performance.nodeTiming.nodeStart" | "perf_hooks.performance.nodeTiming.uvMetricsInfo" | "perf_hooks.performance.nodeTiming.v8Start" | "perf_hooks.performance.now" | "perf_hooks.performance.onresourcetimingbufferfull" | "perf_hooks.performance.setResourceTimingBufferSize" | "perf_hooks.performance.timeOrigin" | "perf_hooks.performance.timerify" | "perf_hooks.performance.toJSON" | "perf_hooks.createHistogram" | "perf_hooks.monitorEventLoopDelay" | "perf_hooks.PerformanceEntry" | "perf_hooks.PerformanceMark" | "perf_hooks.PerformanceMeasure" | "perf_hooks.PerformanceNodeEntry" | "perf_hooks.PerformanceNodeTiming" | "perf_hooks.PerformanceResourceTiming" | "perf_hooks.PerformanceObserver" | "perf_hooks.PerformanceObserverEntryList" | "perf_hooks.Histogram" | "perf_hooks.IntervalHistogram" | "perf_hooks.RecordableHistogram" | "punycode" | "punycode.ucs2" | "punycode.version" | "punycode.decode" | "punycode.encode" | "punycode.toASCII" | "punycode.toUnicode" | "querystring" | "querystring.decode" | "querystring.encode" | "querystring.escape" | "querystring.parse" | "querystring.stringify" | "querystring.unescape" | "readline" | "readline.promises" | "readline.promises.createInterface" | "readline.promises.Interface" | "readline.promises.Readline" | "readline.clearLine" | "readline.clearScreenDown" | "readline.createInterface" | "readline.cursorTo" | "readline.moveCursor" | "readline.Interface" | "readline.emitKeypressEvents" | "readline.InterfaceConstructor" | "readline/promises" | "readline/promises.createInterface" | "readline/promises.Interface" | "readline/promises.Readline" | "repl" | "repl.start" | "repl.writer" | "repl.REPLServer()" | "repl.REPLServer" | "repl.REPL_MODE_MAGIC" | "repl.REPL_MODE_SLOPPY" | "repl.REPL_MODE_STRICT" | "repl.Recoverable()" | "repl.Recoverable" | "repl.builtinModules" | "sea" | "sea.isSea" | "sea.getAsset" | "sea.getAssetAsBlob" | "sea.getRawAsset" | "sea.sea.isSea" | "sea.sea.getAsset" | "sea.sea.getAssetAsBlob" | "sea.sea.getRawAsset" | "stream" | "stream.promises" | "stream.promises.pipeline" | "stream.promises.finished" | "stream.finished" | "stream.pipeline" | "stream.compose" | "stream.duplexPair" | "stream.Readable" | "stream.Readable.from" | "stream.Readable.isDisturbed" | "stream.Readable.fromWeb" | "stream.Readable.toWeb" | "stream.Writable" | "stream.Writable.fromWeb" | "stream.Writable.toWeb" | "stream.Duplex" | "stream.Duplex.from" | "stream.Duplex.fromWeb" | "stream.Duplex.toWeb" | "stream.Transform" | "stream.isErrored" | "stream.isReadable" | "stream.addAbortSignal" | "stream.getDefaultHighWaterMark" | "stream.setDefaultHighWaterMark" | "stream/promises.pipeline" | "stream/promises.finished" | "stream/web" | "stream/web.ReadableStream" | "stream/web.ReadableStream.from" | "stream/web.ReadableStreamDefaultReader" | "stream/web.ReadableStreamBYOBReader" | "stream/web.ReadableStreamDefaultController" | "stream/web.ReadableByteStreamController" | "stream/web.ReadableStreamBYOBRequest" | "stream/web.WritableStream" | "stream/web.WritableStreamDefaultWriter" | "stream/web.WritableStreamDefaultController" | "stream/web.TransformStream" | "stream/web.TransformStreamDefaultController" | "stream/web.ByteLengthQueuingStrategy" | "stream/web.CountQueuingStrategy" | "stream/web.TextEncoderStream" | "stream/web.TextDecoderStream" | "stream/web.CompressionStream" | "stream/web.DecompressionStream" | "stream/consumers" | "stream/consumers.arrayBuffer" | "stream/consumers.blob" | "stream/consumers.buffer" | "stream/consumers.json" | "stream/consumers.text" | "string_decoder" | "string_decoder.StringDecoder" | "sqlite" | "sqlite.constants" | "sqlite.constants.SQLITE_CHANGESET_OMIT" | "sqlite.constants.SQLITE_CHANGESET_REPLACE" | "sqlite.constants.SQLITE_CHANGESET_ABORT" | "sqlite.backup" | "sqlite.DatabaseSync" | "sqlite.StatementSync" | "sqlite.SQLITE_CHANGESET_OMIT" | "sqlite.SQLITE_CHANGESET_REPLACE" | "sqlite.SQLITE_CHANGESET_ABORT" | "test" | "test.after" | "test.afterEach" | "test.assert" | "test.assert.register" | "test.before" | "test.beforeEach" | "test.describe" | "test.describe.only" | "test.describe.skip" | "test.describe.todo" | "test.it" | "test.it.only" | "test.it.skip" | "test.it.todo" | "test.mock" | "test.mock.fn" | "test.mock.getter" | "test.mock.method" | "test.mock.module" | "test.mock.reset" | "test.mock.restoreAll" | "test.mock.setter" | "test.mock.timers" | "test.mock.timers.enable" | "test.mock.timers.reset" | "test.mock.timers.tick" | "test.only" | "test.run" | "test.snapshot" | "test.snapshot.setDefaultSnapshotSerializers" | "test.snapshot.setResolveSnapshotPath" | "test.skip" | "test.suite" | "test.test" | "test.test.only" | "test.test.skip" | "test.test.todo" | "test.todo" | "timers" | "timers.Immediate" | "timers.Timeout" | "timers.setImmediate" | "timers.clearImmediate" | "timers.setInterval" | "timers.clearInterval" | "timers.setTimeout" | "timers.clearTimeout" | "timers.promises" | "timers.promises.setTimeout" | "timers.promises.setImmediate" | "timers.promises.setInterval" | "timers.promises.scheduler.wait" | "timers.promises.scheduler.yield" | "timers/promises" | "timers/promises.setTimeout" | "timers/promises.setImmediate" | "timers/promises.setInterval" | "timers/promises.scheduler.wait" | "timers/promises.scheduler.yield" | "tls" | "tls.checkServerIdentity" | "tls.connect" | "tls.createSecureContext" | "tls.createSecurePair" | "tls.createServer" | "tls.CryptoStream" | "tls.DEFAULT_CIPHERS" | "tls.DEFAULT_ECDH_CURVE" | "tls.DEFAULT_MAX_VERSION" | "tls.DEFAULT_MIN_VERSION" | "tls.getCACertificates" | "tls.getCiphers" | "tls.rootCertificates" | "tls.SecureContext" | "tls.SecurePair" | "tls.Server" | "tls.setDefaultCACertificates" | "tls.TLSSocket" | "trace_events" | "trace_events.createTracing" | "trace_events.getEnabledCategories" | "tty" | "tty.isatty" | "tty.ReadStream" | "tty.WriteStream" | "url" | "url.domainToASCII" | "url.domainToUnicode" | "url.fileURLToPath" | "url.format" | "url.pathToFileURL" | "url.urlToHttpOptions" | "url.URL" | "url.URL.canParse" | "url.URL.createObjectURL" | "url.URL.revokeObjectURL" | "url.URLPattern" | "url.URLSearchParams" | "url.Url" | "util.promisify" | "util.promisify.custom" | "util.callbackify" | "util.debuglog" | "util.debug" | "util.deprecate" | "util.diff" | "util.format" | "util.formatWithOptions" | "util.getCallSite" | "util.getCallSites" | "util.getSystemErrorName" | "util.getSystemErrorMap" | "util.getSystemErrorMessage" | "util.inherits" | "util.inspect" | "util.inspect.custom" | "util.inspect.defaultOptions" | "util.inspect.replDefaults" | "util.isDeepStrictEqual" | "util.parseArgs" | "util.parseEnv" | "util.setTraceSigInt" | "util.stripVTControlCharacters" | "util.styleText" | "util.toUSVString" | "util.transferableAbortController" | "util.transferableAbortSignal" | "util.aborted" | "util.MIMEType" | "util.MIMEParams" | "util.TextDecoder" | "util.TextEncoder" | "util.types" | "util.types.isExternal" | "util.types.isDate" | "util.types.isArgumentsObject" | "util.types.isBigIntObject" | "util.types.isBooleanObject" | "util.types.isNumberObject" | "util.types.isStringObject" | "util.types.isSymbolObject" | "util.types.isNativeError" | "util.types.isRegExp" | "util.types.isAsyncFunction" | "util.types.isGeneratorFunction" | "util.types.isGeneratorObject" | "util.types.isPromise" | "util.types.isMap" | "util.types.isSet" | "util.types.isMapIterator" | "util.types.isSetIterator" | "util.types.isWeakMap" | "util.types.isWeakSet" | "util.types.isArrayBuffer" | "util.types.isDataView" | "util.types.isSharedArrayBuffer" | "util.types.isProxy" | "util.types.isModuleNamespaceObject" | "util.types.isAnyArrayBuffer" | "util.types.isBoxedPrimitive" | "util.types.isArrayBufferView" | "util.types.isTypedArray" | "util.types.isUint8Array" | "util.types.isUint8ClampedArray" | "util.types.isUint16Array" | "util.types.isUint32Array" | "util.types.isInt8Array" | "util.types.isInt16Array" | "util.types.isInt32Array" | "util.types.isFloat16Array" | "util.types.isFloat32Array" | "util.types.isFloat64Array" | "util.types.isBigInt64Array" | "util.types.isBigUint64Array" | "util.types.isKeyObject" | "util.types.isCryptoKey" | "util.types.isWebAssemblyCompiledModule" | "util._extend" | "util.isArray" | "util.isBoolean" | "util.isBuffer" | "util.isDate" | "util.isError" | "util.isFunction" | "util.isNull" | "util.isNullOrUndefined" | "util.isNumber" | "util.isObject" | "util.isPrimitive" | "util.isRegExp" | "util.isString" | "util.isSymbol" | "util.isUndefined" | "util.log" | "util" | "util/types" | "util/types.isExternal" | "util/types.isDate" | "util/types.isArgumentsObject" | "util/types.isBigIntObject" | "util/types.isBooleanObject" | "util/types.isNumberObject" | "util/types.isStringObject" | "util/types.isSymbolObject" | "util/types.isNativeError" | "util/types.isRegExp" | "util/types.isAsyncFunction" | "util/types.isGeneratorFunction" | "util/types.isGeneratorObject" | "util/types.isPromise" | "util/types.isMap" | "util/types.isSet" | "util/types.isMapIterator" | "util/types.isSetIterator" | "util/types.isWeakMap" | "util/types.isWeakSet" | "util/types.isArrayBuffer" | "util/types.isDataView" | "util/types.isSharedArrayBuffer" | "util/types.isProxy" | "util/types.isModuleNamespaceObject" | "util/types.isAnyArrayBuffer" | "util/types.isBoxedPrimitive" | "util/types.isArrayBufferView" | "util/types.isTypedArray" | "util/types.isUint8Array" | "util/types.isUint8ClampedArray" | "util/types.isUint16Array" | "util/types.isUint32Array" | "util/types.isInt8Array" | "util/types.isInt16Array" | "util/types.isInt32Array" | "util/types.isFloat16Array" | "util/types.isFloat32Array" | "util/types.isFloat64Array" | "util/types.isBigInt64Array" | "util/types.isBigUint64Array" | "util/types.isKeyObject" | "util/types.isCryptoKey" | "util/types.isWebAssemblyCompiledModule" | "v8" | "v8.serialize" | "v8.deserialize" | "v8.Serializer" | "v8.Deserializer" | "v8.DefaultSerializer" | "v8.DefaultDeserializer" | "v8.promiseHooks" | "v8.promiseHooks.onInit" | "v8.promiseHooks.onSettled" | "v8.promiseHooks.onBefore" | "v8.promiseHooks.onAfter" | "v8.promiseHooks.createHook" | "v8.startupSnapshot" | "v8.startupSnapshot.addSerializeCallback" | "v8.startupSnapshot.addDeserializeCallback" | "v8.startupSnapshot.setDeserializeMainFunction" | "v8.startupSnapshot.isBuildingSnapshot" | "v8.cachedDataVersionTag" | "v8.getHeapCodeStatistics" | "v8.getHeapSnapshot" | "v8.getHeapSpaceStatistics" | "v8.getHeapStatistics" | "v8.isStringOneByteRepresentation" | "v8.queryObjects" | "v8.setFlagsFromString" | "v8.stopCoverage" | "v8.takeCoverage" | "v8.writeHeapSnapshot" | "v8.setHeapSnapshotNearHeapLimit" | "v8.GCProfiler" | "vm.constants" | "vm.compileFunction" | "vm.createContext" | "vm.isContext" | "vm.measureMemory" | "vm.runInContext" | "vm.runInNewContext" | "vm.runInThisContext" | "vm.Script" | "vm.Module" | "vm.SourceTextModule" | "vm.SyntheticModule" | "vm" | "wasi.WASI" | "wasi" | "worker_threads" | "worker_threads.parentPort" | "worker_threads.resourceLimits" | "worker_threads.SHARE_ENV" | "worker_threads.threadId" | "worker_threads.workerData" | "worker_threads.getEnvironmentData" | "worker_threads.getHeapStatistics" | "worker_threads.markAsUncloneable" | "worker_threads.markAsUntransferable" | "worker_threads.isInternalThread" | "worker_threads.isMainThread" | "worker_threads.isMarkedAsUntransferable" | "worker_threads.moveMessagePortToContext" | "worker_threads.postMessageToThread" | "worker_threads.receiveMessageOnPort" | "worker_threads.setEnvironmentData" | "worker_threads.BroadcastChannel" | "worker_threads.MessageChannel" | "worker_threads.MessagePort" | "worker_threads.Worker" | "zlib.brotliCompress" | "zlib.brotliCompressSync" | "zlib.brotliDecompress" | "zlib.brotliDecompressSync" | "zlib.constants" | "zlib.constants.ZSTD_e_continue" | "zlib.constants.ZSTD_e_flush" | "zlib.constants.ZSTD_e_end" | "zlib.constants.ZSTD_fast" | "zlib.constants.ZSTD_dfast" | "zlib.constants.ZSTD_greedy" | "zlib.constants.ZSTD_lazy" | "zlib.constants.ZSTD_lazy2" | "zlib.constants.ZSTD_btlazy2" | "zlib.constants.ZSTD_btopt" | "zlib.constants.ZSTD_btultra" | "zlib.constants.ZSTD_btultra2" | "zlib.constants.ZSTD_c_compressionLevel" | "zlib.constants.ZSTD_c_windowLog" | "zlib.constants.ZSTD_c_hashLog" | "zlib.constants.ZSTD_c_chainLog" | "zlib.constants.ZSTD_c_searchLog" | "zlib.constants.ZSTD_c_minMatch" | "zlib.constants.ZSTD_c_targetLength" | "zlib.constants.ZSTD_c_strategy" | "zlib.constants.ZSTD_c_enableLongDistanceMatching" | "zlib.constants.ZSTD_c_ldmHashLog" | "zlib.constants.ZSTD_c_ldmMinMatch" | "zlib.constants.ZSTD_c_ldmBucketSizeLog" | "zlib.constants.ZSTD_c_ldmHashRateLog" | "zlib.constants.ZSTD_c_contentSizeFlag" | "zlib.constants.ZSTD_c_checksumFlag" | "zlib.constants.ZSTD_c_dictIDFlag" | "zlib.constants.ZSTD_c_nbWorkers" | "zlib.constants.ZSTD_c_jobSize" | "zlib.constants.ZSTD_c_overlapLog" | "zlib.constants.ZSTD_d_windowLogMax" | "zlib.constants.ZSTD_CLEVEL_DEFAULT" | "zlib.constants.ZSTD_error_no_error" | "zlib.constants.ZSTD_error_GENERIC" | "zlib.constants.ZSTD_error_prefix_unknown" | "zlib.constants.ZSTD_error_version_unsupported" | "zlib.constants.ZSTD_error_frameParameter_unsupported" | "zlib.constants.ZSTD_error_frameParameter_windowTooLarge" | "zlib.constants.ZSTD_error_corruption_detected" | "zlib.constants.ZSTD_error_checksum_wrong" | "zlib.constants.ZSTD_error_literals_headerWrong" | "zlib.constants.ZSTD_error_dictionary_corrupted" | "zlib.constants.ZSTD_error_dictionary_wrong" | "zlib.constants.ZSTD_error_dictionaryCreation_failed" | "zlib.constants.ZSTD_error_parameter_unsupported" | "zlib.constants.ZSTD_error_parameter_combination_unsupported" | "zlib.constants.ZSTD_error_parameter_outOfBound" | "zlib.constants.ZSTD_error_tableLog_tooLarge" | "zlib.constants.ZSTD_error_maxSymbolValue_tooLarge" | "zlib.constants.ZSTD_error_maxSymbolValue_tooSmall" | "zlib.constants.ZSTD_error_stabilityCondition_notRespected" | "zlib.constants.ZSTD_error_stage_wrong" | "zlib.constants.ZSTD_error_init_missing" | "zlib.constants.ZSTD_error_memory_allocation" | "zlib.constants.ZSTD_error_workSpace_tooSmall" | "zlib.constants.ZSTD_error_dstSize_tooSmall" | "zlib.constants.ZSTD_error_srcSize_wrong" | "zlib.constants.ZSTD_error_dstBuffer_null" | "zlib.constants.ZSTD_error_noForwardProgress_destFull" | "zlib.constants.ZSTD_error_noForwardProgress_inputEmpty" | "zlib.crc32" | "zlib.createBrotliCompress" | "zlib.createBrotliDecompress" | "zlib.createDeflate" | "zlib.createDeflateRaw" | "zlib.createGunzip" | "zlib.createGzip" | "zlib.createInflate" | "zlib.createInflateRaw" | "zlib.createUnzip" | "zlib.createZstdCompress" | "zlib.createZstdDecompress" | "zlib.deflate" | "zlib.deflateRaw" | "zlib.deflateRawSync" | "zlib.deflateSync" | "zlib.gunzip" | "zlib.gunzipSync" | "zlib.gzip" | "zlib.gzipSync" | "zlib.inflate" | "zlib.inflateRaw" | "zlib.inflateRawSync" | "zlib.inflateSync" | "zlib.unzip" | "zlib.unzipSync" | "zlib.zstdCompress" | "zlib.zstdCompressSync" | "zlib.zstdDecompress" | "zlib.zstdDecompressSync" | "zlib.BrotliCompress()" | "zlib.BrotliCompress" | "zlib.BrotliDecompress()" | "zlib.BrotliDecompress" | "zlib.Deflate()" | "zlib.Deflate" | "zlib.DeflateRaw()" | "zlib.DeflateRaw" | "zlib.Gunzip()" | "zlib.Gunzip" | "zlib.Gzip()" | "zlib.Gzip" | "zlib.Inflate()" | "zlib.Inflate" | "zlib.InflateRaw()" | "zlib.InflateRaw" | "zlib.Unzip()" | "zlib.Unzip" | "zlib.ZstdCompress" | "zlib.ZstdDecompress" | "zlib.ZstdOptions" | "zlib" | "import.meta.resolve" | "import.meta.dirname" | "import.meta.filename" | "import.meta.main")[];
9067
10636
  }];
9068
10637
  // ----- node/prefer-global/buffer -----
9069
10638
  type NodePreferGlobalBuffer = [] | [("always" | "never")];
@@ -10921,6 +12490,7 @@ type PnpmJsonEnforceCatalog = [] | [{
10921
12490
  reuseExistingCatalog?: boolean;
10922
12491
  conflicts?: ("new-catalog" | "overrides" | "error");
10923
12492
  fields?: string[];
12493
+ ignores?: string[];
10924
12494
  }];
10925
12495
  // ----- pnpm/json-prefer-workspace-settings -----
10926
12496
  type PnpmJsonPreferWorkspaceSettings = [] | [{
@@ -10934,9 +12504,20 @@ type PnpmJsonValidCatalog = [] | [{
10934
12504
  enforceNoConflict?: boolean;
10935
12505
  fields?: unknown[];
10936
12506
  }];
12507
+ // ----- pnpm/yaml-enforce-settings -----
12508
+ type PnpmYamlEnforceSettings = [] | [{
12509
+ autofix?: boolean;
12510
+ settings?: {
12511
+ [k: string]: unknown | undefined;
12512
+ };
12513
+ requiredFields?: string[];
12514
+ forbiddenFields?: string[];
12515
+ [k: string]: unknown | undefined;
12516
+ }];
10937
12517
  // ----- pnpm/yaml-no-duplicate-catalog-item -----
10938
12518
  type PnpmYamlNoDuplicateCatalogItem = [] | [{
10939
12519
  allow?: string[];
12520
+ checkDuplicates?: ("name-only" | "exact-version");
10940
12521
  }];
10941
12522
  // ----- prefer-arrow-callback -----
10942
12523
  type PreferArrowCallback = [] | [{
@@ -10988,6 +12569,10 @@ type PreferReflect = [] | [{
10988
12569
  type PreferRegexLiterals = [] | [{
10989
12570
  disallowRedundantWrapping?: boolean;
10990
12571
  }];
12572
+ // ----- preserve-caught-error -----
12573
+ type PreserveCaughtError = [] | [{
12574
+ requireCatchParameter?: boolean;
12575
+ }];
10991
12576
  // ----- quote-props -----
10992
12577
  type QuoteProps = ([] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [("always" | "as-needed" | "consistent" | "consistent-as-needed"), {
10993
12578
  keywords?: boolean;
@@ -11006,16 +12591,128 @@ type ReactDomNoUnknownProperty = [] | [{
11006
12591
  ignore?: string[];
11007
12592
  requireDataLowercase?: boolean;
11008
12593
  }];
12594
+ // ----- react-hooks/automatic-effect-dependencies -----
12595
+ type ReactHooksAutomaticEffectDependencies = [] | [{
12596
+ [k: string]: unknown | undefined;
12597
+ }];
12598
+ // ----- react-hooks/capitalized-calls -----
12599
+ type ReactHooksCapitalizedCalls = [] | [{
12600
+ [k: string]: unknown | undefined;
12601
+ }];
12602
+ // ----- react-hooks/component-hook-factories -----
12603
+ type ReactHooksComponentHookFactories = [] | [{
12604
+ [k: string]: unknown | undefined;
12605
+ }];
12606
+ // ----- react-hooks/config -----
12607
+ type ReactHooksConfig = [] | [{
12608
+ [k: string]: unknown | undefined;
12609
+ }];
12610
+ // ----- react-hooks/error-boundaries -----
12611
+ type ReactHooksErrorBoundaries = [] | [{
12612
+ [k: string]: unknown | undefined;
12613
+ }];
11009
12614
  // ----- react-hooks/exhaustive-deps -----
11010
12615
  type ReactHooksExhaustiveDeps = [] | [{
11011
12616
  additionalHooks?: string;
11012
12617
  enableDangerousAutofixThisMayCauseInfiniteLoops?: boolean;
12618
+ experimental_autoDependenciesHooks?: string[];
12619
+ requireExplicitEffectDeps?: boolean;
12620
+ }];
12621
+ // ----- react-hooks/fbt -----
12622
+ type ReactHooksFbt = [] | [{
12623
+ [k: string]: unknown | undefined;
12624
+ }];
12625
+ // ----- react-hooks/fire -----
12626
+ type ReactHooksFire = [] | [{
12627
+ [k: string]: unknown | undefined;
12628
+ }];
12629
+ // ----- react-hooks/gating -----
12630
+ type ReactHooksGating = [] | [{
12631
+ [k: string]: unknown | undefined;
12632
+ }];
12633
+ // ----- react-hooks/globals -----
12634
+ type ReactHooksGlobals = [] | [{
12635
+ [k: string]: unknown | undefined;
12636
+ }];
12637
+ // ----- react-hooks/hooks -----
12638
+ type ReactHooksHooks = [] | [{
12639
+ [k: string]: unknown | undefined;
12640
+ }];
12641
+ // ----- react-hooks/immutability -----
12642
+ type ReactHooksImmutability = [] | [{
12643
+ [k: string]: unknown | undefined;
12644
+ }];
12645
+ // ----- react-hooks/incompatible-library -----
12646
+ type ReactHooksIncompatibleLibrary = [] | [{
12647
+ [k: string]: unknown | undefined;
12648
+ }];
12649
+ // ----- react-hooks/invariant -----
12650
+ type ReactHooksInvariant = [] | [{
12651
+ [k: string]: unknown | undefined;
12652
+ }];
12653
+ // ----- react-hooks/memoized-effect-dependencies -----
12654
+ type ReactHooksMemoizedEffectDependencies = [] | [{
12655
+ [k: string]: unknown | undefined;
12656
+ }];
12657
+ // ----- react-hooks/no-deriving-state-in-effects -----
12658
+ type ReactHooksNoDerivingStateInEffects = [] | [{
12659
+ [k: string]: unknown | undefined;
12660
+ }];
12661
+ // ----- react-hooks/preserve-manual-memoization -----
12662
+ type ReactHooksPreserveManualMemoization = [] | [{
12663
+ [k: string]: unknown | undefined;
12664
+ }];
12665
+ // ----- react-hooks/purity -----
12666
+ type ReactHooksPurity = [] | [{
12667
+ [k: string]: unknown | undefined;
12668
+ }];
12669
+ // ----- react-hooks/refs -----
12670
+ type ReactHooksRefs = [] | [{
12671
+ [k: string]: unknown | undefined;
12672
+ }];
12673
+ // ----- react-hooks/rule-suppression -----
12674
+ type ReactHooksRuleSuppression = [] | [{
12675
+ [k: string]: unknown | undefined;
12676
+ }];
12677
+ // ----- react-hooks/rules-of-hooks -----
12678
+ type ReactHooksRulesOfHooks = [] | [{
12679
+ additionalHooks?: string;
12680
+ }];
12681
+ // ----- react-hooks/set-state-in-effect -----
12682
+ type ReactHooksSetStateInEffect = [] | [{
12683
+ [k: string]: unknown | undefined;
12684
+ }];
12685
+ // ----- react-hooks/set-state-in-render -----
12686
+ type ReactHooksSetStateInRender = [] | [{
12687
+ [k: string]: unknown | undefined;
12688
+ }];
12689
+ // ----- react-hooks/static-components -----
12690
+ type ReactHooksStaticComponents = [] | [{
12691
+ [k: string]: unknown | undefined;
12692
+ }];
12693
+ // ----- react-hooks/syntax -----
12694
+ type ReactHooksSyntax = [] | [{
12695
+ [k: string]: unknown | undefined;
12696
+ }];
12697
+ // ----- react-hooks/todo -----
12698
+ type ReactHooksTodo = [] | [{
12699
+ [k: string]: unknown | undefined;
12700
+ }];
12701
+ // ----- react-hooks/unsupported-syntax -----
12702
+ type ReactHooksUnsupportedSyntax = [] | [{
12703
+ [k: string]: unknown | undefined;
12704
+ }];
12705
+ // ----- react-hooks/use-memo -----
12706
+ type ReactHooksUseMemo = [] | [{
12707
+ [k: string]: unknown | undefined;
12708
+ }];
12709
+ // ----- react-hooks/void-use-memo -----
12710
+ type ReactHooksVoidUseMemo = [] | [{
12711
+ [k: string]: unknown | undefined;
11013
12712
  }];
11014
12713
  // ----- react-naming-convention/component-name -----
11015
12714
  type ReactNamingConventionComponentName = [] | [(("PascalCase" | "CONSTANT_CASE") | {
11016
12715
  allowAllCaps?: boolean;
11017
- allowLeadingUnderscore?: boolean;
11018
- allowNamespace?: boolean;
11019
12716
  excepts?: string[];
11020
12717
  rule?: ("PascalCase" | "CONSTANT_CASE");
11021
12718
  })];
@@ -11052,8 +12749,27 @@ type ReactRefreshOnlyExportComponents = [] | [{
11052
12749
  customHOCs?: string[];
11053
12750
  checkJS?: boolean;
11054
12751
  }];
12752
+ // ----- react/jsx-shorthand-boolean -----
12753
+ type ReactJsxShorthandBoolean = [] | [(-1 | 1)];
12754
+ // ----- react/jsx-shorthand-fragment -----
12755
+ type ReactJsxShorthandFragment = [] | [(-1 | 1)];
12756
+ // ----- react/no-forbidden-props -----
12757
+ type ReactNoForbiddenProps = [] | [{
12758
+ forbid?: (string | {
12759
+ excludedNodes?: string[];
12760
+ prop: string;
12761
+ } | {
12762
+ includedNodes?: string[];
12763
+ prop: string;
12764
+ })[];
12765
+ }];
12766
+ // ----- react/no-unstable-default-props -----
12767
+ type ReactNoUnstableDefaultProps = [] | [{
12768
+ safeDefaultProps?: string[];
12769
+ }];
11055
12770
  // ----- react/no-useless-fragment -----
11056
12771
  type ReactNoUselessFragment = [] | [{
12772
+ allowEmptyFragment?: boolean;
11057
12773
  allowExpressions?: boolean;
11058
12774
  }];
11059
12775
  // ----- regexp/hexadecimal-escape -----
@@ -11446,6 +13162,50 @@ type StyleCurlyNewline = [] | [(("always" | "never") | {
11446
13162
  type StyleDotLocation = [] | [("object" | "property")];
11447
13163
  // ----- style/eol-last -----
11448
13164
  type StyleEolLast = [] | [("always" | "never" | "unix" | "windows")];
13165
+ // ----- style/exp-list-style -----
13166
+ type StyleExpListStyle = [] | [{
13167
+ singleLine?: _StyleExpListStyle_SingleLineConfig;
13168
+ multiLine?: _StyleExpListStyle_MultiLineConfig;
13169
+ overrides?: {
13170
+ "[]"?: _StyleExpListStyle_BaseConfig;
13171
+ "{}"?: _StyleExpListStyle_BaseConfig;
13172
+ "<>"?: _StyleExpListStyle_BaseConfig;
13173
+ "()"?: _StyleExpListStyle_BaseConfig;
13174
+ ArrayExpression?: _StyleExpListStyle_BaseConfig;
13175
+ ArrayPattern?: _StyleExpListStyle_BaseConfig;
13176
+ ArrowFunctionExpression?: _StyleExpListStyle_BaseConfig;
13177
+ CallExpression?: _StyleExpListStyle_BaseConfig;
13178
+ ExportNamedDeclaration?: _StyleExpListStyle_BaseConfig;
13179
+ FunctionDeclaration?: _StyleExpListStyle_BaseConfig;
13180
+ FunctionExpression?: _StyleExpListStyle_BaseConfig;
13181
+ ImportDeclaration?: _StyleExpListStyle_BaseConfig;
13182
+ ImportAttributes?: _StyleExpListStyle_BaseConfig;
13183
+ NewExpression?: _StyleExpListStyle_BaseConfig;
13184
+ ObjectExpression?: _StyleExpListStyle_BaseConfig;
13185
+ ObjectPattern?: _StyleExpListStyle_BaseConfig;
13186
+ TSDeclareFunction?: _StyleExpListStyle_BaseConfig;
13187
+ TSFunctionType?: _StyleExpListStyle_BaseConfig;
13188
+ TSInterfaceBody?: _StyleExpListStyle_BaseConfig;
13189
+ TSEnumBody?: _StyleExpListStyle_BaseConfig;
13190
+ TSTupleType?: _StyleExpListStyle_BaseConfig;
13191
+ TSTypeLiteral?: _StyleExpListStyle_BaseConfig;
13192
+ TSTypeParameterDeclaration?: _StyleExpListStyle_BaseConfig;
13193
+ TSTypeParameterInstantiation?: _StyleExpListStyle_BaseConfig;
13194
+ JSONArrayExpression?: _StyleExpListStyle_BaseConfig;
13195
+ JSONObjectExpression?: _StyleExpListStyle_BaseConfig;
13196
+ };
13197
+ }];
13198
+ interface _StyleExpListStyle_SingleLineConfig {
13199
+ spacing?: ("always" | "never");
13200
+ maxItems?: number;
13201
+ }
13202
+ interface _StyleExpListStyle_MultiLineConfig {
13203
+ minItems?: number;
13204
+ }
13205
+ interface _StyleExpListStyle_BaseConfig {
13206
+ singleLine?: _StyleExpListStyle_SingleLineConfig;
13207
+ multiline?: _StyleExpListStyle_MultiLineConfig;
13208
+ }
11449
13209
  // ----- style/function-call-argument-newline -----
11450
13210
  type StyleFunctionCallArgumentNewline = [] | [("always" | "never" | "consistent")];
11451
13211
  // ----- style/function-call-spacing -----
@@ -11476,6 +13236,10 @@ type StyleGeneratorStarSpacing = [] | [(("before" | "after" | "both" | "neither"
11476
13236
  before?: boolean;
11477
13237
  after?: boolean;
11478
13238
  });
13239
+ shorthand?: (("before" | "after" | "both" | "neither") | {
13240
+ before?: boolean;
13241
+ after?: boolean;
13242
+ });
11479
13243
  })];
11480
13244
  // ----- style/implicit-arrow-linebreak -----
11481
13245
  type StyleImplicitArrowLinebreak = [] | [("beside" | "below")];
@@ -11511,7 +13275,11 @@ type StyleIndent = [] | [("tab" | number)] | [("tab" | number), {
11511
13275
  ObjectExpression?: (number | ("first" | "off"));
11512
13276
  ImportDeclaration?: (number | ("first" | "off"));
11513
13277
  flatTernaryExpressions?: boolean;
11514
- offsetTernaryExpressions?: boolean;
13278
+ offsetTernaryExpressions?: (boolean | {
13279
+ CallExpression?: boolean;
13280
+ AwaitExpression?: boolean;
13281
+ NewExpression?: boolean;
13282
+ });
11515
13283
  offsetTernaryExpressionsOffsetCallExpressions?: boolean;
11516
13284
  ignoredNodes?: string[];
11517
13285
  ignoreComments?: boolean;
@@ -11721,22 +13489,6 @@ type StyleKeywordSpacing = [] | [{
11721
13489
  before?: boolean;
11722
13490
  after?: boolean;
11723
13491
  };
11724
- arguments?: {
11725
- before?: boolean;
11726
- after?: boolean;
11727
- };
11728
- as?: {
11729
- before?: boolean;
11730
- after?: boolean;
11731
- };
11732
- async?: {
11733
- before?: boolean;
11734
- after?: boolean;
11735
- };
11736
- await?: {
11737
- before?: boolean;
11738
- after?: boolean;
11739
- };
11740
13492
  boolean?: {
11741
13493
  before?: boolean;
11742
13494
  after?: boolean;
@@ -11801,10 +13553,6 @@ type StyleKeywordSpacing = [] | [{
11801
13553
  before?: boolean;
11802
13554
  after?: boolean;
11803
13555
  };
11804
- eval?: {
11805
- before?: boolean;
11806
- after?: boolean;
11807
- };
11808
13556
  export?: {
11809
13557
  before?: boolean;
11810
13558
  after?: boolean;
@@ -11833,18 +13581,10 @@ type StyleKeywordSpacing = [] | [{
11833
13581
  before?: boolean;
11834
13582
  after?: boolean;
11835
13583
  };
11836
- from?: {
11837
- before?: boolean;
11838
- after?: boolean;
11839
- };
11840
13584
  function?: {
11841
13585
  before?: boolean;
11842
13586
  after?: boolean;
11843
13587
  };
11844
- get?: {
11845
- before?: boolean;
11846
- after?: boolean;
11847
- };
11848
13588
  goto?: {
11849
13589
  before?: boolean;
11850
13590
  after?: boolean;
@@ -11877,10 +13617,6 @@ type StyleKeywordSpacing = [] | [{
11877
13617
  before?: boolean;
11878
13618
  after?: boolean;
11879
13619
  };
11880
- let?: {
11881
- before?: boolean;
11882
- after?: boolean;
11883
- };
11884
13620
  long?: {
11885
13621
  before?: boolean;
11886
13622
  after?: boolean;
@@ -11897,10 +13633,6 @@ type StyleKeywordSpacing = [] | [{
11897
13633
  before?: boolean;
11898
13634
  after?: boolean;
11899
13635
  };
11900
- of?: {
11901
- before?: boolean;
11902
- after?: boolean;
11903
- };
11904
13636
  package?: {
11905
13637
  before?: boolean;
11906
13638
  after?: boolean;
@@ -11921,10 +13653,6 @@ type StyleKeywordSpacing = [] | [{
11921
13653
  before?: boolean;
11922
13654
  after?: boolean;
11923
13655
  };
11924
- set?: {
11925
- before?: boolean;
11926
- after?: boolean;
11927
- };
11928
13656
  short?: {
11929
13657
  before?: boolean;
11930
13658
  after?: boolean;
@@ -11969,18 +13697,10 @@ type StyleKeywordSpacing = [] | [{
11969
13697
  before?: boolean;
11970
13698
  after?: boolean;
11971
13699
  };
11972
- type?: {
11973
- before?: boolean;
11974
- after?: boolean;
11975
- };
11976
13700
  typeof?: {
11977
13701
  before?: boolean;
11978
13702
  after?: boolean;
11979
13703
  };
11980
- using?: {
11981
- before?: boolean;
11982
- after?: boolean;
11983
- };
11984
13704
  var?: {
11985
13705
  before?: boolean;
11986
13706
  after?: boolean;
@@ -12001,6 +13721,54 @@ type StyleKeywordSpacing = [] | [{
12001
13721
  before?: boolean;
12002
13722
  after?: boolean;
12003
13723
  };
13724
+ arguments?: {
13725
+ before?: boolean;
13726
+ after?: boolean;
13727
+ };
13728
+ as?: {
13729
+ before?: boolean;
13730
+ after?: boolean;
13731
+ };
13732
+ async?: {
13733
+ before?: boolean;
13734
+ after?: boolean;
13735
+ };
13736
+ await?: {
13737
+ before?: boolean;
13738
+ after?: boolean;
13739
+ };
13740
+ eval?: {
13741
+ before?: boolean;
13742
+ after?: boolean;
13743
+ };
13744
+ from?: {
13745
+ before?: boolean;
13746
+ after?: boolean;
13747
+ };
13748
+ get?: {
13749
+ before?: boolean;
13750
+ after?: boolean;
13751
+ };
13752
+ let?: {
13753
+ before?: boolean;
13754
+ after?: boolean;
13755
+ };
13756
+ of?: {
13757
+ before?: boolean;
13758
+ after?: boolean;
13759
+ };
13760
+ set?: {
13761
+ before?: boolean;
13762
+ after?: boolean;
13763
+ };
13764
+ type?: {
13765
+ before?: boolean;
13766
+ after?: boolean;
13767
+ };
13768
+ using?: {
13769
+ before?: boolean;
13770
+ after?: boolean;
13771
+ };
12004
13772
  yield?: {
12005
13773
  before?: boolean;
12006
13774
  after?: boolean;
@@ -12300,6 +14068,19 @@ type StyleObjectCurlyNewline = [] | [((("always" | "never") | {
12300
14068
  type StyleObjectCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), {
12301
14069
  arraysInObjects?: boolean;
12302
14070
  objectsInObjects?: boolean;
14071
+ overrides?: {
14072
+ ObjectPattern?: ("always" | "never");
14073
+ ObjectExpression?: ("always" | "never");
14074
+ ImportDeclaration?: ("always" | "never");
14075
+ ImportAttributes?: ("always" | "never");
14076
+ ExportNamedDeclaration?: ("always" | "never");
14077
+ ExportAllDeclaration?: ("always" | "never");
14078
+ TSMappedType?: ("always" | "never");
14079
+ TSTypeLiteral?: ("always" | "never");
14080
+ TSInterfaceBody?: ("always" | "never");
14081
+ TSEnumBody?: ("always" | "never");
14082
+ };
14083
+ emptyObjects?: ("ignore" | "always" | "never");
12303
14084
  }];
12304
14085
  // ----- style/object-property-newline -----
12305
14086
  type StyleObjectPropertyNewline = [] | [{
@@ -12451,6 +14232,118 @@ type SwitchColonSpacing = [] | [{
12451
14232
  type TemplateCurlySpacing = [] | [("always" | "never")];
12452
14233
  // ----- template-tag-spacing -----
12453
14234
  type TemplateTagSpacing = [] | [("always" | "never")];
14235
+ // ----- test/consistent-each-for -----
14236
+ type TestConsistentEachFor = [] | [{
14237
+ test?: ("each" | "for");
14238
+ it?: ("each" | "for");
14239
+ describe?: ("each" | "for");
14240
+ suite?: ("each" | "for");
14241
+ }];
14242
+ // ----- test/consistent-test-filename -----
14243
+ type TestConsistentTestFilename = [] | [{
14244
+ pattern?: string;
14245
+ allTestPattern?: string;
14246
+ }];
14247
+ // ----- test/consistent-test-it -----
14248
+ type TestConsistentTestIt = [] | [{
14249
+ fn?: ("test" | "it");
14250
+ withinDescribe?: ("test" | "it");
14251
+ }];
14252
+ // ----- test/consistent-vitest-vi -----
14253
+ type TestConsistentVitestVi = [] | [{
14254
+ fn?: ("vi" | "vitest");
14255
+ }];
14256
+ // ----- test/expect-expect -----
14257
+ type TestExpectExpect = [] | [{
14258
+ assertFunctionNames?: string[];
14259
+ additionalTestBlockFunctions?: string[];
14260
+ }];
14261
+ // ----- test/max-expects -----
14262
+ type TestMaxExpects = [] | [{
14263
+ max?: number;
14264
+ }];
14265
+ // ----- test/max-nested-describe -----
14266
+ type TestMaxNestedDescribe = [] | [{
14267
+ max?: number;
14268
+ }];
14269
+ // ----- test/no-focused-tests -----
14270
+ type TestNoFocusedTests = [] | [{
14271
+ fixable?: boolean;
14272
+ }];
14273
+ // ----- test/no-hooks -----
14274
+ type TestNoHooks = [] | [{
14275
+ allow?: ("beforeAll" | "beforeEach" | "afterAll" | "afterEach")[];
14276
+ }];
14277
+ // ----- test/no-large-snapshots -----
14278
+ type TestNoLargeSnapshots = [] | [{
14279
+ maxSize?: number;
14280
+ inlineMaxSize?: number;
14281
+ allowedSnapshots?: {
14282
+ [k: string]: unknown[] | undefined;
14283
+ };
14284
+ }];
14285
+ // ----- test/no-only-tests -----
14286
+ type TestNoOnlyTests = [] | [{
14287
+ block?: string[];
14288
+ focus?: string[];
14289
+ functions?: string[];
14290
+ fix?: boolean;
14291
+ }];
14292
+ // ----- test/no-restricted-matchers -----
14293
+ type TestNoRestrictedMatchers = [] | [{
14294
+ [k: string]: (string | null) | undefined;
14295
+ }];
14296
+ // ----- test/no-restricted-vi-methods -----
14297
+ type TestNoRestrictedViMethods = [] | [{
14298
+ [k: string]: (string | null) | undefined;
14299
+ }];
14300
+ // ----- test/no-standalone-expect -----
14301
+ type TestNoStandaloneExpect = [] | [{
14302
+ additionalTestBlockFunctions?: string[];
14303
+ }];
14304
+ // ----- test/prefer-expect-assertions -----
14305
+ type TestPreferExpectAssertions = [] | [{
14306
+ onlyFunctionsWithAsyncKeyword?: boolean;
14307
+ onlyFunctionsWithExpectInLoop?: boolean;
14308
+ onlyFunctionsWithExpectInCallback?: boolean;
14309
+ }];
14310
+ // ----- test/prefer-lowercase-title -----
14311
+ type TestPreferLowercaseTitle = [] | [{
14312
+ ignore?: ("describe" | "test" | "it")[];
14313
+ allowedPrefixes?: string[];
14314
+ ignoreTopLevelDescribe?: boolean;
14315
+ lowercaseFirstCharacterOnly?: boolean;
14316
+ }];
14317
+ // ----- test/prefer-snapshot-hint -----
14318
+ type TestPreferSnapshotHint = [] | [("always" | "multi")];
14319
+ // ----- test/require-hook -----
14320
+ type TestRequireHook = [] | [{
14321
+ allowedFunctionCalls?: string[];
14322
+ }];
14323
+ // ----- test/require-mock-type-parameters -----
14324
+ type TestRequireMockTypeParameters = [] | [{
14325
+ checkImportFunctions?: boolean;
14326
+ }];
14327
+ // ----- test/require-top-level-describe -----
14328
+ type TestRequireTopLevelDescribe = [] | [{
14329
+ maxNumberOfTopLevelDescribes?: number;
14330
+ }];
14331
+ // ----- test/valid-expect -----
14332
+ type TestValidExpect = [] | [{
14333
+ alwaysAwait?: boolean;
14334
+ asyncMatchers?: string[];
14335
+ minArgs?: number;
14336
+ maxArgs?: number;
14337
+ }];
14338
+ // ----- test/valid-title -----
14339
+ type TestValidTitle = [] | [{
14340
+ ignoreTypeOfDescribeName?: boolean;
14341
+ allowArguments?: boolean;
14342
+ disallowedWords?: string[];
14343
+ [k: string]: (string | [string] | [string, string] | {
14344
+ [k: string]: (string | [string] | [string, string]) | undefined;
14345
+ });
14346
+ }];
12454
14347
  // ----- toml/array-bracket-newline -----
12455
14348
  type TomlArrayBracketNewline = [] | [(("always" | "never" | "consistent") | {
12456
14349
  multiline?: boolean;
@@ -13272,6 +15165,10 @@ type TsNoUnnecessaryTypeAssertion = [] | [{
13272
15165
  checkLiteralConstAssertions?: boolean;
13273
15166
  typesToIgnore?: string[];
13274
15167
  }];
15168
+ // ----- ts/no-unsafe-member-access -----
15169
+ type TsNoUnsafeMemberAccess = [] | [{
15170
+ allowOptionalChaining?: boolean;
15171
+ }];
13275
15172
  // ----- ts/no-unused-expressions -----
13276
15173
  type TsNoUnusedExpressions = [] | [{
13277
15174
  allowShortCircuit?: boolean;
@@ -13289,6 +15186,7 @@ type TsNoUnusedVars = [] | [(("all" | "local") | {
13289
15186
  destructuredArrayIgnorePattern?: string;
13290
15187
  ignoreClassWithStaticInitBlock?: boolean;
13291
15188
  ignoreRestSiblings?: boolean;
15189
+ ignoreUsingDeclarations?: boolean;
13292
15190
  reportUsedIgnorePattern?: boolean;
13293
15191
  vars?: ("all" | "local");
13294
15192
  varsIgnorePattern?: string;
@@ -13587,6 +15485,10 @@ type UnicornNoArrayReduce = [] | [{
13587
15485
  type UnicornNoArrayReverse = [] | [{
13588
15486
  allowExpressionStatement?: boolean;
13589
15487
  }];
15488
+ // ----- unicorn/no-array-sort -----
15489
+ type UnicornNoArraySort = [] | [{
15490
+ allowExpressionStatement?: boolean;
15491
+ }];
13590
15492
  // ----- unicorn/no-instanceof-builtins -----
13591
15493
  type UnicornNoInstanceofBuiltins = [] | [{
13592
15494
  useErrorIsError?: boolean;
@@ -13735,6 +15637,10 @@ type UnicornTemplateIndent = [] | [{
13735
15637
  selectors?: string[];
13736
15638
  comments?: string[];
13737
15639
  }];
15640
+ // ----- unicorn/text-encoding-identifier-case -----
15641
+ type UnicornTextEncodingIdentifierCase = [] | [{
15642
+ withDash?: boolean;
15643
+ }];
13738
15644
  // ----- unocss/enforce-class-compile -----
13739
15645
  type UnocssEnforceClassCompile = [] | [{
13740
15646
  prefix?: string;
@@ -13754,6 +15660,7 @@ type UnusedImportsNoUnusedImports = [] | [(("all" | "local") | {
13754
15660
  destructuredArrayIgnorePattern?: string;
13755
15661
  ignoreClassWithStaticInitBlock?: boolean;
13756
15662
  ignoreRestSiblings?: boolean;
15663
+ ignoreUsingDeclarations?: boolean;
13757
15664
  reportUsedIgnorePattern?: boolean;
13758
15665
  vars?: ("all" | "local");
13759
15666
  varsIgnorePattern?: string;
@@ -13767,6 +15674,7 @@ type UnusedImportsNoUnusedVars = [] | [(("all" | "local") | {
13767
15674
  destructuredArrayIgnorePattern?: string;
13768
15675
  ignoreClassWithStaticInitBlock?: boolean;
13769
15676
  ignoreRestSiblings?: boolean;
15677
+ ignoreUsingDeclarations?: boolean;
13770
15678
  reportUsedIgnorePattern?: boolean;
13771
15679
  vars?: ("all" | "local");
13772
15680
  varsIgnorePattern?: string;
@@ -13780,6 +15688,77 @@ type UseIsnan = [] | [{
13780
15688
  type ValidTypeof = [] | [{
13781
15689
  requireStringLiterals?: boolean;
13782
15690
  }];
15691
+ // ----- vue-a11y/alt-text -----
15692
+ type VueA11YAltText = [] | [{
15693
+ elements?: string[];
15694
+ img?: string[];
15695
+ object?: string[];
15696
+ area?: string[];
15697
+ "input[type=\"image\"]"?: string[];
15698
+ [k: string]: unknown | undefined;
15699
+ }];
15700
+ // ----- vue-a11y/anchor-has-content -----
15701
+ type VueA11YAnchorHasContent = [] | [{
15702
+ components?: string[];
15703
+ accessibleChildren?: string[];
15704
+ accessibleDirectives?: string[];
15705
+ [k: string]: unknown | undefined;
15706
+ }];
15707
+ // ----- vue-a11y/aria-role -----
15708
+ type VueA11YAriaRole = [] | [{
15709
+ ignoreNonDOM?: boolean;
15710
+ }];
15711
+ // ----- vue-a11y/form-control-has-label -----
15712
+ type VueA11YFormControlHasLabel = [] | [{
15713
+ labelComponents?: string[];
15714
+ controlComponents?: string[];
15715
+ [k: string]: unknown | undefined;
15716
+ }];
15717
+ // ----- vue-a11y/heading-has-content -----
15718
+ type VueA11YHeadingHasContent = [] | [{
15719
+ components?: string[];
15720
+ accessibleChildren?: string[];
15721
+ accessibleDirectives?: string[];
15722
+ [k: string]: unknown | undefined;
15723
+ }];
15724
+ // ----- vue-a11y/interactive-supports-focus -----
15725
+ type VueA11YInteractiveSupportsFocus = [] | [{
15726
+ tabbable?: ("button" | "checkbox" | "columnheader" | "combobox" | "grid" | "gridcell" | "link" | "listbox" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "option" | "progressbar" | "radio" | "radiogroup" | "row" | "rowheader" | "scrollbar" | "searchbox" | "slider" | "spinbutton" | "switch" | "tab" | "tablist" | "textbox" | "tree" | "treegrid" | "treeitem" | "doc-backlink" | "doc-biblioref" | "doc-glossref" | "doc-noteref")[];
15727
+ [k: string]: unknown | undefined;
15728
+ }];
15729
+ // ----- vue-a11y/label-has-for -----
15730
+ type VueA11YLabelHasFor = [] | [{
15731
+ components?: string[];
15732
+ controlComponents?: string[];
15733
+ required?: (("nesting" | "id") | {
15734
+ some: ("nesting" | "id")[];
15735
+ [k: string]: unknown | undefined;
15736
+ } | {
15737
+ every: ("nesting" | "id")[];
15738
+ [k: string]: unknown | undefined;
15739
+ });
15740
+ allowChildren?: boolean;
15741
+ [k: string]: unknown | undefined;
15742
+ }];
15743
+ // ----- vue-a11y/media-has-caption -----
15744
+ type VueA11YMediaHasCaption = [] | [{
15745
+ audio?: string[];
15746
+ track?: string[];
15747
+ video?: string[];
15748
+ [k: string]: unknown | undefined;
15749
+ }];
15750
+ // ----- vue-a11y/no-autofocus -----
15751
+ type VueA11YNoAutofocus = [] | [{
15752
+ ignoreNonDOM?: boolean;
15753
+ }];
15754
+ // ----- vue-a11y/no-distracting-elements -----
15755
+ type VueA11YNoDistractingElements = [] | [{
15756
+ [k: string]: unknown | undefined;
15757
+ }];
15758
+ // ----- vue-a11y/no-redundant-roles -----
15759
+ type VueA11YNoRedundantRoles = [] | [{
15760
+ [k: string]: string[] | undefined;
15761
+ }];
13783
15762
  // ----- vue/array-bracket-newline -----
13784
15763
  type VueArrayBracketNewline = [] | [(("always" | "never" | "consistent") | {
13785
15764
  multiline?: boolean;
@@ -13818,6 +15797,7 @@ type VueAttributeHyphenation = [] | [("always" | "never")] | [("always" | "never
13818
15797
  type VueAttributesOrder = [] | [{
13819
15798
  order?: (("DEFINITION" | "LIST_RENDERING" | "CONDITIONALS" | "RENDER_MODIFIERS" | "GLOBAL" | "UNIQUE" | "SLOT" | "TWO_WAY_BINDING" | "OTHER_DIRECTIVES" | "OTHER_ATTR" | "ATTR_STATIC" | "ATTR_DYNAMIC" | "ATTR_SHORTHAND_BOOL" | "EVENTS" | "CONTENT") | ("DEFINITION" | "LIST_RENDERING" | "CONDITIONALS" | "RENDER_MODIFIERS" | "GLOBAL" | "UNIQUE" | "SLOT" | "TWO_WAY_BINDING" | "OTHER_DIRECTIVES" | "OTHER_ATTR" | "ATTR_STATIC" | "ATTR_DYNAMIC" | "ATTR_SHORTHAND_BOOL" | "EVENTS" | "CONTENT")[])[];
13820
15799
  alphabetical?: boolean;
15800
+ sortLineLength?: boolean;
13821
15801
  }];
13822
15802
  // ----- vue/block-lang -----
13823
15803
  type VueBlockLang = [] | [{
@@ -14464,6 +16444,10 @@ type VueNewLineBetweenMultiLineProperty = [] | [{
14464
16444
  }];
14465
16445
  // ----- vue/next-tick-style -----
14466
16446
  type VueNextTickStyle = [] | [("promise" | "callback")];
16447
+ // ----- vue/no-async-in-computed-properties -----
16448
+ type VueNoAsyncInComputedProperties = [] | [{
16449
+ ignoredObjectNames?: string[];
16450
+ }];
14467
16451
  // ----- vue/no-bare-strings-in-template -----
14468
16452
  type VueNoBareStringsInTemplate = [] | [{
14469
16453
  allowlist?: string[];
@@ -14748,6 +16732,10 @@ type VueNoUselessVBind = [] | [{
14748
16732
  ignoreIncludesComment?: boolean;
14749
16733
  ignoreStringEscape?: boolean;
14750
16734
  }];
16735
+ // ----- vue/no-v-html -----
16736
+ type VueNoVHtml = [] | [{
16737
+ ignorePattern?: string;
16738
+ }];
14751
16739
  // ----- vue/no-v-text-v-html-on-component -----
14752
16740
  type VueNoVTextVHtmlOnComponent = [] | [{
14753
16741
  allow?: string[];
@@ -15180,7 +17168,7 @@ type Yoda = [] | [("always" | "never")] | [("always" | "never"), {
15180
17168
  onlyEquality?: boolean;
15181
17169
  }];
15182
17170
  // Names of all the configs
15183
- type ConfigNames = 'eslint-comments/rules' | 'formatter/setup' | 'imports/rules' | 'javascript/setup' | 'javascript/rules' | 'jsx/setup' | 'jsonc/setup' | 'jsonc/rules' | 'markdown/setup' | 'markdown/processor' | 'markdown/parser' | 'markdown/disables' | 'node/rules' | 'perfectionist/setup' | 'pnpm/package-json' | 'pnpm/pnpm-workspace-yaml' | 'react/setup' | 'react/rules' | 'react-native/setup' | 'react-native/rules' | 'sort/package-json' | 'stylistic/rules' | 'toml/setup' | 'toml/rules' | 'regexp/rules' | 'typescript/setup' | 'typescript/parser' | 'typescript/rules' | 'unicorn/rules' | 'unocss' | 'vue/setup' | 'vue/rules' | 'yaml/setup' | 'yaml/rules' | 'yaml/pnpm-workspace' | 'next/setup' | 'next/rules' | 'effector/setup' | 'effector/rules';
17171
+ type ConfigNames = 'gitignore' | 'ignores' | 'javascript/setup' | 'javascript/rules' | 'eslint-comments/rules' | 'node/rules' | 'jsdoc/rules' | 'imports/rules' | 'perfectionist/setup' | 'imports/rules' | 'unicorn/rules' | 'jsx/setup' | 'typescript/setup' | 'typescript/parser' | 'typescript/type-aware-parser' | 'typescript/rules' | 'typescript/rules-type-aware' | 'antfu/typescript/erasable-syntax-only' | 'stylistic/rules' | 'regexp/rules' | 'test/setup' | 'test/rules' | 'vue/setup' | 'vue/rules' | 'react/setup' | 'react/rules' | 'react/type-aware-rules' | 'react-native/setup' | 'react-native/rules' | 'next/setup' | 'next/rules' | 'effector/setup' | 'effector/rules' | 'unocss' | 'jsonc/setup' | 'jsonc/rules' | 'sort/package-json' | 'sort/tsconfig-json' | 'pnpm/package-json' | 'pnpm/pnpm-workspace-yaml' | 'pnpm/pnpm-workspace-yaml-sort' | 'yaml/setup' | 'yaml/rules' | 'toml/setup' | 'toml/rules' | 'markdown/setup' | 'markdown/processor' | 'markdown/parser' | 'markdown/disables' | 'formatter/setup' | 'formatter/css' | 'formatter/scss' | 'formatter/html' | 'formatter/xml' | 'formatter/svg' | 'formatter/markdown' | 'disables/scripts' | 'disables/dts' | 'disables/cjs';
15184
17172
  //#endregion
15185
17173
  //#region src/vendor/prettier-types.d.ts
15186
17174
  /**
@@ -15365,7 +17353,7 @@ interface OptionsVue extends OptionsOverrides {
15365
17353
  */
15366
17354
  a11y?: boolean;
15367
17355
  }
15368
- type OptionsTypescript = (OptionsTypeScriptWithTypes & OptionsOverrides) | (OptionsTypeScriptParserOptions & OptionsOverrides);
17356
+ type OptionsTypescript = (OptionsTypeScriptWithTypes & OptionsOverrides & OptionsTypeScriptErasableOnly) | (OptionsTypeScriptParserOptions & OptionsOverrides & OptionsTypeScriptErasableOnly);
15369
17357
  interface OptionsFormatters {
15370
17358
  /**
15371
17359
  * Enable formatting support for CSS, Less, Sass, and SCSS.
@@ -15491,7 +17479,7 @@ interface OptionsHasTypeScript {
15491
17479
  interface OptionsStylistic {
15492
17480
  stylistic?: boolean | StylisticConfig;
15493
17481
  }
15494
- interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'quotes' | 'jsx' | 'semi'> {}
17482
+ interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'quotes' | 'jsx' | 'semi' | 'experimental'> {}
15495
17483
  interface OptionsOverrides {
15496
17484
  overrides?: TypedFlatConfigItem['rules'];
15497
17485
  }
@@ -15503,6 +17491,15 @@ interface OptionsProjectType {
15503
17491
  */
15504
17492
  type?: 'app' | 'lib';
15505
17493
  }
17494
+ interface OptionsTypeScriptErasableOnly {
17495
+ /**
17496
+ * Enable erasable syntax only rules.
17497
+ *
17498
+ * @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only
17499
+ * @default false
17500
+ */
17501
+ erasableOnly?: boolean;
17502
+ }
15506
17503
  interface OptionsRegExp {
15507
17504
  /**
15508
17505
  * Override rulelevels
@@ -15534,6 +17531,15 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
15534
17531
  * @default true
15535
17532
  */
15536
17533
  gitignore?: boolean | FlatGitignoreOptions;
17534
+ /**
17535
+ * Extend the global ignores.
17536
+ *
17537
+ * Passing an array to extends the ignores.
17538
+ * Passing a function to modify the default ignores.
17539
+ *
17540
+ * @default []
17541
+ */
17542
+ ignores?: string[] | ((originals: string[]) => string[]);
15537
17543
  /**
15538
17544
  * Core rules. Can't be disabled.
15539
17545
  */
@@ -15566,6 +17572,12 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
15566
17572
  * @default true
15567
17573
  */
15568
17574
  imports?: boolean | OptionsOverrides;
17575
+ /**
17576
+ * Enable test support.
17577
+ *
17578
+ * @default true
17579
+ */
17580
+ test?: boolean | OptionsOverrides;
15569
17581
  /**
15570
17582
  * Enable Vue support.
15571
17583
  *
@@ -15623,7 +17635,7 @@ interface OptionsConfig extends OptionsComponentExts, OptionsProjectType {
15623
17635
  *
15624
17636
  * @default auto-detect based on the dependencies
15625
17637
  */
15626
- next?: boolean | OptionsOverrides;
17638
+ nextjs?: boolean | OptionsOverrides;
15627
17639
  /**
15628
17640
  * Enable react-native rules.
15629
17641
  *
@@ -15714,6 +17726,7 @@ declare const defaultPluginRenaming: {
15714
17726
  '@typescript-eslint': string;
15715
17727
  'import-lite': string;
15716
17728
  n: string;
17729
+ vitest: string;
15717
17730
  yml: string;
15718
17731
  };
15719
17732
  /**
@@ -15726,7 +17739,7 @@ declare const defaultPluginRenaming: {
15726
17739
  * @returns {Promise<TypedFlatConfigItem[]>}
15727
17740
  * The merged ESLint configurations.
15728
17741
  */
15729
- declare function config(options?: OptionsConfig & Omit<TypedFlatConfigItem, 'files'>, ...userConfigs: Awaitable<TypedFlatConfigItem | TypedFlatConfigItem[] | FlatConfigComposer<any, any> | Linter.Config[]>[]): FlatConfigComposer<TypedFlatConfigItem, ConfigNames>;
17742
+ declare function config(options?: OptionsConfig & Omit<TypedFlatConfigItem, 'files' | 'ignores'>, ...userConfigs: Awaitable<TypedFlatConfigItem | TypedFlatConfigItem[] | FlatConfigComposer<any, any> | Linter.Config[]>[]): FlatConfigComposer<TypedFlatConfigItem, ConfigNames>;
15730
17743
  //#endregion
15731
17744
  //#region src/configs/comments.d.ts
15732
17745
  declare function comments(): Promise<TypedFlatConfigItem[]>;
@@ -15741,7 +17754,7 @@ declare function effector(options?: OptionsEffector): Promise<TypedFlatConfigIte
15741
17754
  declare function formatters(options?: OptionsFormatters | true, stylistic?: StylisticConfig): Promise<TypedFlatConfigItem[]>;
15742
17755
  //#endregion
15743
17756
  //#region src/configs/ignores.d.ts
15744
- declare function ignores(userIgnores?: string[]): Promise<TypedFlatConfigItem[]>;
17757
+ declare function ignores(userIgnores?: string[] | ((originals: string[]) => string[])): Promise<TypedFlatConfigItem[]>;
15745
17758
  //#endregion
15746
17759
  //#region src/configs/imports.d.ts
15747
17760
  declare function imports(options?: OptionsOverrides & OptionsStylistic): Promise<TypedFlatConfigItem[]>;
@@ -15749,6 +17762,9 @@ declare function imports(options?: OptionsOverrides & OptionsStylistic): Promise
15749
17762
  //#region src/configs/javascript.d.ts
15750
17763
  declare function javascript(options?: OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
15751
17764
  //#endregion
17765
+ //#region src/configs/jsdoc.d.ts
17766
+ declare function jsdoc(options?: OptionsStylistic): Promise<TypedFlatConfigItem[]>;
17767
+ //#endregion
15752
17768
  //#region src/configs/jsonc.d.ts
15753
17769
  declare function jsonc(options?: OptionsFiles & OptionsStylistic & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
15754
17770
  //#endregion
@@ -15758,8 +17774,8 @@ declare function jsx(options?: OptionsJSX): Promise<TypedFlatConfigItem[]>;
15758
17774
  //#region src/configs/markdown.d.ts
15759
17775
  declare function markdown(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
15760
17776
  //#endregion
15761
- //#region src/configs/next.d.ts
15762
- declare function next(options?: OptionsOverrides & OptionsFiles): Promise<TypedFlatConfigItem[]>;
17777
+ //#region src/configs/nextjs.d.ts
17778
+ declare function nextjs(options?: OptionsOverrides & OptionsFiles): Promise<TypedFlatConfigItem[]>;
15763
17779
  //#endregion
15764
17780
  //#region src/configs/node.d.ts
15765
17781
  declare function node(): Promise<TypedFlatConfigItem[]>;
@@ -15773,7 +17789,7 @@ declare function node(): Promise<TypedFlatConfigItem[]>;
15773
17789
  declare function perfectionist(): Promise<TypedFlatConfigItem[]>;
15774
17790
  //#endregion
15775
17791
  //#region src/configs/pnpm.d.ts
15776
- declare function pnpm(): Promise<TypedFlatConfigItem[]>;
17792
+ declare function pnpm(options: OptionsIsInEditor): Promise<TypedFlatConfigItem[]>;
15777
17793
  //#endregion
15778
17794
  //#region src/configs/react.d.ts
15779
17795
  declare function react(options?: OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes & OptionsOverrides & OptionsFiles): Promise<TypedFlatConfigItem[]>;
@@ -15803,11 +17819,14 @@ declare const StylisticConfigDefaults: StylisticConfig;
15803
17819
  interface StylisticOptions extends StylisticConfig, OptionsOverrides {}
15804
17820
  declare function stylistic(options?: StylisticOptions): Promise<TypedFlatConfigItem[]>;
15805
17821
  //#endregion
17822
+ //#region src/configs/test.d.ts
17823
+ declare function test(options?: OptionsFiles & OptionsIsInEditor & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
17824
+ //#endregion
15806
17825
  //#region src/configs/toml.d.ts
15807
17826
  declare function toml(options?: OptionsOverrides & OptionsStylistic & OptionsFiles): Promise<TypedFlatConfigItem[]>;
15808
17827
  //#endregion
15809
17828
  //#region src/configs/typescript.d.ts
15810
- declare function typescript(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides & OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions & OptionsProjectType): Promise<TypedFlatConfigItem[]>;
17829
+ declare function typescript(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides & OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions & OptionsProjectType & OptionsTypeScriptErasableOnly): Promise<TypedFlatConfigItem[]>;
15811
17830
  //#endregion
15812
17831
  //#region src/configs/unicorn.d.ts
15813
17832
  declare function unicorn(options?: OptionsUnicorn): Promise<TypedFlatConfigItem[]>;
@@ -15844,6 +17863,7 @@ declare const GLOB_XML = "**/*.xml";
15844
17863
  declare const GLOB_SVG = "**/*.svg";
15845
17864
  declare const GLOB_HTML = "**/*.htm?(l)";
15846
17865
  declare const GLOB_MARKDOWN_CODE = "**/*.md/**/*.?([cm])[jt]s?(x)";
17866
+ declare const GLOB_TESTS: string[];
15847
17867
  declare const GLOB_ALL_SRC: string[];
15848
17868
  declare const GLOB_EXCLUDE: string[];
15849
17869
  //#endregion
@@ -15907,4 +17927,4 @@ type ResolvedOptions<T> = T extends boolean ? never : NonNullable<T>;
15907
17927
  declare function resolveSubOptions<C extends Record<string, any>, K extends keyof C>(options: C, key: K): ResolvedOptions<C[K]>;
15908
17928
  declare function getOverrides<C extends Record<string, any>, K extends keyof C>(options: C, key: K): Partial<Linter.RulesRecord & RuleOptions>;
15909
17929
  //#endregion
15910
- export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsEffector, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsJSX, OptionsJSXA11y, OptionsOverrides, OptionsProjectType, OptionsReactNative, OptionsRegExp, OptionsStylistic, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, Rules, StylisticConfig, StylisticConfigDefaults, StylisticOptions, TypedFlatConfigItem, combine, comments, config, config as default, defaultPluginRenaming, disables, effector, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsonc, jsx, markdown, next, node, parserPlain, perfectionist, pnpm, react, reactNative, regexp, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, toml, typescript, unicorn, unocss, vue, yaml };
17930
+ export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsEffector, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIsInEditor, OptionsJSX, OptionsJSXA11y, OptionsOverrides, OptionsProjectType, OptionsReactNative, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, Rules, StylisticConfig, StylisticConfigDefaults, StylisticOptions, TypedFlatConfigItem, combine, comments, config, config as default, defaultPluginRenaming, disables, effector, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, reactNative, regexp, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toml, typescript, unicorn, unocss, vue, yaml };