@coderwyd/eslint-config 4.7.2 → 4.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -391,6 +391,11 @@ interface RuleOptions {
391
391
  * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/consistent-type-specifier-style/README.md
392
392
  */
393
393
  'import/consistent-type-specifier-style'?: Linter.RuleEntry<ImportConsistentTypeSpecifierStyle>;
394
+ /**
395
+ * Ensure all exports appear after other statements.
396
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/exports-last/README.md
397
+ */
398
+ 'import/exports-last'?: Linter.RuleEntry<[]>;
394
399
  /**
395
400
  * Ensure all imports appear before other statements.
396
401
  * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/first/README.md
@@ -421,6 +426,11 @@ interface RuleOptions {
421
426
  * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-named-default/README.md
422
427
  */
423
428
  'import/no-named-default'?: Linter.RuleEntry<[]>;
429
+ /**
430
+ * Prefer a default export if module exports a single name or multiple names.
431
+ * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/prefer-default-export/README.md
432
+ */
433
+ 'import/prefer-default-export'?: Linter.RuleEntry<ImportPreferDefaultExport>;
424
434
  /**
425
435
  * Enforce consistent indentation
426
436
  * @see https://eslint.org/docs/latest/rules/indent
@@ -693,6 +703,11 @@ interface RuleOptions {
693
703
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-type.md#repos-sticky-header
694
704
  */
695
705
  'jsdoc/require-property-type'?: Linter.RuleEntry<[]>;
706
+ /**
707
+ * Requires that Promise rejections are documented with `@rejects` tags.
708
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-rejects.md#repos-sticky-header
709
+ */
710
+ 'jsdoc/require-rejects'?: Linter.RuleEntry<JsdocRequireRejects>;
696
711
  /**
697
712
  * Requires that returns are documented with `@returns`.
698
713
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns.md#repos-sticky-header
@@ -2265,6 +2280,11 @@ interface RuleOptions {
2265
2280
  * @see https://perfectionist.dev/rules/sort-enums
2266
2281
  */
2267
2282
  'perfectionist/sort-enums'?: Linter.RuleEntry<PerfectionistSortEnums>;
2283
+ /**
2284
+ * Enforce sorted export attributes.
2285
+ * @see https://perfectionist.dev/rules/sort-export-attributes
2286
+ */
2287
+ 'perfectionist/sort-export-attributes'?: Linter.RuleEntry<PerfectionistSortExportAttributes>;
2268
2288
  /**
2269
2289
  * Enforce sorted exports.
2270
2290
  * @see https://perfectionist.dev/rules/sort-exports
@@ -2275,6 +2295,11 @@ interface RuleOptions {
2275
2295
  * @see https://perfectionist.dev/rules/sort-heritage-clauses
2276
2296
  */
2277
2297
  'perfectionist/sort-heritage-clauses'?: Linter.RuleEntry<PerfectionistSortHeritageClauses>;
2298
+ /**
2299
+ * Enforce sorted import attributes.
2300
+ * @see https://perfectionist.dev/rules/sort-import-attributes
2301
+ */
2302
+ 'perfectionist/sort-import-attributes'?: Linter.RuleEntry<PerfectionistSortImportAttributes>;
2278
2303
  /**
2279
2304
  * Enforce sorted imports.
2280
2305
  * @see https://perfectionist.dev/rules/sort-imports
@@ -2345,6 +2370,41 @@ interface RuleOptions {
2345
2370
  * @see https://perfectionist.dev/rules/sort-variable-declarations
2346
2371
  */
2347
2372
  'perfectionist/sort-variable-declarations'?: Linter.RuleEntry<PerfectionistSortVariableDeclarations>;
2373
+ /**
2374
+ * Enforce using "catalog:" in `package.json`
2375
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/json/json-enforce-catalog.test.ts
2376
+ */
2377
+ 'pnpm/json-enforce-catalog'?: Linter.RuleEntry<PnpmJsonEnforceCatalog>;
2378
+ /**
2379
+ * Prefer having pnpm settings in `pnpm-workspace.yaml` instead of `package.json`. This requires pnpm v10.6+, see https://github.com/orgs/pnpm/discussions/9037.
2380
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/json/json-prefer-workspace-settings.test.ts
2381
+ */
2382
+ 'pnpm/json-prefer-workspace-settings'?: Linter.RuleEntry<PnpmJsonPreferWorkspaceSettings>;
2383
+ /**
2384
+ * Enforce using valid catalog in `package.json`
2385
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/json/json-valid-catalog.test.ts
2386
+ */
2387
+ 'pnpm/json-valid-catalog'?: Linter.RuleEntry<PnpmJsonValidCatalog>;
2388
+ /**
2389
+ * Enforce settings in `pnpm-workspace.yaml`
2390
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-enforce-settings.test.ts
2391
+ */
2392
+ 'pnpm/yaml-enforce-settings'?: Linter.RuleEntry<PnpmYamlEnforceSettings>;
2393
+ /**
2394
+ * Disallow duplicate catalog items in `pnpm-workspace.yaml`
2395
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-no-duplicate-catalog-item.test.ts
2396
+ */
2397
+ 'pnpm/yaml-no-duplicate-catalog-item'?: Linter.RuleEntry<PnpmYamlNoDuplicateCatalogItem>;
2398
+ /**
2399
+ * Disallow unused catalogs in `pnpm-workspace.yaml`
2400
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-no-unused-catalog-item.test.ts
2401
+ */
2402
+ 'pnpm/yaml-no-unused-catalog-item'?: Linter.RuleEntry<[]>;
2403
+ /**
2404
+ * Ensure all package patterns in `pnpm-workspace.yaml` match at least one directory
2405
+ * @see https://github.com/antfu/pnpm-workspace-utils/tree/main/packages/eslint-plugin-pnpm/src/rules/yaml/yaml-valid-packages.test.ts
2406
+ */
2407
+ 'pnpm/yaml-valid-packages'?: Linter.RuleEntry<[]>;
2348
2408
  /**
2349
2409
  * Require using arrow functions for callbacks
2350
2410
  * @see https://eslint.org/docs/latest/rules/prefer-arrow-callback
@@ -2439,97 +2499,97 @@ interface RuleOptions {
2439
2499
  */
2440
2500
  'radix'?: Linter.RuleEntry<Radix>;
2441
2501
  /**
2442
- * Disallow `dangerouslySetInnerHTML`.
2502
+ * Disallows 'dangerouslySetInnerHTML'.
2443
2503
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml
2444
2504
  */
2445
2505
  'react-dom/no-dangerously-set-innerhtml'?: Linter.RuleEntry<[]>;
2446
2506
  /**
2447
- * Disallow `dangerouslySetInnerHTML` and `children` at the same time.
2507
+ * Disallows 'dangerouslySetInnerHTML' and 'children' at the same time.
2448
2508
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml-with-children
2449
2509
  */
2450
2510
  'react-dom/no-dangerously-set-innerhtml-with-children'?: Linter.RuleEntry<[]>;
2451
2511
  /**
2452
- * Disallow `findDOMNode`.
2512
+ * Disallows 'findDOMNode'.
2453
2513
  * @see https://eslint-react.xyz/docs/rules/dom-no-find-dom-node
2454
2514
  */
2455
2515
  'react-dom/no-find-dom-node'?: Linter.RuleEntry<[]>;
2456
2516
  /**
2457
- * Disallow `flushSync`.
2517
+ * Disallows 'flushSync'.
2458
2518
  * @see https://eslint-react.xyz/docs/rules/dom-no-flush-sync
2459
2519
  */
2460
2520
  'react-dom/no-flush-sync'?: Linter.RuleEntry<[]>;
2461
2521
  /**
2462
- * Replaces usages of `ReactDom.hydrate()` with `hydrateRoot()`.
2522
+ * Replaces usage of 'ReactDom.hydrate()' with 'hydrateRoot()'.
2463
2523
  * @see https://eslint-react.xyz/docs/rules/dom-no-hydrate
2464
2524
  */
2465
2525
  'react-dom/no-hydrate'?: Linter.RuleEntry<[]>;
2466
2526
  /**
2467
- * Enforces explicit `type` attribute for `button` elements.
2527
+ * Enforces explicit 'type' attribute for 'button' elements.
2468
2528
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-button-type
2469
2529
  */
2470
2530
  'react-dom/no-missing-button-type'?: Linter.RuleEntry<[]>;
2471
2531
  /**
2472
- * Enforces explicit `sandbox` prop for `iframe` elements.
2532
+ * Enforces explicit 'sandbox' attribute for 'iframe' elements.
2473
2533
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox
2474
2534
  */
2475
2535
  'react-dom/no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>;
2476
2536
  /**
2477
- * Enforces the absence of a `namespace` in React elements.
2537
+ * Enforces the absence of a 'namespace' in React elements.
2478
2538
  * @see https://eslint-react.xyz/docs/rules/dom-no-namespace
2479
2539
  */
2480
2540
  'react-dom/no-namespace'?: Linter.RuleEntry<[]>;
2481
2541
  /**
2482
- * Replaces usages of `ReactDom.render()` with `createRoot(node).render()`.
2542
+ * Replaces usage of 'ReactDom.render()' with 'createRoot(node).render()'.
2483
2543
  * @see https://eslint-react.xyz/docs/rules/dom-no-render
2484
2544
  */
2485
2545
  'react-dom/no-render'?: Linter.RuleEntry<[]>;
2486
2546
  /**
2487
- * Disallow the return value of `ReactDOM.render`.
2547
+ * Disallows the return value of 'ReactDOM.render'.
2488
2548
  * @see https://eslint-react.xyz/docs/rules/dom-no-render-return-value
2489
2549
  */
2490
2550
  'react-dom/no-render-return-value'?: Linter.RuleEntry<[]>;
2491
2551
  /**
2492
- * Disallow `javascript:` URLs as attribute values.
2552
+ * Disallows 'javascript:' URLs as attribute values.
2493
2553
  * @see https://eslint-react.xyz/docs/rules/dom-no-script-url
2494
2554
  */
2495
2555
  'react-dom/no-script-url'?: Linter.RuleEntry<[]>;
2496
2556
  /**
2497
- * Disallows the use of string style prop.
2557
+ * Disallows the use of string style prop in JSX. Use an object instead.
2498
2558
  * @see https://eslint-react.xyz/docs/rules/dom-no-string-style-prop
2499
2559
  */
2500
2560
  'react-dom/no-string-style-prop'?: Linter.RuleEntry<[]>;
2501
2561
  /**
2502
- * Disallow unknown `DOM` property.
2562
+ * Disallows unknown 'DOM' property.
2503
2563
  * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property
2504
2564
  */
2505
2565
  'react-dom/no-unknown-property'?: Linter.RuleEntry<ReactDomNoUnknownProperty>;
2506
2566
  /**
2507
- * Enforces `sandbox` attribute for `iframe` elements is not set to unsafe combinations.
2567
+ * Enforces 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations.
2508
2568
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox
2509
2569
  */
2510
2570
  'react-dom/no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>;
2511
2571
  /**
2512
- * Disallow `target="_blank"` without `rel="noreferrer noopener"`.
2572
+ * Disallows 'target="_blank"' without 'rel="noreferrer noopener"'.
2513
2573
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-target-blank
2514
2574
  */
2515
2575
  'react-dom/no-unsafe-target-blank'?: Linter.RuleEntry<[]>;
2516
2576
  /**
2517
- * Replaces usages of `useFormState` with `useActionState`.
2577
+ * Replaces usage of 'useFormState' with 'useActionState'.
2518
2578
  * @see https://eslint-react.xyz/docs/rules/dom-no-use-form-state
2519
2579
  */
2520
2580
  'react-dom/no-use-form-state'?: Linter.RuleEntry<[]>;
2521
2581
  /**
2522
- * Disallow `children` in void DOM elements.
2582
+ * Disallows 'children' in void DOM elements.
2523
2583
  * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
2524
2584
  */
2525
2585
  'react-dom/no-void-elements-with-children'?: Linter.RuleEntry<[]>;
2526
2586
  /**
2527
- * Enforces React Dom is imported via a namespace import.
2587
+ * Enforces React DOM is imported via a namespace import.
2528
2588
  * @see https://eslint-react.xyz/docs/rules/dom-prefer-namespace-import
2529
2589
  */
2530
2590
  'react-dom/prefer-namespace-import'?: Linter.RuleEntry<[]>;
2531
2591
  /**
2532
- * Disallow direct calls to the `set` function of `useState` in `useEffect`.
2592
+ * Disallows **direct** calls to the 'set' function of 'useState' in 'useEffect'.
2533
2593
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
2534
2594
  */
2535
2595
  'react-hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>;
@@ -2648,7 +2708,7 @@ interface RuleOptions {
2648
2708
  */
2649
2709
  'react-hooks/use-memo'?: Linter.RuleEntry<ReactHooksUseMemo>;
2650
2710
  /**
2651
- * Validates that useMemos always return a value. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
2711
+ * Validates that useMemos always return a value and that the result of the useMemo is used by the component/hook. See [`useMemo()` docs](https://react.dev/reference/react/useMemo) for more information.
2652
2712
  */
2653
2713
  'react-hooks/void-use-memo'?: Linter.RuleEntry<ReactHooksVoidUseMemo>;
2654
2714
  /**
@@ -2657,7 +2717,7 @@ interface RuleOptions {
2657
2717
  */
2658
2718
  'react-naming-convention/component-name'?: Linter.RuleEntry<ReactNamingConventionComponentName>;
2659
2719
  /**
2660
- * Enforces context name to be a valid component name with the suffix `Context`.
2720
+ * Enforces the context name to be a valid component name with the suffix 'Context'.
2661
2721
  * @see https://eslint-react.xyz/docs/rules/naming-convention-context-name
2662
2722
  */
2663
2723
  'react-naming-convention/context-name'?: Linter.RuleEntry<[]>;
@@ -2667,73 +2727,83 @@ interface RuleOptions {
2667
2727
  */
2668
2728
  'react-naming-convention/filename'?: Linter.RuleEntry<ReactNamingConventionFilename>;
2669
2729
  /**
2670
- * Enforces consistent file naming conventions.
2730
+ * Enforces consistent use of the JSX file extension.
2671
2731
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename-extension
2672
2732
  */
2673
2733
  'react-naming-convention/filename-extension'?: Linter.RuleEntry<ReactNamingConventionFilenameExtension>;
2674
2734
  /**
2675
- * Enforces destructuring and symmetric naming of `useState` hook value and setter.
2735
+ * Enforces that variables assigned from 'useRef' calls have names ending with 'Ref'.
2736
+ * @see https://eslint-react.xyz/docs/rules/naming-convention-ref-name
2737
+ */
2738
+ 'react-naming-convention/ref-name'?: Linter.RuleEntry<[]>;
2739
+ /**
2740
+ * Enforces destructuring and symmetric naming of the 'useState' hook value and setter.
2676
2741
  * @see https://eslint-react.xyz/docs/rules/naming-convention-use-state
2677
2742
  */
2678
- 'react-naming-convention/use-state'?: Linter.RuleEntry<[]>;
2743
+ 'react-naming-convention/use-state'?: Linter.RuleEntry<ReactNamingConventionUseState>;
2679
2744
  'react-refresh/only-export-components'?: Linter.RuleEntry<ReactRefreshOnlyExportComponents>;
2680
2745
  /**
2681
- * Prevents leaked `addEventListener` in a component or custom Hook.
2746
+ * Enforces that every 'addEventListener' in a component or custom hook has a corresponding 'removeEventListener'.
2682
2747
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-event-listener
2683
2748
  */
2684
2749
  'react-web-api/no-leaked-event-listener'?: Linter.RuleEntry<[]>;
2685
2750
  /**
2686
- * Prevents leaked `setInterval` in a component or custom Hook.
2751
+ * Enforces that every 'setInterval' in a component or custom hook has a corresponding 'clearInterval'.
2687
2752
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-interval
2688
2753
  */
2689
2754
  'react-web-api/no-leaked-interval'?: Linter.RuleEntry<[]>;
2690
2755
  /**
2691
- * Prevents leaked `ResizeObserver` in a component or custom Hook.
2756
+ * Enforces that every 'ResizeObserver' created in a component or custom hook has a corresponding 'ResizeObserver.disconnect()'.
2692
2757
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-resize-observer
2693
2758
  */
2694
2759
  'react-web-api/no-leaked-resize-observer'?: Linter.RuleEntry<[]>;
2695
2760
  /**
2696
- * Prevents leaked `setTimeout` in a component or custom Hook.
2761
+ * Enforces that every 'setTimeout' in a component or custom hook has a corresponding 'clearTimeout'.
2697
2762
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-timeout
2698
2763
  */
2699
2764
  'react-web-api/no-leaked-timeout'?: Linter.RuleEntry<[]>;
2765
+ /**
2766
+ * Prevents unnecessary dollar signs ('$') from being inserted before an expression in JSX.
2767
+ * @see https://eslint-react.xyz/docs/rules/jsx-dollar
2768
+ */
2769
+ 'react/jsx-dollar'?: Linter.RuleEntry<[]>;
2700
2770
  /**
2701
2771
  * Enforces that the 'key' prop is placed before the spread prop in JSX elements.
2702
2772
  * @see https://eslint-react.xyz/docs/rules/jsx-key-before-spread
2703
2773
  */
2704
2774
  'react/jsx-key-before-spread'?: Linter.RuleEntry<[]>;
2705
2775
  /**
2706
- * Prevents comments from being inserted as text nodes.
2776
+ * Prevents comment strings (e.g., beginning with '//' or '/*') from being accidentally inserted into a JSX element's text nodes.
2707
2777
  * @see https://eslint-react.xyz/docs/rules/jsx-no-comment-textnodes
2708
2778
  */
2709
2779
  'react/jsx-no-comment-textnodes'?: Linter.RuleEntry<[]>;
2710
2780
  /**
2711
- * Disallow duplicate props in JSX elements.
2781
+ * Disallows duplicate props in JSX elements.
2712
2782
  * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
2713
2783
  */
2714
2784
  'react/jsx-no-duplicate-props'?: Linter.RuleEntry<[]>;
2715
2785
  /**
2716
- * Disallows 'IIFE' in JSX elements.
2786
+ * Disallows 'IIFE' in JSX.
2717
2787
  * @see https://eslint-react.xyz/docs/rules/jsx-no-iife
2718
2788
  */
2719
2789
  'react/jsx-no-iife'?: Linter.RuleEntry<[]>;
2720
2790
  /**
2721
- * Disallow undefined variables in JSX.
2791
+ * Prevents using variables in JSX that are not defined in the scope.
2722
2792
  * @see https://eslint-react.xyz/docs/rules/jsx-no-undef
2723
2793
  */
2724
2794
  'react/jsx-no-undef'?: Linter.RuleEntry<[]>;
2725
2795
  /**
2726
- * Enforces shorthand syntax for boolean attributes.
2796
+ * Enforces the use of shorthand syntax for boolean attributes.
2727
2797
  * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-boolean
2728
2798
  */
2729
2799
  'react/jsx-shorthand-boolean'?: Linter.RuleEntry<ReactJsxShorthandBoolean>;
2730
2800
  /**
2731
- * Enforces shorthand syntax for fragments.
2801
+ * Enforces the use of shorthand syntax for fragments.
2732
2802
  * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-fragment
2733
2803
  */
2734
2804
  'react/jsx-shorthand-fragment'?: Linter.RuleEntry<ReactJsxShorthandFragment>;
2735
2805
  /**
2736
- * Marks React variables as used when JSX is used.
2806
+ * Marks React variables as used when JSX is present.
2737
2807
  * @see https://eslint-react.xyz/docs/rules/jsx-uses-react
2738
2808
  */
2739
2809
  'react/jsx-uses-react'?: Linter.RuleEntry<[]>;
@@ -2743,107 +2813,108 @@ interface RuleOptions {
2743
2813
  */
2744
2814
  'react/jsx-uses-vars'?: Linter.RuleEntry<[]>;
2745
2815
  /**
2746
- * Disallow accessing `this.state` inside `setState` calls.
2816
+ * Disallows accessing 'this.state' inside 'setState' calls.
2747
2817
  * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate
2748
2818
  */
2749
2819
  'react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>;
2750
2820
  /**
2751
- * Disallow an item's index in the array as its key.
2821
+ * Disallows using an item's index in the array as its key.
2752
2822
  * @see https://eslint-react.xyz/docs/rules/no-array-index-key
2753
2823
  */
2754
2824
  'react/no-array-index-key'?: Linter.RuleEntry<[]>;
2755
2825
  /**
2756
- * Disallow `Children.count`.
2826
+ * Disallows the use of 'Children.count' from the 'react' package.
2757
2827
  * @see https://eslint-react.xyz/docs/rules/no-children-count
2758
2828
  */
2759
2829
  'react/no-children-count'?: Linter.RuleEntry<[]>;
2760
2830
  /**
2761
- * Disallow 'Children.forEach'.
2831
+ * Disallows the use of 'Children.forEach' from the 'react' package.
2762
2832
  * @see https://eslint-react.xyz/docs/rules/no-children-for-each
2763
2833
  */
2764
2834
  'react/no-children-for-each'?: Linter.RuleEntry<[]>;
2765
2835
  /**
2766
- * Disallow `Children.map`.
2836
+ * Disallows the use of 'Children.map' from the 'react' package.
2767
2837
  * @see https://eslint-react.xyz/docs/rules/no-children-map
2768
2838
  */
2769
2839
  'react/no-children-map'?: Linter.RuleEntry<[]>;
2770
2840
  /**
2771
- * Disallow `Children.only`.
2841
+ * Disallows the use of 'Children.only' from the 'react' package.
2772
2842
  * @see https://eslint-react.xyz/docs/rules/no-children-only
2773
2843
  */
2774
2844
  'react/no-children-only'?: Linter.RuleEntry<[]>;
2775
2845
  /**
2776
- * Disallow passing `children` as a prop.
2846
+ * Disallows passing 'children' as a prop.
2777
2847
  * @see https://eslint-react.xyz/docs/rules/no-children-prop
2778
2848
  */
2779
2849
  'react/no-children-prop'?: Linter.RuleEntry<[]>;
2780
2850
  /**
2781
- * Disallow `Children.toArray`.
2851
+ * Disallows the use of 'Children.toArray' from the 'react' package.
2782
2852
  * @see https://eslint-react.xyz/docs/rules/no-children-to-array
2783
2853
  */
2784
2854
  'react/no-children-to-array'?: Linter.RuleEntry<[]>;
2785
2855
  /**
2786
- * Disallow class components except for error boundaries.
2856
+ * Disallows class components except for error boundaries.
2787
2857
  * @see https://eslint-react.xyz/docs/rules/no-class-component
2788
2858
  */
2789
2859
  'react/no-class-component'?: Linter.RuleEntry<[]>;
2790
2860
  /**
2791
- * Disallow `cloneElement`.
2861
+ * Disallows 'cloneElement'.
2792
2862
  * @see https://eslint-react.xyz/docs/rules/no-clone-element
2793
2863
  */
2794
2864
  'react/no-clone-element'?: Linter.RuleEntry<[]>;
2795
2865
  /**
2796
- * Replace usages of `componentWillMount` with `UNSAFE_componentWillMount`.
2866
+ * Replaces usage of 'componentWillMount' with 'UNSAFE_componentWillMount'.
2797
2867
  * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
2798
2868
  */
2799
2869
  'react/no-component-will-mount'?: Linter.RuleEntry<[]>;
2800
2870
  /**
2801
- * Replace usages of `componentWillReceiveProps` with `UNSAFE_componentWillReceiveProps`.
2871
+ * Replaces usage of 'componentWillReceiveProps' with 'UNSAFE_componentWillReceiveProps'.
2802
2872
  * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props
2803
2873
  */
2804
2874
  'react/no-component-will-receive-props'?: Linter.RuleEntry<[]>;
2805
2875
  /**
2806
- * Replace usages of `componentWillUpdate` with `UNSAFE_componentWillUpdate`.
2876
+ * Replaces usage of 'componentWillUpdate' with 'UNSAFE_componentWillUpdate'.
2807
2877
  * @see https://eslint-react.xyz/docs/rules/no-component-will-update
2808
2878
  */
2809
2879
  'react/no-component-will-update'?: Linter.RuleEntry<[]>;
2810
2880
  /**
2811
- * Replace usages of `<Context.Provider>` with `<Context>`.
2881
+ * Replaces usage of '<Context.Provider>' with '<Context>'.
2812
2882
  * @see https://eslint-react.xyz/docs/rules/no-context-provider
2813
2883
  */
2814
2884
  'react/no-context-provider'?: Linter.RuleEntry<[]>;
2815
2885
  /**
2816
- * Disallow `createRef` in function components.
2886
+ * Disallows 'createRef' in function components.
2817
2887
  * @see https://eslint-react.xyz/docs/rules/no-create-ref
2818
2888
  */
2819
2889
  'react/no-create-ref'?: Linter.RuleEntry<[]>;
2820
2890
  /**
2821
- * Disallow `defaultProps` property in favor of ES6 default parameters.
2891
+ * Disallows the 'defaultProps' property in favor of ES6 default parameters.
2822
2892
  * @see https://eslint-react.xyz/docs/rules/no-default-props
2823
2893
  */
2824
2894
  'react/no-default-props'?: Linter.RuleEntry<[]>;
2825
2895
  /**
2826
- * Disallow direct mutation of `this.state`.
2896
+ * Disallows direct mutation of 'this.state'.
2827
2897
  * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
2828
2898
  */
2829
2899
  'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>;
2830
2900
  /**
2831
- * Disallow duplicate `key` on elements in the same array or a list of `children`.
2901
+ * Disallows duplicate 'key' on elements in the same array or a list of 'children'.
2832
2902
  * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
2833
2903
  */
2834
2904
  'react/no-duplicate-key'?: Linter.RuleEntry<[]>;
2835
2905
  /**
2836
- * Disallow certain props on components.
2906
+ * Disallows certain props on components.
2837
2907
  * @see https://eslint-react.xyz/docs/rules/no-forbidden-props
2908
+ * @deprecated
2838
2909
  */
2839
2910
  'react/no-forbidden-props'?: Linter.RuleEntry<ReactNoForbiddenProps>;
2840
2911
  /**
2841
- * Replaces usages of `forwardRef` with passing `ref` as a prop.
2912
+ * Replaces usage of 'forwardRef' with passing 'ref' as a prop.
2842
2913
  * @see https://eslint-react.xyz/docs/rules/no-forward-ref
2843
2914
  */
2844
2915
  'react/no-forward-ref'?: Linter.RuleEntry<[]>;
2845
2916
  /**
2846
- * Prevents `key` from not being explicitly specified (e.g. spreading `key` from objects).
2917
+ * Prevents 'key' from not being explicitly specified (e.g., spreading 'key' from objects).
2847
2918
  * @see https://eslint-react.xyz/docs/rules/no-implicit-key
2848
2919
  */
2849
2920
  'react/no-implicit-key'?: Linter.RuleEntry<[]>;
@@ -2853,57 +2924,57 @@ interface RuleOptions {
2853
2924
  */
2854
2925
  'react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>;
2855
2926
  /**
2856
- * Enforces that all components have a `displayName` which can be used in devtools.
2927
+ * Enforces that all components have a 'displayName' that can be used in devtools.
2857
2928
  * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
2858
2929
  */
2859
2930
  'react/no-missing-component-display-name'?: Linter.RuleEntry<[]>;
2860
2931
  /**
2861
- * Enforces that all contexts have a `displayName` which can be used in devtools.
2932
+ * Enforces that all contexts have a 'displayName' that can be used in devtools.
2862
2933
  * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
2863
2934
  */
2864
2935
  'react/no-missing-context-display-name'?: Linter.RuleEntry<[]>;
2865
2936
  /**
2866
- * Disallow missing `key` on items in list rendering.
2937
+ * Disallows missing 'key' on items in list rendering.
2867
2938
  * @see https://eslint-react.xyz/docs/rules/no-missing-key
2868
2939
  */
2869
2940
  'react/no-missing-key'?: Linter.RuleEntry<[]>;
2870
2941
  /**
2871
- * Prevents incorrect usage of `captureOwnerStack`.
2942
+ * Prevents incorrect usage of 'captureOwnerStack'.
2872
2943
  * @see https://eslint-react.xyz/docs/rules/no-misused-capture-owner-stack
2873
2944
  */
2874
2945
  'react/no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>;
2875
2946
  /**
2876
- * Disallow nesting component definitions inside other components.
2947
+ * Disallows nesting component definitions inside other components.
2877
2948
  * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
2878
2949
  */
2879
2950
  'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>;
2880
2951
  /**
2881
- * Disallow nesting lazy component declarations inside other components.
2952
+ * Disallows nesting lazy component declarations inside other components.
2882
2953
  * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations
2883
2954
  */
2884
2955
  'react/no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>;
2885
2956
  /**
2886
- * Disallow `propTypes` in favor of TypeScript or another type-checking solution.
2957
+ * Disallows 'propTypes' in favor of TypeScript or another type-checking solution.
2887
2958
  * @see https://eslint-react.xyz/docs/rules/no-prop-types
2888
2959
  */
2889
2960
  'react/no-prop-types'?: Linter.RuleEntry<[]>;
2890
2961
  /**
2891
- * Disallow `shouldComponentUpdate` when extending `React.PureComponent`.
2962
+ * Disallows 'shouldComponentUpdate' when extending 'React.PureComponent'.
2892
2963
  * @see https://eslint-react.xyz/docs/rules/no-redundant-should-component-update
2893
2964
  */
2894
2965
  'react/no-redundant-should-component-update'?: Linter.RuleEntry<[]>;
2895
2966
  /**
2896
- * Disallow calling `this.setState` in `componentDidMount` outside of functions, such as callbacks.
2967
+ * Disallows calling 'this.setState' in 'componentDidMount' outside functions such as callbacks.
2897
2968
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount
2898
2969
  */
2899
2970
  'react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>;
2900
2971
  /**
2901
- * Disallow calling `this.setState` in `componentDidUpdate` outside of functions, such as callbacks.
2972
+ * Disallows calling 'this.setState' in 'componentDidUpdate' outside functions such as callbacks.
2902
2973
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update
2903
2974
  */
2904
2975
  'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>;
2905
2976
  /**
2906
- * Disallow calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
2977
+ * Disallows calling 'this.setState' in 'componentWillUpdate' outside functions such as callbacks.
2907
2978
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
2908
2979
  */
2909
2980
  'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>;
@@ -2913,42 +2984,42 @@ interface RuleOptions {
2913
2984
  */
2914
2985
  'react/no-string-refs'?: Linter.RuleEntry<[]>;
2915
2986
  /**
2916
- * Prevents the use of unnecessary `key` props on JSX elements when rendering lists.
2987
+ * Prevents 'key' from being placed on non-top-level elements in list rendering.
2917
2988
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-key
2918
2989
  */
2919
2990
  'react/no-unnecessary-key'?: Linter.RuleEntry<[]>;
2920
2991
  /**
2921
- * Disallow unnecessary usage of `useCallback`.
2992
+ * Disallows unnecessary usage of 'useCallback'.
2922
2993
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-callback
2923
2994
  */
2924
2995
  'react/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>;
2925
2996
  /**
2926
- * Disallow unnecessary usage of `useMemo`.
2997
+ * Disallows unnecessary usage of 'useMemo'.
2927
2998
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-memo
2928
2999
  */
2929
3000
  'react/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>;
2930
3001
  /**
2931
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
3002
+ * Enforces that a function with the 'use' prefix uses at least one Hook inside it.
2932
3003
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix
2933
3004
  */
2934
3005
  'react/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>;
2935
3006
  /**
2936
- * Warns the usage of `UNSAFE_componentWillMount` in class components.
3007
+ * Warns about the use of 'UNSAFE_componentWillMount' in class components.
2937
3008
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
2938
3009
  */
2939
3010
  'react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>;
2940
3011
  /**
2941
- * Warns the usage of `UNSAFE_componentWillReceiveProps` in class components.
3012
+ * Warns about the use of 'UNSAFE_componentWillReceiveProps' in class components.
2942
3013
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props
2943
3014
  */
2944
3015
  'react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>;
2945
3016
  /**
2946
- * Warns the usage of `UNSAFE_componentWillUpdate` in class components.
3017
+ * Warns about the use of 'UNSAFE_componentWillUpdate' in class components.
2947
3018
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update
2948
3019
  */
2949
3020
  'react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>;
2950
3021
  /**
2951
- * Prevents non-stable values (i.e. object literals) from being used as a value for `Context.Provider`.
3022
+ * Prevents non-stable values (i.e., object literals) from being used as a value for 'Context.Provider'.
2952
3023
  * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value
2953
3024
  */
2954
3025
  'react/no-unstable-context-value'?: Linter.RuleEntry<[]>;
@@ -2956,34 +3027,34 @@ interface RuleOptions {
2956
3027
  * Prevents using referential-type values as default props in object destructuring.
2957
3028
  * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
2958
3029
  */
2959
- 'react/no-unstable-default-props'?: Linter.RuleEntry<[]>;
3030
+ 'react/no-unstable-default-props'?: Linter.RuleEntry<ReactNoUnstableDefaultProps>;
2960
3031
  /**
2961
- * Warns unused class component methods and properties.
3032
+ * Warns about unused class component methods and properties.
2962
3033
  * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
2963
3034
  */
2964
3035
  'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>;
2965
3036
  /**
2966
- * Warns component props that are defined but never used.
3037
+ * Warns about component props that are defined but never used.
2967
3038
  * @see https://eslint-react.xyz/docs/rules/no-unused-props
2968
3039
  */
2969
3040
  'react/no-unused-props'?: Linter.RuleEntry<[]>;
2970
3041
  /**
2971
- * Warns unused class component state.
3042
+ * Warns about unused class component state.
2972
3043
  * @see https://eslint-react.xyz/docs/rules/no-unused-state
2973
3044
  */
2974
3045
  'react/no-unused-state'?: Linter.RuleEntry<[]>;
2975
3046
  /**
2976
- * Replaces usages of `useContext` with `use`.
3047
+ * Replaces usage of 'useContext' with 'use'.
2977
3048
  * @see https://eslint-react.xyz/docs/rules/no-use-context
2978
3049
  */
2979
3050
  'react/no-use-context'?: Linter.RuleEntry<[]>;
2980
3051
  /**
2981
- * Disallow useless `forwardRef` calls on components that don't use `ref`s.
3052
+ * Disallows useless 'forwardRef' calls on components that don't use 'ref's.
2982
3053
  * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
2983
3054
  */
2984
3055
  'react/no-useless-forward-ref'?: Linter.RuleEntry<[]>;
2985
3056
  /**
2986
- * Disallow useless fragment elements.
3057
+ * Disallows useless fragment elements.
2987
3058
  * @see https://eslint-react.xyz/docs/rules/no-useless-fragment
2988
3059
  */
2989
3060
  'react/no-useless-fragment'?: Linter.RuleEntry<ReactNoUselessFragment>;
@@ -2993,7 +3064,7 @@ interface RuleOptions {
2993
3064
  */
2994
3065
  'react/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>;
2995
3066
  /**
2996
- * Enforces React is imported via a namespace import.
3067
+ * Enforces importing React via a namespace import.
2997
3068
  * @see https://eslint-react.xyz/docs/rules/prefer-namespace-import
2998
3069
  */
2999
3070
  'react/prefer-namespace-import'?: Linter.RuleEntry<[]>;
@@ -3003,7 +3074,7 @@ interface RuleOptions {
3003
3074
  */
3004
3075
  'react/prefer-read-only-props'?: Linter.RuleEntry<[]>;
3005
3076
  /**
3006
- * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
3077
+ * Enforces wrapping function calls made inside 'useState' in an 'initializer function'.
3007
3078
  * @see https://eslint-react.xyz/docs/rules/prefer-use-state-lazy-initialization
3008
3079
  */
3009
3080
  'react/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>;
@@ -3979,6 +4050,11 @@ interface RuleOptions {
3979
4050
  * @deprecated
3980
4051
  */
3981
4052
  'template-tag-spacing'?: Linter.RuleEntry<TemplateTagSpacing>;
4053
+ /**
4054
+ * enforce using `.each` or `.for` consistently
4055
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-each-for.md
4056
+ */
4057
+ 'test/consistent-each-for'?: Linter.RuleEntry<TestConsistentEachFor>;
3982
4058
  /**
3983
4059
  * require test file pattern
3984
4060
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-filename.md
@@ -4028,7 +4104,7 @@ interface RuleOptions {
4028
4104
  * disallow conditional expects
4029
4105
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-expect.md
4030
4106
  */
4031
- 'test/no-conditional-expect'?: Linter.RuleEntry<[]>;
4107
+ 'test/no-conditional-expect'?: Linter.RuleEntry<TestNoConditionalExpect>;
4032
4108
  /**
4033
4109
  * disallow conditional tests
4034
4110
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-in-test.md
@@ -4125,6 +4201,11 @@ interface RuleOptions {
4125
4201
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-return-statement.md
4126
4202
  */
4127
4203
  'test/no-test-return-statement'?: Linter.RuleEntry<[]>;
4204
+ /**
4205
+ * Disallow unnecessary async function wrapper for expected promises
4206
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-unneeded-async-expect-function.md
4207
+ */
4208
+ 'test/no-unneeded-async-expect-function'?: Linter.RuleEntry<[]>;
4128
4209
  /**
4129
4210
  * Enforce padding around `afterAll` blocks
4130
4211
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-all-blocks.md
@@ -4201,7 +4282,7 @@ interface RuleOptions {
4201
4282
  */
4202
4283
  'test/prefer-each'?: Linter.RuleEntry<[]>;
4203
4284
  /**
4204
- * enforce using the built-in quality matchers
4285
+ * enforce using the built-in equality matchers
4205
4286
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-equality-matcher.md
4206
4287
  */
4207
4288
  'test/prefer-equality-matcher'?: Linter.RuleEntry<[]>;
@@ -4234,7 +4315,7 @@ interface RuleOptions {
4234
4315
  * prefer dynamic import in mock
4235
4316
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-import-in-mock.md
4236
4317
  */
4237
- 'test/prefer-import-in-mock'?: Linter.RuleEntry<[]>;
4318
+ 'test/prefer-import-in-mock'?: Linter.RuleEntry<TestPreferImportInMock>;
4238
4319
  /**
4239
4320
  * enforce importing Vitest globals
4240
4321
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-importing-vitest-globals.md
@@ -4250,6 +4331,11 @@ interface RuleOptions {
4250
4331
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-promise-shorthand.md
4251
4332
  */
4252
4333
  'test/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>;
4334
+ /**
4335
+ * Prefer mock return shorthands
4336
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-return-shorthand.md
4337
+ */
4338
+ 'test/prefer-mock-return-shorthand'?: Linter.RuleEntry<[]>;
4253
4339
  /**
4254
4340
  * enforce including a hint with external snapshots
4255
4341
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-snapshot-hint.md
@@ -4295,6 +4381,11 @@ interface RuleOptions {
4295
4381
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-contain.md
4296
4382
  */
4297
4383
  'test/prefer-to-contain'?: Linter.RuleEntry<[]>;
4384
+ /**
4385
+ * Suggest using `toHaveBeenCalledTimes()`
4386
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-been-called-times.md
4387
+ */
4388
+ 'test/prefer-to-have-been-called-times'?: Linter.RuleEntry<[]>;
4298
4389
  /**
4299
4390
  * enforce using toHaveLength()
4300
4391
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md
@@ -4310,6 +4401,11 @@ interface RuleOptions {
4310
4401
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-vi-mocked.md
4311
4402
  */
4312
4403
  'test/prefer-vi-mocked'?: Linter.RuleEntry<[]>;
4404
+ /**
4405
+ * ensure that every `expect.poll` call is awaited
4406
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-awaited-expect-poll.md
4407
+ */
4408
+ 'test/require-awaited-expect-poll'?: Linter.RuleEntry<[]>;
4313
4409
  /**
4314
4410
  * require setup and teardown to be within a hook
4315
4411
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-hook.md
@@ -4803,6 +4899,11 @@ interface RuleOptions {
4803
4899
  * @see https://typescript-eslint.io/rules/no-unused-expressions
4804
4900
  */
4805
4901
  'ts/no-unused-expressions'?: Linter.RuleEntry<TsNoUnusedExpressions>;
4902
+ /**
4903
+ * Disallow unused private class members
4904
+ * @see https://typescript-eslint.io/rules/no-unused-private-class-members
4905
+ */
4906
+ 'ts/no-unused-private-class-members'?: Linter.RuleEntry<[]>;
4806
4907
  /**
4807
4908
  * Disallow unused variables
4808
4909
  * @see https://typescript-eslint.io/rules/no-unused-vars
@@ -4818,6 +4919,11 @@ interface RuleOptions {
4818
4919
  * @see https://typescript-eslint.io/rules/no-useless-constructor
4819
4920
  */
4820
4921
  'ts/no-useless-constructor'?: Linter.RuleEntry<[]>;
4922
+ /**
4923
+ * Disallow default values that will never be used
4924
+ * @see https://typescript-eslint.io/rules/no-useless-default-assignment
4925
+ */
4926
+ 'ts/no-useless-default-assignment'?: Linter.RuleEntry<[]>;
4821
4927
  /**
4822
4928
  * Disallow empty exports that don't change anything in a module file
4823
4929
  * @see https://typescript-eslint.io/rules/no-useless-empty-export
@@ -5029,710 +5135,725 @@ interface RuleOptions {
5029
5135
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>;
5030
5136
  /**
5031
5137
  * Improve regexes by making them shorter, consistent, and safer.
5032
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/better-regex.md
5138
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/better-regex.md
5033
5139
  */
5034
5140
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>;
5035
5141
  /**
5036
5142
  * Enforce a specific parameter name in catch clauses.
5037
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/catch-error-name.md
5143
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/catch-error-name.md
5038
5144
  */
5039
5145
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
5040
5146
  /**
5041
5147
  * Enforce consistent assertion style with `node:assert`.
5042
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-assert.md
5148
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-assert.md
5043
5149
  */
5044
5150
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
5045
5151
  /**
5046
5152
  * Prefer passing `Date` directly to the constructor when cloning.
5047
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-date-clone.md
5153
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-date-clone.md
5048
5154
  */
5049
5155
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
5050
5156
  /**
5051
5157
  * Use destructured variables over properties.
5052
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-destructuring.md
5158
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-destructuring.md
5053
5159
  */
5054
5160
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
5055
5161
  /**
5056
5162
  * Prefer consistent types when spreading a ternary in an array literal.
5057
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-empty-array-spread.md
5163
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-empty-array-spread.md
5058
5164
  */
5059
5165
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
5060
5166
  /**
5061
5167
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
5062
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-existence-index-check.md
5168
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-existence-index-check.md
5063
5169
  */
5064
5170
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
5065
5171
  /**
5066
5172
  * Move function definitions to the highest possible scope.
5067
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/consistent-function-scoping.md
5173
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-function-scoping.md
5068
5174
  */
5069
5175
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
5070
5176
  /**
5071
5177
  * Enforce correct `Error` subclassing.
5072
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/custom-error-definition.md
5178
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/custom-error-definition.md
5073
5179
  */
5074
5180
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
5075
5181
  /**
5076
5182
  * Enforce no spaces between braces.
5077
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/empty-brace-spaces.md
5183
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/empty-brace-spaces.md
5078
5184
  */
5079
5185
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
5080
5186
  /**
5081
5187
  * Enforce passing a `message` value when creating a built-in error.
5082
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/error-message.md
5188
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/error-message.md
5083
5189
  */
5084
5190
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
5085
5191
  /**
5086
5192
  * Require escape sequences to use uppercase or lowercase values.
5087
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/escape-case.md
5193
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/escape-case.md
5088
5194
  */
5089
5195
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
5090
5196
  /**
5091
5197
  * Add expiration conditions to TODO comments.
5092
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/expiring-todo-comments.md
5198
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/expiring-todo-comments.md
5093
5199
  */
5094
5200
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
5095
5201
  /**
5096
5202
  * Enforce explicitly comparing the `length` or `size` property of a value.
5097
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/explicit-length-check.md
5203
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/explicit-length-check.md
5098
5204
  */
5099
5205
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
5100
5206
  /**
5101
5207
  * Enforce a case style for filenames.
5102
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/filename-case.md
5208
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/filename-case.md
5103
5209
  */
5104
5210
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
5105
5211
  /**
5106
5212
  * Enforce specific import styles per module.
5107
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/import-style.md
5213
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/import-style.md
5108
5214
  */
5109
5215
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
5110
5216
  /**
5111
5217
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
5112
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/new-for-builtins.md
5218
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/new-for-builtins.md
5113
5219
  */
5114
5220
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
5115
5221
  /**
5116
5222
  * Enforce specifying rules to disable in `eslint-disable` comments.
5117
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-abusive-eslint-disable.md
5223
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-abusive-eslint-disable.md
5118
5224
  */
5119
5225
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
5120
5226
  /**
5121
5227
  * Disallow recursive access to `this` within getters and setters.
5122
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-accessor-recursion.md
5228
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-accessor-recursion.md
5123
5229
  */
5124
5230
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
5125
5231
  /**
5126
5232
  * Disallow anonymous functions and classes as the default export.
5127
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-anonymous-default-export.md
5233
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-anonymous-default-export.md
5128
5234
  */
5129
5235
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
5130
5236
  /**
5131
5237
  * Prevent passing a function reference directly to iterator methods.
5132
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-callback-reference.md
5238
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-callback-reference.md
5133
5239
  */
5134
5240
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>;
5135
5241
  /**
5136
5242
  * Prefer `for…of` over the `forEach` method.
5137
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-for-each.md
5243
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-for-each.md
5138
5244
  */
5139
5245
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
5140
5246
  /**
5141
5247
  * Disallow using the `this` argument in array methods.
5142
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-method-this-argument.md
5248
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-method-this-argument.md
5143
5249
  */
5144
5250
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
5145
5251
  /**
5146
5252
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
5147
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/deprecated-rules.md#no-array-push-push
5253
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-array-push-push
5148
5254
  * @deprecated
5149
5255
  */
5150
5256
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
5151
5257
  /**
5152
5258
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
5153
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-reduce.md
5259
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-reduce.md
5154
5260
  */
5155
5261
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
5156
5262
  /**
5157
5263
  * Prefer `Array#toReversed()` over `Array#reverse()`.
5158
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-reverse.md
5264
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-reverse.md
5159
5265
  */
5160
5266
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
5161
5267
  /**
5162
5268
  * Prefer `Array#toSorted()` over `Array#sort()`.
5163
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-array-sort.md
5269
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-sort.md
5164
5270
  */
5165
5271
  'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
5166
5272
  /**
5167
5273
  * Disallow member access from await expression.
5168
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-await-expression-member.md
5274
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-await-expression-member.md
5169
5275
  */
5170
5276
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
5171
5277
  /**
5172
5278
  * Disallow using `await` in `Promise` method parameters.
5173
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-await-in-promise-methods.md
5279
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-await-in-promise-methods.md
5174
5280
  */
5175
5281
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
5176
5282
  /**
5177
5283
  * Do not use leading/trailing space between `console.log` parameters.
5178
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-console-spaces.md
5284
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-console-spaces.md
5179
5285
  */
5180
5286
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
5181
5287
  /**
5182
5288
  * Do not use `document.cookie` directly.
5183
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-document-cookie.md
5289
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-document-cookie.md
5184
5290
  */
5185
5291
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
5186
5292
  /**
5187
5293
  * Disallow empty files.
5188
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-empty-file.md
5294
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-empty-file.md
5189
5295
  */
5190
5296
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>;
5191
5297
  /**
5192
5298
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
5193
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-for-loop.md
5299
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-for-loop.md
5194
5300
  */
5195
5301
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
5196
5302
  /**
5197
5303
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
5198
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-hex-escape.md
5304
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-hex-escape.md
5199
5305
  */
5200
5306
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
5307
+ /**
5308
+ * Disallow immediate mutation after variable assignment.
5309
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-immediate-mutation.md
5310
+ */
5311
+ 'unicorn/no-immediate-mutation'?: Linter.RuleEntry<[]>;
5201
5312
  /**
5202
5313
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
5203
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/deprecated-rules.md#no-instanceof-array
5314
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-instanceof-array
5204
5315
  * @deprecated
5205
5316
  */
5206
5317
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
5207
5318
  /**
5208
5319
  * Disallow `instanceof` with built-in objects
5209
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-instanceof-builtins.md
5320
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-instanceof-builtins.md
5210
5321
  */
5211
5322
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
5212
5323
  /**
5213
5324
  * Disallow invalid options in `fetch()` and `new Request()`.
5214
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-invalid-fetch-options.md
5325
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-invalid-fetch-options.md
5215
5326
  */
5216
5327
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
5217
5328
  /**
5218
5329
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
5219
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-invalid-remove-event-listener.md
5330
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-invalid-remove-event-listener.md
5220
5331
  */
5221
5332
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
5222
5333
  /**
5223
5334
  * Disallow identifiers starting with `new` or `class`.
5224
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-keyword-prefix.md
5335
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-keyword-prefix.md
5225
5336
  */
5226
5337
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
5227
5338
  /**
5228
5339
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
5229
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/deprecated-rules.md#no-length-as-slice-end
5340
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-length-as-slice-end
5230
5341
  * @deprecated
5231
5342
  */
5232
5343
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
5233
5344
  /**
5234
5345
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
5235
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-lonely-if.md
5346
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-lonely-if.md
5236
5347
  */
5237
5348
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
5238
5349
  /**
5239
5350
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
5240
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-magic-array-flat-depth.md
5351
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-magic-array-flat-depth.md
5241
5352
  */
5242
5353
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
5243
5354
  /**
5244
5355
  * Disallow named usage of default import and export.
5245
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-named-default.md
5356
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-named-default.md
5246
5357
  */
5247
5358
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
5248
5359
  /**
5249
5360
  * Disallow negated conditions.
5250
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-negated-condition.md
5361
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-negated-condition.md
5251
5362
  */
5252
5363
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
5253
5364
  /**
5254
5365
  * Disallow negated expression in equality check.
5255
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-negation-in-equality-check.md
5366
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-negation-in-equality-check.md
5256
5367
  */
5257
5368
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
5258
5369
  /**
5259
5370
  * Disallow nested ternary expressions.
5260
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-nested-ternary.md
5371
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-nested-ternary.md
5261
5372
  */
5262
5373
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
5263
5374
  /**
5264
5375
  * Disallow `new Array()`.
5265
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-new-array.md
5376
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-new-array.md
5266
5377
  */
5267
5378
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
5268
5379
  /**
5269
5380
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
5270
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-new-buffer.md
5381
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-new-buffer.md
5271
5382
  */
5272
5383
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
5273
5384
  /**
5274
5385
  * Disallow the use of the `null` literal.
5275
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-null.md
5386
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-null.md
5276
5387
  */
5277
5388
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
5278
5389
  /**
5279
5390
  * Disallow the use of objects as default parameters.
5280
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-object-as-default-parameter.md
5391
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-object-as-default-parameter.md
5281
5392
  */
5282
5393
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
5283
5394
  /**
5284
5395
  * Disallow `process.exit()`.
5285
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-process-exit.md
5396
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-process-exit.md
5286
5397
  */
5287
5398
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
5288
5399
  /**
5289
5400
  * Disallow passing single-element arrays to `Promise` methods.
5290
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-single-promise-in-promise-methods.md
5401
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-single-promise-in-promise-methods.md
5291
5402
  */
5292
5403
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
5293
5404
  /**
5294
5405
  * Disallow classes that only have static members.
5295
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-static-only-class.md
5406
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-static-only-class.md
5296
5407
  */
5297
5408
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
5298
5409
  /**
5299
5410
  * Disallow `then` property.
5300
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-thenable.md
5411
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-thenable.md
5301
5412
  */
5302
5413
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
5303
5414
  /**
5304
5415
  * Disallow assigning `this` to a variable.
5305
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-this-assignment.md
5416
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-this-assignment.md
5306
5417
  */
5307
5418
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
5308
5419
  /**
5309
5420
  * Disallow comparing `undefined` using `typeof`.
5310
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-typeof-undefined.md
5421
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-typeof-undefined.md
5311
5422
  */
5312
5423
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
5313
5424
  /**
5314
5425
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
5315
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-array-flat-depth.md
5426
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-array-flat-depth.md
5316
5427
  */
5317
5428
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
5318
5429
  /**
5319
5430
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
5320
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-array-splice-count.md
5431
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-array-splice-count.md
5321
5432
  */
5322
5433
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
5323
5434
  /**
5324
5435
  * Disallow awaiting non-promise values.
5325
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-await.md
5436
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-await.md
5326
5437
  */
5327
5438
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
5328
5439
  /**
5329
5440
  * Enforce the use of built-in methods instead of unnecessary polyfills.
5330
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-polyfills.md
5441
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-polyfills.md
5331
5442
  */
5332
5443
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
5333
5444
  /**
5334
5445
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
5335
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unnecessary-slice-end.md
5446
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-slice-end.md
5336
5447
  */
5337
5448
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
5338
5449
  /**
5339
5450
  * Disallow unreadable array destructuring.
5340
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unreadable-array-destructuring.md
5451
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unreadable-array-destructuring.md
5341
5452
  */
5342
5453
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
5343
5454
  /**
5344
5455
  * Disallow unreadable IIFEs.
5345
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unreadable-iife.md
5456
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unreadable-iife.md
5346
5457
  */
5347
5458
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
5348
5459
  /**
5349
5460
  * Disallow unused object properties.
5350
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-unused-properties.md
5461
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unused-properties.md
5351
5462
  */
5352
5463
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
5464
+ /**
5465
+ * Disallow useless values or fallbacks in `Set`, `Map`, `WeakSet`, or `WeakMap`.
5466
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-collection-argument.md
5467
+ */
5468
+ 'unicorn/no-useless-collection-argument'?: Linter.RuleEntry<[]>;
5353
5469
  /**
5354
5470
  * Disallow unnecessary `Error.captureStackTrace(…)`.
5355
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-error-capture-stack-trace.md
5471
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-error-capture-stack-trace.md
5356
5472
  */
5357
5473
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
5358
5474
  /**
5359
5475
  * Disallow useless fallback when spreading in object literals.
5360
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-fallback-in-spread.md
5476
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-fallback-in-spread.md
5361
5477
  */
5362
5478
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
5363
5479
  /**
5364
5480
  * Disallow useless array length check.
5365
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-length-check.md
5481
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-length-check.md
5366
5482
  */
5367
5483
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
5368
5484
  /**
5369
5485
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
5370
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-promise-resolve-reject.md
5486
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-promise-resolve-reject.md
5371
5487
  */
5372
5488
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
5373
5489
  /**
5374
5490
  * Disallow unnecessary spread.
5375
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-spread.md
5491
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-spread.md
5376
5492
  */
5377
5493
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
5378
5494
  /**
5379
5495
  * Disallow useless case in switch statements.
5380
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-switch-case.md
5496
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-switch-case.md
5381
5497
  */
5382
5498
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
5383
5499
  /**
5384
5500
  * Disallow useless `undefined`.
5385
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-useless-undefined.md
5501
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-undefined.md
5386
5502
  */
5387
5503
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
5388
5504
  /**
5389
5505
  * Disallow number literals with zero fractions or dangling dots.
5390
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/no-zero-fractions.md
5506
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-zero-fractions.md
5391
5507
  */
5392
5508
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
5393
5509
  /**
5394
5510
  * Enforce proper case for numeric literals.
5395
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/number-literal-case.md
5511
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/number-literal-case.md
5396
5512
  */
5397
5513
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
5398
5514
  /**
5399
5515
  * Enforce the style of numeric separators by correctly grouping digits.
5400
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/numeric-separators-style.md
5516
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/numeric-separators-style.md
5401
5517
  */
5402
5518
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
5403
5519
  /**
5404
5520
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
5405
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-add-event-listener.md
5521
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-add-event-listener.md
5406
5522
  */
5407
5523
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
5408
5524
  /**
5409
5525
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
5410
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-find.md
5526
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-find.md
5411
5527
  */
5412
5528
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
5413
5529
  /**
5414
5530
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
5415
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-flat.md
5531
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-flat.md
5416
5532
  */
5417
5533
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
5418
5534
  /**
5419
5535
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
5420
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-flat-map.md
5536
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-flat-map.md
5421
5537
  */
5422
5538
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
5423
5539
  /**
5424
5540
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
5425
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-index-of.md
5541
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-index-of.md
5426
5542
  */
5427
5543
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
5428
5544
  /**
5429
5545
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
5430
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-array-some.md
5546
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-some.md
5431
5547
  */
5432
5548
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
5433
5549
  /**
5434
5550
  * Prefer `.at()` method for index access and `String#charAt()`.
5435
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-at.md
5551
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-at.md
5436
5552
  */
5437
5553
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
5438
5554
  /**
5439
5555
  * Prefer `BigInt` literals over the constructor.
5440
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-bigint-literals.md
5556
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-bigint-literals.md
5441
5557
  */
5442
5558
  'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
5443
5559
  /**
5444
5560
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
5445
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-blob-reading-methods.md
5561
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-blob-reading-methods.md
5446
5562
  */
5447
5563
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
5448
5564
  /**
5449
5565
  * Prefer class field declarations over `this` assignments in constructors.
5450
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-class-fields.md
5566
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-class-fields.md
5451
5567
  */
5452
5568
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
5453
5569
  /**
5454
5570
  * Prefer using `Element#classList.toggle()` to toggle class names.
5455
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-classlist-toggle.md
5571
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-classlist-toggle.md
5456
5572
  */
5457
5573
  'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
5458
5574
  /**
5459
5575
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
5460
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-code-point.md
5576
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-code-point.md
5461
5577
  */
5462
5578
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
5463
5579
  /**
5464
5580
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
5465
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-date-now.md
5581
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-date-now.md
5466
5582
  */
5467
5583
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
5468
5584
  /**
5469
5585
  * Prefer default parameters over reassignment.
5470
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-default-parameters.md
5586
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-default-parameters.md
5471
5587
  */
5472
5588
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
5473
5589
  /**
5474
5590
  * Prefer `Node#append()` over `Node#appendChild()`.
5475
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-dom-node-append.md
5591
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-append.md
5476
5592
  */
5477
5593
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
5478
5594
  /**
5479
5595
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
5480
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-dom-node-dataset.md
5596
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-dataset.md
5481
5597
  */
5482
5598
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
5483
5599
  /**
5484
5600
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
5485
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-dom-node-remove.md
5601
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-remove.md
5486
5602
  */
5487
5603
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
5488
5604
  /**
5489
5605
  * Prefer `.textContent` over `.innerText`.
5490
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-dom-node-text-content.md
5606
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-text-content.md
5491
5607
  */
5492
5608
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
5493
5609
  /**
5494
5610
  * Prefer `EventTarget` over `EventEmitter`.
5495
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-event-target.md
5611
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-event-target.md
5496
5612
  */
5497
5613
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
5498
5614
  /**
5499
5615
  * Prefer `export…from` when re-exporting.
5500
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-export-from.md
5616
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-export-from.md
5501
5617
  */
5502
5618
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
5503
5619
  /**
5504
5620
  * Prefer `globalThis` over `window`, `self`, and `global`.
5505
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-global-this.md
5621
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-global-this.md
5506
5622
  */
5507
5623
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
5508
5624
  /**
5509
5625
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
5510
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-import-meta-properties.md
5626
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-import-meta-properties.md
5511
5627
  */
5512
5628
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
5513
5629
  /**
5514
5630
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
5515
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-includes.md
5631
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-includes.md
5516
5632
  */
5517
5633
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
5518
5634
  /**
5519
5635
  * Prefer reading a JSON file as a buffer.
5520
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-json-parse-buffer.md
5636
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-json-parse-buffer.md
5521
5637
  */
5522
5638
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
5523
5639
  /**
5524
5640
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
5525
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-keyboard-event-key.md
5641
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-keyboard-event-key.md
5526
5642
  */
5527
5643
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
5528
5644
  /**
5529
5645
  * Prefer using a logical operator over a ternary.
5530
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-logical-operator-over-ternary.md
5646
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-logical-operator-over-ternary.md
5531
5647
  */
5532
5648
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
5533
5649
  /**
5534
5650
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
5535
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-math-min-max.md
5651
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-math-min-max.md
5536
5652
  */
5537
5653
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
5538
5654
  /**
5539
5655
  * Enforce the use of `Math.trunc` instead of bitwise operators.
5540
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-math-trunc.md
5656
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-math-trunc.md
5541
5657
  */
5542
5658
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
5543
5659
  /**
5544
5660
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
5545
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-modern-dom-apis.md
5661
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-modern-dom-apis.md
5546
5662
  */
5547
5663
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
5548
5664
  /**
5549
5665
  * Prefer modern `Math` APIs over legacy patterns.
5550
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-modern-math-apis.md
5666
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-modern-math-apis.md
5551
5667
  */
5552
5668
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
5553
5669
  /**
5554
5670
  * Prefer JavaScript modules (ESM) over CommonJS.
5555
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-module.md
5671
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-module.md
5556
5672
  */
5557
5673
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
5558
5674
  /**
5559
5675
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
5560
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-native-coercion-functions.md
5676
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-native-coercion-functions.md
5561
5677
  */
5562
5678
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
5563
5679
  /**
5564
5680
  * Prefer negative index over `.length - index` when possible.
5565
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-negative-index.md
5681
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-negative-index.md
5566
5682
  */
5567
5683
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
5568
5684
  /**
5569
5685
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
5570
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-node-protocol.md
5686
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-node-protocol.md
5571
5687
  */
5572
5688
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
5573
5689
  /**
5574
5690
  * Prefer `Number` static properties over global ones.
5575
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-number-properties.md
5691
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-number-properties.md
5576
5692
  */
5577
5693
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
5578
5694
  /**
5579
5695
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
5580
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-object-from-entries.md
5696
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-object-from-entries.md
5581
5697
  */
5582
5698
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
5583
5699
  /**
5584
5700
  * Prefer omitting the `catch` binding parameter.
5585
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-optional-catch-binding.md
5701
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-optional-catch-binding.md
5586
5702
  */
5587
5703
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
5588
5704
  /**
5589
5705
  * Prefer borrowing methods from the prototype instead of the instance.
5590
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-prototype-methods.md
5706
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-prototype-methods.md
5591
5707
  */
5592
5708
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
5593
5709
  /**
5594
5710
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
5595
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-query-selector.md
5711
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-query-selector.md
5596
5712
  */
5597
5713
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>;
5598
5714
  /**
5599
5715
  * Prefer `Reflect.apply()` over `Function#apply()`.
5600
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-reflect-apply.md
5716
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-reflect-apply.md
5601
5717
  */
5602
5718
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
5603
5719
  /**
5604
5720
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
5605
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-regexp-test.md
5721
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-regexp-test.md
5606
5722
  */
5607
5723
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
5724
+ /**
5725
+ * Prefer `Response.json()` over `new Response(JSON.stringify())`.
5726
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-response-static-json.md
5727
+ */
5728
+ 'unicorn/prefer-response-static-json'?: Linter.RuleEntry<[]>;
5608
5729
  /**
5609
5730
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
5610
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-set-has.md
5731
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-set-has.md
5611
5732
  */
5612
5733
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>;
5613
5734
  /**
5614
5735
  * Prefer using `Set#size` instead of `Array#length`.
5615
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-set-size.md
5736
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-set-size.md
5616
5737
  */
5617
5738
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
5618
5739
  /**
5619
5740
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
5620
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-single-call.md
5741
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-single-call.md
5621
5742
  */
5622
5743
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
5623
5744
  /**
5624
5745
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
5625
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-spread.md
5746
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-spread.md
5626
5747
  */
5627
5748
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
5628
5749
  /**
5629
5750
  * Prefer using the `String.raw` tag to avoid escaping `\`.
5630
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-raw.md
5751
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-raw.md
5631
5752
  */
5632
5753
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
5633
5754
  /**
5634
5755
  * Prefer `String#replaceAll()` over regex searches with the global flag.
5635
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-replace-all.md
5756
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-replace-all.md
5636
5757
  */
5637
5758
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
5638
5759
  /**
5639
5760
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
5640
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-slice.md
5761
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-slice.md
5641
5762
  */
5642
5763
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
5643
5764
  /**
5644
5765
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
5645
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-starts-ends-with.md
5766
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-starts-ends-with.md
5646
5767
  */
5647
5768
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
5648
5769
  /**
5649
5770
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
5650
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-string-trim-start-end.md
5771
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-trim-start-end.md
5651
5772
  */
5652
5773
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
5653
5774
  /**
5654
5775
  * Prefer using `structuredClone` to create a deep clone.
5655
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-structured-clone.md
5776
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-structured-clone.md
5656
5777
  */
5657
5778
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
5658
5779
  /**
5659
5780
  * Prefer `switch` over multiple `else-if`.
5660
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-switch.md
5781
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-switch.md
5661
5782
  */
5662
5783
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
5663
5784
  /**
5664
5785
  * Prefer ternary expressions over simple `if-else` statements.
5665
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-ternary.md
5786
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-ternary.md
5666
5787
  */
5667
5788
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
5668
5789
  /**
5669
5790
  * Prefer top-level await over top-level promises and async function calls.
5670
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-top-level-await.md
5791
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-top-level-await.md
5671
5792
  */
5672
5793
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
5673
5794
  /**
5674
5795
  * Enforce throwing `TypeError` in type checking conditions.
5675
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prefer-type-error.md
5796
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-type-error.md
5676
5797
  */
5677
5798
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
5678
5799
  /**
5679
5800
  * Prevent abbreviations.
5680
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/prevent-abbreviations.md
5801
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prevent-abbreviations.md
5681
5802
  */
5682
5803
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
5683
5804
  /**
5684
5805
  * Enforce consistent relative URL style.
5685
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/relative-url-style.md
5806
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/relative-url-style.md
5686
5807
  */
5687
5808
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
5688
5809
  /**
5689
5810
  * Enforce using the separator argument with `Array#join()`.
5690
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-array-join-separator.md
5811
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-array-join-separator.md
5691
5812
  */
5692
5813
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
5693
5814
  /**
5694
5815
  * Require non-empty module attributes for imports and exports
5695
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-module-attributes.md
5816
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-module-attributes.md
5696
5817
  */
5697
5818
  'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
5698
5819
  /**
5699
5820
  * Require non-empty specifier list in import and export statements.
5700
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-module-specifiers.md
5821
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-module-specifiers.md
5701
5822
  */
5702
5823
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
5703
5824
  /**
5704
5825
  * Enforce using the digits argument with `Number#toFixed()`.
5705
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-number-to-fixed-digits-argument.md
5826
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-number-to-fixed-digits-argument.md
5706
5827
  */
5707
5828
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
5708
5829
  /**
5709
5830
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
5710
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/require-post-message-target-origin.md
5831
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-post-message-target-origin.md
5711
5832
  */
5712
5833
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
5713
5834
  /**
5714
5835
  * Enforce better string content.
5715
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/string-content.md
5836
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/string-content.md
5716
5837
  */
5717
5838
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
5718
5839
  /**
5719
5840
  * Enforce consistent brace style for `case` clauses.
5720
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/switch-case-braces.md
5841
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/switch-case-braces.md
5721
5842
  */
5722
5843
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
5723
5844
  /**
5724
5845
  * Fix whitespace-insensitive template indentation.
5725
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/template-indent.md
5846
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/template-indent.md
5726
5847
  */
5727
5848
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
5728
5849
  /**
5729
5850
  * Enforce consistent case for text encoding identifiers.
5730
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/text-encoding-identifier-case.md
5851
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/text-encoding-identifier-case.md
5731
5852
  */
5732
- 'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<[]>;
5853
+ 'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<UnicornTextEncodingIdentifierCase>;
5733
5854
  /**
5734
5855
  * Require `new` when creating an error.
5735
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v61.0.2/docs/rules/throw-new-error.md
5856
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/throw-new-error.md
5736
5857
  */
5737
5858
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
5738
5859
  /**
@@ -6235,6 +6356,11 @@ interface RuleOptions {
6235
6356
  * @see https://eslint.vuejs.org/rules/no-duplicate-attributes.html
6236
6357
  */
6237
6358
  'vue/no-duplicate-attributes'?: Linter.RuleEntry<VueNoDuplicateAttributes>;
6359
+ /**
6360
+ * disallow duplication of class names in class attributes
6361
+ * @see https://eslint.vuejs.org/rules/no-duplicate-class-names.html
6362
+ */
6363
+ 'vue/no-duplicate-class-names'?: Linter.RuleEntry<[]>;
6238
6364
  /**
6239
6365
  * disallow the `<template>` `<script>` `<style>` block to be empty
6240
6366
  * @see https://eslint.vuejs.org/rules/no-empty-component-block.html
@@ -7325,6 +7451,10 @@ type ImportNewlineAfterImport = [] | [{
7325
7451
  type ImportNoDuplicates = [] | [{
7326
7452
  "prefer-inline"?: boolean;
7327
7453
  }];
7454
+ // ----- import/prefer-default-export -----
7455
+ type ImportPreferDefaultExport = [] | [{
7456
+ target?: ("single" | "any");
7457
+ }];
7328
7458
  // ----- indent -----
7329
7459
  type Indent = [] | [("tab" | number)] | [("tab" | number), {
7330
7460
  SwitchCase?: number;
@@ -7417,6 +7547,7 @@ type JsdocCheckExamples = [] | [{
7417
7547
  }];
7418
7548
  // ----- jsdoc/check-indentation -----
7419
7549
  type JsdocCheckIndentation = [] | [{
7550
+ allowIndentedSections?: boolean;
7420
7551
  excludeTags?: string[];
7421
7552
  }];
7422
7553
  // ----- jsdoc/check-line-alignment -----
@@ -7763,6 +7894,14 @@ type JsdocRequireParamType = [] | [{
7763
7894
  defaultDestructuredRootType?: string;
7764
7895
  setDefaultDestructuredRootType?: boolean;
7765
7896
  }];
7897
+ // ----- jsdoc/require-rejects -----
7898
+ type JsdocRequireRejects = [] | [{
7899
+ contexts?: (string | {
7900
+ comment?: string;
7901
+ context?: string;
7902
+ })[];
7903
+ exemptedBy?: string[];
7904
+ }];
7766
7905
  // ----- jsdoc/require-returns -----
7767
7906
  type JsdocRequireReturns = [] | [{
7768
7907
  checkConstructors?: boolean;
@@ -7853,6 +7992,9 @@ type JsdocSortTags = [] | [{
7853
7992
  linesBetween?: number;
7854
7993
  reportIntraTagGroupSpacing?: boolean;
7855
7994
  reportTagGroupSpacing?: boolean;
7995
+ tagExceptions?: {
7996
+ [k: string]: number;
7997
+ };
7856
7998
  tagSequence?: {
7857
7999
  tags?: string[];
7858
8000
  }[];
@@ -9466,27 +9608,34 @@ type PaddingLineBetweenStatements = {
9466
9608
  // ----- perfectionist/sort-array-includes -----
9467
9609
  type PerfectionistSortArrayIncludes = {
9468
9610
  fallbackSort?: {
9611
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9469
9612
  order?: ("asc" | "desc");
9470
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9471
9613
  };
9614
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9472
9615
  specialCharacters?: ("remove" | "trim" | "keep");
9473
9616
  ignoreCase?: boolean;
9474
9617
  alphabet?: string;
9475
9618
  locales?: (string | string[]);
9476
9619
  order?: ("asc" | "desc");
9477
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9478
- groupKind?: ("mixed" | "literals-first" | "spreads-first");
9479
9620
  customGroups?: ({
9480
- newlinesInside?: (("always" | "never") | number);
9481
9621
  fallbackSort?: {
9622
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9482
9623
  order?: ("asc" | "desc");
9483
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9484
9624
  };
9625
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9485
9626
  groupName: string;
9627
+ newlinesInside?: ("ignore" | number);
9486
9628
  order?: ("asc" | "desc");
9487
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9488
- anyOf?: {
9629
+ anyOf: [{
9630
+ elementNamePattern?: (({
9631
+ pattern: string;
9632
+ flags?: string;
9633
+ } | string)[] | ({
9634
+ pattern: string;
9635
+ flags?: string;
9636
+ } | string));
9489
9637
  selector?: ("literal" | "spread");
9638
+ }, ...({
9490
9639
  elementNamePattern?: (({
9491
9640
  pattern: string;
9492
9641
  flags?: string;
@@ -9494,17 +9643,17 @@ type PerfectionistSortArrayIncludes = {
9494
9643
  pattern: string;
9495
9644
  flags?: string;
9496
9645
  } | string));
9497
- }[];
9646
+ selector?: ("literal" | "spread");
9647
+ })[]];
9498
9648
  } | {
9499
- newlinesInside?: (("always" | "never") | number);
9500
9649
  fallbackSort?: {
9650
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9501
9651
  order?: ("asc" | "desc");
9502
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9503
9652
  };
9653
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9504
9654
  groupName: string;
9655
+ newlinesInside?: ("ignore" | number);
9505
9656
  order?: ("asc" | "desc");
9506
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9507
- selector?: ("literal" | "spread");
9508
9657
  elementNamePattern?: (({
9509
9658
  pattern: string;
9510
9659
  flags?: string;
@@ -9512,7 +9661,23 @@ type PerfectionistSortArrayIncludes = {
9512
9661
  pattern: string;
9513
9662
  flags?: string;
9514
9663
  } | string));
9664
+ selector?: ("literal" | "spread");
9665
+ })[];
9666
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
9667
+ groups?: (string | [string, ...(string)[]] | {
9668
+ newlinesBetween: ("ignore" | number);
9669
+ } | {
9670
+ group: (string | [string, ...(string)[]]);
9671
+ fallbackSort?: {
9672
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9673
+ order?: ("asc" | "desc");
9674
+ };
9675
+ commentAbove?: string;
9676
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9677
+ newlinesInside?: ("ignore" | number);
9678
+ order?: ("asc" | "desc");
9515
9679
  })[];
9680
+ newlinesBetween?: ("ignore" | number);
9516
9681
  useConfigurationIf?: {
9517
9682
  allNamesMatchPattern?: (({
9518
9683
  pattern: string;
@@ -9545,34 +9710,36 @@ type PerfectionistSortArrayIncludes = {
9545
9710
  } | string)));
9546
9711
  });
9547
9712
  partitionByNewLine?: boolean;
9548
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9549
- groups?: (string | string[] | {
9550
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9551
- commentAbove?: string;
9552
- })[];
9553
9713
  }[];
9554
9714
  // ----- perfectionist/sort-classes -----
9555
9715
  type PerfectionistSortClasses = [] | [{
9556
9716
  fallbackSort?: {
9717
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9557
9718
  order?: ("asc" | "desc");
9558
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9559
9719
  };
9720
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9560
9721
  specialCharacters?: ("remove" | "trim" | "keep");
9561
9722
  ignoreCase?: boolean;
9562
9723
  alphabet?: string;
9563
9724
  locales?: (string | string[]);
9564
9725
  order?: ("asc" | "desc");
9565
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9566
9726
  customGroups?: ({
9567
- newlinesInside?: (("always" | "never") | number);
9568
9727
  fallbackSort?: {
9728
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9569
9729
  order?: ("asc" | "desc");
9570
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9571
9730
  };
9731
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9572
9732
  groupName: string;
9733
+ newlinesInside?: ("ignore" | number);
9573
9734
  order?: ("asc" | "desc");
9574
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9575
- anyOf?: {
9735
+ anyOf: [{
9736
+ elementNamePattern?: (({
9737
+ pattern: string;
9738
+ flags?: string;
9739
+ } | string)[] | ({
9740
+ pattern: string;
9741
+ flags?: string;
9742
+ } | string));
9576
9743
  modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
9577
9744
  selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
9578
9745
  decoratorNamePattern?: (({
@@ -9589,6 +9756,7 @@ type PerfectionistSortClasses = [] | [{
9589
9756
  pattern: string;
9590
9757
  flags?: string;
9591
9758
  } | string));
9759
+ }, ...({
9592
9760
  elementNamePattern?: (({
9593
9761
  pattern: string;
9594
9762
  flags?: string;
@@ -9596,33 +9764,49 @@ type PerfectionistSortClasses = [] | [{
9596
9764
  pattern: string;
9597
9765
  flags?: string;
9598
9766
  } | string));
9599
- }[];
9767
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
9768
+ selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
9769
+ decoratorNamePattern?: (({
9770
+ pattern: string;
9771
+ flags?: string;
9772
+ } | string)[] | ({
9773
+ pattern: string;
9774
+ flags?: string;
9775
+ } | string));
9776
+ elementValuePattern?: (({
9777
+ pattern: string;
9778
+ flags?: string;
9779
+ } | string)[] | ({
9780
+ pattern: string;
9781
+ flags?: string;
9782
+ } | string));
9783
+ })[]];
9600
9784
  } | {
9601
- newlinesInside?: (("always" | "never") | number);
9602
9785
  fallbackSort?: {
9786
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9603
9787
  order?: ("asc" | "desc");
9604
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9605
9788
  };
9789
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9606
9790
  groupName: string;
9791
+ newlinesInside?: ("ignore" | number);
9607
9792
  order?: ("asc" | "desc");
9608
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9609
- modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
9610
- selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
9611
- decoratorNamePattern?: (({
9793
+ elementNamePattern?: (({
9612
9794
  pattern: string;
9613
9795
  flags?: string;
9614
9796
  } | string)[] | ({
9615
9797
  pattern: string;
9616
9798
  flags?: string;
9617
9799
  } | string));
9618
- elementValuePattern?: (({
9800
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
9801
+ selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
9802
+ decoratorNamePattern?: (({
9619
9803
  pattern: string;
9620
9804
  flags?: string;
9621
9805
  } | string)[] | ({
9622
9806
  pattern: string;
9623
9807
  flags?: string;
9624
9808
  } | string));
9625
- elementNamePattern?: (({
9809
+ elementValuePattern?: (({
9626
9810
  pattern: string;
9627
9811
  flags?: string;
9628
9812
  } | string)[] | ({
@@ -9630,6 +9814,21 @@ type PerfectionistSortClasses = [] | [{
9630
9814
  flags?: string;
9631
9815
  } | string));
9632
9816
  })[];
9817
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
9818
+ groups?: (string | [string, ...(string)[]] | {
9819
+ newlinesBetween: ("ignore" | number);
9820
+ } | {
9821
+ group: (string | [string, ...(string)[]]);
9822
+ fallbackSort?: {
9823
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9824
+ order?: ("asc" | "desc");
9825
+ };
9826
+ commentAbove?: string;
9827
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9828
+ newlinesInside?: ("ignore" | number);
9829
+ order?: ("asc" | "desc");
9830
+ })[];
9831
+ newlinesBetween?: ("ignore" | number);
9633
9832
  ignoreCallbackDependenciesPatterns?: (({
9634
9833
  pattern: string;
9635
9834
  flags?: string;
@@ -9660,24 +9859,77 @@ type PerfectionistSortClasses = [] | [{
9660
9859
  } | string)));
9661
9860
  });
9662
9861
  partitionByNewLine?: boolean;
9663
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9664
- groups?: (string | string[] | {
9665
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9666
- commentAbove?: string;
9667
- })[];
9668
9862
  }];
9669
9863
  // ----- perfectionist/sort-decorators -----
9670
- type PerfectionistSortDecorators = [] | [{
9864
+ type PerfectionistSortDecorators = {
9671
9865
  fallbackSort?: {
9866
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9672
9867
  order?: ("asc" | "desc");
9673
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9674
9868
  };
9869
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9675
9870
  specialCharacters?: ("remove" | "trim" | "keep");
9676
9871
  ignoreCase?: boolean;
9677
9872
  alphabet?: string;
9678
9873
  locales?: (string | string[]);
9679
9874
  order?: ("asc" | "desc");
9680
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9875
+ customGroups?: ({
9876
+ fallbackSort?: {
9877
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9878
+ order?: ("asc" | "desc");
9879
+ };
9880
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9881
+ groupName: string;
9882
+ newlinesInside?: ("ignore" | number);
9883
+ order?: ("asc" | "desc");
9884
+ anyOf: [{
9885
+ elementNamePattern?: (({
9886
+ pattern: string;
9887
+ flags?: string;
9888
+ } | string)[] | ({
9889
+ pattern: string;
9890
+ flags?: string;
9891
+ } | string));
9892
+ }, ...({
9893
+ elementNamePattern?: (({
9894
+ pattern: string;
9895
+ flags?: string;
9896
+ } | string)[] | ({
9897
+ pattern: string;
9898
+ flags?: string;
9899
+ } | string));
9900
+ })[]];
9901
+ } | {
9902
+ fallbackSort?: {
9903
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9904
+ order?: ("asc" | "desc");
9905
+ };
9906
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9907
+ groupName: string;
9908
+ newlinesInside?: ("ignore" | number);
9909
+ order?: ("asc" | "desc");
9910
+ elementNamePattern?: (({
9911
+ pattern: string;
9912
+ flags?: string;
9913
+ } | string)[] | ({
9914
+ pattern: string;
9915
+ flags?: string;
9916
+ } | string));
9917
+ })[];
9918
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
9919
+ groups?: (string | [string, ...(string)[]] | {
9920
+ newlinesBetween: ("ignore" | number);
9921
+ } | {
9922
+ group: (string | [string, ...(string)[]]);
9923
+ fallbackSort?: {
9924
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9925
+ order?: ("asc" | "desc");
9926
+ };
9927
+ commentAbove?: string;
9928
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9929
+ newlinesInside?: ("ignore" | number);
9930
+ order?: ("asc" | "desc");
9931
+ })[];
9932
+ newlinesBetween?: ("ignore" | number);
9681
9933
  sortOnParameters?: boolean;
9682
9934
  sortOnProperties?: boolean;
9683
9935
  sortOnAccessors?: boolean;
@@ -9705,38 +9957,37 @@ type PerfectionistSortDecorators = [] | [{
9705
9957
  flags?: string;
9706
9958
  } | string)));
9707
9959
  });
9708
- customGroups?: {
9709
- [k: string]: (string | string[]) | undefined;
9710
- };
9711
- groups?: (string | string[] | {
9712
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9713
- commentAbove?: string;
9714
- })[];
9715
- }];
9960
+ partitionByNewLine?: boolean;
9961
+ }[];
9716
9962
  // ----- perfectionist/sort-enums -----
9717
9963
  type PerfectionistSortEnums = [] | [{
9718
9964
  fallbackSort?: {
9965
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9719
9966
  order?: ("asc" | "desc");
9720
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9721
9967
  };
9968
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9722
9969
  specialCharacters?: ("remove" | "trim" | "keep");
9723
9970
  ignoreCase?: boolean;
9724
9971
  alphabet?: string;
9725
9972
  locales?: (string | string[]);
9726
9973
  order?: ("asc" | "desc");
9727
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9728
9974
  customGroups?: ({
9729
- [k: string]: (string | string[]) | undefined;
9730
- } | ({
9731
- newlinesInside?: (("always" | "never") | number);
9732
9975
  fallbackSort?: {
9976
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9733
9977
  order?: ("asc" | "desc");
9734
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9735
9978
  };
9979
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9736
9980
  groupName: string;
9981
+ newlinesInside?: ("ignore" | number);
9737
9982
  order?: ("asc" | "desc");
9738
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9739
- anyOf?: {
9983
+ anyOf: [{
9984
+ elementNamePattern?: (({
9985
+ pattern: string;
9986
+ flags?: string;
9987
+ } | string)[] | ({
9988
+ pattern: string;
9989
+ flags?: string;
9990
+ } | string));
9740
9991
  elementValuePattern?: (({
9741
9992
  pattern: string;
9742
9993
  flags?: string;
@@ -9744,6 +9995,7 @@ type PerfectionistSortEnums = [] | [{
9744
9995
  pattern: string;
9745
9996
  flags?: string;
9746
9997
  } | string));
9998
+ }, ...({
9747
9999
  elementNamePattern?: (({
9748
10000
  pattern: string;
9749
10001
  flags?: string;
@@ -9751,33 +10003,54 @@ type PerfectionistSortEnums = [] | [{
9751
10003
  pattern: string;
9752
10004
  flags?: string;
9753
10005
  } | string));
9754
- }[];
10006
+ elementValuePattern?: (({
10007
+ pattern: string;
10008
+ flags?: string;
10009
+ } | string)[] | ({
10010
+ pattern: string;
10011
+ flags?: string;
10012
+ } | string));
10013
+ })[]];
9755
10014
  } | {
9756
- newlinesInside?: (("always" | "never") | number);
9757
10015
  fallbackSort?: {
10016
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9758
10017
  order?: ("asc" | "desc");
9759
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9760
10018
  };
10019
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9761
10020
  groupName: string;
10021
+ newlinesInside?: ("ignore" | number);
9762
10022
  order?: ("asc" | "desc");
9763
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9764
- elementValuePattern?: (({
10023
+ elementNamePattern?: (({
9765
10024
  pattern: string;
9766
10025
  flags?: string;
9767
10026
  } | string)[] | ({
9768
10027
  pattern: string;
9769
10028
  flags?: string;
9770
10029
  } | string));
9771
- elementNamePattern?: (({
10030
+ elementValuePattern?: (({
9772
10031
  pattern: string;
9773
10032
  flags?: string;
9774
10033
  } | string)[] | ({
9775
10034
  pattern: string;
9776
10035
  flags?: string;
9777
10036
  } | string));
9778
- })[]);
9779
- forceNumericSort?: boolean;
9780
- sortByValue?: boolean;
10037
+ })[];
10038
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10039
+ groups?: (string | [string, ...(string)[]] | {
10040
+ newlinesBetween: ("ignore" | number);
10041
+ } | {
10042
+ group: (string | [string, ...(string)[]]);
10043
+ fallbackSort?: {
10044
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10045
+ order?: ("asc" | "desc");
10046
+ };
10047
+ commentAbove?: string;
10048
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10049
+ newlinesInside?: ("ignore" | number);
10050
+ order?: ("asc" | "desc");
10051
+ })[];
10052
+ newlinesBetween?: ("ignore" | number);
10053
+ sortByValue?: ("always" | "ifNumericEnum" | "never");
9781
10054
  partitionByComment?: (boolean | (({
9782
10055
  pattern: string;
9783
10056
  flags?: string;
@@ -9801,37 +10074,37 @@ type PerfectionistSortEnums = [] | [{
9801
10074
  } | string)));
9802
10075
  });
9803
10076
  partitionByNewLine?: boolean;
9804
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9805
- groups?: (string | string[] | {
9806
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9807
- commentAbove?: string;
9808
- })[];
9809
10077
  }];
9810
- // ----- perfectionist/sort-exports -----
9811
- type PerfectionistSortExports = {
10078
+ // ----- perfectionist/sort-export-attributes -----
10079
+ type PerfectionistSortExportAttributes = {
9812
10080
  fallbackSort?: {
10081
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9813
10082
  order?: ("asc" | "desc");
9814
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9815
10083
  };
10084
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9816
10085
  specialCharacters?: ("remove" | "trim" | "keep");
9817
10086
  ignoreCase?: boolean;
9818
10087
  alphabet?: string;
9819
10088
  locales?: (string | string[]);
9820
10089
  order?: ("asc" | "desc");
9821
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9822
- groupKind?: ("mixed" | "values-first" | "types-first");
9823
10090
  customGroups?: ({
9824
- newlinesInside?: (("always" | "never") | number);
9825
10091
  fallbackSort?: {
10092
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9826
10093
  order?: ("asc" | "desc");
9827
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9828
10094
  };
10095
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9829
10096
  groupName: string;
10097
+ newlinesInside?: ("ignore" | number);
9830
10098
  order?: ("asc" | "desc");
9831
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9832
- anyOf?: {
9833
- modifiers?: ("value" | "type")[];
9834
- selector?: "export";
10099
+ anyOf: [{
10100
+ elementNamePattern?: (({
10101
+ pattern: string;
10102
+ flags?: string;
10103
+ } | string)[] | ({
10104
+ pattern: string;
10105
+ flags?: string;
10106
+ } | string));
10107
+ }, ...({
9835
10108
  elementNamePattern?: (({
9836
10109
  pattern: string;
9837
10110
  flags?: string;
@@ -9839,18 +10112,16 @@ type PerfectionistSortExports = {
9839
10112
  pattern: string;
9840
10113
  flags?: string;
9841
10114
  } | string));
9842
- }[];
10115
+ })[]];
9843
10116
  } | {
9844
- newlinesInside?: (("always" | "never") | number);
9845
10117
  fallbackSort?: {
10118
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9846
10119
  order?: ("asc" | "desc");
9847
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9848
10120
  };
10121
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9849
10122
  groupName: string;
10123
+ newlinesInside?: ("ignore" | number);
9850
10124
  order?: ("asc" | "desc");
9851
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9852
- modifiers?: ("value" | "type")[];
9853
- selector?: "export";
9854
10125
  elementNamePattern?: (({
9855
10126
  pattern: string;
9856
10127
  flags?: string;
@@ -9859,6 +10130,21 @@ type PerfectionistSortExports = {
9859
10130
  flags?: string;
9860
10131
  } | string));
9861
10132
  })[];
10133
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10134
+ groups?: (string | [string, ...(string)[]] | {
10135
+ newlinesBetween: ("ignore" | number);
10136
+ } | {
10137
+ group: (string | [string, ...(string)[]]);
10138
+ fallbackSort?: {
10139
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10140
+ order?: ("asc" | "desc");
10141
+ };
10142
+ commentAbove?: string;
10143
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10144
+ newlinesInside?: ("ignore" | number);
10145
+ order?: ("asc" | "desc");
10146
+ })[];
10147
+ newlinesBetween?: ("ignore" | number);
9862
10148
  partitionByComment?: (boolean | (({
9863
10149
  pattern: string;
9864
10150
  flags?: string;
@@ -9882,70 +10168,39 @@ type PerfectionistSortExports = {
9882
10168
  } | string)));
9883
10169
  });
9884
10170
  partitionByNewLine?: boolean;
9885
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9886
- groups?: (string | string[] | {
9887
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9888
- commentAbove?: string;
9889
- })[];
9890
10171
  }[];
9891
- // ----- perfectionist/sort-heritage-clauses -----
9892
- type PerfectionistSortHeritageClauses = [] | [{
9893
- fallbackSort?: {
9894
- order?: ("asc" | "desc");
9895
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9896
- };
9897
- specialCharacters?: ("remove" | "trim" | "keep");
9898
- ignoreCase?: boolean;
9899
- alphabet?: string;
9900
- locales?: (string | string[]);
9901
- order?: ("asc" | "desc");
9902
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9903
- customGroups?: {
9904
- [k: string]: (string | string[]) | undefined;
9905
- };
9906
- groups?: (string | string[] | {
9907
- newlinesBetween?: (("ignore" | "always" | "never") | number);
9908
- commentAbove?: string;
9909
- })[];
9910
- }];
9911
- // ----- perfectionist/sort-imports -----
9912
- type PerfectionistSortImports = {
10172
+ // ----- perfectionist/sort-exports -----
10173
+ type PerfectionistSortExports = {
9913
10174
  fallbackSort?: {
10175
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9914
10176
  order?: ("asc" | "desc");
9915
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9916
10177
  };
10178
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9917
10179
  specialCharacters?: ("remove" | "trim" | "keep");
9918
10180
  ignoreCase?: boolean;
9919
10181
  alphabet?: string;
9920
10182
  locales?: (string | string[]);
9921
10183
  order?: ("asc" | "desc");
9922
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9923
10184
  customGroups?: ({
9924
- value?: {
9925
- [k: string]: (string | string[]) | undefined;
9926
- };
9927
- type?: {
9928
- [k: string]: (string | string[]) | undefined;
9929
- };
9930
- } | ({
9931
- newlinesInside?: (("always" | "never") | number);
9932
10185
  fallbackSort?: {
10186
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9933
10187
  order?: ("asc" | "desc");
9934
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9935
10188
  };
10189
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9936
10190
  groupName: string;
10191
+ newlinesInside?: ("ignore" | number);
9937
10192
  order?: ("asc" | "desc");
9938
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9939
- anyOf?: {
9940
- modifiers?: ("default" | "named" | "require" | "side-effect" | "ts-equals" | "type" | "value" | "wildcard")[];
9941
- selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
9942
- elementValuePattern?: (({
10193
+ anyOf: [{
10194
+ elementNamePattern?: (({
9943
10195
  pattern: string;
9944
10196
  flags?: string;
9945
10197
  } | string)[] | ({
9946
10198
  pattern: string;
9947
10199
  flags?: string;
9948
10200
  } | string));
10201
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[];
10202
+ selector?: "export";
10203
+ }, ...({
9949
10204
  elementNamePattern?: (({
9950
10205
  pattern: string;
9951
10206
  flags?: string;
@@ -9953,25 +10208,18 @@ type PerfectionistSortImports = {
9953
10208
  pattern: string;
9954
10209
  flags?: string;
9955
10210
  } | string));
9956
- }[];
10211
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[];
10212
+ selector?: "export";
10213
+ })[]];
9957
10214
  } | {
9958
- newlinesInside?: (("always" | "never") | number);
9959
10215
  fallbackSort?: {
10216
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9960
10217
  order?: ("asc" | "desc");
9961
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9962
10218
  };
10219
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
9963
10220
  groupName: string;
10221
+ newlinesInside?: ("ignore" | number);
9964
10222
  order?: ("asc" | "desc");
9965
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
9966
- modifiers?: ("default" | "named" | "require" | "side-effect" | "ts-equals" | "type" | "value" | "wildcard")[];
9967
- selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
9968
- elementValuePattern?: (({
9969
- pattern: string;
9970
- flags?: string;
9971
- } | string)[] | ({
9972
- pattern: string;
9973
- flags?: string;
9974
- } | string));
9975
10223
  elementNamePattern?: (({
9976
10224
  pattern: string;
9977
10225
  flags?: string;
@@ -9979,15 +10227,327 @@ type PerfectionistSortImports = {
9979
10227
  pattern: string;
9980
10228
  flags?: string;
9981
10229
  } | string));
9982
- })[]);
9983
- tsconfig?: {
9984
- rootDir: string;
9985
- filename?: string;
10230
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[];
10231
+ selector?: "export";
10232
+ })[];
10233
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10234
+ groups?: (string | [string, ...(string)[]] | {
10235
+ newlinesBetween: ("ignore" | number);
10236
+ } | {
10237
+ group: (string | [string, ...(string)[]]);
10238
+ fallbackSort?: {
10239
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10240
+ order?: ("asc" | "desc");
10241
+ };
10242
+ commentAbove?: string;
10243
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10244
+ newlinesInside?: ("ignore" | number);
10245
+ order?: ("asc" | "desc");
10246
+ })[];
10247
+ newlinesBetween?: ("ignore" | number);
10248
+ partitionByComment?: (boolean | (({
10249
+ pattern: string;
10250
+ flags?: string;
10251
+ } | string)[] | ({
10252
+ pattern: string;
10253
+ flags?: string;
10254
+ } | string)) | {
10255
+ block?: (boolean | (({
10256
+ pattern: string;
10257
+ flags?: string;
10258
+ } | string)[] | ({
10259
+ pattern: string;
10260
+ flags?: string;
10261
+ } | string)));
10262
+ line?: (boolean | (({
10263
+ pattern: string;
10264
+ flags?: string;
10265
+ } | string)[] | ({
10266
+ pattern: string;
10267
+ flags?: string;
10268
+ } | string)));
10269
+ });
10270
+ partitionByNewLine?: boolean;
10271
+ }[];
10272
+ // ----- perfectionist/sort-heritage-clauses -----
10273
+ type PerfectionistSortHeritageClauses = {
10274
+ fallbackSort?: {
10275
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10276
+ order?: ("asc" | "desc");
10277
+ };
10278
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10279
+ specialCharacters?: ("remove" | "trim" | "keep");
10280
+ ignoreCase?: boolean;
10281
+ alphabet?: string;
10282
+ locales?: (string | string[]);
10283
+ order?: ("asc" | "desc");
10284
+ customGroups?: ({
10285
+ fallbackSort?: {
10286
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10287
+ order?: ("asc" | "desc");
10288
+ };
10289
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10290
+ groupName: string;
10291
+ newlinesInside?: ("ignore" | number);
10292
+ order?: ("asc" | "desc");
10293
+ anyOf: [{
10294
+ elementNamePattern?: (({
10295
+ pattern: string;
10296
+ flags?: string;
10297
+ } | string)[] | ({
10298
+ pattern: string;
10299
+ flags?: string;
10300
+ } | string));
10301
+ }, ...({
10302
+ elementNamePattern?: (({
10303
+ pattern: string;
10304
+ flags?: string;
10305
+ } | string)[] | ({
10306
+ pattern: string;
10307
+ flags?: string;
10308
+ } | string));
10309
+ })[]];
10310
+ } | {
10311
+ fallbackSort?: {
10312
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10313
+ order?: ("asc" | "desc");
10314
+ };
10315
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10316
+ groupName: string;
10317
+ newlinesInside?: ("ignore" | number);
10318
+ order?: ("asc" | "desc");
10319
+ elementNamePattern?: (({
10320
+ pattern: string;
10321
+ flags?: string;
10322
+ } | string)[] | ({
10323
+ pattern: string;
10324
+ flags?: string;
10325
+ } | string));
10326
+ })[];
10327
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10328
+ groups?: (string | [string, ...(string)[]] | {
10329
+ newlinesBetween: ("ignore" | number);
10330
+ } | {
10331
+ group: (string | [string, ...(string)[]]);
10332
+ fallbackSort?: {
10333
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10334
+ order?: ("asc" | "desc");
10335
+ };
10336
+ commentAbove?: string;
10337
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10338
+ newlinesInside?: ("ignore" | number);
10339
+ order?: ("asc" | "desc");
10340
+ })[];
10341
+ newlinesBetween?: ("ignore" | number);
10342
+ partitionByNewLine?: boolean;
10343
+ partitionByComment?: (boolean | (({
10344
+ pattern: string;
10345
+ flags?: string;
10346
+ } | string)[] | ({
10347
+ pattern: string;
10348
+ flags?: string;
10349
+ } | string)) | {
10350
+ block?: (boolean | (({
10351
+ pattern: string;
10352
+ flags?: string;
10353
+ } | string)[] | ({
10354
+ pattern: string;
10355
+ flags?: string;
10356
+ } | string)));
10357
+ line?: (boolean | (({
10358
+ pattern: string;
10359
+ flags?: string;
10360
+ } | string)[] | ({
10361
+ pattern: string;
10362
+ flags?: string;
10363
+ } | string)));
10364
+ });
10365
+ }[];
10366
+ // ----- perfectionist/sort-import-attributes -----
10367
+ type PerfectionistSortImportAttributes = {
10368
+ fallbackSort?: {
10369
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10370
+ order?: ("asc" | "desc");
10371
+ };
10372
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10373
+ specialCharacters?: ("remove" | "trim" | "keep");
10374
+ ignoreCase?: boolean;
10375
+ alphabet?: string;
10376
+ locales?: (string | string[]);
10377
+ order?: ("asc" | "desc");
10378
+ customGroups?: ({
10379
+ fallbackSort?: {
10380
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10381
+ order?: ("asc" | "desc");
10382
+ };
10383
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10384
+ groupName: string;
10385
+ newlinesInside?: ("ignore" | number);
10386
+ order?: ("asc" | "desc");
10387
+ anyOf: [{
10388
+ elementNamePattern?: (({
10389
+ pattern: string;
10390
+ flags?: string;
10391
+ } | string)[] | ({
10392
+ pattern: string;
10393
+ flags?: string;
10394
+ } | string));
10395
+ }, ...({
10396
+ elementNamePattern?: (({
10397
+ pattern: string;
10398
+ flags?: string;
10399
+ } | string)[] | ({
10400
+ pattern: string;
10401
+ flags?: string;
10402
+ } | string));
10403
+ })[]];
10404
+ } | {
10405
+ fallbackSort?: {
10406
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10407
+ order?: ("asc" | "desc");
10408
+ };
10409
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10410
+ groupName: string;
10411
+ newlinesInside?: ("ignore" | number);
10412
+ order?: ("asc" | "desc");
10413
+ elementNamePattern?: (({
10414
+ pattern: string;
10415
+ flags?: string;
10416
+ } | string)[] | ({
10417
+ pattern: string;
10418
+ flags?: string;
10419
+ } | string));
10420
+ })[];
10421
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10422
+ groups?: (string | [string, ...(string)[]] | {
10423
+ newlinesBetween: ("ignore" | number);
10424
+ } | {
10425
+ group: (string | [string, ...(string)[]]);
10426
+ fallbackSort?: {
10427
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10428
+ order?: ("asc" | "desc");
10429
+ };
10430
+ commentAbove?: string;
10431
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10432
+ newlinesInside?: ("ignore" | number);
10433
+ order?: ("asc" | "desc");
10434
+ })[];
10435
+ newlinesBetween?: ("ignore" | number);
10436
+ partitionByComment?: (boolean | (({
10437
+ pattern: string;
10438
+ flags?: string;
10439
+ } | string)[] | ({
10440
+ pattern: string;
10441
+ flags?: string;
10442
+ } | string)) | {
10443
+ block?: (boolean | (({
10444
+ pattern: string;
10445
+ flags?: string;
10446
+ } | string)[] | ({
10447
+ pattern: string;
10448
+ flags?: string;
10449
+ } | string)));
10450
+ line?: (boolean | (({
10451
+ pattern: string;
10452
+ flags?: string;
10453
+ } | string)[] | ({
10454
+ pattern: string;
10455
+ flags?: string;
10456
+ } | string)));
10457
+ });
10458
+ partitionByNewLine?: boolean;
10459
+ }[];
10460
+ // ----- perfectionist/sort-imports -----
10461
+ type PerfectionistSortImports = {
10462
+ fallbackSort?: {
10463
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10464
+ order?: ("asc" | "desc");
10465
+ sortBy?: ("specifier" | "path");
10466
+ };
10467
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10468
+ specialCharacters?: ("remove" | "trim" | "keep");
10469
+ ignoreCase?: boolean;
10470
+ alphabet?: string;
10471
+ locales?: (string | string[]);
10472
+ order?: ("asc" | "desc");
10473
+ sortBy?: ("specifier" | "path");
10474
+ customGroups?: ({
10475
+ fallbackSort?: {
10476
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10477
+ order?: ("asc" | "desc");
10478
+ sortBy?: ("specifier" | "path");
10479
+ };
10480
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10481
+ groupName: string;
10482
+ newlinesInside?: ("ignore" | number);
10483
+ order?: ("asc" | "desc");
10484
+ sortBy?: ("specifier" | "path");
10485
+ anyOf: [{
10486
+ elementNamePattern?: (({
10487
+ pattern: string;
10488
+ flags?: string;
10489
+ } | string)[] | ({
10490
+ pattern: string;
10491
+ flags?: string;
10492
+ } | string));
10493
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[];
10494
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
10495
+ }, ...({
10496
+ elementNamePattern?: (({
10497
+ pattern: string;
10498
+ flags?: string;
10499
+ } | string)[] | ({
10500
+ pattern: string;
10501
+ flags?: string;
10502
+ } | string));
10503
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[];
10504
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
10505
+ })[]];
10506
+ } | {
10507
+ fallbackSort?: {
10508
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10509
+ order?: ("asc" | "desc");
10510
+ sortBy?: ("specifier" | "path");
10511
+ };
10512
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10513
+ groupName: string;
10514
+ newlinesInside?: ("ignore" | number);
10515
+ order?: ("asc" | "desc");
10516
+ sortBy?: ("specifier" | "path");
10517
+ elementNamePattern?: (({
10518
+ pattern: string;
10519
+ flags?: string;
10520
+ } | string)[] | ({
10521
+ pattern: string;
10522
+ flags?: string;
10523
+ } | string));
10524
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[];
10525
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
10526
+ })[];
10527
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10528
+ groups?: (string | [string, ...(string)[]] | {
10529
+ newlinesBetween: ("ignore" | number);
10530
+ } | {
10531
+ group: (string | [string, ...(string)[]]);
10532
+ fallbackSort?: {
10533
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10534
+ order?: ("asc" | "desc");
10535
+ sortBy?: ("specifier" | "path");
10536
+ };
10537
+ commentAbove?: string;
10538
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10539
+ newlinesInside?: ("ignore" | number);
10540
+ order?: ("asc" | "desc");
10541
+ sortBy?: ("specifier" | "path");
10542
+ })[];
10543
+ newlinesBetween?: ("ignore" | number);
10544
+ tsconfig?: {
10545
+ rootDir: string;
10546
+ filename?: string;
9986
10547
  };
9987
10548
  maxLineLength?: number;
9988
10549
  sortSideEffects?: boolean;
9989
10550
  environment?: ("node" | "bun");
9990
- tsconfigRootDir?: string;
9991
10551
  partitionByComment?: (boolean | (({
9992
10552
  pattern: string;
9993
10553
  flags?: string;
@@ -10011,7 +10571,6 @@ type PerfectionistSortImports = {
10011
10571
  } | string)));
10012
10572
  });
10013
10573
  partitionByNewLine?: boolean;
10014
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10015
10574
  internalPattern?: (({
10016
10575
  pattern: string;
10017
10576
  flags?: string;
@@ -10019,39 +10578,42 @@ type PerfectionistSortImports = {
10019
10578
  pattern: string;
10020
10579
  flags?: string;
10021
10580
  } | string));
10022
- groups?: (string | string[] | {
10023
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10024
- commentAbove?: string;
10025
- })[];
10026
10581
  }[];
10027
10582
  // ----- perfectionist/sort-interfaces -----
10028
10583
  type PerfectionistSortInterfaces = {
10029
10584
  fallbackSort?: {
10585
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10030
10586
  order?: ("asc" | "desc");
10031
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10032
10587
  sortBy?: ("name" | "value");
10033
10588
  };
10589
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10034
10590
  specialCharacters?: ("remove" | "trim" | "keep");
10035
10591
  ignoreCase?: boolean;
10036
10592
  alphabet?: string;
10037
10593
  locales?: (string | string[]);
10038
10594
  order?: ("asc" | "desc");
10039
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10595
+ sortBy?: ("name" | "value");
10040
10596
  customGroups?: ({
10041
- [k: string]: (string | string[]) | undefined;
10042
- } | ({
10043
- newlinesInside?: (("always" | "never") | number);
10044
10597
  fallbackSort?: {
10598
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10045
10599
  order?: ("asc" | "desc");
10046
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10047
10600
  sortBy?: ("name" | "value");
10048
10601
  };
10602
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10049
10603
  groupName: string;
10604
+ newlinesInside?: ("ignore" | number);
10050
10605
  order?: ("asc" | "desc");
10051
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10052
- anyOf?: {
10606
+ sortBy?: ("name" | "value");
10607
+ anyOf: [{
10608
+ elementNamePattern?: (({
10609
+ pattern: string;
10610
+ flags?: string;
10611
+ } | string)[] | ({
10612
+ pattern: string;
10613
+ flags?: string;
10614
+ } | string));
10053
10615
  modifiers?: ("optional" | "required" | "multiline")[];
10054
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
10616
+ selector?: ("index-signature" | "member" | "method" | "property");
10055
10617
  elementValuePattern?: (({
10056
10618
  pattern: string;
10057
10619
  flags?: string;
@@ -10059,6 +10621,7 @@ type PerfectionistSortInterfaces = {
10059
10621
  pattern: string;
10060
10622
  flags?: string;
10061
10623
  } | string));
10624
+ }, ...({
10062
10625
  elementNamePattern?: (({
10063
10626
  pattern: string;
10064
10627
  flags?: string;
@@ -10066,37 +10629,61 @@ type PerfectionistSortInterfaces = {
10066
10629
  pattern: string;
10067
10630
  flags?: string;
10068
10631
  } | string));
10069
- sortBy?: ("name" | "value");
10070
- }[];
10632
+ modifiers?: ("optional" | "required" | "multiline")[];
10633
+ selector?: ("index-signature" | "member" | "method" | "property");
10634
+ elementValuePattern?: (({
10635
+ pattern: string;
10636
+ flags?: string;
10637
+ } | string)[] | ({
10638
+ pattern: string;
10639
+ flags?: string;
10640
+ } | string));
10641
+ })[]];
10071
10642
  } | {
10072
- newlinesInside?: (("always" | "never") | number);
10073
10643
  fallbackSort?: {
10644
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10074
10645
  order?: ("asc" | "desc");
10075
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10076
10646
  sortBy?: ("name" | "value");
10077
10647
  };
10648
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10078
10649
  groupName: string;
10650
+ newlinesInside?: ("ignore" | number);
10079
10651
  order?: ("asc" | "desc");
10080
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10081
- modifiers?: ("optional" | "required" | "multiline")[];
10082
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
10083
- elementValuePattern?: (({
10652
+ sortBy?: ("name" | "value");
10653
+ elementNamePattern?: (({
10084
10654
  pattern: string;
10085
10655
  flags?: string;
10086
10656
  } | string)[] | ({
10087
10657
  pattern: string;
10088
10658
  flags?: string;
10089
10659
  } | string));
10090
- elementNamePattern?: (({
10660
+ modifiers?: ("optional" | "required" | "multiline")[];
10661
+ selector?: ("index-signature" | "member" | "method" | "property");
10662
+ elementValuePattern?: (({
10091
10663
  pattern: string;
10092
10664
  flags?: string;
10093
10665
  } | string)[] | ({
10094
10666
  pattern: string;
10095
10667
  flags?: string;
10096
10668
  } | string));
10669
+ })[];
10670
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10671
+ groups?: (string | [string, ...(string)[]] | {
10672
+ newlinesBetween: ("ignore" | number);
10673
+ } | {
10674
+ group: (string | [string, ...(string)[]]);
10675
+ fallbackSort?: {
10676
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10677
+ order?: ("asc" | "desc");
10678
+ sortBy?: ("name" | "value");
10679
+ };
10680
+ commentAbove?: string;
10681
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10682
+ newlinesInside?: ("ignore" | number);
10683
+ order?: ("asc" | "desc");
10097
10684
  sortBy?: ("name" | "value");
10098
- })[]);
10099
- groupKind?: ("mixed" | "required-first" | "optional-first");
10685
+ })[];
10686
+ newlinesBetween?: ("ignore" | number);
10100
10687
  useConfigurationIf?: {
10101
10688
  allNamesMatchPattern?: (({
10102
10689
  pattern: string;
@@ -10105,10 +10692,22 @@ type PerfectionistSortInterfaces = {
10105
10692
  pattern: string;
10106
10693
  flags?: string;
10107
10694
  } | string));
10695
+ hasNumericKeysOnly?: boolean;
10696
+ declarationCommentMatchesPattern?: (({
10697
+ scope?: ("shallow" | "deep");
10698
+ pattern: string;
10699
+ flags?: string;
10700
+ } | string)[] | ({
10701
+ scope?: ("shallow" | "deep");
10702
+ pattern: string;
10703
+ flags?: string;
10704
+ } | string));
10108
10705
  declarationMatchesPattern?: (({
10706
+ scope?: ("shallow" | "deep");
10109
10707
  pattern: string;
10110
10708
  flags?: string;
10111
10709
  } | string)[] | ({
10710
+ scope?: ("shallow" | "deep");
10112
10711
  pattern: string;
10113
10712
  flags?: string;
10114
10713
  } | string));
@@ -10136,43 +10735,38 @@ type PerfectionistSortInterfaces = {
10136
10735
  } | string)));
10137
10736
  });
10138
10737
  partitionByNewLine?: boolean;
10139
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10140
- ignorePattern?: (({
10141
- pattern: string;
10142
- flags?: string;
10143
- } | string)[] | ({
10144
- pattern: string;
10145
- flags?: string;
10146
- } | string));
10147
- sortBy?: ("name" | "value");
10148
- groups?: (string | string[] | {
10149
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10150
- commentAbove?: string;
10151
- })[];
10152
10738
  }[];
10153
10739
  // ----- perfectionist/sort-intersection-types -----
10154
10740
  type PerfectionistSortIntersectionTypes = {
10155
10741
  fallbackSort?: {
10742
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10156
10743
  order?: ("asc" | "desc");
10157
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10158
10744
  };
10745
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10159
10746
  specialCharacters?: ("remove" | "trim" | "keep");
10160
10747
  ignoreCase?: boolean;
10161
10748
  alphabet?: string;
10162
10749
  locales?: (string | string[]);
10163
10750
  order?: ("asc" | "desc");
10164
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10165
10751
  customGroups?: ({
10166
- newlinesInside?: (("always" | "never") | number);
10167
10752
  fallbackSort?: {
10753
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10168
10754
  order?: ("asc" | "desc");
10169
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10170
10755
  };
10756
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10171
10757
  groupName: string;
10758
+ newlinesInside?: ("ignore" | number);
10172
10759
  order?: ("asc" | "desc");
10173
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10174
- anyOf?: {
10760
+ anyOf: [{
10761
+ elementNamePattern?: (({
10762
+ pattern: string;
10763
+ flags?: string;
10764
+ } | string)[] | ({
10765
+ pattern: string;
10766
+ flags?: string;
10767
+ } | string));
10175
10768
  selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
10769
+ }, ...({
10176
10770
  elementNamePattern?: (({
10177
10771
  pattern: string;
10178
10772
  flags?: string;
@@ -10180,17 +10774,17 @@ type PerfectionistSortIntersectionTypes = {
10180
10774
  pattern: string;
10181
10775
  flags?: string;
10182
10776
  } | string));
10183
- }[];
10777
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
10778
+ })[]];
10184
10779
  } | {
10185
- newlinesInside?: (("always" | "never") | number);
10186
10780
  fallbackSort?: {
10781
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10187
10782
  order?: ("asc" | "desc");
10188
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10189
10783
  };
10784
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10190
10785
  groupName: string;
10786
+ newlinesInside?: ("ignore" | number);
10191
10787
  order?: ("asc" | "desc");
10192
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10193
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
10194
10788
  elementNamePattern?: (({
10195
10789
  pattern: string;
10196
10790
  flags?: string;
@@ -10198,7 +10792,23 @@ type PerfectionistSortIntersectionTypes = {
10198
10792
  pattern: string;
10199
10793
  flags?: string;
10200
10794
  } | string));
10795
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
10796
+ })[];
10797
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10798
+ groups?: (string | [string, ...(string)[]] | {
10799
+ newlinesBetween: ("ignore" | number);
10800
+ } | {
10801
+ group: (string | [string, ...(string)[]]);
10802
+ fallbackSort?: {
10803
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10804
+ order?: ("asc" | "desc");
10805
+ };
10806
+ commentAbove?: string;
10807
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10808
+ newlinesInside?: ("ignore" | number);
10809
+ order?: ("asc" | "desc");
10201
10810
  })[];
10811
+ newlinesBetween?: ("ignore" | number);
10202
10812
  partitionByComment?: (boolean | (({
10203
10813
  pattern: string;
10204
10814
  flags?: string;
@@ -10222,38 +10832,38 @@ type PerfectionistSortIntersectionTypes = {
10222
10832
  } | string)));
10223
10833
  });
10224
10834
  partitionByNewLine?: boolean;
10225
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10226
- groups?: (string | string[] | {
10227
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10228
- commentAbove?: string;
10229
- })[];
10230
10835
  }[];
10231
10836
  // ----- perfectionist/sort-jsx-props -----
10232
10837
  type PerfectionistSortJsxProps = {
10233
10838
  fallbackSort?: {
10839
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10234
10840
  order?: ("asc" | "desc");
10235
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10236
10841
  };
10842
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10237
10843
  specialCharacters?: ("remove" | "trim" | "keep");
10238
10844
  ignoreCase?: boolean;
10239
10845
  alphabet?: string;
10240
10846
  locales?: (string | string[]);
10241
10847
  order?: ("asc" | "desc");
10242
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10243
10848
  customGroups?: ({
10244
- [k: string]: (string | string[]) | undefined;
10245
- } | ({
10246
- newlinesInside?: (("always" | "never") | number);
10247
10849
  fallbackSort?: {
10850
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10248
10851
  order?: ("asc" | "desc");
10249
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10250
10852
  };
10853
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10251
10854
  groupName: string;
10855
+ newlinesInside?: ("ignore" | number);
10252
10856
  order?: ("asc" | "desc");
10253
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10254
- anyOf?: {
10857
+ anyOf: [{
10858
+ elementNamePattern?: (({
10859
+ pattern: string;
10860
+ flags?: string;
10861
+ } | string)[] | ({
10862
+ pattern: string;
10863
+ flags?: string;
10864
+ } | string));
10255
10865
  modifiers?: ("shorthand" | "multiline")[];
10256
- selector?: ("multiline" | "prop" | "shorthand");
10866
+ selector?: "prop";
10257
10867
  elementValuePattern?: (({
10258
10868
  pattern: string;
10259
10869
  flags?: string;
@@ -10261,6 +10871,7 @@ type PerfectionistSortJsxProps = {
10261
10871
  pattern: string;
10262
10872
  flags?: string;
10263
10873
  } | string));
10874
+ }, ...({
10264
10875
  elementNamePattern?: (({
10265
10876
  pattern: string;
10266
10877
  flags?: string;
@@ -10268,33 +10879,57 @@ type PerfectionistSortJsxProps = {
10268
10879
  pattern: string;
10269
10880
  flags?: string;
10270
10881
  } | string));
10271
- }[];
10882
+ modifiers?: ("shorthand" | "multiline")[];
10883
+ selector?: "prop";
10884
+ elementValuePattern?: (({
10885
+ pattern: string;
10886
+ flags?: string;
10887
+ } | string)[] | ({
10888
+ pattern: string;
10889
+ flags?: string;
10890
+ } | string));
10891
+ })[]];
10272
10892
  } | {
10273
- newlinesInside?: (("always" | "never") | number);
10274
10893
  fallbackSort?: {
10894
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10275
10895
  order?: ("asc" | "desc");
10276
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10277
10896
  };
10897
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10278
10898
  groupName: string;
10899
+ newlinesInside?: ("ignore" | number);
10279
10900
  order?: ("asc" | "desc");
10280
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10281
- modifiers?: ("shorthand" | "multiline")[];
10282
- selector?: ("multiline" | "prop" | "shorthand");
10283
- elementValuePattern?: (({
10901
+ elementNamePattern?: (({
10284
10902
  pattern: string;
10285
10903
  flags?: string;
10286
10904
  } | string)[] | ({
10287
10905
  pattern: string;
10288
10906
  flags?: string;
10289
10907
  } | string));
10290
- elementNamePattern?: (({
10908
+ modifiers?: ("shorthand" | "multiline")[];
10909
+ selector?: "prop";
10910
+ elementValuePattern?: (({
10291
10911
  pattern: string;
10292
10912
  flags?: string;
10293
10913
  } | string)[] | ({
10294
10914
  pattern: string;
10295
10915
  flags?: string;
10296
10916
  } | string));
10297
- })[]);
10917
+ })[];
10918
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10919
+ groups?: (string | [string, ...(string)[]] | {
10920
+ newlinesBetween: ("ignore" | number);
10921
+ } | {
10922
+ group: (string | [string, ...(string)[]]);
10923
+ fallbackSort?: {
10924
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10925
+ order?: ("asc" | "desc");
10926
+ };
10927
+ commentAbove?: string;
10928
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10929
+ newlinesInside?: ("ignore" | number);
10930
+ order?: ("asc" | "desc");
10931
+ })[];
10932
+ newlinesBetween?: ("ignore" | number);
10298
10933
  useConfigurationIf?: {
10299
10934
  allNamesMatchPattern?: (({
10300
10935
  pattern: string;
@@ -10312,41 +10947,29 @@ type PerfectionistSortJsxProps = {
10312
10947
  } | string));
10313
10948
  };
10314
10949
  partitionByNewLine?: boolean;
10315
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10316
- ignorePattern?: (({
10317
- pattern: string;
10318
- flags?: string;
10319
- } | string)[] | ({
10320
- pattern: string;
10321
- flags?: string;
10322
- } | string));
10323
- groups?: (string | string[] | {
10324
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10325
- commentAbove?: string;
10326
- })[];
10327
10950
  }[];
10328
10951
  // ----- perfectionist/sort-maps -----
10329
10952
  type PerfectionistSortMaps = {
10330
10953
  fallbackSort?: {
10954
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10331
10955
  order?: ("asc" | "desc");
10332
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10333
10956
  };
10957
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10334
10958
  specialCharacters?: ("remove" | "trim" | "keep");
10335
10959
  ignoreCase?: boolean;
10336
10960
  alphabet?: string;
10337
10961
  locales?: (string | string[]);
10338
10962
  order?: ("asc" | "desc");
10339
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10340
10963
  customGroups?: ({
10341
- newlinesInside?: (("always" | "never") | number);
10342
10964
  fallbackSort?: {
10965
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10343
10966
  order?: ("asc" | "desc");
10344
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10345
10967
  };
10968
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10346
10969
  groupName: string;
10970
+ newlinesInside?: ("ignore" | number);
10347
10971
  order?: ("asc" | "desc");
10348
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10349
- anyOf?: {
10972
+ anyOf: [{
10350
10973
  elementNamePattern?: (({
10351
10974
  pattern: string;
10352
10975
  flags?: string;
@@ -10354,16 +10977,24 @@ type PerfectionistSortMaps = {
10354
10977
  pattern: string;
10355
10978
  flags?: string;
10356
10979
  } | string));
10357
- }[];
10980
+ }, ...({
10981
+ elementNamePattern?: (({
10982
+ pattern: string;
10983
+ flags?: string;
10984
+ } | string)[] | ({
10985
+ pattern: string;
10986
+ flags?: string;
10987
+ } | string));
10988
+ })[]];
10358
10989
  } | {
10359
- newlinesInside?: (("always" | "never") | number);
10360
10990
  fallbackSort?: {
10991
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10361
10992
  order?: ("asc" | "desc");
10362
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10363
10993
  };
10994
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10364
10995
  groupName: string;
10996
+ newlinesInside?: ("ignore" | number);
10365
10997
  order?: ("asc" | "desc");
10366
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10367
10998
  elementNamePattern?: (({
10368
10999
  pattern: string;
10369
11000
  flags?: string;
@@ -10372,6 +11003,21 @@ type PerfectionistSortMaps = {
10372
11003
  flags?: string;
10373
11004
  } | string));
10374
11005
  })[];
11006
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11007
+ groups?: (string | [string, ...(string)[]] | {
11008
+ newlinesBetween: ("ignore" | number);
11009
+ } | {
11010
+ group: (string | [string, ...(string)[]]);
11011
+ fallbackSort?: {
11012
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11013
+ order?: ("asc" | "desc");
11014
+ };
11015
+ commentAbove?: string;
11016
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11017
+ newlinesInside?: ("ignore" | number);
11018
+ order?: ("asc" | "desc");
11019
+ })[];
11020
+ newlinesBetween?: ("ignore" | number);
10375
11021
  useConfigurationIf?: {
10376
11022
  allNamesMatchPattern?: (({
10377
11023
  pattern: string;
@@ -10404,34 +11050,36 @@ type PerfectionistSortMaps = {
10404
11050
  } | string)));
10405
11051
  });
10406
11052
  partitionByNewLine?: boolean;
10407
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10408
- groups?: (string | string[] | {
10409
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10410
- commentAbove?: string;
10411
- })[];
10412
11053
  }[];
10413
11054
  // ----- perfectionist/sort-modules -----
10414
11055
  type PerfectionistSortModules = [] | [{
10415
11056
  fallbackSort?: {
11057
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10416
11058
  order?: ("asc" | "desc");
10417
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10418
11059
  };
11060
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10419
11061
  specialCharacters?: ("remove" | "trim" | "keep");
10420
11062
  ignoreCase?: boolean;
10421
11063
  alphabet?: string;
10422
11064
  locales?: (string | string[]);
10423
11065
  order?: ("asc" | "desc");
10424
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10425
11066
  customGroups?: ({
10426
- newlinesInside?: (("always" | "never") | number);
10427
11067
  fallbackSort?: {
11068
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10428
11069
  order?: ("asc" | "desc");
10429
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10430
11070
  };
11071
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10431
11072
  groupName: string;
11073
+ newlinesInside?: ("ignore" | number);
10432
11074
  order?: ("asc" | "desc");
10433
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10434
- anyOf?: {
11075
+ anyOf: [{
11076
+ elementNamePattern?: (({
11077
+ pattern: string;
11078
+ flags?: string;
11079
+ } | string)[] | ({
11080
+ pattern: string;
11081
+ flags?: string;
11082
+ } | string));
10435
11083
  modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
10436
11084
  selector?: ("enum" | "function" | "interface" | "type" | "class");
10437
11085
  decoratorNamePattern?: (({
@@ -10441,6 +11089,7 @@ type PerfectionistSortModules = [] | [{
10441
11089
  pattern: string;
10442
11090
  flags?: string;
10443
11091
  } | string));
11092
+ }, ...({
10444
11093
  elementNamePattern?: (({
10445
11094
  pattern: string;
10446
11095
  flags?: string;
@@ -10448,26 +11097,35 @@ type PerfectionistSortModules = [] | [{
10448
11097
  pattern: string;
10449
11098
  flags?: string;
10450
11099
  } | string));
10451
- }[];
11100
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
11101
+ selector?: ("enum" | "function" | "interface" | "type" | "class");
11102
+ decoratorNamePattern?: (({
11103
+ pattern: string;
11104
+ flags?: string;
11105
+ } | string)[] | ({
11106
+ pattern: string;
11107
+ flags?: string;
11108
+ } | string));
11109
+ })[]];
10452
11110
  } | {
10453
- newlinesInside?: (("always" | "never") | number);
10454
11111
  fallbackSort?: {
11112
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10455
11113
  order?: ("asc" | "desc");
10456
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10457
11114
  };
11115
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10458
11116
  groupName: string;
11117
+ newlinesInside?: ("ignore" | number);
10459
11118
  order?: ("asc" | "desc");
10460
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10461
- modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
10462
- selector?: ("enum" | "function" | "interface" | "type" | "class");
10463
- decoratorNamePattern?: (({
11119
+ elementNamePattern?: (({
10464
11120
  pattern: string;
10465
11121
  flags?: string;
10466
11122
  } | string)[] | ({
10467
11123
  pattern: string;
10468
11124
  flags?: string;
10469
11125
  } | string));
10470
- elementNamePattern?: (({
11126
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
11127
+ selector?: ("enum" | "function" | "interface" | "type" | "class");
11128
+ decoratorNamePattern?: (({
10471
11129
  pattern: string;
10472
11130
  flags?: string;
10473
11131
  } | string)[] | ({
@@ -10475,6 +11133,21 @@ type PerfectionistSortModules = [] | [{
10475
11133
  flags?: string;
10476
11134
  } | string));
10477
11135
  })[];
11136
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11137
+ groups?: (string | [string, ...(string)[]] | {
11138
+ newlinesBetween: ("ignore" | number);
11139
+ } | {
11140
+ group: (string | [string, ...(string)[]]);
11141
+ fallbackSort?: {
11142
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
11143
+ order?: ("asc" | "desc");
11144
+ };
11145
+ commentAbove?: string;
11146
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
11147
+ newlinesInside?: ("ignore" | number);
11148
+ order?: ("asc" | "desc");
11149
+ })[];
11150
+ newlinesBetween?: ("ignore" | number);
10478
11151
  partitionByComment?: (boolean | (({
10479
11152
  pattern: string;
10480
11153
  flags?: string;
@@ -10498,38 +11171,39 @@ type PerfectionistSortModules = [] | [{
10498
11171
  } | string)));
10499
11172
  });
10500
11173
  partitionByNewLine?: boolean;
10501
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10502
- groups?: (string | string[] | {
10503
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10504
- commentAbove?: string;
10505
- })[];
10506
11174
  }];
10507
11175
  // ----- perfectionist/sort-named-exports -----
10508
11176
  type PerfectionistSortNamedExports = {
10509
11177
  fallbackSort?: {
11178
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10510
11179
  order?: ("asc" | "desc");
10511
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10512
11180
  };
11181
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10513
11182
  specialCharacters?: ("remove" | "trim" | "keep");
10514
11183
  ignoreCase?: boolean;
10515
11184
  alphabet?: string;
10516
11185
  locales?: (string | string[]);
10517
11186
  order?: ("asc" | "desc");
10518
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10519
- groupKind?: ("mixed" | "values-first" | "types-first");
10520
- ignoreAlias?: boolean;
10521
11187
  customGroups?: ({
10522
- newlinesInside?: (("always" | "never") | number);
10523
11188
  fallbackSort?: {
11189
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10524
11190
  order?: ("asc" | "desc");
10525
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10526
11191
  };
11192
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10527
11193
  groupName: string;
11194
+ newlinesInside?: ("ignore" | number);
10528
11195
  order?: ("asc" | "desc");
10529
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10530
- anyOf?: {
11196
+ anyOf: [{
11197
+ elementNamePattern?: (({
11198
+ pattern: string;
11199
+ flags?: string;
11200
+ } | string)[] | ({
11201
+ pattern: string;
11202
+ flags?: string;
11203
+ } | string));
10531
11204
  modifiers?: ("value" | "type")[];
10532
11205
  selector?: "export";
11206
+ }, ...({
10533
11207
  elementNamePattern?: (({
10534
11208
  pattern: string;
10535
11209
  flags?: string;
@@ -10537,18 +11211,18 @@ type PerfectionistSortNamedExports = {
10537
11211
  pattern: string;
10538
11212
  flags?: string;
10539
11213
  } | string));
10540
- }[];
11214
+ modifiers?: ("value" | "type")[];
11215
+ selector?: "export";
11216
+ })[]];
10541
11217
  } | {
10542
- newlinesInside?: (("always" | "never") | number);
10543
11218
  fallbackSort?: {
11219
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10544
11220
  order?: ("asc" | "desc");
10545
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10546
11221
  };
11222
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10547
11223
  groupName: string;
11224
+ newlinesInside?: ("ignore" | number);
10548
11225
  order?: ("asc" | "desc");
10549
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10550
- modifiers?: ("value" | "type")[];
10551
- selector?: "export";
10552
11226
  elementNamePattern?: (({
10553
11227
  pattern: string;
10554
11228
  flags?: string;
@@ -10556,7 +11230,25 @@ type PerfectionistSortNamedExports = {
10556
11230
  pattern: string;
10557
11231
  flags?: string;
10558
11232
  } | string));
11233
+ modifiers?: ("value" | "type")[];
11234
+ selector?: "export";
10559
11235
  })[];
11236
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11237
+ groups?: (string | [string, ...(string)[]] | {
11238
+ newlinesBetween: ("ignore" | number);
11239
+ } | {
11240
+ group: (string | [string, ...(string)[]]);
11241
+ fallbackSort?: {
11242
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11243
+ order?: ("asc" | "desc");
11244
+ };
11245
+ commentAbove?: string;
11246
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11247
+ newlinesInside?: ("ignore" | number);
11248
+ order?: ("asc" | "desc");
11249
+ })[];
11250
+ newlinesBetween?: ("ignore" | number);
11251
+ ignoreAlias?: boolean;
10560
11252
  partitionByComment?: (boolean | (({
10561
11253
  pattern: string;
10562
11254
  flags?: string;
@@ -10580,38 +11272,39 @@ type PerfectionistSortNamedExports = {
10580
11272
  } | string)));
10581
11273
  });
10582
11274
  partitionByNewLine?: boolean;
10583
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10584
- groups?: (string | string[] | {
10585
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10586
- commentAbove?: string;
10587
- })[];
10588
11275
  }[];
10589
11276
  // ----- perfectionist/sort-named-imports -----
10590
11277
  type PerfectionistSortNamedImports = {
10591
11278
  fallbackSort?: {
11279
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10592
11280
  order?: ("asc" | "desc");
10593
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10594
11281
  };
11282
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10595
11283
  specialCharacters?: ("remove" | "trim" | "keep");
10596
11284
  ignoreCase?: boolean;
10597
11285
  alphabet?: string;
10598
11286
  locales?: (string | string[]);
10599
11287
  order?: ("asc" | "desc");
10600
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10601
- groupKind?: ("mixed" | "values-first" | "types-first");
10602
- ignoreAlias?: boolean;
10603
11288
  customGroups?: ({
10604
- newlinesInside?: (("always" | "never") | number);
10605
11289
  fallbackSort?: {
11290
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10606
11291
  order?: ("asc" | "desc");
10607
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10608
11292
  };
11293
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10609
11294
  groupName: string;
11295
+ newlinesInside?: ("ignore" | number);
10610
11296
  order?: ("asc" | "desc");
10611
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10612
- anyOf?: {
11297
+ anyOf: [{
11298
+ elementNamePattern?: (({
11299
+ pattern: string;
11300
+ flags?: string;
11301
+ } | string)[] | ({
11302
+ pattern: string;
11303
+ flags?: string;
11304
+ } | string));
10613
11305
  modifiers?: ("value" | "type")[];
10614
11306
  selector?: "import";
11307
+ }, ...({
10615
11308
  elementNamePattern?: (({
10616
11309
  pattern: string;
10617
11310
  flags?: string;
@@ -10619,18 +11312,18 @@ type PerfectionistSortNamedImports = {
10619
11312
  pattern: string;
10620
11313
  flags?: string;
10621
11314
  } | string));
10622
- }[];
11315
+ modifiers?: ("value" | "type")[];
11316
+ selector?: "import";
11317
+ })[]];
10623
11318
  } | {
10624
- newlinesInside?: (("always" | "never") | number);
10625
11319
  fallbackSort?: {
11320
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10626
11321
  order?: ("asc" | "desc");
10627
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10628
11322
  };
11323
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10629
11324
  groupName: string;
11325
+ newlinesInside?: ("ignore" | number);
10630
11326
  order?: ("asc" | "desc");
10631
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10632
- modifiers?: ("value" | "type")[];
10633
- selector?: "import";
10634
11327
  elementNamePattern?: (({
10635
11328
  pattern: string;
10636
11329
  flags?: string;
@@ -10638,7 +11331,25 @@ type PerfectionistSortNamedImports = {
10638
11331
  pattern: string;
10639
11332
  flags?: string;
10640
11333
  } | string));
11334
+ modifiers?: ("value" | "type")[];
11335
+ selector?: "import";
10641
11336
  })[];
11337
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11338
+ groups?: (string | [string, ...(string)[]] | {
11339
+ newlinesBetween: ("ignore" | number);
11340
+ } | {
11341
+ group: (string | [string, ...(string)[]]);
11342
+ fallbackSort?: {
11343
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11344
+ order?: ("asc" | "desc");
11345
+ };
11346
+ commentAbove?: string;
11347
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11348
+ newlinesInside?: ("ignore" | number);
11349
+ order?: ("asc" | "desc");
11350
+ })[];
11351
+ newlinesBetween?: ("ignore" | number);
11352
+ ignoreAlias?: boolean;
10642
11353
  partitionByComment?: (boolean | (({
10643
11354
  pattern: string;
10644
11355
  flags?: string;
@@ -10662,40 +11373,42 @@ type PerfectionistSortNamedImports = {
10662
11373
  } | string)));
10663
11374
  });
10664
11375
  partitionByNewLine?: boolean;
10665
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10666
- groups?: (string | string[] | {
10667
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10668
- commentAbove?: string;
10669
- })[];
10670
11376
  }[];
10671
11377
  // ----- perfectionist/sort-object-types -----
10672
11378
  type PerfectionistSortObjectTypes = {
10673
11379
  fallbackSort?: {
11380
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10674
11381
  order?: ("asc" | "desc");
10675
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10676
11382
  sortBy?: ("name" | "value");
10677
11383
  };
11384
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10678
11385
  specialCharacters?: ("remove" | "trim" | "keep");
10679
11386
  ignoreCase?: boolean;
10680
11387
  alphabet?: string;
10681
11388
  locales?: (string | string[]);
10682
11389
  order?: ("asc" | "desc");
10683
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11390
+ sortBy?: ("name" | "value");
10684
11391
  customGroups?: ({
10685
- [k: string]: (string | string[]) | undefined;
10686
- } | ({
10687
- newlinesInside?: (("always" | "never") | number);
10688
11392
  fallbackSort?: {
11393
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10689
11394
  order?: ("asc" | "desc");
10690
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10691
11395
  sortBy?: ("name" | "value");
10692
11396
  };
11397
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10693
11398
  groupName: string;
11399
+ newlinesInside?: ("ignore" | number);
10694
11400
  order?: ("asc" | "desc");
10695
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10696
- anyOf?: {
11401
+ sortBy?: ("name" | "value");
11402
+ anyOf: [{
11403
+ elementNamePattern?: (({
11404
+ pattern: string;
11405
+ flags?: string;
11406
+ } | string)[] | ({
11407
+ pattern: string;
11408
+ flags?: string;
11409
+ } | string));
10697
11410
  modifiers?: ("optional" | "required" | "multiline")[];
10698
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
11411
+ selector?: ("index-signature" | "member" | "method" | "property");
10699
11412
  elementValuePattern?: (({
10700
11413
  pattern: string;
10701
11414
  flags?: string;
@@ -10703,6 +11416,7 @@ type PerfectionistSortObjectTypes = {
10703
11416
  pattern: string;
10704
11417
  flags?: string;
10705
11418
  } | string));
11419
+ }, ...({
10706
11420
  elementNamePattern?: (({
10707
11421
  pattern: string;
10708
11422
  flags?: string;
@@ -10710,37 +11424,61 @@ type PerfectionistSortObjectTypes = {
10710
11424
  pattern: string;
10711
11425
  flags?: string;
10712
11426
  } | string));
10713
- sortBy?: ("name" | "value");
10714
- }[];
11427
+ modifiers?: ("optional" | "required" | "multiline")[];
11428
+ selector?: ("index-signature" | "member" | "method" | "property");
11429
+ elementValuePattern?: (({
11430
+ pattern: string;
11431
+ flags?: string;
11432
+ } | string)[] | ({
11433
+ pattern: string;
11434
+ flags?: string;
11435
+ } | string));
11436
+ })[]];
10715
11437
  } | {
10716
- newlinesInside?: (("always" | "never") | number);
10717
11438
  fallbackSort?: {
11439
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10718
11440
  order?: ("asc" | "desc");
10719
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10720
11441
  sortBy?: ("name" | "value");
10721
11442
  };
11443
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10722
11444
  groupName: string;
11445
+ newlinesInside?: ("ignore" | number);
10723
11446
  order?: ("asc" | "desc");
10724
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10725
- modifiers?: ("optional" | "required" | "multiline")[];
10726
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
10727
- elementValuePattern?: (({
11447
+ sortBy?: ("name" | "value");
11448
+ elementNamePattern?: (({
10728
11449
  pattern: string;
10729
11450
  flags?: string;
10730
11451
  } | string)[] | ({
10731
11452
  pattern: string;
10732
11453
  flags?: string;
10733
11454
  } | string));
10734
- elementNamePattern?: (({
11455
+ modifiers?: ("optional" | "required" | "multiline")[];
11456
+ selector?: ("index-signature" | "member" | "method" | "property");
11457
+ elementValuePattern?: (({
10735
11458
  pattern: string;
10736
11459
  flags?: string;
10737
11460
  } | string)[] | ({
10738
11461
  pattern: string;
10739
11462
  flags?: string;
10740
11463
  } | string));
11464
+ })[];
11465
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11466
+ groups?: (string | [string, ...(string)[]] | {
11467
+ newlinesBetween: ("ignore" | number);
11468
+ } | {
11469
+ group: (string | [string, ...(string)[]]);
11470
+ fallbackSort?: {
11471
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11472
+ order?: ("asc" | "desc");
11473
+ sortBy?: ("name" | "value");
11474
+ };
11475
+ commentAbove?: string;
11476
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11477
+ newlinesInside?: ("ignore" | number);
11478
+ order?: ("asc" | "desc");
10741
11479
  sortBy?: ("name" | "value");
10742
- })[]);
10743
- groupKind?: ("mixed" | "required-first" | "optional-first");
11480
+ })[];
11481
+ newlinesBetween?: ("ignore" | number);
10744
11482
  useConfigurationIf?: {
10745
11483
  allNamesMatchPattern?: (({
10746
11484
  pattern: string;
@@ -10749,10 +11487,22 @@ type PerfectionistSortObjectTypes = {
10749
11487
  pattern: string;
10750
11488
  flags?: string;
10751
11489
  } | string));
11490
+ hasNumericKeysOnly?: boolean;
11491
+ declarationCommentMatchesPattern?: (({
11492
+ scope?: ("shallow" | "deep");
11493
+ pattern: string;
11494
+ flags?: string;
11495
+ } | string)[] | ({
11496
+ scope?: ("shallow" | "deep");
11497
+ pattern: string;
11498
+ flags?: string;
11499
+ } | string));
10752
11500
  declarationMatchesPattern?: (({
11501
+ scope?: ("shallow" | "deep");
10753
11502
  pattern: string;
10754
11503
  flags?: string;
10755
11504
  } | string)[] | ({
11505
+ scope?: ("shallow" | "deep");
10756
11506
  pattern: string;
10757
11507
  flags?: string;
10758
11508
  } | string));
@@ -10780,49 +11530,38 @@ type PerfectionistSortObjectTypes = {
10780
11530
  } | string)));
10781
11531
  });
10782
11532
  partitionByNewLine?: boolean;
10783
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10784
- ignorePattern?: (({
10785
- pattern: string;
10786
- flags?: string;
10787
- } | string)[] | ({
10788
- pattern: string;
10789
- flags?: string;
10790
- } | string));
10791
- sortBy?: ("name" | "value");
10792
- groups?: (string | string[] | {
10793
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10794
- commentAbove?: string;
10795
- })[];
10796
11533
  }[];
10797
11534
  // ----- perfectionist/sort-objects -----
10798
11535
  type PerfectionistSortObjects = {
10799
11536
  fallbackSort?: {
11537
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10800
11538
  order?: ("asc" | "desc");
10801
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10802
11539
  };
11540
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10803
11541
  specialCharacters?: ("remove" | "trim" | "keep");
10804
11542
  ignoreCase?: boolean;
10805
11543
  alphabet?: string;
10806
11544
  locales?: (string | string[]);
10807
11545
  order?: ("asc" | "desc");
10808
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10809
- destructuredObjects?: (boolean | {
10810
- groups?: boolean;
10811
- });
10812
11546
  customGroups?: ({
10813
- [k: string]: (string | string[]) | undefined;
10814
- } | ({
10815
- newlinesInside?: (("always" | "never") | number);
10816
11547
  fallbackSort?: {
11548
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10817
11549
  order?: ("asc" | "desc");
10818
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10819
11550
  };
11551
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10820
11552
  groupName: string;
11553
+ newlinesInside?: ("ignore" | number);
10821
11554
  order?: ("asc" | "desc");
10822
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10823
- anyOf?: {
10824
- modifiers?: ("optional" | "required" | "multiline")[];
10825
- selector?: ("member" | "method" | "multiline" | "property");
11555
+ anyOf: [{
11556
+ elementNamePattern?: (({
11557
+ pattern: string;
11558
+ flags?: string;
11559
+ } | string)[] | ({
11560
+ pattern: string;
11561
+ flags?: string;
11562
+ } | string));
11563
+ modifiers?: ("multiline")[];
11564
+ selector?: ("member" | "method" | "property");
10826
11565
  elementValuePattern?: (({
10827
11566
  pattern: string;
10828
11567
  flags?: string;
@@ -10830,6 +11569,7 @@ type PerfectionistSortObjects = {
10830
11569
  pattern: string;
10831
11570
  flags?: string;
10832
11571
  } | string));
11572
+ }, ...({
10833
11573
  elementNamePattern?: (({
10834
11574
  pattern: string;
10835
11575
  flags?: string;
@@ -10837,33 +11577,57 @@ type PerfectionistSortObjects = {
10837
11577
  pattern: string;
10838
11578
  flags?: string;
10839
11579
  } | string));
10840
- }[];
11580
+ modifiers?: ("multiline")[];
11581
+ selector?: ("member" | "method" | "property");
11582
+ elementValuePattern?: (({
11583
+ pattern: string;
11584
+ flags?: string;
11585
+ } | string)[] | ({
11586
+ pattern: string;
11587
+ flags?: string;
11588
+ } | string));
11589
+ })[]];
10841
11590
  } | {
10842
- newlinesInside?: (("always" | "never") | number);
10843
11591
  fallbackSort?: {
11592
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10844
11593
  order?: ("asc" | "desc");
10845
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10846
11594
  };
11595
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10847
11596
  groupName: string;
11597
+ newlinesInside?: ("ignore" | number);
10848
11598
  order?: ("asc" | "desc");
10849
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10850
- modifiers?: ("optional" | "required" | "multiline")[];
10851
- selector?: ("member" | "method" | "multiline" | "property");
10852
- elementValuePattern?: (({
11599
+ elementNamePattern?: (({
10853
11600
  pattern: string;
10854
11601
  flags?: string;
10855
11602
  } | string)[] | ({
10856
11603
  pattern: string;
10857
11604
  flags?: string;
10858
11605
  } | string));
10859
- elementNamePattern?: (({
11606
+ modifiers?: ("multiline")[];
11607
+ selector?: ("member" | "method" | "property");
11608
+ elementValuePattern?: (({
10860
11609
  pattern: string;
10861
11610
  flags?: string;
10862
11611
  } | string)[] | ({
10863
11612
  pattern: string;
10864
11613
  flags?: string;
10865
11614
  } | string));
10866
- })[]);
11615
+ })[];
11616
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11617
+ groups?: (string | [string, ...(string)[]] | {
11618
+ newlinesBetween: ("ignore" | number);
11619
+ } | {
11620
+ group: (string | [string, ...(string)[]]);
11621
+ fallbackSort?: {
11622
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11623
+ order?: ("asc" | "desc");
11624
+ };
11625
+ commentAbove?: string;
11626
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11627
+ newlinesInside?: ("ignore" | number);
11628
+ order?: ("asc" | "desc");
11629
+ })[];
11630
+ newlinesBetween?: ("ignore" | number);
10867
11631
  useConfigurationIf?: {
10868
11632
  allNamesMatchPattern?: (({
10869
11633
  pattern: string;
@@ -10872,16 +11636,36 @@ type PerfectionistSortObjects = {
10872
11636
  pattern: string;
10873
11637
  flags?: string;
10874
11638
  } | string));
11639
+ objectType?: ("destructured" | "non-destructured");
11640
+ hasNumericKeysOnly?: boolean;
11641
+ declarationCommentMatchesPattern?: (({
11642
+ scope?: ("shallow" | "deep");
11643
+ pattern: string;
11644
+ flags?: string;
11645
+ } | string)[] | ({
11646
+ scope?: ("shallow" | "deep");
11647
+ pattern: string;
11648
+ flags?: string;
11649
+ } | string));
10875
11650
  callingFunctionNamePattern?: (({
11651
+ scope?: ("shallow" | "deep");
10876
11652
  pattern: string;
10877
11653
  flags?: string;
10878
11654
  } | string)[] | ({
11655
+ scope?: ("shallow" | "deep");
11656
+ pattern: string;
11657
+ flags?: string;
11658
+ } | string));
11659
+ declarationMatchesPattern?: (({
11660
+ scope?: ("shallow" | "deep");
11661
+ pattern: string;
11662
+ flags?: string;
11663
+ } | string)[] | ({
11664
+ scope?: ("shallow" | "deep");
10879
11665
  pattern: string;
10880
11666
  flags?: string;
10881
11667
  } | string));
10882
11668
  };
10883
- destructureOnly?: boolean;
10884
- objectDeclarations?: boolean;
10885
11669
  styledComponents?: boolean;
10886
11670
  partitionByComment?: (boolean | (({
10887
11671
  pattern: string;
@@ -10906,43 +11690,38 @@ type PerfectionistSortObjects = {
10906
11690
  } | string)));
10907
11691
  });
10908
11692
  partitionByNewLine?: boolean;
10909
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10910
- ignorePattern?: (({
10911
- pattern: string;
10912
- flags?: string;
10913
- } | string)[] | ({
10914
- pattern: string;
10915
- flags?: string;
10916
- } | string));
10917
- groups?: (string | string[] | {
10918
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10919
- commentAbove?: string;
10920
- })[];
10921
11693
  }[];
10922
11694
  // ----- perfectionist/sort-sets -----
10923
11695
  type PerfectionistSortSets = {
10924
11696
  fallbackSort?: {
11697
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10925
11698
  order?: ("asc" | "desc");
10926
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10927
11699
  };
11700
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10928
11701
  specialCharacters?: ("remove" | "trim" | "keep");
10929
11702
  ignoreCase?: boolean;
10930
11703
  alphabet?: string;
10931
11704
  locales?: (string | string[]);
10932
11705
  order?: ("asc" | "desc");
10933
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10934
- groupKind?: ("mixed" | "literals-first" | "spreads-first");
10935
11706
  customGroups?: ({
10936
- newlinesInside?: (("always" | "never") | number);
10937
11707
  fallbackSort?: {
11708
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10938
11709
  order?: ("asc" | "desc");
10939
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10940
11710
  };
11711
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10941
11712
  groupName: string;
11713
+ newlinesInside?: ("ignore" | number);
10942
11714
  order?: ("asc" | "desc");
10943
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10944
- anyOf?: {
11715
+ anyOf: [{
11716
+ elementNamePattern?: (({
11717
+ pattern: string;
11718
+ flags?: string;
11719
+ } | string)[] | ({
11720
+ pattern: string;
11721
+ flags?: string;
11722
+ } | string));
10945
11723
  selector?: ("literal" | "spread");
11724
+ }, ...({
10946
11725
  elementNamePattern?: (({
10947
11726
  pattern: string;
10948
11727
  flags?: string;
@@ -10950,17 +11729,17 @@ type PerfectionistSortSets = {
10950
11729
  pattern: string;
10951
11730
  flags?: string;
10952
11731
  } | string));
10953
- }[];
11732
+ selector?: ("literal" | "spread");
11733
+ })[]];
10954
11734
  } | {
10955
- newlinesInside?: (("always" | "never") | number);
10956
11735
  fallbackSort?: {
11736
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10957
11737
  order?: ("asc" | "desc");
10958
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10959
11738
  };
11739
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10960
11740
  groupName: string;
11741
+ newlinesInside?: ("ignore" | number);
10961
11742
  order?: ("asc" | "desc");
10962
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10963
- selector?: ("literal" | "spread");
10964
11743
  elementNamePattern?: (({
10965
11744
  pattern: string;
10966
11745
  flags?: string;
@@ -10968,7 +11747,23 @@ type PerfectionistSortSets = {
10968
11747
  pattern: string;
10969
11748
  flags?: string;
10970
11749
  } | string));
11750
+ selector?: ("literal" | "spread");
11751
+ })[];
11752
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11753
+ groups?: (string | [string, ...(string)[]] | {
11754
+ newlinesBetween: ("ignore" | number);
11755
+ } | {
11756
+ group: (string | [string, ...(string)[]]);
11757
+ fallbackSort?: {
11758
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11759
+ order?: ("asc" | "desc");
11760
+ };
11761
+ commentAbove?: string;
11762
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11763
+ newlinesInside?: ("ignore" | number);
11764
+ order?: ("asc" | "desc");
10971
11765
  })[];
11766
+ newlinesBetween?: ("ignore" | number);
10972
11767
  useConfigurationIf?: {
10973
11768
  allNamesMatchPattern?: (({
10974
11769
  pattern: string;
@@ -11001,48 +11796,51 @@ type PerfectionistSortSets = {
11001
11796
  } | string)));
11002
11797
  });
11003
11798
  partitionByNewLine?: boolean;
11004
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11005
- groups?: (string | string[] | {
11006
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11007
- commentAbove?: string;
11008
- })[];
11009
11799
  }[];
11010
11800
  // ----- perfectionist/sort-switch-case -----
11011
11801
  type PerfectionistSortSwitchCase = [] | [{
11012
11802
  fallbackSort?: {
11803
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11013
11804
  order?: ("asc" | "desc");
11014
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11015
11805
  };
11806
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11016
11807
  specialCharacters?: ("remove" | "trim" | "keep");
11017
11808
  ignoreCase?: boolean;
11018
11809
  alphabet?: string;
11019
11810
  locales?: (string | string[]);
11020
11811
  order?: ("asc" | "desc");
11021
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11022
11812
  }];
11023
11813
  // ----- perfectionist/sort-union-types -----
11024
11814
  type PerfectionistSortUnionTypes = {
11025
11815
  fallbackSort?: {
11816
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11026
11817
  order?: ("asc" | "desc");
11027
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11028
11818
  };
11819
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11029
11820
  specialCharacters?: ("remove" | "trim" | "keep");
11030
11821
  ignoreCase?: boolean;
11031
11822
  alphabet?: string;
11032
11823
  locales?: (string | string[]);
11033
11824
  order?: ("asc" | "desc");
11034
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11035
11825
  customGroups?: ({
11036
- newlinesInside?: (("always" | "never") | number);
11037
11826
  fallbackSort?: {
11827
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11038
11828
  order?: ("asc" | "desc");
11039
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11040
11829
  };
11830
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11041
11831
  groupName: string;
11832
+ newlinesInside?: ("ignore" | number);
11042
11833
  order?: ("asc" | "desc");
11043
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11044
- anyOf?: {
11834
+ anyOf: [{
11835
+ elementNamePattern?: (({
11836
+ pattern: string;
11837
+ flags?: string;
11838
+ } | string)[] | ({
11839
+ pattern: string;
11840
+ flags?: string;
11841
+ } | string));
11045
11842
  selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
11843
+ }, ...({
11046
11844
  elementNamePattern?: (({
11047
11845
  pattern: string;
11048
11846
  flags?: string;
@@ -11050,17 +11848,17 @@ type PerfectionistSortUnionTypes = {
11050
11848
  pattern: string;
11051
11849
  flags?: string;
11052
11850
  } | string));
11053
- }[];
11851
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
11852
+ })[]];
11054
11853
  } | {
11055
- newlinesInside?: (("always" | "never") | number);
11056
11854
  fallbackSort?: {
11855
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11057
11856
  order?: ("asc" | "desc");
11058
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11059
11857
  };
11858
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11060
11859
  groupName: string;
11860
+ newlinesInside?: ("ignore" | number);
11061
11861
  order?: ("asc" | "desc");
11062
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11063
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
11064
11862
  elementNamePattern?: (({
11065
11863
  pattern: string;
11066
11864
  flags?: string;
@@ -11068,7 +11866,23 @@ type PerfectionistSortUnionTypes = {
11068
11866
  pattern: string;
11069
11867
  flags?: string;
11070
11868
  } | string));
11869
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
11870
+ })[];
11871
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11872
+ groups?: (string | [string, ...(string)[]] | {
11873
+ newlinesBetween: ("ignore" | number);
11874
+ } | {
11875
+ group: (string | [string, ...(string)[]]);
11876
+ fallbackSort?: {
11877
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11878
+ order?: ("asc" | "desc");
11879
+ };
11880
+ commentAbove?: string;
11881
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11882
+ newlinesInside?: ("ignore" | number);
11883
+ order?: ("asc" | "desc");
11071
11884
  })[];
11885
+ newlinesBetween?: ("ignore" | number);
11072
11886
  partitionByComment?: (boolean | (({
11073
11887
  pattern: string;
11074
11888
  flags?: string;
@@ -11092,35 +11906,38 @@ type PerfectionistSortUnionTypes = {
11092
11906
  } | string)));
11093
11907
  });
11094
11908
  partitionByNewLine?: boolean;
11095
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11096
- groups?: (string | string[] | {
11097
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11098
- commentAbove?: string;
11099
- })[];
11100
11909
  }[];
11101
11910
  // ----- perfectionist/sort-variable-declarations -----
11102
11911
  type PerfectionistSortVariableDeclarations = [] | [{
11103
11912
  fallbackSort?: {
11913
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11104
11914
  order?: ("asc" | "desc");
11105
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11106
11915
  };
11916
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11107
11917
  specialCharacters?: ("remove" | "trim" | "keep");
11108
11918
  ignoreCase?: boolean;
11109
11919
  alphabet?: string;
11110
11920
  locales?: (string | string[]);
11111
11921
  order?: ("asc" | "desc");
11112
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11113
11922
  customGroups?: ({
11114
- newlinesInside?: (("always" | "never") | number);
11115
11923
  fallbackSort?: {
11924
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11116
11925
  order?: ("asc" | "desc");
11117
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11118
11926
  };
11927
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11119
11928
  groupName: string;
11929
+ newlinesInside?: ("ignore" | number);
11120
11930
  order?: ("asc" | "desc");
11121
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11122
- anyOf?: {
11931
+ anyOf: [{
11932
+ elementNamePattern?: (({
11933
+ pattern: string;
11934
+ flags?: string;
11935
+ } | string)[] | ({
11936
+ pattern: string;
11937
+ flags?: string;
11938
+ } | string));
11123
11939
  selector?: ("initialized" | "uninitialized");
11940
+ }, ...({
11124
11941
  elementNamePattern?: (({
11125
11942
  pattern: string;
11126
11943
  flags?: string;
@@ -11128,17 +11945,17 @@ type PerfectionistSortVariableDeclarations = [] | [{
11128
11945
  pattern: string;
11129
11946
  flags?: string;
11130
11947
  } | string));
11131
- }[];
11948
+ selector?: ("initialized" | "uninitialized");
11949
+ })[]];
11132
11950
  } | {
11133
- newlinesInside?: (("always" | "never") | number);
11134
11951
  fallbackSort?: {
11952
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11135
11953
  order?: ("asc" | "desc");
11136
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11137
11954
  };
11955
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11138
11956
  groupName: string;
11957
+ newlinesInside?: ("ignore" | number);
11139
11958
  order?: ("asc" | "desc");
11140
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11141
- selector?: ("initialized" | "uninitialized");
11142
11959
  elementNamePattern?: (({
11143
11960
  pattern: string;
11144
11961
  flags?: string;
@@ -11146,7 +11963,23 @@ type PerfectionistSortVariableDeclarations = [] | [{
11146
11963
  pattern: string;
11147
11964
  flags?: string;
11148
11965
  } | string));
11966
+ selector?: ("initialized" | "uninitialized");
11967
+ })[];
11968
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11969
+ groups?: (string | [string, ...(string)[]] | {
11970
+ newlinesBetween: ("ignore" | number);
11971
+ } | {
11972
+ group: (string | [string, ...(string)[]]);
11973
+ fallbackSort?: {
11974
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11975
+ order?: ("asc" | "desc");
11976
+ };
11977
+ commentAbove?: string;
11978
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11979
+ newlinesInside?: ("ignore" | number);
11980
+ order?: ("asc" | "desc");
11149
11981
  })[];
11982
+ newlinesBetween?: ("ignore" | number);
11150
11983
  partitionByComment?: (boolean | (({
11151
11984
  pattern: string;
11152
11985
  flags?: string;
@@ -11170,11 +12003,42 @@ type PerfectionistSortVariableDeclarations = [] | [{
11170
12003
  } | string)));
11171
12004
  });
11172
12005
  partitionByNewLine?: boolean;
11173
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11174
- groups?: (string | string[] | {
11175
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11176
- commentAbove?: string;
11177
- })[];
12006
+ }];
12007
+ // ----- pnpm/json-enforce-catalog -----
12008
+ type PnpmJsonEnforceCatalog = [] | [{
12009
+ allowedProtocols?: string[];
12010
+ autofix?: boolean;
12011
+ defaultCatalog?: string;
12012
+ reuseExistingCatalog?: boolean;
12013
+ conflicts?: ("new-catalog" | "overrides" | "error");
12014
+ fields?: string[];
12015
+ ignores?: string[];
12016
+ }];
12017
+ // ----- pnpm/json-prefer-workspace-settings -----
12018
+ type PnpmJsonPreferWorkspaceSettings = [] | [{
12019
+ autofix?: boolean;
12020
+ }];
12021
+ // ----- pnpm/json-valid-catalog -----
12022
+ type PnpmJsonValidCatalog = [] | [{
12023
+ autoInsert?: boolean;
12024
+ autoInsertDefaultSpecifier?: string;
12025
+ autofix?: boolean;
12026
+ enforceNoConflict?: boolean;
12027
+ fields?: unknown[];
12028
+ }];
12029
+ // ----- pnpm/yaml-enforce-settings -----
12030
+ type PnpmYamlEnforceSettings = [] | [{
12031
+ autofix?: boolean;
12032
+ settings?: {
12033
+ [k: string]: unknown | undefined;
12034
+ };
12035
+ requiredFields?: string[];
12036
+ forbiddenFields?: string[];
12037
+ }];
12038
+ // ----- pnpm/yaml-no-duplicate-catalog-item -----
12039
+ type PnpmYamlNoDuplicateCatalogItem = [] | [{
12040
+ allow?: string[];
12041
+ checkDuplicates?: ("name-only" | "exact-version");
11178
12042
  }];
11179
12043
  // ----- prefer-arrow-callback -----
11180
12044
  type PreferArrowCallback = [] | [{
@@ -11385,6 +12249,11 @@ type ReactNamingConventionFilenameExtension = [] | [(("always" | "as-needed") |
11385
12249
  extensions?: string[];
11386
12250
  ignoreFilesWithoutCode?: boolean;
11387
12251
  })];
12252
+ // ----- react-naming-convention/use-state -----
12253
+ type ReactNamingConventionUseState = [] | [{
12254
+ enforceAssignment?: boolean;
12255
+ enforceSetterName?: boolean;
12256
+ }];
11388
12257
  // ----- react-refresh/only-export-components -----
11389
12258
  type ReactRefreshOnlyExportComponents = [] | [{
11390
12259
  allowExportNames?: string[];
@@ -11406,8 +12275,13 @@ type ReactNoForbiddenProps = [] | [{
11406
12275
  prop: string;
11407
12276
  })[];
11408
12277
  }];
12278
+ // ----- react/no-unstable-default-props -----
12279
+ type ReactNoUnstableDefaultProps = [] | [{
12280
+ safeDefaultProps?: string[];
12281
+ }];
11409
12282
  // ----- react/no-useless-fragment -----
11410
12283
  type ReactNoUselessFragment = [] | [{
12284
+ allowEmptyFragment?: boolean;
11411
12285
  allowExpressions?: boolean;
11412
12286
  }];
11413
12287
  // ----- regexp/hexadecimal-escape -----
@@ -11910,6 +12784,13 @@ type TailwindcssNoUnnecessaryArbitraryValue = [] | [{
11910
12784
  type TemplateCurlySpacing = [] | [("always" | "never")];
11911
12785
  // ----- template-tag-spacing -----
11912
12786
  type TemplateTagSpacing = [] | [("always" | "never")];
12787
+ // ----- test/consistent-each-for -----
12788
+ type TestConsistentEachFor = [] | [{
12789
+ test?: ("each" | "for");
12790
+ it?: ("each" | "for");
12791
+ describe?: ("each" | "for");
12792
+ suite?: ("each" | "for");
12793
+ }];
11913
12794
  // ----- test/consistent-test-filename -----
11914
12795
  type TestConsistentTestFilename = [] | [{
11915
12796
  pattern?: string;
@@ -11937,13 +12818,17 @@ type TestMaxExpects = [] | [{
11937
12818
  type TestMaxNestedDescribe = [] | [{
11938
12819
  max?: number;
11939
12820
  }];
12821
+ // ----- test/no-conditional-expect -----
12822
+ type TestNoConditionalExpect = [] | [{
12823
+ expectAssertions?: boolean;
12824
+ }];
11940
12825
  // ----- test/no-focused-tests -----
11941
12826
  type TestNoFocusedTests = [] | [{
11942
12827
  fixable?: boolean;
11943
12828
  }];
11944
12829
  // ----- test/no-hooks -----
11945
12830
  type TestNoHooks = [] | [{
11946
- allow?: unknown[];
12831
+ allow?: ("beforeAll" | "beforeEach" | "afterAll" | "afterEach")[];
11947
12832
  }];
11948
12833
  // ----- test/no-large-snapshots -----
11949
12834
  type TestNoLargeSnapshots = [] | [{
@@ -11978,6 +12863,10 @@ type TestPreferExpectAssertions = [] | [{
11978
12863
  onlyFunctionsWithExpectInLoop?: boolean;
11979
12864
  onlyFunctionsWithExpectInCallback?: boolean;
11980
12865
  }];
12866
+ // ----- test/prefer-import-in-mock -----
12867
+ type TestPreferImportInMock = [] | [{
12868
+ fixable?: boolean;
12869
+ }];
11981
12870
  // ----- test/prefer-lowercase-title -----
11982
12871
  type TestPreferLowercaseTitle = [] | [{
11983
12872
  ignore?: ("describe" | "test" | "it")[];
@@ -13184,6 +14073,10 @@ type UnicornTemplateIndent = [] | [{
13184
14073
  selectors?: string[];
13185
14074
  comments?: string[];
13186
14075
  }];
14076
+ // ----- unicorn/text-encoding-identifier-case -----
14077
+ type UnicornTextEncodingIdentifierCase = [] | [{
14078
+ withDash?: boolean;
14079
+ }];
13187
14080
  // ----- unocss/enforce-class-compile -----
13188
14081
  type UnocssEnforceClassCompile = [] | [{
13189
14082
  prefix?: string;
@@ -14605,6 +15498,13 @@ interface OptionsConfig extends OptionsComponentExts {
14605
15498
  */
14606
15499
  unocss?: boolean | OptionsUnoCSS;
14607
15500
  /**
15501
+ * Enable pnpm (workspace/catalogs) support.
15502
+ *
15503
+ * @see https://github.com/antfu/pnpm-workspace-utils
15504
+ * @default false
15505
+ */
15506
+ pnpm?: boolean;
15507
+ /**
14608
15508
  * Enable regexp rules.
14609
15509
  *
14610
15510
  * @see https://ota-meshi.github.io/eslint-plugin-regexp/