@2digits/eslint-config 4.8.1 → 4.8.3

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.
Files changed (2) hide show
  1. package/dist/index.d.mts +231 -184
  2. package/package.json +16 -16
package/dist/index.d.mts CHANGED
@@ -938,7 +938,7 @@ interface RuleOptions {
938
938
  * Reports invalid alignment of JSDoc block asterisks.
939
939
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-alignment.md#repos-sticky-header
940
940
  */
941
- 'jsdoc/check-alignment'?: Linter.RuleEntry<[]>;
941
+ 'jsdoc/check-alignment'?: Linter.RuleEntry<JsdocCheckAlignment>;
942
942
  /**
943
943
  * Ensures that (JavaScript) examples within JSDoc adhere to ESLint rules.
944
944
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/check-examples.md#repos-sticky-header
@@ -2946,6 +2946,11 @@ interface RuleOptions {
2946
2946
  * @see https://eslint.org/docs/latest/rules/prefer-template
2947
2947
  */
2948
2948
  'prefer-template'?: Linter.RuleEntry<[]>;
2949
+ /**
2950
+ * Disallow losing originally caught error when re-throwing custom errors
2951
+ * @see https://eslint.org/docs/latest/rules/preserve-caught-error
2952
+ */
2953
+ 'preserve-caught-error'?: Linter.RuleEntry<PreserveCaughtError>;
2949
2954
  /**
2950
2955
  * Require quotes around object literal property names
2951
2956
  * @see https://eslint.org/docs/latest/rules/quote-props
@@ -5596,8 +5601,9 @@ interface RuleOptions {
5596
5601
  */
5597
5602
  'stylistic/jsx-pascal-case'?: Linter.RuleEntry<StylisticJsxPascalCase>;
5598
5603
  /**
5599
- * Disallow multiple spaces between inline JSX props
5604
+ * Disallow multiple spaces between inline JSX props. Deprecated, use `no-multi-spaces` rule instead.
5600
5605
  * @see https://eslint.style/rules/jsx-props-no-multi-spaces
5606
+ * @deprecated
5601
5607
  */
5602
5608
  'stylistic/jsx-props-no-multi-spaces'?: Linter.RuleEntry<[]>;
5603
5609
  /**
@@ -6662,690 +6668,710 @@ interface RuleOptions {
6662
6668
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>;
6663
6669
  /**
6664
6670
  * Improve regexes by making them shorter, consistent, and safer.
6665
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/better-regex.md
6671
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/better-regex.md
6666
6672
  */
6667
6673
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>;
6668
6674
  /**
6669
6675
  * Enforce a specific parameter name in catch clauses.
6670
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/catch-error-name.md
6676
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/catch-error-name.md
6671
6677
  */
6672
6678
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
6673
6679
  /**
6674
6680
  * Enforce consistent assertion style with `node:assert`.
6675
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-assert.md
6681
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/consistent-assert.md
6676
6682
  */
6677
6683
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
6678
6684
  /**
6679
6685
  * Prefer passing `Date` directly to the constructor when cloning.
6680
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-date-clone.md
6686
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/consistent-date-clone.md
6681
6687
  */
6682
6688
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
6683
6689
  /**
6684
6690
  * Use destructured variables over properties.
6685
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-destructuring.md
6691
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/consistent-destructuring.md
6686
6692
  */
6687
6693
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
6688
6694
  /**
6689
6695
  * Prefer consistent types when spreading a ternary in an array literal.
6690
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-empty-array-spread.md
6696
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/consistent-empty-array-spread.md
6691
6697
  */
6692
6698
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
6693
6699
  /**
6694
6700
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
6695
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-existence-index-check.md
6701
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/consistent-existence-index-check.md
6696
6702
  */
6697
6703
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
6698
6704
  /**
6699
6705
  * Move function definitions to the highest possible scope.
6700
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/consistent-function-scoping.md
6706
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/consistent-function-scoping.md
6701
6707
  */
6702
6708
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
6703
6709
  /**
6704
6710
  * Enforce correct `Error` subclassing.
6705
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/custom-error-definition.md
6711
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/custom-error-definition.md
6706
6712
  */
6707
6713
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
6708
6714
  /**
6709
6715
  * Enforce no spaces between braces.
6710
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/empty-brace-spaces.md
6716
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/empty-brace-spaces.md
6711
6717
  */
6712
6718
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
6713
6719
  /**
6714
6720
  * Enforce passing a `message` value when creating a built-in error.
6715
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/error-message.md
6721
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/error-message.md
6716
6722
  */
6717
6723
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
6718
6724
  /**
6719
6725
  * Require escape sequences to use uppercase or lowercase values.
6720
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/escape-case.md
6726
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/escape-case.md
6721
6727
  */
6722
6728
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
6723
6729
  /**
6724
6730
  * Add expiration conditions to TODO comments.
6725
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/expiring-todo-comments.md
6731
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/expiring-todo-comments.md
6726
6732
  */
6727
6733
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
6728
6734
  /**
6729
6735
  * Enforce explicitly comparing the `length` or `size` property of a value.
6730
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/explicit-length-check.md
6736
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/explicit-length-check.md
6731
6737
  */
6732
6738
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
6733
6739
  /**
6734
6740
  * Enforce a case style for filenames.
6735
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/filename-case.md
6741
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/filename-case.md
6736
6742
  */
6737
6743
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
6738
6744
  /**
6739
6745
  * Enforce specific import styles per module.
6740
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/import-style.md
6746
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/import-style.md
6741
6747
  */
6742
6748
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
6743
6749
  /**
6744
6750
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
6745
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/new-for-builtins.md
6751
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/new-for-builtins.md
6746
6752
  */
6747
6753
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
6748
6754
  /**
6749
6755
  * Enforce specifying rules to disable in `eslint-disable` comments.
6750
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-abusive-eslint-disable.md
6756
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-abusive-eslint-disable.md
6751
6757
  */
6752
6758
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
6753
6759
  /**
6754
6760
  * Disallow recursive access to `this` within getters and setters.
6755
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-accessor-recursion.md
6761
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-accessor-recursion.md
6756
6762
  */
6757
6763
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
6758
6764
  /**
6759
6765
  * Disallow anonymous functions and classes as the default export.
6760
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-anonymous-default-export.md
6766
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-anonymous-default-export.md
6761
6767
  */
6762
6768
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
6763
6769
  /**
6764
6770
  * Prevent passing a function reference directly to iterator methods.
6765
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-callback-reference.md
6771
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-array-callback-reference.md
6766
6772
  */
6767
6773
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>;
6768
6774
  /**
6769
6775
  * Prefer `for…of` over the `forEach` method.
6770
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-for-each.md
6776
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-array-for-each.md
6771
6777
  */
6772
6778
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
6773
6779
  /**
6774
6780
  * Disallow using the `this` argument in array methods.
6775
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-method-this-argument.md
6781
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-array-method-this-argument.md
6776
6782
  */
6777
6783
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
6778
6784
  /**
6779
6785
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
6780
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-array-push-push
6786
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/deprecated-rules.md#no-array-push-push
6781
6787
  * @deprecated
6782
6788
  */
6783
6789
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
6784
6790
  /**
6785
6791
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
6786
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reduce.md
6792
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-array-reduce.md
6787
6793
  */
6788
6794
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
6789
6795
  /**
6790
6796
  * Prefer `Array#toReversed()` over `Array#reverse()`.
6791
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-array-reverse.md
6797
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-array-reverse.md
6792
6798
  */
6793
6799
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
6800
+ /**
6801
+ * Prefer `Array#toSorted()` over `Array#sort()`.
6802
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-array-sort.md
6803
+ */
6804
+ 'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
6794
6805
  /**
6795
6806
  * Disallow member access from await expression.
6796
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-expression-member.md
6807
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-await-expression-member.md
6797
6808
  */
6798
6809
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
6799
6810
  /**
6800
6811
  * Disallow using `await` in `Promise` method parameters.
6801
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-await-in-promise-methods.md
6812
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-await-in-promise-methods.md
6802
6813
  */
6803
6814
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
6804
6815
  /**
6805
6816
  * Do not use leading/trailing space between `console.log` parameters.
6806
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-console-spaces.md
6817
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-console-spaces.md
6807
6818
  */
6808
6819
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
6809
6820
  /**
6810
6821
  * Do not use `document.cookie` directly.
6811
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-document-cookie.md
6822
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-document-cookie.md
6812
6823
  */
6813
6824
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
6814
6825
  /**
6815
6826
  * Disallow empty files.
6816
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-empty-file.md
6827
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-empty-file.md
6817
6828
  */
6818
6829
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>;
6819
6830
  /**
6820
6831
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
6821
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-for-loop.md
6832
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-for-loop.md
6822
6833
  */
6823
6834
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
6824
6835
  /**
6825
6836
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
6826
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-hex-escape.md
6837
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-hex-escape.md
6827
6838
  */
6828
6839
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
6829
6840
  /**
6830
6841
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
6831
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-instanceof-array
6842
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/deprecated-rules.md#no-instanceof-array
6832
6843
  * @deprecated
6833
6844
  */
6834
6845
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
6835
6846
  /**
6836
6847
  * Disallow `instanceof` with built-in objects
6837
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-instanceof-builtins.md
6848
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-instanceof-builtins.md
6838
6849
  */
6839
6850
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
6840
6851
  /**
6841
6852
  * Disallow invalid options in `fetch()` and `new Request()`.
6842
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-fetch-options.md
6853
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-invalid-fetch-options.md
6843
6854
  */
6844
6855
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
6845
6856
  /**
6846
6857
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
6847
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-invalid-remove-event-listener.md
6858
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-invalid-remove-event-listener.md
6848
6859
  */
6849
6860
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
6850
6861
  /**
6851
6862
  * Disallow identifiers starting with `new` or `class`.
6852
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-keyword-prefix.md
6863
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-keyword-prefix.md
6853
6864
  */
6854
6865
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
6855
6866
  /**
6856
6867
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
6857
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/deprecated-rules.md#no-length-as-slice-end
6868
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/deprecated-rules.md#no-length-as-slice-end
6858
6869
  * @deprecated
6859
6870
  */
6860
6871
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
6861
6872
  /**
6862
6873
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
6863
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-lonely-if.md
6874
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-lonely-if.md
6864
6875
  */
6865
6876
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
6866
6877
  /**
6867
6878
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
6868
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-magic-array-flat-depth.md
6879
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-magic-array-flat-depth.md
6869
6880
  */
6870
6881
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
6871
6882
  /**
6872
6883
  * Disallow named usage of default import and export.
6873
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-named-default.md
6884
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-named-default.md
6874
6885
  */
6875
6886
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
6876
6887
  /**
6877
6888
  * Disallow negated conditions.
6878
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negated-condition.md
6889
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-negated-condition.md
6879
6890
  */
6880
6891
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
6881
6892
  /**
6882
6893
  * Disallow negated expression in equality check.
6883
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-negation-in-equality-check.md
6894
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-negation-in-equality-check.md
6884
6895
  */
6885
6896
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
6886
6897
  /**
6887
6898
  * Disallow nested ternary expressions.
6888
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-nested-ternary.md
6899
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-nested-ternary.md
6889
6900
  */
6890
6901
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
6891
6902
  /**
6892
6903
  * Disallow `new Array()`.
6893
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-array.md
6904
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-new-array.md
6894
6905
  */
6895
6906
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
6896
6907
  /**
6897
6908
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
6898
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-new-buffer.md
6909
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-new-buffer.md
6899
6910
  */
6900
6911
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
6901
6912
  /**
6902
6913
  * Disallow the use of the `null` literal.
6903
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-null.md
6914
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-null.md
6904
6915
  */
6905
6916
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
6906
6917
  /**
6907
6918
  * Disallow the use of objects as default parameters.
6908
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-object-as-default-parameter.md
6919
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-object-as-default-parameter.md
6909
6920
  */
6910
6921
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
6911
6922
  /**
6912
6923
  * Disallow `process.exit()`.
6913
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-process-exit.md
6924
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-process-exit.md
6914
6925
  */
6915
6926
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
6916
6927
  /**
6917
6928
  * Disallow passing single-element arrays to `Promise` methods.
6918
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-single-promise-in-promise-methods.md
6929
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-single-promise-in-promise-methods.md
6919
6930
  */
6920
6931
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
6921
6932
  /**
6922
6933
  * Disallow classes that only have static members.
6923
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-static-only-class.md
6934
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-static-only-class.md
6924
6935
  */
6925
6936
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
6926
6937
  /**
6927
6938
  * Disallow `then` property.
6928
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-thenable.md
6939
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-thenable.md
6929
6940
  */
6930
6941
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
6931
6942
  /**
6932
6943
  * Disallow assigning `this` to a variable.
6933
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-this-assignment.md
6944
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-this-assignment.md
6934
6945
  */
6935
6946
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
6936
6947
  /**
6937
6948
  * Disallow comparing `undefined` using `typeof`.
6938
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-typeof-undefined.md
6949
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-typeof-undefined.md
6939
6950
  */
6940
6951
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
6941
6952
  /**
6942
6953
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
6943
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-flat-depth.md
6954
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-unnecessary-array-flat-depth.md
6944
6955
  */
6945
6956
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
6946
6957
  /**
6947
6958
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
6948
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-array-splice-count.md
6959
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-unnecessary-array-splice-count.md
6949
6960
  */
6950
6961
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
6951
6962
  /**
6952
6963
  * Disallow awaiting non-promise values.
6953
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-await.md
6964
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-unnecessary-await.md
6954
6965
  */
6955
6966
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
6956
6967
  /**
6957
6968
  * Enforce the use of built-in methods instead of unnecessary polyfills.
6958
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-polyfills.md
6969
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-unnecessary-polyfills.md
6959
6970
  */
6960
6971
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
6961
6972
  /**
6962
6973
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
6963
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unnecessary-slice-end.md
6974
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-unnecessary-slice-end.md
6964
6975
  */
6965
6976
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
6966
6977
  /**
6967
6978
  * Disallow unreadable array destructuring.
6968
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-array-destructuring.md
6979
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-unreadable-array-destructuring.md
6969
6980
  */
6970
6981
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
6971
6982
  /**
6972
6983
  * Disallow unreadable IIFEs.
6973
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unreadable-iife.md
6984
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-unreadable-iife.md
6974
6985
  */
6975
6986
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
6976
6987
  /**
6977
6988
  * Disallow unused object properties.
6978
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-unused-properties.md
6989
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-unused-properties.md
6979
6990
  */
6980
6991
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
6981
6992
  /**
6982
6993
  * Disallow unnecessary `Error.captureStackTrace(…)`.
6983
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-error-capture-stack-trace.md
6994
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-useless-error-capture-stack-trace.md
6984
6995
  */
6985
6996
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
6986
6997
  /**
6987
6998
  * Disallow useless fallback when spreading in object literals.
6988
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-fallback-in-spread.md
6999
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-useless-fallback-in-spread.md
6989
7000
  */
6990
7001
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
6991
7002
  /**
6992
7003
  * Disallow useless array length check.
6993
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-length-check.md
7004
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-useless-length-check.md
6994
7005
  */
6995
7006
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
6996
7007
  /**
6997
7008
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
6998
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-promise-resolve-reject.md
7009
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-useless-promise-resolve-reject.md
6999
7010
  */
7000
7011
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
7001
7012
  /**
7002
7013
  * Disallow unnecessary spread.
7003
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-spread.md
7014
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-useless-spread.md
7004
7015
  */
7005
7016
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
7006
7017
  /**
7007
7018
  * Disallow useless case in switch statements.
7008
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-switch-case.md
7019
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-useless-switch-case.md
7009
7020
  */
7010
7021
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
7011
7022
  /**
7012
7023
  * Disallow useless `undefined`.
7013
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-useless-undefined.md
7024
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-useless-undefined.md
7014
7025
  */
7015
7026
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
7016
7027
  /**
7017
7028
  * Disallow number literals with zero fractions or dangling dots.
7018
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/no-zero-fractions.md
7029
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/no-zero-fractions.md
7019
7030
  */
7020
7031
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
7021
7032
  /**
7022
7033
  * Enforce proper case for numeric literals.
7023
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/number-literal-case.md
7034
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/number-literal-case.md
7024
7035
  */
7025
7036
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
7026
7037
  /**
7027
7038
  * Enforce the style of numeric separators by correctly grouping digits.
7028
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/numeric-separators-style.md
7039
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/numeric-separators-style.md
7029
7040
  */
7030
7041
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
7031
7042
  /**
7032
7043
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
7033
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-add-event-listener.md
7044
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-add-event-listener.md
7034
7045
  */
7035
7046
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
7036
7047
  /**
7037
7048
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
7038
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-find.md
7049
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-array-find.md
7039
7050
  */
7040
7051
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
7041
7052
  /**
7042
7053
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
7043
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat.md
7054
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-array-flat.md
7044
7055
  */
7045
7056
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
7046
7057
  /**
7047
7058
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
7048
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-flat-map.md
7059
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-array-flat-map.md
7049
7060
  */
7050
7061
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
7051
7062
  /**
7052
7063
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
7053
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-index-of.md
7064
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-array-index-of.md
7054
7065
  */
7055
7066
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
7056
7067
  /**
7057
7068
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
7058
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-array-some.md
7069
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-array-some.md
7059
7070
  */
7060
7071
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
7061
7072
  /**
7062
7073
  * Prefer `.at()` method for index access and `String#charAt()`.
7063
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-at.md
7074
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-at.md
7064
7075
  */
7065
7076
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
7077
+ /**
7078
+ * Prefer `BigInt` literals over the constructor.
7079
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-bigint-literals.md
7080
+ */
7081
+ 'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
7066
7082
  /**
7067
7083
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
7068
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-blob-reading-methods.md
7084
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-blob-reading-methods.md
7069
7085
  */
7070
7086
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
7071
7087
  /**
7072
7088
  * Prefer class field declarations over `this` assignments in constructors.
7073
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-class-fields.md
7089
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-class-fields.md
7074
7090
  */
7075
7091
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
7092
+ /**
7093
+ * Prefer using `Element#classList.toggle()` to toggle class names.
7094
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-classlist-toggle.md
7095
+ */
7096
+ 'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
7076
7097
  /**
7077
7098
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
7078
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-code-point.md
7099
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-code-point.md
7079
7100
  */
7080
7101
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
7081
7102
  /**
7082
7103
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
7083
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-date-now.md
7104
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-date-now.md
7084
7105
  */
7085
7106
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
7086
7107
  /**
7087
7108
  * Prefer default parameters over reassignment.
7088
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-default-parameters.md
7109
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-default-parameters.md
7089
7110
  */
7090
7111
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
7091
7112
  /**
7092
7113
  * Prefer `Node#append()` over `Node#appendChild()`.
7093
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-append.md
7114
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-dom-node-append.md
7094
7115
  */
7095
7116
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
7096
7117
  /**
7097
7118
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
7098
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-dataset.md
7119
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-dom-node-dataset.md
7099
7120
  */
7100
7121
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
7101
7122
  /**
7102
7123
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
7103
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-remove.md
7124
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-dom-node-remove.md
7104
7125
  */
7105
7126
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
7106
7127
  /**
7107
7128
  * Prefer `.textContent` over `.innerText`.
7108
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-dom-node-text-content.md
7129
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-dom-node-text-content.md
7109
7130
  */
7110
7131
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
7111
7132
  /**
7112
7133
  * Prefer `EventTarget` over `EventEmitter`.
7113
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-event-target.md
7134
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-event-target.md
7114
7135
  */
7115
7136
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
7116
7137
  /**
7117
7138
  * Prefer `export…from` when re-exporting.
7118
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-export-from.md
7139
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-export-from.md
7119
7140
  */
7120
7141
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
7121
7142
  /**
7122
7143
  * Prefer `globalThis` over `window`, `self`, and `global`.
7123
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-global-this.md
7144
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-global-this.md
7124
7145
  */
7125
7146
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
7126
7147
  /**
7127
7148
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
7128
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-import-meta-properties.md
7149
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-import-meta-properties.md
7129
7150
  */
7130
7151
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
7131
7152
  /**
7132
7153
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
7133
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-includes.md
7154
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-includes.md
7134
7155
  */
7135
7156
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
7136
7157
  /**
7137
7158
  * Prefer reading a JSON file as a buffer.
7138
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-json-parse-buffer.md
7159
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-json-parse-buffer.md
7139
7160
  */
7140
7161
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
7141
7162
  /**
7142
7163
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
7143
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-keyboard-event-key.md
7164
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-keyboard-event-key.md
7144
7165
  */
7145
7166
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
7146
7167
  /**
7147
7168
  * Prefer using a logical operator over a ternary.
7148
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-logical-operator-over-ternary.md
7169
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-logical-operator-over-ternary.md
7149
7170
  */
7150
7171
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
7151
7172
  /**
7152
7173
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
7153
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-min-max.md
7174
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-math-min-max.md
7154
7175
  */
7155
7176
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
7156
7177
  /**
7157
7178
  * Enforce the use of `Math.trunc` instead of bitwise operators.
7158
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-math-trunc.md
7179
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-math-trunc.md
7159
7180
  */
7160
7181
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
7161
7182
  /**
7162
7183
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
7163
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-dom-apis.md
7184
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-modern-dom-apis.md
7164
7185
  */
7165
7186
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
7166
7187
  /**
7167
7188
  * Prefer modern `Math` APIs over legacy patterns.
7168
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-modern-math-apis.md
7189
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-modern-math-apis.md
7169
7190
  */
7170
7191
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
7171
7192
  /**
7172
7193
  * Prefer JavaScript modules (ESM) over CommonJS.
7173
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-module.md
7194
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-module.md
7174
7195
  */
7175
7196
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
7176
7197
  /**
7177
7198
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
7178
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-native-coercion-functions.md
7199
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-native-coercion-functions.md
7179
7200
  */
7180
7201
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
7181
7202
  /**
7182
7203
  * Prefer negative index over `.length - index` when possible.
7183
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-negative-index.md
7204
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-negative-index.md
7184
7205
  */
7185
7206
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
7186
7207
  /**
7187
7208
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
7188
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-node-protocol.md
7209
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-node-protocol.md
7189
7210
  */
7190
7211
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
7191
7212
  /**
7192
7213
  * Prefer `Number` static properties over global ones.
7193
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-number-properties.md
7214
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-number-properties.md
7194
7215
  */
7195
7216
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
7196
7217
  /**
7197
7218
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
7198
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-object-from-entries.md
7219
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-object-from-entries.md
7199
7220
  */
7200
7221
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
7201
7222
  /**
7202
7223
  * Prefer omitting the `catch` binding parameter.
7203
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-optional-catch-binding.md
7224
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-optional-catch-binding.md
7204
7225
  */
7205
7226
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
7206
7227
  /**
7207
7228
  * Prefer borrowing methods from the prototype instead of the instance.
7208
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-prototype-methods.md
7229
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-prototype-methods.md
7209
7230
  */
7210
7231
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
7211
7232
  /**
7212
7233
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
7213
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-query-selector.md
7234
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-query-selector.md
7214
7235
  */
7215
7236
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>;
7216
7237
  /**
7217
7238
  * Prefer `Reflect.apply()` over `Function#apply()`.
7218
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-reflect-apply.md
7239
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-reflect-apply.md
7219
7240
  */
7220
7241
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
7221
7242
  /**
7222
7243
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
7223
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-regexp-test.md
7244
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-regexp-test.md
7224
7245
  */
7225
7246
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
7226
7247
  /**
7227
7248
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
7228
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-has.md
7249
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-set-has.md
7229
7250
  */
7230
7251
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>;
7231
7252
  /**
7232
7253
  * Prefer using `Set#size` instead of `Array#length`.
7233
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-set-size.md
7254
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-set-size.md
7234
7255
  */
7235
7256
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
7236
7257
  /**
7237
7258
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
7238
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-single-call.md
7259
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-single-call.md
7239
7260
  */
7240
7261
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
7241
7262
  /**
7242
7263
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
7243
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-spread.md
7264
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-spread.md
7244
7265
  */
7245
7266
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
7246
7267
  /**
7247
7268
  * Prefer using the `String.raw` tag to avoid escaping `\`.
7248
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-raw.md
7269
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-string-raw.md
7249
7270
  */
7250
7271
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
7251
7272
  /**
7252
7273
  * Prefer `String#replaceAll()` over regex searches with the global flag.
7253
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-replace-all.md
7274
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-string-replace-all.md
7254
7275
  */
7255
7276
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
7256
7277
  /**
7257
7278
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
7258
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-slice.md
7279
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-string-slice.md
7259
7280
  */
7260
7281
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
7261
7282
  /**
7262
7283
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
7263
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-starts-ends-with.md
7284
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-string-starts-ends-with.md
7264
7285
  */
7265
7286
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
7266
7287
  /**
7267
7288
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
7268
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-string-trim-start-end.md
7289
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-string-trim-start-end.md
7269
7290
  */
7270
7291
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
7271
7292
  /**
7272
7293
  * Prefer using `structuredClone` to create a deep clone.
7273
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-structured-clone.md
7294
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-structured-clone.md
7274
7295
  */
7275
7296
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
7276
7297
  /**
7277
7298
  * Prefer `switch` over multiple `else-if`.
7278
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-switch.md
7299
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-switch.md
7279
7300
  */
7280
7301
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
7281
7302
  /**
7282
7303
  * Prefer ternary expressions over simple `if-else` statements.
7283
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-ternary.md
7304
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-ternary.md
7284
7305
  */
7285
7306
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
7286
7307
  /**
7287
7308
  * Prefer top-level await over top-level promises and async function calls.
7288
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-top-level-await.md
7309
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-top-level-await.md
7289
7310
  */
7290
7311
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
7291
7312
  /**
7292
7313
  * Enforce throwing `TypeError` in type checking conditions.
7293
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prefer-type-error.md
7314
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prefer-type-error.md
7294
7315
  */
7295
7316
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
7296
7317
  /**
7297
7318
  * Prevent abbreviations.
7298
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/prevent-abbreviations.md
7319
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/prevent-abbreviations.md
7299
7320
  */
7300
7321
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
7301
7322
  /**
7302
7323
  * Enforce consistent relative URL style.
7303
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/relative-url-style.md
7324
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/relative-url-style.md
7304
7325
  */
7305
7326
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
7306
7327
  /**
7307
7328
  * Enforce using the separator argument with `Array#join()`.
7308
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-array-join-separator.md
7329
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/require-array-join-separator.md
7309
7330
  */
7310
7331
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
7332
+ /**
7333
+ * Require non-empty module attributes for imports and exports
7334
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/require-module-attributes.md
7335
+ */
7336
+ 'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
7311
7337
  /**
7312
7338
  * Require non-empty specifier list in import and export statements.
7313
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-module-specifiers.md
7339
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/require-module-specifiers.md
7314
7340
  */
7315
7341
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
7316
7342
  /**
7317
7343
  * Enforce using the digits argument with `Number#toFixed()`.
7318
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-number-to-fixed-digits-argument.md
7344
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/require-number-to-fixed-digits-argument.md
7319
7345
  */
7320
7346
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
7321
7347
  /**
7322
7348
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
7323
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/require-post-message-target-origin.md
7349
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/require-post-message-target-origin.md
7324
7350
  */
7325
7351
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
7326
7352
  /**
7327
7353
  * Enforce better string content.
7328
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/string-content.md
7354
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/string-content.md
7329
7355
  */
7330
7356
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
7331
7357
  /**
7332
7358
  * Enforce consistent brace style for `case` clauses.
7333
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/switch-case-braces.md
7359
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/switch-case-braces.md
7334
7360
  */
7335
7361
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
7336
7362
  /**
7337
7363
  * Fix whitespace-insensitive template indentation.
7338
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/template-indent.md
7364
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/template-indent.md
7339
7365
  */
7340
7366
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
7341
7367
  /**
7342
7368
  * Enforce consistent case for text encoding identifiers.
7343
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/text-encoding-identifier-case.md
7369
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/text-encoding-identifier-case.md
7344
7370
  */
7345
7371
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>;
7346
7372
  /**
7347
7373
  * Require `new` when creating an error.
7348
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v60.0.0/docs/rules/throw-new-error.md
7374
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.1/docs/rules/throw-new-error.md
7349
7375
  */
7350
7376
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
7351
7377
  /**
@@ -8088,6 +8114,10 @@ type IndentLegacy = [] | [("tab" | number)] | [("tab" | number), {
8088
8114
  type InitDeclarations = ([] | ["always"] | [] | ["never"] | ["never", {
8089
8115
  ignoreForLoopInit?: boolean;
8090
8116
  }]);
8117
+ // ----- jsdoc/check-alignment -----
8118
+ type JsdocCheckAlignment = [] | [{
8119
+ innerIndent?: number;
8120
+ }];
8091
8121
  // ----- jsdoc/check-examples -----
8092
8122
  type JsdocCheckExamples = [] | [{
8093
8123
  allowInlineConfig?: boolean;
@@ -8483,6 +8513,7 @@ type JsdocRequireReturnsType = [] | [{
8483
8513
  }];
8484
8514
  // ----- jsdoc/require-template -----
8485
8515
  type JsdocRequireTemplate = [] | [{
8516
+ exemptedBy?: string[];
8486
8517
  requireSeparateTemplates?: boolean;
8487
8518
  }];
8488
8519
  // ----- jsdoc/require-throws -----
@@ -10217,6 +10248,10 @@ type PreferReflect = [] | [{
10217
10248
  type PreferRegexLiterals = [] | [{
10218
10249
  disallowRedundantWrapping?: boolean;
10219
10250
  }];
10251
+ // ----- preserve-caught-error -----
10252
+ type PreserveCaughtError = [] | [{
10253
+ requireCatchParameter?: boolean;
10254
+ }];
10220
10255
  // ----- quote-props -----
10221
10256
  type QuoteProps = ([] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [("always" | "as-needed" | "consistent" | "consistent-as-needed"), {
10222
10257
  keywords?: boolean;
@@ -10251,8 +10286,6 @@ type ReactHooksExhaustiveDeps = [] | [{
10251
10286
  // ----- react-naming-convention/component-name -----
10252
10287
  type ReactNamingConventionComponentName = [] | [(("PascalCase" | "CONSTANT_CASE") | {
10253
10288
  allowAllCaps?: boolean;
10254
- allowLeadingUnderscore?: boolean;
10255
- allowNamespace?: boolean;
10256
10289
  excepts?: string[];
10257
10290
  rule?: ("PascalCase" | "CONSTANT_CASE");
10258
10291
  })];
@@ -10817,6 +10850,7 @@ type StylisticIndent = [] | [("tab" | number)] | [("tab" | number), {
10817
10850
  const?: (number | ("first" | "off"));
10818
10851
  using?: (number | ("first" | "off"));
10819
10852
  });
10853
+ assignmentOperator?: (number | "off");
10820
10854
  outerIIFEBody?: (number | "off");
10821
10855
  MemberExpression?: (number | "off");
10822
10856
  FunctionDeclaration?: {
@@ -11049,6 +11083,22 @@ type StylisticKeywordSpacing = [] | [{
11049
11083
  before?: boolean;
11050
11084
  after?: boolean;
11051
11085
  };
11086
+ arguments?: {
11087
+ before?: boolean;
11088
+ after?: boolean;
11089
+ };
11090
+ as?: {
11091
+ before?: boolean;
11092
+ after?: boolean;
11093
+ };
11094
+ async?: {
11095
+ before?: boolean;
11096
+ after?: boolean;
11097
+ };
11098
+ await?: {
11099
+ before?: boolean;
11100
+ after?: boolean;
11101
+ };
11052
11102
  boolean?: {
11053
11103
  before?: boolean;
11054
11104
  after?: boolean;
@@ -11113,6 +11163,10 @@ type StylisticKeywordSpacing = [] | [{
11113
11163
  before?: boolean;
11114
11164
  after?: boolean;
11115
11165
  };
11166
+ eval?: {
11167
+ before?: boolean;
11168
+ after?: boolean;
11169
+ };
11116
11170
  export?: {
11117
11171
  before?: boolean;
11118
11172
  after?: boolean;
@@ -11141,10 +11195,18 @@ type StylisticKeywordSpacing = [] | [{
11141
11195
  before?: boolean;
11142
11196
  after?: boolean;
11143
11197
  };
11198
+ from?: {
11199
+ before?: boolean;
11200
+ after?: boolean;
11201
+ };
11144
11202
  function?: {
11145
11203
  before?: boolean;
11146
11204
  after?: boolean;
11147
11205
  };
11206
+ get?: {
11207
+ before?: boolean;
11208
+ after?: boolean;
11209
+ };
11148
11210
  goto?: {
11149
11211
  before?: boolean;
11150
11212
  after?: boolean;
@@ -11177,6 +11239,10 @@ type StylisticKeywordSpacing = [] | [{
11177
11239
  before?: boolean;
11178
11240
  after?: boolean;
11179
11241
  };
11242
+ let?: {
11243
+ before?: boolean;
11244
+ after?: boolean;
11245
+ };
11180
11246
  long?: {
11181
11247
  before?: boolean;
11182
11248
  after?: boolean;
@@ -11193,6 +11259,10 @@ type StylisticKeywordSpacing = [] | [{
11193
11259
  before?: boolean;
11194
11260
  after?: boolean;
11195
11261
  };
11262
+ of?: {
11263
+ before?: boolean;
11264
+ after?: boolean;
11265
+ };
11196
11266
  package?: {
11197
11267
  before?: boolean;
11198
11268
  after?: boolean;
@@ -11213,6 +11283,10 @@ type StylisticKeywordSpacing = [] | [{
11213
11283
  before?: boolean;
11214
11284
  after?: boolean;
11215
11285
  };
11286
+ set?: {
11287
+ before?: boolean;
11288
+ after?: boolean;
11289
+ };
11216
11290
  short?: {
11217
11291
  before?: boolean;
11218
11292
  after?: boolean;
@@ -11257,59 +11331,43 @@ type StylisticKeywordSpacing = [] | [{
11257
11331
  before?: boolean;
11258
11332
  after?: boolean;
11259
11333
  };
11260
- typeof?: {
11261
- before?: boolean;
11262
- after?: boolean;
11263
- };
11264
- var?: {
11265
- before?: boolean;
11266
- after?: boolean;
11267
- };
11268
- void?: {
11269
- before?: boolean;
11270
- after?: boolean;
11271
- };
11272
- volatile?: {
11273
- before?: boolean;
11274
- after?: boolean;
11275
- };
11276
- while?: {
11334
+ type?: {
11277
11335
  before?: boolean;
11278
11336
  after?: boolean;
11279
11337
  };
11280
- with?: {
11338
+ typeof?: {
11281
11339
  before?: boolean;
11282
11340
  after?: boolean;
11283
11341
  };
11284
- accessor?: {
11342
+ using?: {
11285
11343
  before?: boolean;
11286
11344
  after?: boolean;
11287
11345
  };
11288
- as?: {
11346
+ var?: {
11289
11347
  before?: boolean;
11290
11348
  after?: boolean;
11291
11349
  };
11292
- async?: {
11350
+ void?: {
11293
11351
  before?: boolean;
11294
11352
  after?: boolean;
11295
11353
  };
11296
- await?: {
11354
+ volatile?: {
11297
11355
  before?: boolean;
11298
11356
  after?: boolean;
11299
11357
  };
11300
- from?: {
11358
+ while?: {
11301
11359
  before?: boolean;
11302
11360
  after?: boolean;
11303
11361
  };
11304
- get?: {
11362
+ with?: {
11305
11363
  before?: boolean;
11306
11364
  after?: boolean;
11307
11365
  };
11308
- let?: {
11366
+ yield?: {
11309
11367
  before?: boolean;
11310
11368
  after?: boolean;
11311
11369
  };
11312
- of?: {
11370
+ accessor?: {
11313
11371
  before?: boolean;
11314
11372
  after?: boolean;
11315
11373
  };
@@ -11317,22 +11375,6 @@ type StylisticKeywordSpacing = [] | [{
11317
11375
  before?: boolean;
11318
11376
  after?: boolean;
11319
11377
  };
11320
- set?: {
11321
- before?: boolean;
11322
- after?: boolean;
11323
- };
11324
- using?: {
11325
- before?: boolean;
11326
- after?: boolean;
11327
- };
11328
- yield?: {
11329
- before?: boolean;
11330
- after?: boolean;
11331
- };
11332
- type?: {
11333
- before?: boolean;
11334
- after?: boolean;
11335
- };
11336
11378
  };
11337
11379
  }];
11338
11380
  // ----- stylistic/line-comment-position -----
@@ -11532,6 +11574,7 @@ type StylisticNoExtraParens = ([] | ["functions"] | [] | ["all"] | ["all", {
11532
11574
  LogicalExpression?: boolean;
11533
11575
  AwaitExpression?: boolean;
11534
11576
  };
11577
+ ignoredNodes?: string[];
11535
11578
  }]);
11536
11579
  // ----- stylistic/no-mixed-operators -----
11537
11580
  type StylisticNoMixedOperators = [] | [{
@@ -11647,7 +11690,7 @@ type StylisticPaddedBlocks = [] | [(("always" | "never" | "start" | "end") | {
11647
11690
  // ----- stylistic/padding-line-between-statements -----
11648
11691
  type _StylisticPaddingLineBetweenStatementsPaddingType = ("any" | "never" | "always");
11649
11692
  type _StylisticPaddingLineBetweenStatementsStatementOption = (_StylisticPaddingLineBetweenStatementsStatementType | [_StylisticPaddingLineBetweenStatementsStatementType, ...(_StylisticPaddingLineBetweenStatementsStatementType)[]]);
11650
- type _StylisticPaddingLineBetweenStatementsStatementType = ("*" | "exports" | "require" | "directive" | "iife" | "block" | "empty" | "function" | "ts-method" | "break" | "case" | "class" | "continue" | "debugger" | "default" | "do" | "for" | "if" | "import" | "return" | "switch" | "throw" | "try" | "while" | "with" | "cjs-export" | "cjs-import" | "enum" | "interface" | "type" | "function-overload" | "block-like" | "singleline-block-like" | "multiline-block-like" | "expression" | "singleline-expression" | "multiline-expression" | "export" | "singleline-export" | "multiline-export" | "var" | "singleline-var" | "multiline-var" | "let" | "singleline-let" | "multiline-let" | "const" | "singleline-const" | "multiline-const" | "using" | "singleline-using" | "multiline-using");
11693
+ type _StylisticPaddingLineBetweenStatementsStatementType = ("*" | "exports" | "require" | "directive" | "iife" | "block" | "empty" | "function" | "ts-method" | "break" | "case" | "class" | "continue" | "debugger" | "default" | "do" | "for" | "if" | "import" | "switch" | "throw" | "try" | "while" | "with" | "cjs-export" | "cjs-import" | "enum" | "interface" | "function-overload" | "block-like" | "singleline-block-like" | "multiline-block-like" | "expression" | "singleline-expression" | "multiline-expression" | "return" | "singleline-return" | "multiline-return" | "export" | "singleline-export" | "multiline-export" | "var" | "singleline-var" | "multiline-var" | "let" | "singleline-let" | "multiline-let" | "const" | "singleline-const" | "multiline-const" | "using" | "singleline-using" | "multiline-using" | "type" | "singleline-type" | "multiline-type");
11651
11694
  type StylisticPaddingLineBetweenStatements = {
11652
11695
  blankLine: _StylisticPaddingLineBetweenStatementsPaddingType;
11653
11696
  prev: _StylisticPaddingLineBetweenStatementsStatementOption;
@@ -12871,6 +12914,10 @@ type UnicornNoArrayReduce = [] | [{
12871
12914
  type UnicornNoArrayReverse = [] | [{
12872
12915
  allowExpressionStatement?: boolean;
12873
12916
  }];
12917
+ // ----- unicorn/no-array-sort -----
12918
+ type UnicornNoArraySort = [] | [{
12919
+ allowExpressionStatement?: boolean;
12920
+ }];
12874
12921
  // ----- unicorn/no-instanceof-builtins -----
12875
12922
  type UnicornNoInstanceofBuiltins = [] | [{
12876
12923
  useErrorIsError?: boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@2digits/eslint-config",
3
- "version": "4.8.1",
3
+ "version": "4.8.3",
4
4
  "description": "Effortlessly enforce best practices and catch errors with this comprehensive ESLint configuration for TypeScript, featuring popular plugins like @typescript-eslint, eslint-plugin-react, and eslint-plugin-unicorn.",
5
5
  "homepage": "https://2d-configs.vercel.app/",
6
6
  "repository": {
@@ -27,17 +27,17 @@
27
27
  "public": true,
28
28
  "dependencies": {
29
29
  "@eslint-community/eslint-plugin-eslint-comments": "4.5.0",
30
- "@eslint-react/eslint-plugin": "1.52.9",
30
+ "@eslint-react/eslint-plugin": "1.53.0",
31
31
  "@eslint/compat": "1.3.2",
32
32
  "@eslint/css": "0.11.0",
33
- "@eslint/js": "9.34.0",
33
+ "@eslint/js": "9.35.0",
34
34
  "@eslint/markdown": "7.2.0",
35
35
  "@graphql-eslint/eslint-plugin": "4.4.0",
36
36
  "@next/eslint-plugin-next": "15.5.2",
37
- "@stylistic/eslint-plugin": "5.2.3",
38
- "@tanstack/eslint-plugin-query": "5.83.1",
39
- "@typescript-eslint/parser": "8.41.0",
40
- "@typescript-eslint/utils": "8.41.0",
37
+ "@stylistic/eslint-plugin": "5.3.1",
38
+ "@tanstack/eslint-plugin-query": "5.86.0",
39
+ "@typescript-eslint/parser": "8.42.0",
40
+ "@typescript-eslint/utils": "8.42.0",
41
41
  "eslint-config-flat-gitignore": "2.1.0",
42
42
  "eslint-config-prettier": "10.1.8",
43
43
  "eslint-flat-config-utils": "2.1.1",
@@ -46,7 +46,7 @@
46
46
  "eslint-plugin-de-morgan": "1.3.1",
47
47
  "eslint-plugin-drizzle": "0.2.3",
48
48
  "eslint-plugin-github-action": "0.0.16",
49
- "eslint-plugin-jsdoc": "54.1.1",
49
+ "eslint-plugin-jsdoc": "54.4.0",
50
50
  "eslint-plugin-jsonc": "2.20.1",
51
51
  "eslint-plugin-n": "17.21.3",
52
52
  "eslint-plugin-pnpm": "1.1.1",
@@ -54,27 +54,27 @@
54
54
  "eslint-plugin-react-hooks": "5.2.0",
55
55
  "eslint-plugin-regexp": "2.10.0",
56
56
  "eslint-plugin-sonarjs": "3.0.5",
57
- "eslint-plugin-storybook": "9.1.3",
57
+ "eslint-plugin-storybook": "9.1.5",
58
58
  "eslint-plugin-tailwindcss": "3.18.2",
59
59
  "eslint-plugin-turbo": "2.5.6",
60
- "eslint-plugin-unicorn": "60.0.0",
60
+ "eslint-plugin-unicorn": "61.0.1",
61
61
  "eslint-plugin-yml": "1.18.0",
62
62
  "find-up": "7.0.0",
63
63
  "globals": "16.3.0",
64
64
  "graphql-config": "5.1.5",
65
65
  "jsonc-eslint-parser": "2.4.0",
66
66
  "local-pkg": "1.1.2",
67
- "tailwind-csstree": "0.1.3",
68
- "typescript-eslint": "8.41.0",
67
+ "tailwind-csstree": "0.1.4",
68
+ "typescript-eslint": "8.42.0",
69
69
  "yaml-eslint-parser": "1.3.0",
70
- "@2digits/constants": "1.1.7",
71
- "@2digits/eslint-plugin": "3.1.15"
70
+ "@2digits/eslint-plugin": "3.1.17",
71
+ "@2digits/constants": "1.1.7"
72
72
  },
73
73
  "devDependencies": {
74
74
  "@eslint/config-inspector": "1.2.0",
75
75
  "@types/react": "19.1.12",
76
- "dedent": "1.6.0",
77
- "eslint": "9.34.0",
76
+ "dedent": "1.7.0",
77
+ "eslint": "9.35.0",
78
78
  "eslint-typegen": "2.3.0",
79
79
  "execa": "9.6.0",
80
80
  "react": "19.1.1",