@vinicunca/eslint-config 2.4.3 → 2.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -4,12 +4,13 @@ import { Linter } from 'eslint';
4
4
  import { FlatGitignoreOptions } from 'eslint-config-flat-gitignore';
5
5
  import { Options } from 'eslint-processor-vue-blocks';
6
6
  import { FlatConfigComposer } from 'eslint-flat-config-utils';
7
- export { default as pluginVinicunca } from '@vinicunca/eslint-plugin-vinicunca';
7
+ export { default as pluginAntfu } from 'eslint-plugin-antfu';
8
8
  export { default as pluginComments } from 'eslint-plugin-eslint-comments';
9
9
  import * as eslintPluginImportX from 'eslint-plugin-import-x';
10
10
  export { eslintPluginImportX as pluginImport };
11
11
  export { default as pluginNode } from 'eslint-plugin-n';
12
12
  export { default as pluginPerfectionist } from 'eslint-plugin-perfectionist';
13
+ export { default as pluginSonar } from 'eslint-plugin-sonarjs';
13
14
  export { default as pluginUnicorn } from 'eslint-plugin-unicorn';
14
15
  export { default as pluginUnusedImports } from 'eslint-plugin-unused-imports';
15
16
 
@@ -23,6 +24,46 @@ interface RuleOptions {
23
24
  * @see https://eslint.org/docs/latest/rules/accessor-pairs
24
25
  */
25
26
  'accessor-pairs'?: Linter.RuleEntry<AccessorPairs>
27
+ /**
28
+ * Having line breaks styles to object, array and named imports
29
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/consistent-list-newline.md
30
+ */
31
+ 'antfu/consistent-list-newline'?: Linter.RuleEntry<AntfuConsistentListNewline>
32
+ /**
33
+ * Newline after if
34
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/if-newline.md
35
+ */
36
+ 'antfu/if-newline'?: Linter.RuleEntry<[]>
37
+ /**
38
+ * Fix duplication in imports
39
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/import-dedupe.md
40
+ */
41
+ 'antfu/import-dedupe'?: Linter.RuleEntry<[]>
42
+ /**
43
+ * Enforce consistent indentation in `unindent` template tag
44
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/indent-unindent.test.ts
45
+ */
46
+ 'antfu/indent-unindent'?: Linter.RuleEntry<AntfuIndentUnindent>
47
+ /**
48
+ * Prevent importing modules in `dist` folder
49
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-dist.test.ts
50
+ */
51
+ 'antfu/no-import-dist'?: Linter.RuleEntry<[]>
52
+ /**
53
+ * Prevent importing modules in `node_modules` folder by relative or absolute path
54
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-import-node-modules-by-path.test.ts
55
+ */
56
+ 'antfu/no-import-node-modules-by-path'?: Linter.RuleEntry<[]>
57
+ /**
58
+ * Do not use `exports =`
59
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/no-ts-export-equal.test.ts
60
+ */
61
+ 'antfu/no-ts-export-equal'?: Linter.RuleEntry<[]>
62
+ /**
63
+ * Enforce top-level functions to be declared with function keyword
64
+ * @see https://github.com/antfu/eslint-plugin-antfu/blob/main/src/rules/top-level-function.md
65
+ */
66
+ 'antfu/top-level-function'?: Linter.RuleEntry<[]>
26
67
  /**
27
68
  * Enforce linebreaks after opening and before closing array brackets
28
69
  * @see https://eslint.org/docs/latest/rules/array-bracket-newline
@@ -1295,7 +1336,7 @@ interface RuleOptions {
1295
1336
  * Disallow returning value from constructor
1296
1337
  * @see https://eslint.org/docs/latest/rules/no-constructor-return
1297
1338
  */
1298
- 'no-constructor-return'?: Linter.RuleEntry<NoConstructorReturn>
1339
+ 'no-constructor-return'?: Linter.RuleEntry<[]>
1299
1340
  /**
1300
1341
  * Disallow `continue` statements
1301
1342
  * @see https://eslint.org/docs/latest/rules/no-continue
@@ -1631,6 +1672,7 @@ interface RuleOptions {
1631
1672
  /**
1632
1673
  * Disallow `new` operators with the `Symbol` object
1633
1674
  * @see https://eslint.org/docs/latest/rules/no-new-symbol
1675
+ * @deprecated
1634
1676
  */
1635
1677
  'no-new-symbol'?: Linter.RuleEntry<[]>
1636
1678
  /**
@@ -1927,6 +1969,11 @@ interface RuleOptions {
1927
1969
  * @see https://eslint.org/docs/latest/rules/no-use-before-define
1928
1970
  */
1929
1971
  'no-use-before-define'?: Linter.RuleEntry<NoUseBeforeDefine>
1972
+ /**
1973
+ * Disallow variable assignments when the value is not used
1974
+ * @see https://eslint.org/docs/latest/rules/no-useless-assignment
1975
+ */
1976
+ 'no-useless-assignment'?: Linter.RuleEntry<[]>
1930
1977
  /**
1931
1978
  * Disallow useless backreferences in regular expressions
1932
1979
  * @see https://eslint.org/docs/latest/rules/no-useless-backreference
@@ -2023,6 +2070,11 @@ interface RuleOptions {
2023
2070
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/handle-callback-err.md
2024
2071
  */
2025
2072
  'node/handle-callback-err'?: Linter.RuleEntry<NodeHandleCallbackErr>
2073
+ /**
2074
+ * require correct usage of hashbang
2075
+ * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/hashbang.md
2076
+ */
2077
+ 'node/hashbang'?: Linter.RuleEntry<NodeHashbang>
2026
2078
  /**
2027
2079
  * enforce Node.js-style error-first callback pattern is followed
2028
2080
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-callback-literal.md
@@ -2119,12 +2171,6 @@ interface RuleOptions {
2119
2171
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unpublished-require.md
2120
2172
  */
2121
2173
  'node/no-unpublished-require'?: Linter.RuleEntry<NodeNoUnpublishedRequire>
2122
- /**
2123
- * disallow unsupported ECMAScript features on the specified version
2124
- * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unsupported-features.md
2125
- * @deprecated
2126
- */
2127
- 'node/no-unsupported-features'?: Linter.RuleEntry<NodeNoUnsupportedFeatures>
2128
2174
  /**
2129
2175
  * disallow unsupported ECMAScript built-ins on the specified version
2130
2176
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unsupported-features/es-builtins.md
@@ -2175,6 +2221,11 @@ interface RuleOptions {
2175
2221
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/url-search-params.md
2176
2222
  */
2177
2223
  'node/prefer-global/url-search-params'?: Linter.RuleEntry<NodePreferGlobalUrlSearchParams>
2224
+ /**
2225
+ * enforce using the `node:` protocol when importing Node.js builtin modules.
2226
+ * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-node-protocol.md
2227
+ */
2228
+ 'node/prefer-node-protocol'?: Linter.RuleEntry<NodePreferNodeProtocol>
2178
2229
  /**
2179
2230
  * enforce `require("dns").promises`
2180
2231
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-promises/dns.md
@@ -2191,8 +2242,9 @@ interface RuleOptions {
2191
2242
  */
2192
2243
  'node/process-exit-as-throw'?: Linter.RuleEntry<[]>
2193
2244
  /**
2194
- * require correct usage of shebang
2195
- * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/shebang.md
2245
+ * require correct usage of hashbang
2246
+ * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/hashbang.md
2247
+ * @deprecated
2196
2248
  */
2197
2249
  'node/shebang'?: Linter.RuleEntry<NodeShebang>
2198
2250
  /**
@@ -2293,6 +2345,11 @@ interface RuleOptions {
2293
2345
  * @see https://eslint-plugin-perfectionist.azat.io/rules/sort-interfaces
2294
2346
  */
2295
2347
  'perfectionist/sort-interfaces'?: Linter.RuleEntry<PerfectionistSortInterfaces>
2348
+ /**
2349
+ * enforce sorted intersection types
2350
+ * @see https://eslint-plugin-perfectionist.azat.io/rules/sort-intersection-types
2351
+ */
2352
+ 'perfectionist/sort-intersection-types'?: Linter.RuleEntry<PerfectionistSortIntersectionTypes>
2296
2353
  /**
2297
2354
  * enforce sorted JSX props
2298
2355
  * @see https://eslint-plugin-perfectionist.azat.io/rules/sort-jsx-props
@@ -2953,12 +3010,6 @@ interface RuleOptions {
2953
3010
  * @see https://eslint.org/docs/latest/rules/require-await
2954
3011
  */
2955
3012
  'require-await'?: Linter.RuleEntry<[]>
2956
- /**
2957
- * Require JSDoc comments
2958
- * @see https://eslint.org/docs/latest/rules/require-jsdoc
2959
- * @deprecated
2960
- */
2961
- 'require-jsdoc'?: Linter.RuleEntry<RequireJsdoc>
2962
3013
  /**
2963
3014
  * Enforce the use of `u` or `v` flag on RegExp
2964
3015
  * @see https://eslint.org/docs/latest/rules/require-unicode-regexp
@@ -3194,6 +3245,11 @@ interface RuleOptions {
3194
3245
  * @see https://eslint.style/rules/jsx/jsx-first-prop-new-line
3195
3246
  */
3196
3247
  'style/jsx-first-prop-new-line'?: Linter.RuleEntry<StyleJsxFirstPropNewLine>
3248
+ /**
3249
+ * Enforce line breaks before and after JSX elements when they are used as arguments to a function.
3250
+ * @see https://eslint.style/rules/jsx/jsx-function-call-newline
3251
+ */
3252
+ 'style/jsx-function-call-newline'?: Linter.RuleEntry<StyleJsxFunctionCallNewline>
3197
3253
  /**
3198
3254
  * Enforce JSX indentation
3199
3255
  * @see https://eslint.style/rules/jsx/jsx-indent
@@ -3264,6 +3320,11 @@ interface RuleOptions {
3264
3320
  * @see https://eslint.style/rules/ts/keyword-spacing
3265
3321
  */
3266
3322
  'style/keyword-spacing'?: Linter.RuleEntry<StyleKeywordSpacing>
3323
+ /**
3324
+ * Enforce position of line comments
3325
+ * @see https://eslint.style/rules/js/line-comment-position
3326
+ */
3327
+ 'style/line-comment-position'?: Linter.RuleEntry<StyleLineCommentPosition>
3267
3328
  /**
3268
3329
  * Enforce consistent linebreak style
3269
3330
  * @see https://eslint.style/rules/js/linebreak-style
@@ -3294,6 +3355,11 @@ interface RuleOptions {
3294
3355
  * @see https://eslint.style/rules/ts/member-delimiter-style
3295
3356
  */
3296
3357
  'style/member-delimiter-style'?: Linter.RuleEntry<StyleMemberDelimiterStyle>
3358
+ /**
3359
+ * Enforce a particular style for multiline comments
3360
+ * @see https://eslint.style/rules/js/multiline-comment-style
3361
+ */
3362
+ 'style/multiline-comment-style'?: Linter.RuleEntry<StyleMultilineCommentStyle>
3297
3363
  /**
3298
3364
  * Enforce newlines between operands of ternary expressions
3299
3365
  * @see https://eslint.style/rules/js/multiline-ternary
@@ -3533,103 +3599,103 @@ interface RuleOptions {
3533
3599
  */
3534
3600
  'template-tag-spacing'?: Linter.RuleEntry<TemplateTagSpacing>
3535
3601
  /**
3536
- * forbidden .spec test file pattern
3602
+ * require .spec test file pattern
3537
3603
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-filename.md
3538
3604
  */
3539
3605
  'test/consistent-test-filename'?: Linter.RuleEntry<TestConsistentTestFilename>
3540
3606
  /**
3541
- * Prefer test or it but not both
3607
+ * enforce using test or it but not both
3542
3608
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-it.md
3543
3609
  */
3544
3610
  'test/consistent-test-it'?: Linter.RuleEntry<TestConsistentTestIt>
3545
3611
  /**
3546
- * Enforce having expectation in test body
3612
+ * enforce having expectation in test body
3547
3613
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/expect-expect.md
3548
3614
  */
3549
3615
  'test/expect-expect'?: Linter.RuleEntry<TestExpectExpect>
3550
3616
  /**
3551
- * Enforce a maximum number of expect per test
3617
+ * enforce a maximum number of expect per test
3552
3618
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/max-expects.md
3553
3619
  */
3554
3620
  'test/max-expects'?: Linter.RuleEntry<TestMaxExpects>
3555
3621
  /**
3556
- * Nested describe block should be less than set max value or default value
3622
+ * require describe block to be less than set max value or default value
3557
3623
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/max-nested-describe.md
3558
3624
  */
3559
3625
  'test/max-nested-describe'?: Linter.RuleEntry<TestMaxNestedDescribe>
3560
3626
  /**
3561
- * Disallow alias methods
3627
+ * disallow alias methods
3562
3628
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-alias-methods.md
3563
3629
  */
3564
3630
  'test/no-alias-methods'?: Linter.RuleEntry<[]>
3565
3631
  /**
3566
- * Disallow commented out tests
3632
+ * disallow commented out tests
3567
3633
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-commented-out-tests.md
3568
3634
  */
3569
3635
  'test/no-commented-out-tests'?: Linter.RuleEntry<[]>
3570
3636
  /**
3571
- * Disallow conditional expects
3637
+ * disallow conditional expects
3572
3638
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-expect.md
3573
3639
  */
3574
3640
  'test/no-conditional-expect'?: Linter.RuleEntry<[]>
3575
3641
  /**
3576
- * Disallow conditional tests
3642
+ * disallow conditional tests
3577
3643
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-in-test.md
3578
3644
  */
3579
3645
  'test/no-conditional-in-test'?: Linter.RuleEntry<[]>
3580
3646
  /**
3581
- * Disallow conditional tests
3647
+ * disallow conditional tests
3582
3648
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-tests.md
3583
3649
  */
3584
3650
  'test/no-conditional-tests'?: Linter.RuleEntry<[]>
3585
3651
  /**
3586
- * Disallow disabled tests
3652
+ * disallow disabled tests
3587
3653
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-disabled-tests.md
3588
3654
  */
3589
3655
  'test/no-disabled-tests'?: Linter.RuleEntry<[]>
3590
3656
  /**
3591
- * Disallow using a callback in asynchronous tests and hooks
3657
+ * disallow using a callback in asynchronous tests and hooks
3592
3658
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-done-callback.md
3593
3659
  * @deprecated
3594
3660
  */
3595
3661
  'test/no-done-callback'?: Linter.RuleEntry<[]>
3596
3662
  /**
3597
- * Disallow duplicate hooks and teardown hooks
3663
+ * disallow duplicate hooks and teardown hooks
3598
3664
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-duplicate-hooks.md
3599
3665
  */
3600
3666
  'test/no-duplicate-hooks'?: Linter.RuleEntry<[]>
3601
3667
  /**
3602
- * Disallow focused tests
3668
+ * disallow focused tests
3603
3669
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-focused-tests.md
3604
3670
  */
3605
- 'test/no-focused-tests'?: Linter.RuleEntry<[]>
3671
+ 'test/no-focused-tests'?: Linter.RuleEntry<TestNoFocusedTests>
3606
3672
  /**
3607
- * Disallow setup and teardown hooks
3673
+ * disallow setup and teardown hooks
3608
3674
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-hooks.md
3609
3675
  */
3610
3676
  'test/no-hooks'?: Linter.RuleEntry<TestNoHooks>
3611
3677
  /**
3612
- * Disallow identical titles
3678
+ * disallow identical titles
3613
3679
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-identical-title.md
3614
3680
  */
3615
3681
  'test/no-identical-title'?: Linter.RuleEntry<[]>
3616
3682
  /**
3617
- * Disallow importing `node:test`
3683
+ * disallow importing `node:test`
3618
3684
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-import-node-test.md
3619
3685
  */
3620
3686
  'test/no-import-node-test'?: Linter.RuleEntry<[]>
3621
3687
  /**
3622
- * Disallow string interpolation in snapshots
3688
+ * disallow string interpolation in snapshots
3623
3689
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-interpolation-in-snapshots.md
3624
3690
  */
3625
3691
  'test/no-interpolation-in-snapshots'?: Linter.RuleEntry<[]>
3626
3692
  /**
3627
- * Disallow large snapshots
3693
+ * disallow large snapshots
3628
3694
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-large-snapshots.md
3629
3695
  */
3630
3696
  'test/no-large-snapshots'?: Linter.RuleEntry<TestNoLargeSnapshots>
3631
3697
  /**
3632
- * Disallow importing from __mocks__ directory
3698
+ * disallow importing from __mocks__ directory
3633
3699
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-mocks-import.md
3634
3700
  */
3635
3701
  'test/no-mocks-import'?: Linter.RuleEntry<[]>
@@ -3639,162 +3705,162 @@ interface RuleOptions {
3639
3705
  */
3640
3706
  'test/no-only-tests'?: Linter.RuleEntry<TestNoOnlyTests>
3641
3707
  /**
3642
- * Disallow the use of certain matchers
3708
+ * disallow the use of certain matchers
3643
3709
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-restricted-matchers.md
3644
3710
  */
3645
3711
  'test/no-restricted-matchers'?: Linter.RuleEntry<TestNoRestrictedMatchers>
3646
3712
  /**
3647
- * Disallow specific `vi.` methods
3713
+ * disallow specific `vi.` methods
3648
3714
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-restricted-vi-methods.md
3649
3715
  */
3650
3716
  'test/no-restricted-vi-methods'?: Linter.RuleEntry<TestNoRestrictedViMethods>
3651
3717
  /**
3652
- * Disallow using `expect` outside of `it` or `test` blocks
3718
+ * disallow using `expect` outside of `it` or `test` blocks
3653
3719
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-standalone-expect.md
3654
3720
  */
3655
3721
  'test/no-standalone-expect'?: Linter.RuleEntry<TestNoStandaloneExpect>
3656
3722
  /**
3657
- * Disallow using `test` as a prefix
3723
+ * disallow using `test` as a prefix
3658
3724
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-test-prefixes.md
3659
3725
  */
3660
3726
  'test/no-test-prefixes'?: Linter.RuleEntry<[]>
3661
3727
  /**
3662
- * Disallow return statements in tests
3728
+ * disallow return statements in tests
3663
3729
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-test-return-statement.md
3664
3730
  */
3665
3731
  'test/no-test-return-statement'?: Linter.RuleEntry<[]>
3666
3732
  /**
3667
- * Suggest using `toBeCalledWith()` or `toHaveBeenCalledWith()`
3733
+ * enforce using `toBeCalledWith()` or `toHaveBeenCalledWith()`
3668
3734
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-with.md
3669
3735
  */
3670
3736
  'test/prefer-called-with'?: Linter.RuleEntry<[]>
3671
3737
  /**
3672
- * Suggest using the built-in comparison matchers
3738
+ * enforce using the built-in comparison matchers
3673
3739
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-comparison-matcher.md
3674
3740
  */
3675
3741
  'test/prefer-comparison-matcher'?: Linter.RuleEntry<[]>
3676
3742
  /**
3677
- * Prefer `each` rather than manual loops
3743
+ * enforce using `each` rather than manual loops
3678
3744
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-each.md
3679
3745
  */
3680
3746
  'test/prefer-each'?: Linter.RuleEntry<[]>
3681
3747
  /**
3682
- * Suggest using the built-in quality matchers
3748
+ * enforce using the built-in quality matchers
3683
3749
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-equality-matcher.md
3684
3750
  */
3685
3751
  'test/prefer-equality-matcher'?: Linter.RuleEntry<[]>
3686
3752
  /**
3687
- * Suggest using expect assertions instead of callbacks
3753
+ * enforce using expect assertions instead of callbacks
3688
3754
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-assertions.md
3689
3755
  */
3690
3756
  'test/prefer-expect-assertions'?: Linter.RuleEntry<TestPreferExpectAssertions>
3691
3757
  /**
3692
- * Suggest using `expect().resolves` over `expect(await ...)` syntax
3758
+ * enforce using `expect().resolves` over `expect(await ...)` syntax
3693
3759
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-resolves.md
3694
3760
  */
3695
3761
  'test/prefer-expect-resolves'?: Linter.RuleEntry<[]>
3696
3762
  /**
3697
- * Prefer having hooks in consistent order
3763
+ * enforce having hooks in consistent order
3698
3764
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-in-order.md
3699
3765
  */
3700
3766
  'test/prefer-hooks-in-order'?: Linter.RuleEntry<[]>
3701
3767
  /**
3702
- * Suggest having hooks before any test cases
3768
+ * enforce having hooks before any test cases
3703
3769
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-on-top.md
3704
3770
  */
3705
3771
  'test/prefer-hooks-on-top'?: Linter.RuleEntry<[]>
3706
3772
  /**
3707
- * Enforce lowercase titles
3773
+ * enforce lowercase titles
3708
3774
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-lowercase-title.md
3709
3775
  */
3710
3776
  'test/prefer-lowercase-title'?: Linter.RuleEntry<TestPreferLowercaseTitle>
3711
3777
  /**
3712
- * Prefer mock resolved/rejected shorthands for promises
3778
+ * enforce mock resolved/rejected shorthands for promises
3713
3779
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-promise-shorthand.md
3714
3780
  */
3715
3781
  'test/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>
3716
3782
  /**
3717
- * Prefer including a hint with external snapshots
3783
+ * enforce including a hint with external snapshots
3718
3784
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-snapshot-hint.md
3719
3785
  */
3720
3786
  'test/prefer-snapshot-hint'?: Linter.RuleEntry<TestPreferSnapshotHint>
3721
3787
  /**
3722
- * Suggest using `vi.spyOn`
3788
+ * enforce using `vi.spyOn`
3723
3789
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-spy-on.md
3724
3790
  */
3725
3791
  'test/prefer-spy-on'?: Linter.RuleEntry<[]>
3726
3792
  /**
3727
- * Prefer strict equal over equal
3793
+ * enforce strict equal over equal
3728
3794
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-strict-equal.md
3729
3795
  */
3730
3796
  'test/prefer-strict-equal'?: Linter.RuleEntry<[]>
3731
3797
  /**
3732
- * Suggest using toBe()
3798
+ * enforce using toBe()
3733
3799
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be.md
3734
3800
  */
3735
3801
  'test/prefer-to-be'?: Linter.RuleEntry<[]>
3736
3802
  /**
3737
- * Suggest using toBeFalsy()
3803
+ * enforce using toBeFalsy()
3738
3804
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-falsy.md
3739
3805
  */
3740
3806
  'test/prefer-to-be-falsy'?: Linter.RuleEntry<[]>
3741
3807
  /**
3742
- * Prefer toBeObject()
3808
+ * enforce using toBeObject()
3743
3809
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-object.md
3744
3810
  */
3745
3811
  'test/prefer-to-be-object'?: Linter.RuleEntry<[]>
3746
3812
  /**
3747
- * Suggest using `toBeTruthy`
3813
+ * enforce using `toBeTruthy`
3748
3814
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-truthy.md
3749
3815
  */
3750
3816
  'test/prefer-to-be-truthy'?: Linter.RuleEntry<[]>
3751
3817
  /**
3752
- * Prefer using toContain()
3818
+ * enforce using toContain()
3753
3819
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-contain.md
3754
3820
  */
3755
3821
  'test/prefer-to-contain'?: Linter.RuleEntry<[]>
3756
3822
  /**
3757
- * Suggest using toHaveLength()
3823
+ * enforce using toHaveLength()
3758
3824
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md
3759
3825
  */
3760
3826
  'test/prefer-to-have-length'?: Linter.RuleEntry<[]>
3761
3827
  /**
3762
- * Suggest using `test.todo`
3828
+ * enforce using `test.todo`
3763
3829
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-todo.md
3764
3830
  */
3765
3831
  'test/prefer-todo'?: Linter.RuleEntry<[]>
3766
3832
  /**
3767
- * Require setup and teardown to be within a hook
3833
+ * require setup and teardown to be within a hook
3768
3834
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/require-hook.md
3769
3835
  */
3770
3836
  'test/require-hook'?: Linter.RuleEntry<TestRequireHook>
3771
3837
  /**
3772
- * Require local Test Context for concurrent snapshot tests
3838
+ * require local Test Context for concurrent snapshot tests
3773
3839
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/require-local-test-context-for-concurrent-snapshots.md
3774
3840
  */
3775
3841
  'test/require-local-test-context-for-concurrent-snapshots'?: Linter.RuleEntry<[]>
3776
3842
  /**
3777
- * Require toThrow() to be called with an error message
3843
+ * require toThrow() to be called with an error message
3778
3844
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/require-to-throw-message.md
3779
3845
  */
3780
3846
  'test/require-to-throw-message'?: Linter.RuleEntry<[]>
3781
3847
  /**
3782
- * Enforce that all tests are in a top-level describe
3848
+ * enforce that all tests are in a top-level describe
3783
3849
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/require-top-level-describe.md
3784
3850
  */
3785
3851
  'test/require-top-level-describe'?: Linter.RuleEntry<TestRequireTopLevelDescribe>
3786
3852
  /**
3787
- * Enforce valid describe callback
3853
+ * enforce valid describe callback
3788
3854
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/valid-describe-callback.md
3789
3855
  */
3790
3856
  'test/valid-describe-callback'?: Linter.RuleEntry<[]>
3791
3857
  /**
3792
- * Enforce valid `expect()` usage
3858
+ * enforce valid `expect()` usage
3793
3859
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/valid-expect.md
3794
3860
  */
3795
3861
  'test/valid-expect'?: Linter.RuleEntry<TestValidExpect>
3796
3862
  /**
3797
- * Enforce valid titles
3863
+ * enforce valid titles
3798
3864
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/valid-title.md
3799
3865
  */
3800
3866
  'test/valid-title'?: Linter.RuleEntry<TestValidTitle>
@@ -4543,637 +4609,677 @@ interface RuleOptions {
4543
4609
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>
4544
4610
  /**
4545
4611
  * Improve regexes by making them shorter, consistent, and safer.
4546
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/better-regex.md
4612
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/better-regex.md
4547
4613
  */
4548
4614
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>
4549
4615
  /**
4550
4616
  * Enforce a specific parameter name in catch clauses.
4551
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/catch-error-name.md
4617
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/catch-error-name.md
4552
4618
  */
4553
4619
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>
4554
4620
  /**
4555
4621
  * Use destructured variables over properties.
4556
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/consistent-destructuring.md
4622
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/consistent-destructuring.md
4557
4623
  */
4558
4624
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>
4625
+ /**
4626
+ * Prefer consistent types when spreading a ternary in an array literal.
4627
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/consistent-empty-array-spread.md
4628
+ */
4629
+ 'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>
4559
4630
  /**
4560
4631
  * Move function definitions to the highest possible scope.
4561
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/consistent-function-scoping.md
4632
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/consistent-function-scoping.md
4562
4633
  */
4563
4634
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>
4564
4635
  /**
4565
4636
  * Enforce correct `Error` subclassing.
4566
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/custom-error-definition.md
4637
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/custom-error-definition.md
4567
4638
  */
4568
4639
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>
4569
4640
  /**
4570
4641
  * Enforce no spaces between braces.
4571
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/empty-brace-spaces.md
4642
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/empty-brace-spaces.md
4572
4643
  */
4573
4644
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>
4574
4645
  /**
4575
4646
  * Enforce passing a `message` value when creating a built-in error.
4576
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/error-message.md
4647
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/error-message.md
4577
4648
  */
4578
4649
  'unicorn/error-message'?: Linter.RuleEntry<[]>
4579
4650
  /**
4580
4651
  * Require escape sequences to use uppercase values.
4581
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/escape-case.md
4652
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/escape-case.md
4582
4653
  */
4583
4654
  'unicorn/escape-case'?: Linter.RuleEntry<[]>
4584
4655
  /**
4585
4656
  * Add expiration conditions to TODO comments.
4586
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/expiring-todo-comments.md
4657
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/expiring-todo-comments.md
4587
4658
  */
4588
4659
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>
4589
4660
  /**
4590
4661
  * Enforce explicitly comparing the `length` or `size` property of a value.
4591
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/explicit-length-check.md
4662
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/explicit-length-check.md
4592
4663
  */
4593
4664
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>
4594
4665
  /**
4595
4666
  * Enforce a case style for filenames.
4596
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/filename-case.md
4667
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/filename-case.md
4597
4668
  */
4598
4669
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>
4599
4670
  /**
4600
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#import-index
4671
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#import-index
4601
4672
  * @deprecated
4602
4673
  */
4603
4674
  'unicorn/import-index'?: Linter.RuleEntry<[]>
4604
4675
  /**
4605
4676
  * Enforce specific import styles per module.
4606
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/import-style.md
4677
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/import-style.md
4607
4678
  */
4608
4679
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>
4609
4680
  /**
4610
4681
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
4611
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/new-for-builtins.md
4682
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/new-for-builtins.md
4612
4683
  */
4613
4684
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>
4614
4685
  /**
4615
4686
  * Enforce specifying rules to disable in `eslint-disable` comments.
4616
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-abusive-eslint-disable.md
4687
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-abusive-eslint-disable.md
4617
4688
  */
4618
4689
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>
4690
+ /**
4691
+ * Disallow anonymous functions and classes as the default export.
4692
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-anonymous-default-export.md
4693
+ */
4694
+ 'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>
4619
4695
  /**
4620
4696
  * Prevent passing a function reference directly to iterator methods.
4621
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-array-callback-reference.md
4697
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-array-callback-reference.md
4622
4698
  */
4623
4699
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>
4624
4700
  /**
4625
4701
  * Prefer `for…of` over the `forEach` method.
4626
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-array-for-each.md
4702
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-array-for-each.md
4627
4703
  */
4628
4704
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>
4629
4705
  /**
4630
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#no-array-instanceof
4706
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#no-array-instanceof
4631
4707
  * @deprecated
4632
4708
  */
4633
4709
  'unicorn/no-array-instanceof'?: Linter.RuleEntry<[]>
4634
4710
  /**
4635
4711
  * Disallow using the `this` argument in array methods.
4636
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-array-method-this-argument.md
4712
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-array-method-this-argument.md
4637
4713
  */
4638
4714
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>
4639
4715
  /**
4640
4716
  * Enforce combining multiple `Array#push()` into one call.
4641
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-array-push-push.md
4717
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-array-push-push.md
4642
4718
  */
4643
4719
  'unicorn/no-array-push-push'?: Linter.RuleEntry<UnicornNoArrayPushPush>
4644
4720
  /**
4645
4721
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
4646
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-array-reduce.md
4722
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-array-reduce.md
4647
4723
  */
4648
4724
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>
4649
4725
  /**
4650
4726
  * Disallow member access from await expression.
4651
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-await-expression-member.md
4727
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-await-expression-member.md
4652
4728
  */
4653
4729
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>
4730
+ /**
4731
+ * Disallow using `await` in `Promise` method parameters.
4732
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-await-in-promise-methods.md
4733
+ */
4734
+ 'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>
4654
4735
  /**
4655
4736
  * Do not use leading/trailing space between `console.log` parameters.
4656
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-console-spaces.md
4737
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-console-spaces.md
4657
4738
  */
4658
4739
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>
4659
4740
  /**
4660
4741
  * Do not use `document.cookie` directly.
4661
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-document-cookie.md
4742
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-document-cookie.md
4662
4743
  */
4663
4744
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>
4664
4745
  /**
4665
4746
  * Disallow empty files.
4666
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-empty-file.md
4747
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-empty-file.md
4667
4748
  */
4668
4749
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>
4669
4750
  /**
4670
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#no-fn-reference-in-iterator
4751
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#no-fn-reference-in-iterator
4671
4752
  * @deprecated
4672
4753
  */
4673
4754
  'unicorn/no-fn-reference-in-iterator'?: Linter.RuleEntry<[]>
4674
4755
  /**
4675
4756
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
4676
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-for-loop.md
4757
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-for-loop.md
4677
4758
  */
4678
4759
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>
4679
4760
  /**
4680
4761
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
4681
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-hex-escape.md
4762
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-hex-escape.md
4682
4763
  */
4683
4764
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>
4684
4765
  /**
4685
4766
  * Require `Array.isArray()` instead of `instanceof Array`.
4686
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-instanceof-array.md
4767
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-instanceof-array.md
4687
4768
  */
4688
4769
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>
4770
+ /**
4771
+ * Disallow invalid options in `fetch()` and `new Request()`.
4772
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-invalid-fetch-options.md
4773
+ */
4774
+ 'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>
4689
4775
  /**
4690
4776
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
4691
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-invalid-remove-event-listener.md
4777
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-invalid-remove-event-listener.md
4692
4778
  */
4693
4779
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>
4694
4780
  /**
4695
4781
  * Disallow identifiers starting with `new` or `class`.
4696
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-keyword-prefix.md
4782
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-keyword-prefix.md
4697
4783
  */
4698
4784
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>
4699
4785
  /**
4700
4786
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
4701
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-lonely-if.md
4787
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-lonely-if.md
4702
4788
  */
4703
4789
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>
4790
+ /**
4791
+ * Disallow a magic number as the `depth` argument in `Array#flat(…).`
4792
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-magic-array-flat-depth.md
4793
+ */
4794
+ 'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>
4704
4795
  /**
4705
4796
  * Disallow negated conditions.
4706
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-negated-condition.md
4797
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-negated-condition.md
4707
4798
  */
4708
4799
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>
4709
4800
  /**
4710
4801
  * Disallow nested ternary expressions.
4711
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-nested-ternary.md
4802
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-nested-ternary.md
4712
4803
  */
4713
4804
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>
4714
4805
  /**
4715
4806
  * Disallow `new Array()`.
4716
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-new-array.md
4807
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-new-array.md
4717
4808
  */
4718
4809
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>
4719
4810
  /**
4720
4811
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
4721
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-new-buffer.md
4812
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-new-buffer.md
4722
4813
  */
4723
4814
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>
4724
4815
  /**
4725
4816
  * Disallow the use of the `null` literal.
4726
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-null.md
4817
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-null.md
4727
4818
  */
4728
4819
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>
4729
4820
  /**
4730
4821
  * Disallow the use of objects as default parameters.
4731
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-object-as-default-parameter.md
4822
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-object-as-default-parameter.md
4732
4823
  */
4733
4824
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>
4734
4825
  /**
4735
4826
  * Disallow `process.exit()`.
4736
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-process-exit.md
4827
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-process-exit.md
4737
4828
  */
4738
4829
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>
4739
4830
  /**
4740
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#no-reduce
4831
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#no-reduce
4741
4832
  * @deprecated
4742
4833
  */
4743
4834
  'unicorn/no-reduce'?: Linter.RuleEntry<[]>
4835
+ /**
4836
+ * Disallow passing single-element arrays to `Promise` methods.
4837
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-single-promise-in-promise-methods.md
4838
+ */
4839
+ 'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>
4744
4840
  /**
4745
4841
  * Disallow classes that only have static members.
4746
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-static-only-class.md
4842
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-static-only-class.md
4747
4843
  */
4748
4844
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>
4749
4845
  /**
4750
4846
  * Disallow `then` property.
4751
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-thenable.md
4847
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-thenable.md
4752
4848
  */
4753
4849
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>
4754
4850
  /**
4755
4851
  * Disallow assigning `this` to a variable.
4756
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-this-assignment.md
4852
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-this-assignment.md
4757
4853
  */
4758
4854
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>
4759
4855
  /**
4760
4856
  * Disallow comparing `undefined` using `typeof`.
4761
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-typeof-undefined.md
4857
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-typeof-undefined.md
4762
4858
  */
4763
4859
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>
4764
4860
  /**
4765
4861
  * Disallow awaiting non-promise values.
4766
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-unnecessary-await.md
4862
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-unnecessary-await.md
4767
4863
  */
4768
4864
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>
4769
4865
  /**
4770
4866
  * Enforce the use of built-in methods instead of unnecessary polyfills.
4771
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-unnecessary-polyfills.md
4867
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-unnecessary-polyfills.md
4772
4868
  */
4773
4869
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>
4774
4870
  /**
4775
4871
  * Disallow unreadable array destructuring.
4776
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-unreadable-array-destructuring.md
4872
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-unreadable-array-destructuring.md
4777
4873
  */
4778
4874
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>
4779
4875
  /**
4780
4876
  * Disallow unreadable IIFEs.
4781
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-unreadable-iife.md
4877
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-unreadable-iife.md
4782
4878
  */
4783
4879
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>
4784
4880
  /**
4785
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#no-unsafe-regex
4881
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#no-unsafe-regex
4786
4882
  * @deprecated
4787
4883
  */
4788
4884
  'unicorn/no-unsafe-regex'?: Linter.RuleEntry<[]>
4789
4885
  /**
4790
4886
  * Disallow unused object properties.
4791
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-unused-properties.md
4887
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-unused-properties.md
4792
4888
  */
4793
4889
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>
4794
4890
  /**
4795
4891
  * Disallow useless fallback when spreading in object literals.
4796
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-useless-fallback-in-spread.md
4892
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-useless-fallback-in-spread.md
4797
4893
  */
4798
4894
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>
4799
4895
  /**
4800
4896
  * Disallow useless array length check.
4801
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-useless-length-check.md
4897
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-useless-length-check.md
4802
4898
  */
4803
4899
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>
4804
4900
  /**
4805
4901
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
4806
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-useless-promise-resolve-reject.md
4902
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-useless-promise-resolve-reject.md
4807
4903
  */
4808
4904
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>
4809
4905
  /**
4810
4906
  * Disallow unnecessary spread.
4811
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-useless-spread.md
4907
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-useless-spread.md
4812
4908
  */
4813
4909
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>
4814
4910
  /**
4815
4911
  * Disallow useless case in switch statements.
4816
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-useless-switch-case.md
4912
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-useless-switch-case.md
4817
4913
  */
4818
4914
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>
4819
4915
  /**
4820
4916
  * Disallow useless `undefined`.
4821
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-useless-undefined.md
4917
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-useless-undefined.md
4822
4918
  */
4823
4919
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>
4824
4920
  /**
4825
4921
  * Disallow number literals with zero fractions or dangling dots.
4826
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/no-zero-fractions.md
4922
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/no-zero-fractions.md
4827
4923
  */
4828
4924
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>
4829
4925
  /**
4830
4926
  * Enforce proper case for numeric literals.
4831
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/number-literal-case.md
4927
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/number-literal-case.md
4832
4928
  */
4833
4929
  'unicorn/number-literal-case'?: Linter.RuleEntry<[]>
4834
4930
  /**
4835
4931
  * Enforce the style of numeric separators by correctly grouping digits.
4836
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/numeric-separators-style.md
4932
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/numeric-separators-style.md
4837
4933
  */
4838
4934
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>
4839
4935
  /**
4840
4936
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
4841
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-add-event-listener.md
4937
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-add-event-listener.md
4842
4938
  */
4843
4939
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>
4844
4940
  /**
4845
4941
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
4846
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-array-find.md
4942
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-array-find.md
4847
4943
  */
4848
4944
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>
4849
4945
  /**
4850
4946
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
4851
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-array-flat.md
4947
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-array-flat.md
4852
4948
  */
4853
4949
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>
4854
4950
  /**
4855
4951
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
4856
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-array-flat-map.md
4952
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-array-flat-map.md
4857
4953
  */
4858
4954
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>
4859
4955
  /**
4860
4956
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
4861
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-array-index-of.md
4957
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-array-index-of.md
4862
4958
  */
4863
4959
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>
4864
4960
  /**
4865
4961
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast}(…)`.
4866
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-array-some.md
4962
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-array-some.md
4867
4963
  */
4868
4964
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>
4869
4965
  /**
4870
4966
  * Prefer `.at()` method for index access and `String#charAt()`.
4871
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-at.md
4967
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-at.md
4872
4968
  */
4873
4969
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>
4874
4970
  /**
4875
4971
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
4876
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-blob-reading-methods.md
4972
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-blob-reading-methods.md
4877
4973
  */
4878
4974
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>
4879
4975
  /**
4880
4976
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
4881
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-code-point.md
4977
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-code-point.md
4882
4978
  */
4883
4979
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>
4884
4980
  /**
4885
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-dataset
4981
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-dataset
4886
4982
  * @deprecated
4887
4983
  */
4888
4984
  'unicorn/prefer-dataset'?: Linter.RuleEntry<[]>
4889
4985
  /**
4890
4986
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
4891
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-date-now.md
4987
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-date-now.md
4892
4988
  */
4893
4989
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>
4894
4990
  /**
4895
4991
  * Prefer default parameters over reassignment.
4896
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-default-parameters.md
4992
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-default-parameters.md
4897
4993
  */
4898
4994
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>
4899
4995
  /**
4900
4996
  * Prefer `Node#append()` over `Node#appendChild()`.
4901
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-dom-node-append.md
4997
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-dom-node-append.md
4902
4998
  */
4903
4999
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>
4904
5000
  /**
4905
5001
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
4906
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-dom-node-dataset.md
5002
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-dom-node-dataset.md
4907
5003
  */
4908
5004
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>
4909
5005
  /**
4910
5006
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
4911
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-dom-node-remove.md
5007
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-dom-node-remove.md
4912
5008
  */
4913
5009
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>
4914
5010
  /**
4915
5011
  * Prefer `.textContent` over `.innerText`.
4916
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-dom-node-text-content.md
5012
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-dom-node-text-content.md
4917
5013
  */
4918
5014
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>
4919
5015
  /**
4920
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-event-key
5016
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-event-key
4921
5017
  * @deprecated
4922
5018
  */
4923
5019
  'unicorn/prefer-event-key'?: Linter.RuleEntry<[]>
4924
5020
  /**
4925
5021
  * Prefer `EventTarget` over `EventEmitter`.
4926
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-event-target.md
5022
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-event-target.md
4927
5023
  */
4928
5024
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>
4929
5025
  /**
4930
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-exponentiation-operator
5026
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-exponentiation-operator
4931
5027
  * @deprecated
4932
5028
  */
4933
5029
  'unicorn/prefer-exponentiation-operator'?: Linter.RuleEntry<[]>
4934
5030
  /**
4935
5031
  * Prefer `export…from` when re-exporting.
4936
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-export-from.md
5032
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-export-from.md
4937
5033
  */
4938
5034
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>
4939
5035
  /**
4940
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-flat-map
5036
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-flat-map
4941
5037
  * @deprecated
4942
5038
  */
4943
5039
  'unicorn/prefer-flat-map'?: Linter.RuleEntry<[]>
4944
5040
  /**
4945
5041
  * Prefer `.includes()` over `.indexOf()` and `Array#some()` when checking for existence or non-existence.
4946
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-includes.md
5042
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-includes.md
4947
5043
  */
4948
5044
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>
4949
5045
  /**
4950
5046
  * Prefer reading a JSON file as a buffer.
4951
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-json-parse-buffer.md
5047
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-json-parse-buffer.md
4952
5048
  */
4953
5049
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>
4954
5050
  /**
4955
5051
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
4956
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-keyboard-event-key.md
5052
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-keyboard-event-key.md
4957
5053
  */
4958
5054
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>
4959
5055
  /**
4960
5056
  * Prefer using a logical operator over a ternary.
4961
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-logical-operator-over-ternary.md
5057
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-logical-operator-over-ternary.md
4962
5058
  */
4963
5059
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>
4964
5060
  /**
4965
5061
  * Enforce the use of `Math.trunc` instead of bitwise operators.
4966
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-math-trunc.md
5062
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-math-trunc.md
4967
5063
  */
4968
5064
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>
4969
5065
  /**
4970
5066
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
4971
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-modern-dom-apis.md
5067
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-modern-dom-apis.md
4972
5068
  */
4973
5069
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>
4974
5070
  /**
4975
5071
  * Prefer modern `Math` APIs over legacy patterns.
4976
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-modern-math-apis.md
5072
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-modern-math-apis.md
4977
5073
  */
4978
5074
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>
4979
5075
  /**
4980
5076
  * Prefer JavaScript modules (ESM) over CommonJS.
4981
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-module.md
5077
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-module.md
4982
5078
  */
4983
5079
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>
4984
5080
  /**
4985
5081
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
4986
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-native-coercion-functions.md
5082
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-native-coercion-functions.md
4987
5083
  */
4988
5084
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>
4989
5085
  /**
4990
5086
  * Prefer negative index over `.length - index` when possible.
4991
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-negative-index.md
5087
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-negative-index.md
4992
5088
  */
4993
5089
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>
4994
5090
  /**
4995
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-node-append
5091
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-node-append
4996
5092
  * @deprecated
4997
5093
  */
4998
5094
  'unicorn/prefer-node-append'?: Linter.RuleEntry<[]>
4999
5095
  /**
5000
5096
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
5001
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-node-protocol.md
5097
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-node-protocol.md
5002
5098
  */
5003
5099
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>
5004
5100
  /**
5005
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-node-remove
5101
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-node-remove
5006
5102
  * @deprecated
5007
5103
  */
5008
5104
  'unicorn/prefer-node-remove'?: Linter.RuleEntry<[]>
5009
5105
  /**
5010
5106
  * Prefer `Number` static properties over global ones.
5011
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-number-properties.md
5107
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-number-properties.md
5012
5108
  */
5013
5109
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>
5014
5110
  /**
5015
5111
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
5016
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-object-from-entries.md
5112
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-object-from-entries.md
5017
5113
  */
5018
5114
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>
5019
5115
  /**
5020
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-object-has-own
5116
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-object-has-own
5021
5117
  * @deprecated
5022
5118
  */
5023
5119
  'unicorn/prefer-object-has-own'?: Linter.RuleEntry<[]>
5024
5120
  /**
5025
5121
  * Prefer omitting the `catch` binding parameter.
5026
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-optional-catch-binding.md
5122
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-optional-catch-binding.md
5027
5123
  */
5028
5124
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>
5029
5125
  /**
5030
5126
  * Prefer borrowing methods from the prototype instead of the instance.
5031
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-prototype-methods.md
5127
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-prototype-methods.md
5032
5128
  */
5033
5129
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>
5034
5130
  /**
5035
5131
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()`.
5036
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-query-selector.md
5132
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-query-selector.md
5037
5133
  */
5038
5134
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>
5039
5135
  /**
5040
5136
  * Prefer `Reflect.apply()` over `Function#apply()`.
5041
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-reflect-apply.md
5137
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-reflect-apply.md
5042
5138
  */
5043
5139
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>
5044
5140
  /**
5045
5141
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
5046
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-regexp-test.md
5142
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-regexp-test.md
5047
5143
  */
5048
5144
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>
5049
5145
  /**
5050
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-replace-all
5146
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-replace-all
5051
5147
  * @deprecated
5052
5148
  */
5053
5149
  'unicorn/prefer-replace-all'?: Linter.RuleEntry<[]>
5054
5150
  /**
5055
5151
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
5056
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-set-has.md
5152
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-set-has.md
5057
5153
  */
5058
5154
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>
5059
5155
  /**
5060
5156
  * Prefer using `Set#size` instead of `Array#length`.
5061
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-set-size.md
5157
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-set-size.md
5062
5158
  */
5063
5159
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>
5064
5160
  /**
5065
5161
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
5066
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-spread.md
5162
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-spread.md
5067
5163
  */
5068
5164
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>
5069
5165
  /**
5070
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-starts-ends-with
5166
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-starts-ends-with
5071
5167
  * @deprecated
5072
5168
  */
5073
5169
  'unicorn/prefer-starts-ends-with'?: Linter.RuleEntry<[]>
5170
+ /**
5171
+ * Prefer using the `String.raw` tag to avoid escaping `\`.
5172
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-string-raw.md
5173
+ */
5174
+ 'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>
5074
5175
  /**
5075
5176
  * Prefer `String#replaceAll()` over regex searches with the global flag.
5076
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-string-replace-all.md
5177
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-string-replace-all.md
5077
5178
  */
5078
5179
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>
5079
5180
  /**
5080
5181
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
5081
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-string-slice.md
5182
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-string-slice.md
5082
5183
  */
5083
5184
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>
5084
5185
  /**
5085
5186
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
5086
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-string-starts-ends-with.md
5187
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-string-starts-ends-with.md
5087
5188
  */
5088
5189
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>
5089
5190
  /**
5090
5191
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
5091
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-string-trim-start-end.md
5192
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-string-trim-start-end.md
5092
5193
  */
5093
5194
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>
5195
+ /**
5196
+ * Prefer using `structuredClone` to create a deep clone.
5197
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-structured-clone.md
5198
+ */
5199
+ 'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>
5094
5200
  /**
5095
5201
  * Prefer `switch` over multiple `else-if`.
5096
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-switch.md
5202
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-switch.md
5097
5203
  */
5098
5204
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>
5099
5205
  /**
5100
5206
  * Prefer ternary expressions over simple `if-else` statements.
5101
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-ternary.md
5207
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-ternary.md
5102
5208
  */
5103
5209
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>
5104
5210
  /**
5105
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-text-content
5211
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-text-content
5106
5212
  * @deprecated
5107
5213
  */
5108
5214
  'unicorn/prefer-text-content'?: Linter.RuleEntry<[]>
5109
5215
  /**
5110
5216
  * Prefer top-level await over top-level promises and async function calls.
5111
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-top-level-await.md
5217
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-top-level-await.md
5112
5218
  */
5113
5219
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>
5114
5220
  /**
5115
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#prefer-trim-start-end
5221
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#prefer-trim-start-end
5116
5222
  * @deprecated
5117
5223
  */
5118
5224
  'unicorn/prefer-trim-start-end'?: Linter.RuleEntry<[]>
5119
5225
  /**
5120
5226
  * Enforce throwing `TypeError` in type checking conditions.
5121
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prefer-type-error.md
5227
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prefer-type-error.md
5122
5228
  */
5123
5229
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>
5124
5230
  /**
5125
5231
  * Prevent abbreviations.
5126
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/prevent-abbreviations.md
5232
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/prevent-abbreviations.md
5127
5233
  */
5128
5234
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>
5129
5235
  /**
5130
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/deprecated-rules.md#regex-shorthand
5236
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/deprecated-rules.md#regex-shorthand
5131
5237
  * @deprecated
5132
5238
  */
5133
5239
  'unicorn/regex-shorthand'?: Linter.RuleEntry<[]>
5134
5240
  /**
5135
5241
  * Enforce consistent relative URL style.
5136
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/relative-url-style.md
5242
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/relative-url-style.md
5137
5243
  */
5138
5244
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>
5139
5245
  /**
5140
5246
  * Enforce using the separator argument with `Array#join()`.
5141
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/require-array-join-separator.md
5247
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/require-array-join-separator.md
5142
5248
  */
5143
5249
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>
5144
5250
  /**
5145
5251
  * Enforce using the digits argument with `Number#toFixed()`.
5146
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/require-number-to-fixed-digits-argument.md
5252
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/require-number-to-fixed-digits-argument.md
5147
5253
  */
5148
5254
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>
5149
5255
  /**
5150
5256
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
5151
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/require-post-message-target-origin.md
5257
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/require-post-message-target-origin.md
5152
5258
  */
5153
5259
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>
5154
5260
  /**
5155
5261
  * Enforce better string content.
5156
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/string-content.md
5262
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/string-content.md
5157
5263
  */
5158
5264
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>
5159
5265
  /**
5160
5266
  * Enforce consistent brace style for `case` clauses.
5161
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/switch-case-braces.md
5267
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/switch-case-braces.md
5162
5268
  */
5163
5269
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>
5164
5270
  /**
5165
5271
  * Fix whitespace-insensitive template indentation.
5166
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/template-indent.md
5272
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/template-indent.md
5167
5273
  */
5168
5274
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>
5169
5275
  /**
5170
5276
  * Enforce consistent case for text encoding identifiers.
5171
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/text-encoding-identifier-case.md
5277
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/text-encoding-identifier-case.md
5172
5278
  */
5173
5279
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>
5174
5280
  /**
5175
- * Require `new` when throwing an error.
5176
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v51.0.1/docs/rules/throw-new-error.md
5281
+ * Require `new` when creating an error.
5282
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v53.0.0/docs/rules/throw-new-error.md
5177
5283
  */
5178
5284
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>
5179
5285
  /**
@@ -5221,12 +5327,6 @@ interface RuleOptions {
5221
5327
  * @see https://eslint.org/docs/latest/rules/use-isnan
5222
5328
  */
5223
5329
  'use-isnan'?: Linter.RuleEntry<UseIsnan>
5224
- /**
5225
- * Enforce valid JSDoc comments
5226
- * @see https://eslint.org/docs/latest/rules/valid-jsdoc
5227
- * @deprecated
5228
- */
5229
- 'valid-jsdoc'?: Linter.RuleEntry<ValidJsdoc>
5230
5330
  /**
5231
5331
  * Enforce comparing `typeof` expressions against valid strings
5232
5332
  * @see https://eslint.org/docs/latest/rules/valid-typeof
@@ -5237,121 +5337,6 @@ interface RuleOptions {
5237
5337
  * @see https://eslint.org/docs/latest/rules/vars-on-top
5238
5338
  */
5239
5339
  'vars-on-top'?: Linter.RuleEntry<[]>
5240
- /**
5241
- * Cognitive Complexity of functions should not be too high
5242
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/cognitive-complexity
5243
- */
5244
- 'vinicunca/cognitive-complexity'?: Linter.RuleEntry<VinicuncaCognitiveComplexity>
5245
- /**
5246
- * Having line breaks styles to object, array and named imports
5247
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/consistent-list-newline
5248
- */
5249
- 'vinicunca/consistent-list-newline'?: Linter.RuleEntry<VinicuncaConsistentListNewline>
5250
- /**
5251
- * Newline after if
5252
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/if-newline
5253
- */
5254
- 'vinicunca/if-newline'?: Linter.RuleEntry<[]>
5255
- /**
5256
- * Fix duplication in imports
5257
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/import-dedupe
5258
- */
5259
- 'vinicunca/import-dedupe'?: Linter.RuleEntry<[]>
5260
- /**
5261
- * All branches in a conditional structure should not have exactly the same implementation
5262
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-all-duplicated-branches
5263
- */
5264
- 'vinicunca/no-all-duplicated-branches'?: Linter.RuleEntry<[]>
5265
- /**
5266
- * Collapsible "if" statements should be merged
5267
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-collapsible-if
5268
- */
5269
- 'vinicunca/no-collapsible-if'?: Linter.RuleEntry<VinicuncaNoCollapsibleIf>
5270
- /**
5271
- * String literals should not be duplicated
5272
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-duplicate-string
5273
- */
5274
- 'vinicunca/no-duplicate-string'?: Linter.RuleEntry<VinicuncaNoDuplicateString>
5275
- /**
5276
- * Two branches in a conditional structure should not have exactly the same implementation
5277
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-duplicated-branches
5278
- */
5279
- 'vinicunca/no-duplicated-branches'?: Linter.RuleEntry<VinicuncaNoDuplicatedBranches>
5280
- /**
5281
- * Empty collections should not be accessed or iterated
5282
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-empty-collection
5283
- */
5284
- 'vinicunca/no-empty-collection'?: Linter.RuleEntry<[]>
5285
- /**
5286
- * Related "if-else-if" and "switch-case" statements should not have the same condition
5287
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-identical-conditions
5288
- */
5289
- 'vinicunca/no-identical-conditions'?: Linter.RuleEntry<VinicuncaNoIdenticalConditions>
5290
- /**
5291
- * Identical expressions should not be used on both sides of a binary operator
5292
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-identical-expressions
5293
- */
5294
- 'vinicunca/no-identical-expressions'?: Linter.RuleEntry<VinicuncaNoIdenticalExpressions>
5295
- /**
5296
- * Functions should not have identical implementations
5297
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-identical-functions
5298
- */
5299
- 'vinicunca/no-identical-functions'?: Linter.RuleEntry<VinicuncaNoIdenticalFunctions>
5300
- /**
5301
- * Return values from functions without side effects should not be ignored
5302
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-ignored-return
5303
- */
5304
- 'vinicunca/no-ignored-return'?: Linter.RuleEntry<[]>
5305
- /**
5306
- * Prevent importing modules in `node_modules` folder by relative or absolute path
5307
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-import-node-modules-by-path
5308
- */
5309
- 'vinicunca/no-import-node-modules-by-path'?: Linter.RuleEntry<[]>
5310
- /**
5311
- * Template literals should not be nested
5312
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-nested-template-literals
5313
- */
5314
- 'vinicunca/no-nested-template-literals'?: Linter.RuleEntry<[]>
5315
- /**
5316
- * Boolean literals should not be redundant
5317
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-redundant-boolean
5318
- */
5319
- 'vinicunca/no-redundant-boolean'?: Linter.RuleEntry<[]>
5320
- /**
5321
- * Jump statements should not be redundant
5322
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-redundant-jump
5323
- */
5324
- 'vinicunca/no-redundant-jump'?: Linter.RuleEntry<[]>
5325
- /**
5326
- * Do not use `exports =`
5327
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-ts-export-equal
5328
- */
5329
- 'vinicunca/no-ts-export-equal'?: Linter.RuleEntry<[]>
5330
- /**
5331
- * Collection and array contents should be used
5332
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-unused-collection
5333
- */
5334
- 'vinicunca/no-unused-collection'?: Linter.RuleEntry<[]>
5335
- /**
5336
- * The output of functions that don't return anything should not be used
5337
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/no-use-of-empty-return-value
5338
- */
5339
- 'vinicunca/no-use-of-empty-return-value'?: Linter.RuleEntry<[]>
5340
- /**
5341
- * Local variables should not be declared and then immediately returned or thrown
5342
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/prefer-immediate-return
5343
- */
5344
- 'vinicunca/prefer-immediate-return'?: Linter.RuleEntry<[]>
5345
- /**
5346
- * Return of boolean expressions should not be wrapped into an "if-then-else" statement
5347
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/prefer-single-boolean-return
5348
- */
5349
- 'vinicunca/prefer-single-boolean-return'?: Linter.RuleEntry<[]>
5350
- /**
5351
- * Enforce top-level functions to be declared with function keyword
5352
- * @see https://eslint.vinicunca.dev/plugin-vinicunca/top-level-function
5353
- */
5354
- 'vinicunca/top-level-function'?: Linter.RuleEntry<[]>
5355
5340
  /**
5356
5341
  * Enforce linebreaks after opening and before closing array brackets in `<template>`
5357
5342
  * @see https://eslint.vuejs.org/rules/array-bracket-newline.html
@@ -6735,6 +6720,31 @@ type AccessorPairs = []|[{
6735
6720
  setWithoutGet?: boolean
6736
6721
  enforceForClassMembers?: boolean
6737
6722
  }]
6723
+ // ----- antfu/consistent-list-newline -----
6724
+ type AntfuConsistentListNewline = []|[{
6725
+ ArrayExpression?: boolean
6726
+ ArrowFunctionExpression?: boolean
6727
+ CallExpression?: boolean
6728
+ ExportNamedDeclaration?: boolean
6729
+ FunctionDeclaration?: boolean
6730
+ FunctionExpression?: boolean
6731
+ ImportDeclaration?: boolean
6732
+ NewExpression?: boolean
6733
+ ObjectExpression?: boolean
6734
+ TSInterfaceDeclaration?: boolean
6735
+ TSTupleType?: boolean
6736
+ TSTypeLiteral?: boolean
6737
+ TSTypeParameterDeclaration?: boolean
6738
+ TSTypeParameterInstantiation?: boolean
6739
+ ObjectPattern?: boolean
6740
+ ArrayPattern?: boolean
6741
+ JSXOpeningElement?: boolean
6742
+ }]
6743
+ // ----- antfu/indent-unindent -----
6744
+ type AntfuIndentUnindent = []|[{
6745
+ indent?: number
6746
+ tags?: string[]
6747
+ }]
6738
6748
  // ----- array-bracket-newline -----
6739
6749
  type ArrayBracketNewline = []|[(("always" | "never" | "consistent") | {
6740
6750
  multiline?: boolean
@@ -6789,7 +6799,7 @@ type Camelcase = []|[{
6789
6799
  ignoreGlobals?: boolean
6790
6800
  properties?: ("always" | "never")
6791
6801
 
6792
- allow?: []|[string]
6802
+ allow?: string[]
6793
6803
  }]
6794
6804
  // ----- capitalized-comments -----
6795
6805
  type CapitalizedComments = []|[("always" | "never")]|[("always" | "never"), ({
@@ -8493,12 +8503,8 @@ type NoConsole = []|[{
8493
8503
  }]
8494
8504
  // ----- no-constant-condition -----
8495
8505
  type NoConstantCondition = []|[{
8496
- checkLoops?: boolean
8506
+ checkLoops?: ("all" | "allExceptWhileTrue" | "none" | true | false)
8497
8507
  }]
8498
- // ----- no-constructor-return -----
8499
- interface NoConstructorReturn {
8500
- [k: string]: unknown | undefined
8501
- }
8502
8508
  // ----- no-duplicate-imports -----
8503
8509
  type NoDuplicateImports = []|[{
8504
8510
  includeExports?: boolean
@@ -8548,6 +8554,7 @@ type NoExtraParens = ([]|["functions"] | []|["all"]|["all", {
8548
8554
  type NoFallthrough = []|[{
8549
8555
  commentPattern?: string
8550
8556
  allowEmptyCase?: boolean
8557
+ reportUnusedFallthroughComment?: boolean
8551
8558
  }]
8552
8559
  // ----- no-global-assign -----
8553
8560
  type NoGlobalAssign = []|[{
@@ -8559,7 +8566,7 @@ type NoImplicitCoercion = []|[{
8559
8566
  number?: boolean
8560
8567
  string?: boolean
8561
8568
  disallowTemplateShorthand?: boolean
8562
- allow?: ("~" | "!!" | "+" | "*")[]
8569
+ allow?: ("~" | "!!" | "+" | "- -" | "-" | "*")[]
8563
8570
  }]
8564
8571
  // ----- no-implicit-globals -----
8565
8572
  type NoImplicitGlobals = []|[{
@@ -8570,7 +8577,9 @@ type NoInlineComments = []|[{
8570
8577
  ignorePattern?: string
8571
8578
  }]
8572
8579
  // ----- no-inner-declarations -----
8573
- type NoInnerDeclarations = []|[("functions" | "both")]
8580
+ type NoInnerDeclarations = []|[("functions" | "both")]|[("functions" | "both"), {
8581
+ blockScopedFunctions?: ("allow" | "disallow")
8582
+ }]
8574
8583
  // ----- no-invalid-regexp -----
8575
8584
  type NoInvalidRegexp = []|[{
8576
8585
  allowConstructorFlags?: string[]
@@ -8677,18 +8686,23 @@ type NoRestrictedImports = ((string | {
8677
8686
  name: string
8678
8687
  message?: string
8679
8688
  importNames?: string[]
8689
+ allowImportNames?: string[]
8680
8690
  })[] | []|[{
8681
8691
  paths?: (string | {
8682
8692
  name: string
8683
8693
  message?: string
8684
8694
  importNames?: string[]
8695
+ allowImportNames?: string[]
8685
8696
  })[]
8686
8697
  patterns?: (string[] | {
8687
8698
 
8688
8699
  importNames?: [string, ...(string)[]]
8689
8700
 
8701
+ allowImportNames?: [string, ...(string)[]]
8702
+
8690
8703
  group: [string, ...(string)[]]
8691
8704
  importNamePattern?: string
8705
+ allowImportNamePattern?: string
8692
8706
  message?: string
8693
8707
  caseSensitive?: boolean
8694
8708
  }[])
@@ -8798,6 +8812,8 @@ type NoUnusedVars = []|[(("all" | "local") | {
8798
8812
  caughtErrors?: ("all" | "none")
8799
8813
  caughtErrorsIgnorePattern?: string
8800
8814
  destructuredArrayIgnorePattern?: string
8815
+ ignoreClassWithStaticInitBlock?: boolean
8816
+ reportUsedIgnorePattern?: boolean
8801
8817
  })]
8802
8818
  // ----- no-use-before-define -----
8803
8819
  type NoUseBeforeDefine = []|[("nofunc" | {
@@ -8839,6 +8855,27 @@ type NodeFileExtensionInImport = []|[("always" | "never")]|[("always" | "never")
8839
8855
  }]
8840
8856
  // ----- node/handle-callback-err -----
8841
8857
  type NodeHandleCallbackErr = []|[string]
8858
+ // ----- node/hashbang -----
8859
+ type NodeHashbang = []|[{
8860
+ convertPath?: ({
8861
+
8862
+ [k: string]: [string, string]
8863
+ } | [{
8864
+
8865
+ include: [string, ...(string)[]]
8866
+ exclude?: string[]
8867
+
8868
+ replace: [string, string]
8869
+ }, ...({
8870
+
8871
+ include: [string, ...(string)[]]
8872
+ exclude?: string[]
8873
+
8874
+ replace: [string, string]
8875
+ })[]])
8876
+ ignoreUnpublished?: boolean
8877
+ additionalExecutables?: string[]
8878
+ }]
8842
8879
  // ----- node/no-deprecated-api -----
8843
8880
  type NodeNoDeprecatedApi = []|[{
8844
8881
  version?: string
@@ -8899,8 +8936,9 @@ type NodeNoHideCoreModules = []|[{
8899
8936
  type NodeNoMissingImport = []|[{
8900
8937
  allowModules?: string[]
8901
8938
  resolvePaths?: string[]
8902
- typescriptExtensionMap?: (unknown[][] | ("react" | "react-jsx" | "react-jsxdev" | "react-native" | "preserve"))
8939
+ tryExtensions?: string[]
8903
8940
  tsconfigPath?: string
8941
+ typescriptExtensionMap?: (unknown[][] | ("react" | "react-jsx" | "react-jsxdev" | "react-native" | "preserve"))
8904
8942
  }]
8905
8943
  // ----- node/no-missing-require -----
8906
8944
  type NodeNoMissingRequire = []|[{
@@ -8993,25 +9031,21 @@ type NodeNoUnpublishedRequire = []|[{
8993
9031
  resolvePaths?: string[]
8994
9032
  tryExtensions?: string[]
8995
9033
  }]
8996
- // ----- node/no-unsupported-features -----
8997
- type NodeNoUnsupportedFeatures = []|[((0.1 | 0.12 | 4 | 5 | 6 | 6.5 | 7 | 7.6 | 8 | 8.3 | 9 | 10) | string | {
8998
- version?: ((0.1 | 0.12 | 4 | 5 | 6 | 6.5 | 7 | 7.6 | 8 | 8.3 | 9 | 10) | string)
8999
- ignores?: ("syntax" | "defaultParameters" | "restParameters" | "spreadOperators" | "objectLiteralExtensions" | "objectPropertyShorthandOfGetSet" | "forOf" | "binaryNumberLiterals" | "octalNumberLiterals" | "templateStrings" | "regexpY" | "regexpU" | "destructuring" | "unicodeCodePointEscapes" | "new.target" | "const" | "let" | "blockScopedFunctions" | "arrowFunctions" | "generatorFunctions" | "classes" | "modules" | "exponentialOperators" | "asyncAwait" | "trailingCommasInFunctions" | "templateLiteralRevision" | "regexpS" | "regexpNamedCaptureGroups" | "regexpLookbehind" | "regexpUnicodeProperties" | "restProperties" | "spreadProperties" | "asyncGenerators" | "forAwaitOf" | "runtime" | "globalObjects" | "typedArrays" | "Int8Array" | "Uint8Array" | "Uint8ClampedArray" | "Int16Array" | "Uint16Array" | "Int32Array" | "Uint32Array" | "Float32Array" | "Float64Array" | "DataView" | "Map" | "Set" | "WeakMap" | "WeakSet" | "Proxy" | "Reflect" | "Promise" | "Symbol" | "SharedArrayBuffer" | "Atomics" | "staticMethods" | "Object.*" | "Object.assign" | "Object.is" | "Object.getOwnPropertySymbols" | "Object.setPrototypeOf" | "Object.values" | "Object.entries" | "Object.getOwnPropertyDescriptors" | "String.*" | "String.raw" | "String.fromCodePoint" | "Array.*" | "Array.from" | "Array.of" | "Number.*" | "Number.isFinite" | "Number.isInteger" | "Number.isSafeInteger" | "Number.isNaN" | "Number.EPSILON" | "Number.MIN_SAFE_INTEGER" | "Number.MAX_SAFE_INTEGER" | "Math.*" | "Math.clz32" | "Math.imul" | "Math.sign" | "Math.log10" | "Math.log2" | "Math.log1p" | "Math.expm1" | "Math.cosh" | "Math.sinh" | "Math.tanh" | "Math.acosh" | "Math.asinh" | "Math.atanh" | "Math.trunc" | "Math.fround" | "Math.cbrt" | "Math.hypot" | "Symbol.*" | "Symbol.hasInstance" | "Symbol.isConcatSpreadablec" | "Symbol.iterator" | "Symbol.species" | "Symbol.replace" | "Symbol.search" | "Symbol.split" | "Symbol.match" | "Symbol.toPrimitive" | "Symbol.toStringTag" | "Symbol.unscopables" | "Atomics.*" | "Atomics.add" | "Atomics.and" | "Atomics.compareExchange" | "Atomics.exchange" | "Atomics.wait" | "Atomics.wake" | "Atomics.isLockFree" | "Atomics.load" | "Atomics.or" | "Atomics.store" | "Atomics.sub" | "Atomics.xor" | "extends" | "extendsArray" | "extendsRegExp" | "extendsFunction" | "extendsPromise" | "extendsBoolean" | "extendsNumber" | "extendsString" | "extendsMap" | "extendsSet" | "extendsNull")[]
9000
- })]
9001
9034
  // ----- node/no-unsupported-features/es-builtins -----
9002
9035
  type NodeNoUnsupportedFeaturesEsBuiltins = []|[{
9003
9036
  version?: string
9004
- ignores?: ("AggregateError" | "Array.from" | "Array.of" | "BigInt" | "FinalizationRegistry" | "Map" | "Math.acosh" | "Math.asinh" | "Math.atanh" | "Math.cbrt" | "Math.clz32" | "Math.cosh" | "Math.expm1" | "Math.fround" | "Math.hypot" | "Math.imul" | "Math.log10" | "Math.log1p" | "Math.log2" | "Math.sign" | "Math.sinh" | "Math.tanh" | "Math.trunc" | "Number.EPSILON" | "Number.isFinite" | "Number.isInteger" | "Number.isNaN" | "Number.isSafeInteger" | "Number.MAX_SAFE_INTEGER" | "Number.MIN_SAFE_INTEGER" | "Number.parseFloat" | "Number.parseInt" | "Object.assign" | "Object.fromEntries" | "Object.getOwnPropertySymbols" | "Object.is" | "Object.setPrototypeOf" | "Object.values" | "Object.entries" | "Object.getOwnPropertyDescriptors" | "Promise" | "Promise.allSettled" | "Promise.any" | "Proxy" | "Reflect" | "Set" | "String.fromCodePoint" | "String.raw" | "Symbol" | "Int8Array" | "Uint8Array" | "Uint8ClampedArray" | "Int16Array" | "Uint16Array" | "Int32Array" | "Uint32Array" | "BigInt64Array" | "BigUint64Array" | "Float32Array" | "Float64Array" | "DataView" | "WeakMap" | "WeakRef" | "WeakSet" | "Atomics" | "SharedArrayBuffer" | "globalThis")[]
9037
+ ignores?: ("AggregateError" | "Array" | "Array.from" | "Array.isArray" | "Array.length" | "Array.of" | "Array.toLocaleString" | "ArrayBuffer" | "ArrayBuffer.isView" | "Atomics" | "Atomics.add" | "Atomics.and" | "Atomics.compareExchange" | "Atomics.exchange" | "Atomics.isLockFree" | "Atomics.load" | "Atomics.notify" | "Atomics.or" | "Atomics.store" | "Atomics.sub" | "Atomics.wait" | "Atomics.waitAsync" | "Atomics.xor" | "BigInt" | "BigInt.asIntN" | "BigInt.asUintN" | "BigInt64Array" | "BigInt64Array.BYTES_PER_ELEMENT" | "BigInt64Array.from" | "BigInt64Array.name" | "BigInt64Array.of" | "BigUint64Array" | "BigUint64Array.BYTES_PER_ELEMENT" | "BigUint64Array.from" | "BigUint64Array.name" | "BigUint64Array.of" | "Boolean" | "DataView" | "Date" | "Date.UTC" | "Date.now" | "Date.parse" | "Date.toLocaleDateString" | "Date.toLocaleString" | "Date.toLocaleTimeString" | "Error" | "Error.cause" | "EvalError" | "FinalizationRegistry" | "Float32Array" | "Float32Array.BYTES_PER_ELEMENT" | "Float32Array.from" | "Float32Array.name" | "Float32Array.of" | "Float64Array" | "Float64Array.BYTES_PER_ELEMENT" | "Float64Array.from" | "Float64Array.name" | "Float64Array.of" | "Function" | "Function.length" | "Function.name" | "Infinity" | "Int16Array" | "Int16Array.BYTES_PER_ELEMENT" | "Int16Array.from" | "Int16Array.name" | "Int16Array.of" | "Int32Array" | "Int32Array.BYTES_PER_ELEMENT" | "Int32Array.from" | "Int32Array.name" | "Int32Array.of" | "Int8Array" | "Int8Array.BYTES_PER_ELEMENT" | "Int8Array.from" | "Int8Array.name" | "Int8Array.of" | "Intl" | "Intl.Collator" | "Intl.DateTimeFormat" | "Intl.DisplayNames" | "Intl.ListFormat" | "Intl.Locale" | "Intl.NumberFormat" | "Intl.PluralRules" | "Intl.RelativeTimeFormat" | "Intl.Segmenter" | "Intl.Segments" | "Intl.getCanonicalLocales" | "Intl.supportedValuesOf" | "JSON" | "JSON.parse" | "JSON.stringify" | "Map" | "Map.groupBy" | "Math" | "Math.E" | "Math.LN10" | "Math.LN2" | "Math.LOG10E" | "Math.LOG2E" | "Math.PI" | "Math.SQRT1_2" | "Math.SQRT2" | "Math.abs" | "Math.acos" | "Math.acosh" | "Math.asin" | "Math.asinh" | "Math.atan" | "Math.atan2" | "Math.atanh" | "Math.cbrt" | "Math.ceil" | "Math.clz32" | "Math.cos" | "Math.cosh" | "Math.exp" | "Math.expm1" | "Math.floor" | "Math.fround" | "Math.hypot" | "Math.imul" | "Math.log" | "Math.log10" | "Math.log1p" | "Math.log2" | "Math.max" | "Math.min" | "Math.pow" | "Math.random" | "Math.round" | "Math.sign" | "Math.sin" | "Math.sinh" | "Math.sqrt" | "Math.tan" | "Math.tanh" | "Math.trunc" | "NaN" | "Number.EPSILON" | "Number.MAX_SAFE_INTEGER" | "Number.MAX_VALUE" | "Number.MIN_SAFE_INTEGER" | "Number.MIN_VALUE" | "Number.NEGATIVE_INFINITY" | "Number.NaN" | "Number.POSITIVE_INFINITY" | "Number.isFinite" | "Number.isInteger" | "Number.isNaN" | "Number.isSafeInteger" | "Number.parseFloat" | "Number.parseInt" | "Number.toLocaleString" | "Object.assign" | "Object.create" | "Object.defineGetter" | "Object.defineProperties" | "Object.defineProperty" | "Object.defineSetter" | "Object.entries" | "Object.freeze" | "Object.fromEntries" | "Object.getOwnPropertyDescriptor" | "Object.getOwnPropertyDescriptors" | "Object.getOwnPropertyNames" | "Object.getOwnPropertySymbols" | "Object.getPrototypeOf" | "Object.groupBy" | "Object.hasOwn" | "Object.is" | "Object.isExtensible" | "Object.isFrozen" | "Object.isSealed" | "Object.keys" | "Object.lookupGetter" | "Object.lookupSetter" | "Object.preventExtensions" | "Object.proto" | "Object.seal" | "Object.setPrototypeOf" | "Object.values" | "Promise" | "Promise.all" | "Promise.allSettled" | "Promise.any" | "Promise.race" | "Promise.reject" | "Promise.resolve" | "Proxy" | "Proxy.revocable" | "RangeError" | "ReferenceError" | "Reflect" | "Reflect.apply" | "Reflect.construct" | "Reflect.defineProperty" | "Reflect.deleteProperty" | "Reflect.get" | "Reflect.getOwnPropertyDescriptor" | "Reflect.getPrototypeOf" | "Reflect.has" | "Reflect.isExtensible" | "Reflect.ownKeys" | "Reflect.preventExtensions" | "Reflect.set" | "Reflect.setPrototypeOf" | "RegExp" | "RegExp.dotAll" | "RegExp.hasIndices" | "RegExp.input" | "RegExp.lastIndex" | "RegExp.lastMatch" | "RegExp.lastParen" | "RegExp.leftContext" | "RegExp.n" | "RegExp.rightContext" | "Set" | "SharedArrayBuffer" | "String" | "String.fromCharCode" | "String.fromCodePoint" | "String.length" | "String.localeCompare" | "String.raw" | "String.toLocaleLowerCase" | "String.toLocaleUpperCase" | "Symbol" | "Symbol.asyncIterator" | "Symbol.for" | "Symbol.hasInstance" | "Symbol.isConcatSpreadable" | "Symbol.iterator" | "Symbol.keyFor" | "Symbol.match" | "Symbol.matchAll" | "Symbol.replace" | "Symbol.search" | "Symbol.species" | "Symbol.split" | "Symbol.toPrimitive" | "Symbol.toStringTag" | "Symbol.unscopables" | "SyntaxError" | "TypeError" | "URIError" | "Uint16Array" | "Uint16Array.BYTES_PER_ELEMENT" | "Uint16Array.from" | "Uint16Array.name" | "Uint16Array.of" | "Uint32Array" | "Uint32Array.BYTES_PER_ELEMENT" | "Uint32Array.from" | "Uint32Array.name" | "Uint32Array.of" | "Uint8Array" | "Uint8Array.BYTES_PER_ELEMENT" | "Uint8Array.from" | "Uint8Array.name" | "Uint8Array.of" | "Uint8ClampedArray" | "Uint8ClampedArray.BYTES_PER_ELEMENT" | "Uint8ClampedArray.from" | "Uint8ClampedArray.name" | "Uint8ClampedArray.of" | "WeakMap" | "WeakRef" | "WeakSet" | "decodeURI" | "decodeURIComponent" | "encodeURI" | "encodeURIComponent" | "escape" | "eval" | "globalThis" | "isFinite" | "isNaN" | "parseFloat" | "parseInt" | "unescape")[]
9005
9038
  }]
9006
9039
  // ----- node/no-unsupported-features/es-syntax -----
9007
9040
  type NodeNoUnsupportedFeaturesEsSyntax = []|[{
9008
9041
  version?: string
9009
- ignores?: ("arrowFunctions" | "binaryNumericLiterals" | "blockScopedFunctions" | "blockScopedVariables" | "classes" | "computedProperties" | "defaultParameters" | "destructuring" | "forOfLoops" | "generators" | "modules" | "new.target" | "objectSuperProperties" | "octalNumericLiterals" | "propertyShorthands" | "regexpU" | "regexpY" | "restParameters" | "spreadElements" | "templateLiterals" | "unicodeCodePointEscapes" | "exponentialOperators" | "asyncFunctions" | "trailingCommasInFunctions" | "asyncIteration" | "malformedTemplateLiterals" | "regexpLookbehind" | "regexpNamedCaptureGroups" | "regexpS" | "regexpUnicodeProperties" | "restSpreadProperties" | "jsonSuperset" | "optionalCatchBinding" | "bigint" | "dynamicImport" | "optionalChaining" | "nullishCoalescingOperators" | "logicalAssignmentOperators" | "numericSeparators")[]
9042
+ ignores?: ("no-accessor-properties" | "accessor-properties" | "accessorProperties" | "no-arbitrary-module-namespace-names" | "arbitrary-module-namespace-names" | "arbitraryModuleNamespaceNames" | "no-array-from" | "array-from" | "arrayFrom" | "no-array-isarray" | "array-isarray" | "arrayIsarray" | "no-array-of" | "array-of" | "arrayOf" | "no-array-prototype-copywithin" | "array-prototype-copywithin" | "arrayPrototypeCopywithin" | "no-array-prototype-entries" | "array-prototype-entries" | "arrayPrototypeEntries" | "no-array-prototype-every" | "array-prototype-every" | "arrayPrototypeEvery" | "no-array-prototype-fill" | "array-prototype-fill" | "arrayPrototypeFill" | "no-array-prototype-filter" | "array-prototype-filter" | "arrayPrototypeFilter" | "no-array-prototype-find" | "array-prototype-find" | "arrayPrototypeFind" | "no-array-prototype-findindex" | "array-prototype-findindex" | "arrayPrototypeFindindex" | "no-array-prototype-findlast-findlastindex" | "array-prototype-findlast-findlastindex" | "arrayPrototypeFindlastFindlastindex" | "no-array-prototype-flat" | "array-prototype-flat" | "arrayPrototypeFlat" | "no-array-prototype-foreach" | "array-prototype-foreach" | "arrayPrototypeForeach" | "no-array-prototype-includes" | "array-prototype-includes" | "arrayPrototypeIncludes" | "no-array-prototype-indexof" | "array-prototype-indexof" | "arrayPrototypeIndexof" | "no-array-prototype-keys" | "array-prototype-keys" | "arrayPrototypeKeys" | "no-array-prototype-lastindexof" | "array-prototype-lastindexof" | "arrayPrototypeLastindexof" | "no-array-prototype-map" | "array-prototype-map" | "arrayPrototypeMap" | "no-array-prototype-reduce" | "array-prototype-reduce" | "arrayPrototypeReduce" | "no-array-prototype-reduceright" | "array-prototype-reduceright" | "arrayPrototypeReduceright" | "no-array-prototype-some" | "array-prototype-some" | "arrayPrototypeSome" | "no-array-prototype-toreversed" | "array-prototype-toreversed" | "arrayPrototypeToreversed" | "no-array-prototype-tosorted" | "array-prototype-tosorted" | "arrayPrototypeTosorted" | "no-array-prototype-tospliced" | "array-prototype-tospliced" | "arrayPrototypeTospliced" | "no-array-prototype-values" | "array-prototype-values" | "arrayPrototypeValues" | "no-array-prototype-with" | "array-prototype-with" | "arrayPrototypeWith" | "no-array-string-prototype-at" | "array-string-prototype-at" | "arrayStringPrototypeAt" | "no-arrow-functions" | "arrow-functions" | "arrowFunctions" | "no-async-functions" | "async-functions" | "asyncFunctions" | "no-async-iteration" | "async-iteration" | "asyncIteration" | "no-atomics-waitasync" | "atomics-waitasync" | "atomicsWaitasync" | "no-atomics" | "atomics" | "no-bigint" | "bigint" | "no-binary-numeric-literals" | "binary-numeric-literals" | "binaryNumericLiterals" | "no-block-scoped-functions" | "block-scoped-functions" | "blockScopedFunctions" | "no-block-scoped-variables" | "block-scoped-variables" | "blockScopedVariables" | "no-class-fields" | "class-fields" | "classFields" | "no-class-static-block" | "class-static-block" | "classStaticBlock" | "no-classes" | "classes" | "no-computed-properties" | "computed-properties" | "computedProperties" | "no-date-now" | "date-now" | "dateNow" | "no-date-prototype-getyear-setyear" | "date-prototype-getyear-setyear" | "datePrototypeGetyearSetyear" | "no-date-prototype-togmtstring" | "date-prototype-togmtstring" | "datePrototypeTogmtstring" | "no-default-parameters" | "default-parameters" | "defaultParameters" | "no-destructuring" | "destructuring" | "no-dynamic-import" | "dynamic-import" | "dynamicImport" | "no-error-cause" | "error-cause" | "errorCause" | "no-escape-unescape" | "escape-unescape" | "escapeUnescape" | "no-exponential-operators" | "exponential-operators" | "exponentialOperators" | "no-export-ns-from" | "export-ns-from" | "exportNsFrom" | "no-for-of-loops" | "for-of-loops" | "forOfLoops" | "no-function-declarations-in-if-statement-clauses-without-block" | "function-declarations-in-if-statement-clauses-without-block" | "functionDeclarationsInIfStatementClausesWithoutBlock" | "no-function-prototype-bind" | "function-prototype-bind" | "functionPrototypeBind" | "no-generators" | "generators" | "no-global-this" | "global-this" | "globalThis" | "no-hashbang" | "hashbang" | "no-import-meta" | "import-meta" | "importMeta" | "no-initializers-in-for-in" | "initializers-in-for-in" | "initializersInForIn" | "no-intl-datetimeformat-prototype-formatrange" | "intl-datetimeformat-prototype-formatrange" | "intlDatetimeformatPrototypeFormatrange" | "no-intl-datetimeformat-prototype-formattoparts" | "intl-datetimeformat-prototype-formattoparts" | "intlDatetimeformatPrototypeFormattoparts" | "no-intl-displaynames" | "intl-displaynames" | "intlDisplaynames" | "no-intl-getcanonicallocales" | "intl-getcanonicallocales" | "intlGetcanonicallocales" | "no-intl-listformat" | "intl-listformat" | "intlListformat" | "no-intl-locale" | "intl-locale" | "intlLocale" | "no-intl-numberformat-prototype-formatrange" | "intl-numberformat-prototype-formatrange" | "intlNumberformatPrototypeFormatrange" | "no-intl-numberformat-prototype-formatrangetoparts" | "intl-numberformat-prototype-formatrangetoparts" | "intlNumberformatPrototypeFormatrangetoparts" | "no-intl-numberformat-prototype-formattoparts" | "intl-numberformat-prototype-formattoparts" | "intlNumberformatPrototypeFormattoparts" | "no-intl-pluralrules-prototype-selectrange" | "intl-pluralrules-prototype-selectrange" | "intlPluralrulesPrototypeSelectrange" | "no-intl-pluralrules" | "intl-pluralrules" | "intlPluralrules" | "no-intl-relativetimeformat" | "intl-relativetimeformat" | "intlRelativetimeformat" | "no-intl-segmenter" | "intl-segmenter" | "intlSegmenter" | "no-intl-supportedvaluesof" | "intl-supportedvaluesof" | "intlSupportedvaluesof" | "no-json-superset" | "json-superset" | "jsonSuperset" | "no-json" | "json" | "no-keyword-properties" | "keyword-properties" | "keywordProperties" | "no-labelled-function-declarations" | "labelled-function-declarations" | "labelledFunctionDeclarations" | "no-legacy-object-prototype-accessor-methods" | "legacy-object-prototype-accessor-methods" | "legacyObjectPrototypeAccessorMethods" | "no-logical-assignment-operators" | "logical-assignment-operators" | "logicalAssignmentOperators" | "no-malformed-template-literals" | "malformed-template-literals" | "malformedTemplateLiterals" | "no-map" | "map" | "no-math-acosh" | "math-acosh" | "mathAcosh" | "no-math-asinh" | "math-asinh" | "mathAsinh" | "no-math-atanh" | "math-atanh" | "mathAtanh" | "no-math-cbrt" | "math-cbrt" | "mathCbrt" | "no-math-clz32" | "math-clz32" | "mathClz32" | "no-math-cosh" | "math-cosh" | "mathCosh" | "no-math-expm1" | "math-expm1" | "mathExpm1" | "no-math-fround" | "math-fround" | "mathFround" | "no-math-hypot" | "math-hypot" | "mathHypot" | "no-math-imul" | "math-imul" | "mathImul" | "no-math-log10" | "math-log10" | "mathLog10" | "no-math-log1p" | "math-log1p" | "mathLog1p" | "no-math-log2" | "math-log2" | "mathLog2" | "no-math-sign" | "math-sign" | "mathSign" | "no-math-sinh" | "math-sinh" | "mathSinh" | "no-math-tanh" | "math-tanh" | "mathTanh" | "no-math-trunc" | "math-trunc" | "mathTrunc" | "no-modules" | "modules" | "no-new-target" | "new-target" | "newTarget" | "new.target" | "no-nullish-coalescing-operators" | "nullish-coalescing-operators" | "nullishCoalescingOperators" | "no-number-epsilon" | "number-epsilon" | "numberEpsilon" | "no-number-isfinite" | "number-isfinite" | "numberIsfinite" | "no-number-isinteger" | "number-isinteger" | "numberIsinteger" | "no-number-isnan" | "number-isnan" | "numberIsnan" | "no-number-issafeinteger" | "number-issafeinteger" | "numberIssafeinteger" | "no-number-maxsafeinteger" | "number-maxsafeinteger" | "numberMaxsafeinteger" | "no-number-minsafeinteger" | "number-minsafeinteger" | "numberMinsafeinteger" | "no-number-parsefloat" | "number-parsefloat" | "numberParsefloat" | "no-number-parseint" | "number-parseint" | "numberParseint" | "no-numeric-separators" | "numeric-separators" | "numericSeparators" | "no-object-assign" | "object-assign" | "objectAssign" | "no-object-create" | "object-create" | "objectCreate" | "no-object-defineproperties" | "object-defineproperties" | "objectDefineproperties" | "no-object-defineproperty" | "object-defineproperty" | "objectDefineproperty" | "no-object-entries" | "object-entries" | "objectEntries" | "no-object-freeze" | "object-freeze" | "objectFreeze" | "no-object-fromentries" | "object-fromentries" | "objectFromentries" | "no-object-getownpropertydescriptor" | "object-getownpropertydescriptor" | "objectGetownpropertydescriptor" | "no-object-getownpropertydescriptors" | "object-getownpropertydescriptors" | "objectGetownpropertydescriptors" | "no-object-getownpropertynames" | "object-getownpropertynames" | "objectGetownpropertynames" | "no-object-getownpropertysymbols" | "object-getownpropertysymbols" | "objectGetownpropertysymbols" | "no-object-getprototypeof" | "object-getprototypeof" | "objectGetprototypeof" | "no-object-hasown" | "object-hasown" | "objectHasown" | "no-object-is" | "object-is" | "objectIs" | "no-object-isextensible" | "object-isextensible" | "objectIsextensible" | "no-object-isfrozen" | "object-isfrozen" | "objectIsfrozen" | "no-object-issealed" | "object-issealed" | "objectIssealed" | "no-object-keys" | "object-keys" | "objectKeys" | "no-object-map-groupby" | "object-map-groupby" | "objectMapGroupby" | "no-object-preventextensions" | "object-preventextensions" | "objectPreventextensions" | "no-object-seal" | "object-seal" | "objectSeal" | "no-object-setprototypeof" | "object-setprototypeof" | "objectSetprototypeof" | "no-object-super-properties" | "object-super-properties" | "objectSuperProperties" | "no-object-values" | "object-values" | "objectValues" | "no-octal-numeric-literals" | "octal-numeric-literals" | "octalNumericLiterals" | "no-optional-catch-binding" | "optional-catch-binding" | "optionalCatchBinding" | "no-optional-chaining" | "optional-chaining" | "optionalChaining" | "no-private-in" | "private-in" | "privateIn" | "no-promise-all-settled" | "promise-all-settled" | "promiseAllSettled" | "no-promise-any" | "promise-any" | "promiseAny" | "no-promise-prototype-finally" | "promise-prototype-finally" | "promisePrototypeFinally" | "no-promise-withresolvers" | "promise-withresolvers" | "promiseWithresolvers" | "no-promise" | "promise" | "no-property-shorthands" | "property-shorthands" | "propertyShorthands" | "no-proxy" | "proxy" | "no-reflect" | "reflect" | "no-regexp-d-flag" | "regexp-d-flag" | "regexpDFlag" | "no-regexp-lookbehind-assertions" | "regexp-lookbehind-assertions" | "regexpLookbehindAssertions" | "regexpLookbehind" | "no-regexp-named-capture-groups" | "regexp-named-capture-groups" | "regexpNamedCaptureGroups" | "no-regexp-prototype-compile" | "regexp-prototype-compile" | "regexpPrototypeCompile" | "no-regexp-prototype-flags" | "regexp-prototype-flags" | "regexpPrototypeFlags" | "no-regexp-s-flag" | "regexp-s-flag" | "regexpSFlag" | "regexpS" | "no-regexp-u-flag" | "regexp-u-flag" | "regexpUFlag" | "regexpU" | "no-regexp-unicode-property-escapes-2019" | "regexp-unicode-property-escapes-2019" | "regexpUnicodePropertyEscapes2019" | "no-regexp-unicode-property-escapes-2020" | "regexp-unicode-property-escapes-2020" | "regexpUnicodePropertyEscapes2020" | "no-regexp-unicode-property-escapes-2021" | "regexp-unicode-property-escapes-2021" | "regexpUnicodePropertyEscapes2021" | "no-regexp-unicode-property-escapes-2022" | "regexp-unicode-property-escapes-2022" | "regexpUnicodePropertyEscapes2022" | "no-regexp-unicode-property-escapes-2023" | "regexp-unicode-property-escapes-2023" | "regexpUnicodePropertyEscapes2023" | "no-regexp-unicode-property-escapes" | "regexp-unicode-property-escapes" | "regexpUnicodePropertyEscapes" | "regexpUnicodeProperties" | "no-regexp-v-flag" | "regexp-v-flag" | "regexpVFlag" | "no-regexp-y-flag" | "regexp-y-flag" | "regexpYFlag" | "regexpY" | "no-resizable-and-growable-arraybuffers" | "resizable-and-growable-arraybuffers" | "resizableAndGrowableArraybuffers" | "no-rest-parameters" | "rest-parameters" | "restParameters" | "no-rest-spread-properties" | "rest-spread-properties" | "restSpreadProperties" | "no-set" | "set" | "no-shadow-catch-param" | "shadow-catch-param" | "shadowCatchParam" | "no-shared-array-buffer" | "shared-array-buffer" | "sharedArrayBuffer" | "no-spread-elements" | "spread-elements" | "spreadElements" | "no-string-create-html-methods" | "string-create-html-methods" | "stringCreateHtmlMethods" | "no-string-fromcodepoint" | "string-fromcodepoint" | "stringFromcodepoint" | "no-string-prototype-codepointat" | "string-prototype-codepointat" | "stringPrototypeCodepointat" | "no-string-prototype-endswith" | "string-prototype-endswith" | "stringPrototypeEndswith" | "no-string-prototype-includes" | "string-prototype-includes" | "stringPrototypeIncludes" | "no-string-prototype-iswellformed-towellformed" | "string-prototype-iswellformed-towellformed" | "stringPrototypeIswellformedTowellformed" | "no-string-prototype-matchall" | "string-prototype-matchall" | "stringPrototypeMatchall" | "no-string-prototype-normalize" | "string-prototype-normalize" | "stringPrototypeNormalize" | "no-string-prototype-padstart-padend" | "string-prototype-padstart-padend" | "stringPrototypePadstartPadend" | "no-string-prototype-repeat" | "string-prototype-repeat" | "stringPrototypeRepeat" | "no-string-prototype-replaceall" | "string-prototype-replaceall" | "stringPrototypeReplaceall" | "no-string-prototype-startswith" | "string-prototype-startswith" | "stringPrototypeStartswith" | "no-string-prototype-substr" | "string-prototype-substr" | "stringPrototypeSubstr" | "no-string-prototype-trim" | "string-prototype-trim" | "stringPrototypeTrim" | "no-string-prototype-trimleft-trimright" | "string-prototype-trimleft-trimright" | "stringPrototypeTrimleftTrimright" | "no-string-prototype-trimstart-trimend" | "string-prototype-trimstart-trimend" | "stringPrototypeTrimstartTrimend" | "no-string-raw" | "string-raw" | "stringRaw" | "no-subclassing-builtins" | "subclassing-builtins" | "subclassingBuiltins" | "no-symbol-prototype-description" | "symbol-prototype-description" | "symbolPrototypeDescription" | "no-symbol" | "symbol" | "no-template-literals" | "template-literals" | "templateLiterals" | "no-top-level-await" | "top-level-await" | "topLevelAwait" | "no-trailing-commas" | "trailing-commas" | "trailingCommas" | "no-trailing-function-commas" | "trailing-function-commas" | "trailingFunctionCommas" | "trailingCommasInFunctions" | "no-typed-arrays" | "typed-arrays" | "typedArrays" | "no-unicode-codepoint-escapes" | "unicode-codepoint-escapes" | "unicodeCodepointEscapes" | "unicodeCodePointEscapes" | "no-weak-map" | "weak-map" | "weakMap" | "no-weak-set" | "weak-set" | "weakSet" | "no-weakrefs" | "weakrefs")[]
9010
9043
  }]
9011
9044
  // ----- node/no-unsupported-features/node-builtins -----
9012
9045
  type NodeNoUnsupportedFeaturesNodeBuiltins = []|[{
9013
9046
  version?: string
9014
- ignores?: ("queueMicrotask" | "require.resolve.paths" | "Buffer.alloc" | "Buffer.allocUnsafe" | "Buffer.allocUnsafeSlow" | "Buffer.from" | "TextDecoder" | "TextEncoder" | "URL" | "URLSearchParams" | "console.clear" | "console.count" | "console.countReset" | "console.debug" | "console.dirxml" | "console.group" | "console.groupCollapsed" | "console.groupEnd" | "console.table" | "console.markTimeline" | "console.profile" | "console.profileEnd" | "console.timeLog" | "console.timeStamp" | "console.timeline" | "console.timelineEnd" | "process.allowedNodeEnvironmentFlags" | "process.argv0" | "process.channel" | "process.cpuUsage" | "process.emitWarning" | "process.getegid" | "process.geteuid" | "process.hasUncaughtExceptionCaptureCallback" | "process.hrtime.bigint" | "process.ppid" | "process.release" | "process.report" | "process.resourceUsage" | "process.setegid" | "process.seteuid" | "process.setUncaughtExceptionCaptureCallback" | "process.stdout.getColorDepth" | "process.stdout.hasColor" | "process.stderr.getColorDepth" | "process.stderr.hasColor" | "assert.strict" | "assert.strict.doesNotReject" | "assert.strict.rejects" | "assert.deepStrictEqual" | "assert.doesNotReject" | "assert.notDeepStrictEqual" | "assert.rejects" | "assert.CallTracker" | "async_hooks" | "async_hooks.createHook" | "async_hooks.AsyncLocalStorage" | "buffer.Buffer.alloc" | "buffer.Buffer.allocUnsafe" | "buffer.Buffer.allocUnsafeSlow" | "buffer.Buffer.from" | "buffer.kMaxLength" | "buffer.transcode" | "buffer.constants" | "buffer.Blob" | "child_process.ChildProcess" | "crypto.Certificate.exportChallenge" | "crypto.Certificate.exportPublicKey" | "crypto.Certificate.verifySpkac" | "crypto.ECDH" | "crypto.KeyObject" | "crypto.createPrivateKey" | "crypto.createPublicKey" | "crypto.createSecretKey" | "crypto.constants" | "crypto.fips" | "crypto.generateKeyPair" | "crypto.generateKeyPairSync" | "crypto.getCurves" | "crypto.getFips" | "crypto.privateEncrypt" | "crypto.publicDecrypt" | "crypto.randomFillSync" | "crypto.randomFill" | "crypto.scrypt" | "crypto.scryptSync" | "crypto.setFips" | "crypto.sign" | "crypto.timingSafeEqual" | "crypto.verify" | "dns.Resolver" | "dns.resolvePtr" | "dns.promises" | "events.EventEmitter.once" | "events.once" | "fs.Dirent" | "fs.copyFile" | "fs.copyFileSync" | "fs.mkdtemp" | "fs.mkdtempSync" | "fs.realpath.native" | "fs.realpathSync.native" | "fs.promises" | "fs.writev" | "fs.writevSync" | "fs.readv" | "fs.readvSync" | "fs.lutimes" | "fs.lutimesSync" | "fs.opendir" | "fs.opendirSync" | "fs.rm" | "fs.rmSync" | "fs.read" | "fs.readSync" | "fs.Dir" | "fs.StatWatcher" | "fs/promises" | "http2" | "inspector" | "module.Module.builtinModules" | "module.Module.createRequireFromPath" | "module.Module.createRequire" | "module.Module.syncBuiltinESMExports" | "module.builtinModules" | "module.createRequireFromPath" | "module.createRequire" | "module.syncBuiltinESMExports" | "os.constants" | "os.constants.priority" | "os.getPriority" | "os.homedir" | "os.setPriority" | "os.userInfo" | "path.toNamespacedPath" | "perf_hooks" | "perf_hooks.monitorEventLoopDelay" | "stream.Readable.from" | "stream.finished" | "stream.pipeline" | "trace_events" | "url.URL" | "url.URLSearchParams" | "url.domainToASCII" | "url.domainToUnicode" | "util.callbackify" | "util.formatWithOptions" | "util.getSystemErrorName" | "util.inspect.custom" | "util.inspect.defaultOptions" | "util.inspect.replDefaults" | "util.isDeepStrictEqual" | "util.promisify" | "util.TextDecoder" | "util.TextEncoder" | "util.types" | "util.types.isBoxedPrimitive" | "v8" | "v8.DefaultDeserializer" | "v8.DefaultSerializer" | "v8.Deserializer" | "v8.Serializer" | "v8.cachedDataVersionTag" | "v8.deserialize" | "v8.getHeapCodeStatistics" | "v8.getHeapSnapshot" | "v8.getHeapSpaceStatistics" | "v8.serialize" | "v8.writeHeapSnapshot" | "vm.Module" | "vm.compileFunction" | "worker_threads")[]
9047
+ allowExperimental?: boolean
9048
+ 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" | "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" | "CustomEvent" | "Event" | "EventTarget" | "PerformanceEntry" | "PerformanceMark" | "PerformanceMeasure" | "PerformanceObserver" | "PerformanceObserverEntryList" | "PerformanceResourceTiming" | "performance" | "process" | "process.allowedNodeEnvironmentFlags" | "process.arch" | "process.argv" | "process.argv0" | "process.channel" | "process.config" | "process.connected" | "process.debugPort" | "process.env" | "process.execArgv" | "process.execPath" | "process.exitCode" | "process.mainModule" | "process.noDeprecation" | "process.permission" | "process.pid" | "process.platform" | "process.ppid" | "process.release" | "process.report" | "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" | "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.constants" | "fs.promises.access" | "fs.promises.appendFile" | "fs.promises.chmod" | "fs.promises.chown" | "fs.promises.copyFile" | "fs.promises.cp" | "fs.promises.lchmod" | "fs.promises.lchown" | "fs.promises.lutimes" | "fs.promises.link" | "fs.promises.lstat" | "fs.promises.mkdir" | "fs.promises.mkdtemp" | "fs.promises.open" | "fs.promises.opendir" | "fs.promises.readdir" | "fs.promises.readFile" | "fs.promises.readlink" | "fs.promises.realpath" | "fs.promises.rename" | "fs.promises.rmdir" | "fs.promises.rm" | "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.promises.FileHandle" | "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.lchmod" | "fs.lchown" | "fs.lutimes" | "fs.link" | "fs.lstat" | "fs.mkdir" | "fs.mkdtemp" | "fs.open" | "fs.openAsBlob" | "fs.opendir" | "fs.read" | "fs.readdir" | "fs.readFile" | "fs.readlink" | "fs.readv" | "fs.realpath" | "fs.realpath.native" | "fs.native" | "fs.rename" | "fs.rmdir" | "fs.rm" | "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.lchmodSync" | "fs.lchownSync" | "fs.lutimesSync" | "fs.linkSync" | "fs.lstatSync" | "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.statSync" | "fs.statfsSync" | "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" | "fs.StatFs" | "fs.WriteStream" | "fs.common_objects" | "fs/promises" | "fs/promises.constants" | "fs/promises.access" | "fs/promises.appendFile" | "fs/promises.chmod" | "fs/promises.chown" | "fs/promises.copyFile" | "fs/promises.cp" | "fs/promises.lchmod" | "fs/promises.lchown" | "fs/promises.lutimes" | "fs/promises.link" | "fs/promises.lstat" | "fs/promises.mkdir" | "fs/promises.mkdtemp" | "fs/promises.open" | "fs/promises.opendir" | "fs/promises.readdir" | "fs/promises.readFile" | "fs/promises.readlink" | "fs/promises.realpath" | "fs/promises.rename" | "fs/promises.rmdir" | "fs/promises.rm" | "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/promises.FileHandle" | "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.globalAgent" | "http.createServer" | "http.get" | "http.request" | "http.Agent" | "http.Server" | "inspector" | "inspector.Session" | "inspector.console" | "inspector.close" | "inspector.open" | "inspector.url" | "inspector.waitForDebugger" | "inspector/promises" | "inspector/promises.Session" | "inspector/promises.console" | "inspector/promises.close" | "inspector/promises.open" | "inspector/promises.url" | "inspector/promises.waitForDebugger" | "module.builtinModules" | "module.createRequire" | "module.createRequireFromPath" | "module.isBuiltin" | "module.register" | "module.syncBuiltinESMExports" | "module.findSourceMap" | "module.SourceMap" | "module.Module.builtinModules" | "module.Module.createRequire" | "module.Module.createRequireFromPath" | "module.Module.isBuiltin" | "module.Module.register" | "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.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.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.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.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.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.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" | "sea" | "sea.isSea" | "sea.getAsset" | "sea.getAssetAsBlob" | "sea.getRawAsset" | "sea.test.isSea" | "sea.test.getAsset" | "sea.test.getAssetAsBlob" | "sea.test.getRawAsset" | "stream" | "stream.promises" | "stream.promises.pipeline" | "stream.promises.finished" | "stream.finished" | "stream.pipeline" | "stream.compose" | "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" | "test" | "test.run" | "test.skip" | "test.todo" | "test.only" | "test.describe" | "test.describe.skip" | "test.describe.todo" | "test.describe.only" | "test.it" | "test.it.skip" | "test.it.todo" | "test.it.only" | "test.before" | "test.after" | "test.beforeEach" | "test.afterEach" | "test.MockFunctionContext" | "test.MockTracker" | "test.MockTimers" | "test.TestsStream" | "test.TestContext" | "test.SuiteContext" | "test.test.run" | "test.test.skip" | "test.test.todo" | "test.test.only" | "test.test.describe" | "test.test.it" | "test.test.before" | "test.test.after" | "test.test.beforeEach" | "test.test.afterEach" | "test.test.MockFunctionContext" | "test.test.MockTracker" | "test.test.MockTimers" | "test.test.TestsStream" | "test.test.TestContext" | "test.test.SuiteContext" | "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" | "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.getSystemErrorName" | "util.getSystemErrorMap" | "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.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.markAsUntransferable" | "worker_threads.isMarkedAsUntransferable" | "worker_threads.moveMessagePortToContext" | "worker_threads.receiveMessageOnPort" | "worker_threads.setEnvironmentData" | "worker_threads.BroadcastChannel" | "worker_threads.MessageChannel" | "worker_threads.MessagePort" | "worker_threads.Worker" | "zlib.constants" | "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.BrotliDecompress" | "zlib.Deflate" | "zlib.DeflateRaw" | "zlib.Gunzip" | "zlib.Gzip" | "zlib.Inflate" | "zlib.InflateRaw" | "zlib.Unzip" | "zlib")[]
9015
9049
  }]
9016
9050
  // ----- node/prefer-global/buffer -----
9017
9051
  type NodePreferGlobalBuffer = []|[("always" | "never")]
@@ -9027,6 +9061,10 @@ type NodePreferGlobalTextEncoder = []|[("always" | "never")]
9027
9061
  type NodePreferGlobalUrl = []|[("always" | "never")]
9028
9062
  // ----- node/prefer-global/url-search-params -----
9029
9063
  type NodePreferGlobalUrlSearchParams = []|[("always" | "never")]
9064
+ // ----- node/prefer-node-protocol -----
9065
+ type NodePreferNodeProtocol = []|[{
9066
+ version?: string
9067
+ }]
9030
9068
  // ----- node/shebang -----
9031
9069
  type NodeShebang = []|[{
9032
9070
  convertPath?: ({
@@ -9045,6 +9083,8 @@ type NodeShebang = []|[{
9045
9083
 
9046
9084
  replace: [string, string]
9047
9085
  })[]])
9086
+ ignoreUnpublished?: boolean
9087
+ additionalExecutables?: string[]
9048
9088
  }]
9049
9089
  // ----- nonblock-statement-body-position -----
9050
9090
  type NonblockStatementBodyPosition = []|[("beside" | "below" | "any")]|[("beside" | "below" | "any"), {
@@ -9210,6 +9250,7 @@ type PerfectionistSortInterfaces = []|[{
9210
9250
  "custom-groups"?: {
9211
9251
  [k: string]: unknown | undefined
9212
9252
  }
9253
+ "optionality-order"?: ("ignore" | "optional-first" | "required-first")
9213
9254
  type?: ("alphabetical" | "natural" | "line-length")
9214
9255
  order?: ("asc" | "desc")
9215
9256
  "ignore-case"?: boolean
@@ -9217,6 +9258,12 @@ type PerfectionistSortInterfaces = []|[{
9217
9258
  groups?: unknown[]
9218
9259
  "partition-by-new-line"?: boolean
9219
9260
  }]
9261
+ // ----- perfectionist/sort-intersection-types -----
9262
+ type PerfectionistSortIntersectionTypes = []|[{
9263
+ type?: ("alphabetical" | "natural" | "line-length")
9264
+ order?: ("asc" | "desc")
9265
+ "ignore-case"?: boolean
9266
+ }]
9220
9267
  // ----- perfectionist/sort-jsx-props -----
9221
9268
  type PerfectionistSortJsxProps = []|[{
9222
9269
  "custom-groups"?: {
@@ -9803,16 +9850,6 @@ type ReactStylePropObject = []|[{
9803
9850
  type RequireAtomicUpdates = []|[{
9804
9851
  allowProperties?: boolean
9805
9852
  }]
9806
- // ----- require-jsdoc -----
9807
- type RequireJsdoc = []|[{
9808
- require?: {
9809
- ClassDeclaration?: boolean
9810
- MethodDefinition?: boolean
9811
- FunctionDeclaration?: boolean
9812
- ArrowFunctionExpression?: boolean
9813
- FunctionExpression?: boolean
9814
- }
9815
- }]
9816
9853
  // ----- rest-spread-spacing -----
9817
9854
  type RestSpreadSpacing = []|[("always" | "never")]
9818
9855
  // ----- semi -----
@@ -10075,6 +10112,8 @@ interface _StyleJsxCurlySpacing_BasicConfig {
10075
10112
  type StyleJsxEqualsSpacing = []|[("always" | "never")]
10076
10113
  // ----- style/jsx-first-prop-new-line -----
10077
10114
  type StyleJsxFirstPropNewLine = []|[("always" | "never" | "multiline" | "multiline-multiprop" | "multiprop")]
10115
+ // ----- style/jsx-function-call-newline -----
10116
+ type StyleJsxFunctionCallNewline = []|[("always" | "multiline")]
10078
10117
  // ----- style/jsx-indent -----
10079
10118
  type StyleJsxIndent = []|[("tab" | number)]|[("tab" | number), {
10080
10119
  checkAttributes?: boolean
@@ -10104,7 +10143,7 @@ type StyleJsxNewline = []|[{
10104
10143
  }]
10105
10144
  // ----- style/jsx-one-expression-per-line -----
10106
10145
  type StyleJsxOneExpressionPerLine = []|[{
10107
- allow?: ("none" | "literal" | "single-child")
10146
+ allow?: ("none" | "literal" | "single-child" | "single-line")
10108
10147
  }]
10109
10148
  // ----- style/jsx-pascal-case -----
10110
10149
  type StyleJsxPascalCase = []|[{
@@ -10147,6 +10186,7 @@ type StyleJsxWrapMultilines = []|[{
10147
10186
  condition?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"))
10148
10187
  logical?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"))
10149
10188
  prop?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"))
10189
+ propertyValue?: ((true | false | "ignore" | "parens" | "parens-new-line") | (true | false | "ignore" | "parens" | "parens-new-line"))
10150
10190
  }]
10151
10191
  // ----- style/key-spacing -----
10152
10192
  type StyleKeySpacing = []|[({
@@ -10477,6 +10517,13 @@ type StyleKeywordSpacing = []|[{
10477
10517
  }
10478
10518
  }
10479
10519
  }]
10520
+ // ----- style/line-comment-position -----
10521
+ type StyleLineCommentPosition = []|[(("above" | "beside") | {
10522
+ position?: ("above" | "beside")
10523
+ ignorePattern?: string
10524
+ applyDefaultPatterns?: boolean
10525
+ applyDefaultIgnorePatterns?: boolean
10526
+ })]
10480
10527
  // ----- style/linebreak-style -----
10481
10528
  type StyleLinebreakStyle = []|[("unix" | "windows")]
10482
10529
  // ----- style/lines-around-comment -----
@@ -10630,6 +10677,10 @@ interface _StyleMemberDelimiterStyle_DelimiterConfig {
10630
10677
  requireLast?: boolean
10631
10678
  }
10632
10679
  }
10680
+ // ----- style/multiline-comment-style -----
10681
+ type StyleMultilineCommentStyle = ([]|[("starred-block" | "bare-block")] | []|["separate-lines"]|["separate-lines", {
10682
+ checkJSDoc?: boolean
10683
+ }])
10633
10684
  // ----- style/multiline-ternary -----
10634
10685
  type StyleMultilineTernary = []|[("always" | "always-multiline" | "never")]|[("always" | "always-multiline" | "never"), {
10635
10686
  ignoreJSX?: boolean
@@ -10900,6 +10951,10 @@ type TestMaxExpects = []|[{
10900
10951
  type TestMaxNestedDescribe = []|[{
10901
10952
  max?: number
10902
10953
  }]
10954
+ // ----- test/no-focused-tests -----
10955
+ type TestNoFocusedTests = []|[{
10956
+ fixable?: boolean
10957
+ }]
10903
10958
  // ----- test/no-hooks -----
10904
10959
  type TestNoHooks = []|[{
10905
10960
  allow?: unknown[]
@@ -12049,6 +12104,7 @@ type TsNoRestrictedImports = ((string | {
12049
12104
  name: string
12050
12105
  message?: string
12051
12106
  importNames?: string[]
12107
+ allowImportNames?: string[]
12052
12108
 
12053
12109
  allowTypeImports?: boolean
12054
12110
  })[] | []|[{
@@ -12056,6 +12112,7 @@ type TsNoRestrictedImports = ((string | {
12056
12112
  name: string
12057
12113
  message?: string
12058
12114
  importNames?: string[]
12115
+ allowImportNames?: string[]
12059
12116
 
12060
12117
  allowTypeImports?: boolean
12061
12118
  })[]
@@ -12063,8 +12120,11 @@ type TsNoRestrictedImports = ((string | {
12063
12120
 
12064
12121
  importNames?: [string, ...(string)[]]
12065
12122
 
12123
+ allowImportNames?: [string, ...(string)[]]
12124
+
12066
12125
  group: [string, ...(string)[]]
12067
12126
  importNamePattern?: string
12127
+ allowImportNamePattern?: string
12068
12128
  message?: string
12069
12129
  caseSensitive?: boolean
12070
12130
 
@@ -12465,6 +12525,7 @@ type UnicornExplicitLengthCheck = []|[{
12465
12525
  type UnicornFilenameCase = []|[({
12466
12526
  case?: ("camelCase" | "snakeCase" | "kebabCase" | "pascalCase")
12467
12527
  ignore?: unknown[]
12528
+ multipleFileExtensions?: boolean
12468
12529
  } | {
12469
12530
  cases?: {
12470
12531
  camelCase?: boolean
@@ -12473,6 +12534,7 @@ type UnicornFilenameCase = []|[({
12473
12534
  pascalCase?: boolean
12474
12535
  }
12475
12536
  ignore?: unknown[]
12537
+ multipleFileExtensions?: boolean
12476
12538
  })]
12477
12539
  // ----- unicorn/import-style -----
12478
12540
  type UnicornImportStyle = []|[{
@@ -12572,11 +12634,16 @@ type UnicornPreferExportFrom = []|[{
12572
12634
  // ----- unicorn/prefer-number-properties -----
12573
12635
  type UnicornPreferNumberProperties = []|[{
12574
12636
  checkInfinity?: boolean
12637
+ checkNaN?: boolean
12575
12638
  }]
12576
12639
  // ----- unicorn/prefer-object-from-entries -----
12577
12640
  type UnicornPreferObjectFromEntries = []|[{
12578
12641
  functions?: unknown[]
12579
12642
  }]
12643
+ // ----- unicorn/prefer-structured-clone -----
12644
+ type UnicornPreferStructuredClone = []|[{
12645
+ functions?: unknown[]
12646
+ }]
12580
12647
  // ----- unicorn/prefer-switch -----
12581
12648
  type UnicornPreferSwitch = []|[{
12582
12649
  minimumCases?: number
@@ -12681,66 +12748,10 @@ type UseIsnan = []|[{
12681
12748
  enforceForSwitchCase?: boolean
12682
12749
  enforceForIndexOf?: boolean
12683
12750
  }]
12684
- // ----- valid-jsdoc -----
12685
- type ValidJsdoc = []|[{
12686
- prefer?: {
12687
- [k: string]: string | undefined
12688
- }
12689
- preferType?: {
12690
- [k: string]: string | undefined
12691
- }
12692
- requireReturn?: boolean
12693
- requireParamDescription?: boolean
12694
- requireReturnDescription?: boolean
12695
- matchDescription?: string
12696
- requireReturnType?: boolean
12697
- requireParamType?: boolean
12698
- }]
12699
12751
  // ----- valid-typeof -----
12700
12752
  type ValidTypeof = []|[{
12701
12753
  requireStringLiterals?: boolean
12702
12754
  }]
12703
- // ----- vinicunca/cognitive-complexity -----
12704
- type VinicuncaCognitiveComplexity = []|[number]|[number, ("vinicunca-runtime" | "metric")]
12705
- // ----- vinicunca/consistent-list-newline -----
12706
- type VinicuncaConsistentListNewline = []|[{
12707
- ArrayExpression?: boolean
12708
- ArrayPattern?: boolean
12709
- ArrowFunctionExpression?: boolean
12710
- CallExpression?: boolean
12711
- ExportNamedDeclaration?: boolean
12712
- FunctionDeclaration?: boolean
12713
- FunctionExpression?: boolean
12714
- ImportDeclaration?: boolean
12715
- NewExpression?: boolean
12716
- ObjectExpression?: boolean
12717
- ObjectPattern?: boolean
12718
- TSInterfaceDeclaration?: boolean
12719
- TSTupleType?: boolean
12720
- TSTypeLiteral?: boolean
12721
- TSTypeParameterDeclaration?: boolean
12722
- TSTypeParameterInstantiation?: boolean
12723
- }]
12724
- // ----- vinicunca/no-collapsible-if -----
12725
- type VinicuncaNoCollapsibleIf = []|["vinicunca-runtime"]
12726
- // ----- vinicunca/no-duplicate-string -----
12727
- type VinicuncaNoDuplicateString = []|[{
12728
- ignoreStrings?: string
12729
- threshold?: number
12730
- [k: string]: unknown | undefined
12731
- }]|[{
12732
- ignoreStrings?: string
12733
- threshold?: number
12734
- [k: string]: unknown | undefined
12735
- }, "vinicunca-runtime"]
12736
- // ----- vinicunca/no-duplicated-branches -----
12737
- type VinicuncaNoDuplicatedBranches = []|["vinicunca-runtime"]
12738
- // ----- vinicunca/no-identical-conditions -----
12739
- type VinicuncaNoIdenticalConditions = []|["vinicunca-runtime"]
12740
- // ----- vinicunca/no-identical-expressions -----
12741
- type VinicuncaNoIdenticalExpressions = []|["vinicunca-runtime"]
12742
- // ----- vinicunca/no-identical-functions -----
12743
- type VinicuncaNoIdenticalFunctions = []|[number]|[number, "vinicunca-runtime"]
12744
12755
  // ----- vue/array-bracket-newline -----
12745
12756
  type VueArrayBracketNewline = []|[(("always" | "never" | "consistent") | {
12746
12757
  multiline?: boolean
@@ -12816,7 +12827,7 @@ type VueCamelcase = []|[{
12816
12827
  ignoreGlobals?: boolean
12817
12828
  properties?: ("always" | "never")
12818
12829
 
12819
- allow?: []|[string]
12830
+ allow?: string[]
12820
12831
  }]
12821
12832
  // ----- vue/comma-dangle -----
12822
12833
  type VueCommaDangle = []|[(_VueCommaDangleValue | {
@@ -13452,7 +13463,7 @@ type VueNoConsole = []|[{
13452
13463
  }]
13453
13464
  // ----- vue/no-constant-condition -----
13454
13465
  type VueNoConstantCondition = []|[{
13455
- checkLoops?: boolean
13466
+ checkLoops?: ("all" | "allExceptWhileTrue" | "none" | true | false)
13456
13467
  }]
13457
13468
  // ----- vue/no-deprecated-model-definition -----
13458
13469
  type VueNoDeprecatedModelDefinition = []|[{
@@ -14118,6 +14129,8 @@ type Yoda = []|[("always" | "never")]|[("always" | "never"), {
14118
14129
  exceptRange?: boolean
14119
14130
  onlyEquality?: boolean
14120
14131
  }]
14132
+ // Names of all the configs
14133
+ type ConfigNames = 'vinicunca/eslint-comments' | 'vinicunca/formatter/setup' | 'vinicunca/imports/rules' | 'vinicunca/javascript/rules' | 'vinicunca/javascript/disables' | 'vinicunca/jsdoc/rules' | 'vinicunca/jsonc/setup' | 'vinicunca/jsonc/rules' | 'vinicunca/markdown/setup' | 'vinicunca/markdown/processor' | 'vinicunca/markdown/parser' | 'vinicunca/markdown/disables' | 'vinicunca/perfectionist/rules' | 'vinicunca/node/rules' | 'vinicunca/react/setup' | 'vinicunca/react/rules' | 'vinicunca/sort/package-json' | 'vinicunca/stylistic/rules' | 'vinicunca/test/setup' | 'vinicunca/test/rules' | 'vinicunca/typescript/setup' | 'vinicunca/typescript/parser' | 'vinicunca/typescript/rules' | 'vinicunca/typescript/rules-type-aware' | 'vinicunca/typescript/disables/dts' | 'vinicunca/typescript/disables/tests' | 'vinicunca/typescript/disables/javascript' | 'vinicunca/unicorn/rules' | 'vinicunca/unocss' | 'vinicunca/vue/setup' | 'vinicunca/vue/rules' | 'vinicunca/yaml/setup' | 'vinicunca/yaml/rules'
14121
14134
 
14122
14135
  /**
14123
14136
  * Vendor types from Prettier so we don't rely on the dependency.
@@ -14220,21 +14233,14 @@ interface VendoredPrettierOptionsRequired {
14220
14233
 
14221
14234
  type Awaitable<T> = Promise<T> | T;
14222
14235
  type Rules = RuleOptions;
14223
- type TypedFlatConfigItem = Omit<Linter.FlatConfig, 'plugins'> & {
14224
- /**
14225
- * Custom name of each config item
14226
- */
14227
- name?: string;
14236
+
14237
+ type TypedFlatConfigItem = Omit<Linter.FlatConfig<Linter.RulesRecord & Rules>, 'plugins'> & {
14228
14238
  /**
14229
14239
  * An object containing a name-value mapping of plugin names to plugin objects. When `files` is specified, these plugins are only available to the matching files.
14230
14240
  *
14231
14241
  * @see [Using plugins in your configuration](https://eslint.org/docs/latest/user-guide/configuring/configuration-files-new#using-plugins-in-your-configuration)
14232
14242
  */
14233
14243
  plugins?: Record<string, any>;
14234
- /**
14235
- * An object containing a name-value mapping of rules to use.
14236
- */
14237
- rules?: Linter.RulesRecord & Rules;
14238
14244
  };
14239
14245
  interface OptionsFiles {
14240
14246
  /**
@@ -14462,10 +14468,21 @@ declare const defaultPluginRenaming: {
14462
14468
  '@typescript-eslint': string;
14463
14469
  'import-x': string;
14464
14470
  n: string;
14471
+ sonarjs: string;
14465
14472
  vitest: string;
14466
14473
  yml: string;
14467
14474
  };
14468
- declare function vinicuncaESLint(options?: OptionsConfig & TypedFlatConfigItem, ...userConfigs: Array<Awaitable<Array<TypedFlatConfigItem> | TypedFlatConfigItem>>): FlatConfigComposer<TypedFlatConfigItem>;
14475
+ /**
14476
+ * Construct an array of ESLint flat config items.
14477
+ *
14478
+ * @param options
14479
+ * The options for generating the ESLint configurations.
14480
+ * @param userConfigs
14481
+ * The user configurations to be merged with the generated configurations.
14482
+ * @returns
14483
+ * The merged ESLint configurations.
14484
+ */
14485
+ declare function vinicuncaESLint(options?: OptionsConfig & TypedFlatConfigItem, ...userConfigs: Array<Awaitable<Array<Linter.FlatConfig> | Array<TypedFlatConfigItem> | FlatConfigComposer<any, any> | TypedFlatConfigItem>>): FlatConfigComposer<TypedFlatConfigItem, ConfigNames>;
14469
14486
 
14470
14487
  declare function comments(): Promise<Array<TypedFlatConfigItem>>;
14471
14488
 
@@ -14494,6 +14511,8 @@ declare function perfectionist(): Promise<Array<TypedFlatConfigItem>>;
14494
14511
 
14495
14512
  declare function react(options?: OptionsHasTypeScript & OptionsOverrides & OptionsFiles): Promise<Array<TypedFlatConfigItem>>;
14496
14513
 
14514
+ declare function sonar(): Promise<Array<TypedFlatConfigItem>>;
14515
+
14497
14516
  /**
14498
14517
  * Sort package.json
14499
14518
  *
@@ -14508,11 +14527,11 @@ declare function sortPackageJson(): Promise<Array<TypedFlatConfigItem>>;
14508
14527
  declare function sortTsconfig(): Array<TypedFlatConfigItem>;
14509
14528
 
14510
14529
  declare const STYLISTIC_CONFIG_DEFAULTS: StylisticConfig;
14511
- declare function stylistic(options?: StylisticConfig & OptionsOverrides): Promise<Array<TypedFlatConfigItem>>;
14530
+ declare function stylistic(options?: OptionsOverrides & StylisticConfig): Promise<Array<TypedFlatConfigItem>>;
14512
14531
 
14513
14532
  declare function test(options?: OptionsFiles & OptionsIsInEditor & OptionsOverrides): Promise<Array<TypedFlatConfigItem>>;
14514
14533
 
14515
- declare function typescript(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides & OptionsTypeScriptWithTypes & OptionsTypeScriptParserOptions): Promise<Array<TypedFlatConfigItem>>;
14534
+ declare function typescript(options?: OptionsComponentExts & OptionsFiles & OptionsOverrides & OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes): Promise<Array<TypedFlatConfigItem>>;
14516
14535
 
14517
14536
  declare function unicorn(): Promise<Array<TypedFlatConfigItem>>;
14518
14537
 
@@ -14616,4 +14635,4 @@ declare const GLOB_TESTS: string[];
14616
14635
  declare const GLOB_ALL_SRC: string[];
14617
14636
  declare const GLOB_EXCLUDE: string[];
14618
14637
 
14619
- export { type Awaitable, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_TESTS, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_YAML, type OptionsComponentExts, type OptionsConfig, type OptionsFiles, type OptionsFormatters, type OptionsHasTypeScript, type OptionsIsInEditor, type OptionsOverrides, type OptionsStylistic, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript, type OptionsUnoCSS, type OptionsVue, type Rules, STYLISTIC_CONFIG_DEFAULTS, type StylisticConfig, type TypedFlatConfigItem, combineConfigs, comments, defaultPluginRenaming, formatters, ignores, imports, interopDefault, javascript, jsdoc, jsonc, markdown, node, parserPlain, perfectionist, react, renamePluginInConfigs, renameRules, sortPackageJson, sortTsconfig, stylistic, test, toArray, typescript, unicorn, unocss, vinicuncaESLint, vue, yaml };
14638
+ export { type Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_TESTS, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_YAML, type OptionsComponentExts, type OptionsConfig, type OptionsFiles, type OptionsFormatters, type OptionsHasTypeScript, type OptionsIsInEditor, type OptionsOverrides, type OptionsStylistic, type OptionsTypeScriptParserOptions, type OptionsTypeScriptWithTypes, type OptionsTypescript, type OptionsUnoCSS, type OptionsVue, type Rules, STYLISTIC_CONFIG_DEFAULTS, type StylisticConfig, type TypedFlatConfigItem, combineConfigs, comments, defaultPluginRenaming, formatters, ignores, imports, interopDefault, javascript, jsdoc, jsonc, markdown, node, parserPlain, perfectionist, react, renamePluginInConfigs, renameRules, sonar, sortPackageJson, sortTsconfig, stylistic, test, toArray, typescript, unicorn, unocss, vinicuncaESLint, vue, yaml };