@lincy/eslint-config 6.3.3 → 6.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { FlatConfigComposer } from "eslint-flat-config-utils";
1
+ import { ConfigWithExtends, FlatConfigComposer } from "eslint-flat-config-utils";
2
2
  import { StylisticCustomizeOptions } from "@stylistic/eslint-plugin";
3
3
  import { ParserOptions } from "@typescript-eslint/parser";
4
4
  import { FlatGitignoreOptions } from "eslint-config-flat-gitignore";
@@ -285,6 +285,10 @@ interface RuleOptions {
285
285
  * Use dprint to format code
286
286
  */
287
287
  'format/dprint'?: Linter.RuleEntry<FormatDprint>;
288
+ /**
289
+ * Use oxfmt to format code
290
+ */
291
+ 'format/oxfmt'?: Linter.RuleEntry<FormatOxfmt>;
288
292
  /**
289
293
  * Use Prettier to format code
290
294
  */
@@ -422,6 +426,11 @@ interface RuleOptions {
422
426
  * @see https://github.com/9romise/eslint-plugin-import-lite/blob/main/src/rules/no-named-default/README.md
423
427
  */
424
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>;
425
434
  /**
426
435
  * Enforce consistent indentation
427
436
  * @see https://eslint.org/docs/latest/rules/indent
@@ -2237,6 +2246,11 @@ interface RuleOptions {
2237
2246
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/console.md
2238
2247
  */
2239
2248
  'node/prefer-global/console'?: Linter.RuleEntry<NodePreferGlobalConsole>;
2249
+ /**
2250
+ * enforce either `crypto` or `require("crypto").webcrypto`
2251
+ * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/crypto.md
2252
+ */
2253
+ 'node/prefer-global/crypto'?: Linter.RuleEntry<NodePreferGlobalCrypto>;
2240
2254
  /**
2241
2255
  * enforce either `process` or `require("process")`
2242
2256
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/process.md
@@ -2252,6 +2266,11 @@ interface RuleOptions {
2252
2266
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/text-encoder.md
2253
2267
  */
2254
2268
  'node/prefer-global/text-encoder'?: Linter.RuleEntry<NodePreferGlobalTextEncoder>;
2269
+ /**
2270
+ * enforce either global timer functions or `require("timers")`
2271
+ * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/timers.md
2272
+ */
2273
+ 'node/prefer-global/timers'?: Linter.RuleEntry<NodePreferGlobalTimers>;
2255
2274
  /**
2256
2275
  * enforce either `URL` or `require("url").URL`
2257
2276
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/prefer-global/url.md
@@ -2371,6 +2390,11 @@ interface RuleOptions {
2371
2390
  * @see https://perfectionist.dev/rules/sort-enums
2372
2391
  */
2373
2392
  'perfectionist/sort-enums'?: Linter.RuleEntry<PerfectionistSortEnums>;
2393
+ /**
2394
+ * Enforce sorted export attributes.
2395
+ * @see https://perfectionist.dev/rules/sort-export-attributes
2396
+ */
2397
+ 'perfectionist/sort-export-attributes'?: Linter.RuleEntry<PerfectionistSortExportAttributes>;
2374
2398
  /**
2375
2399
  * Enforce sorted exports.
2376
2400
  * @see https://perfectionist.dev/rules/sort-exports
@@ -2381,6 +2405,11 @@ interface RuleOptions {
2381
2405
  * @see https://perfectionist.dev/rules/sort-heritage-clauses
2382
2406
  */
2383
2407
  'perfectionist/sort-heritage-clauses'?: Linter.RuleEntry<PerfectionistSortHeritageClauses>;
2408
+ /**
2409
+ * Enforce sorted import attributes.
2410
+ * @see https://perfectionist.dev/rules/sort-import-attributes
2411
+ */
2412
+ 'perfectionist/sort-import-attributes'?: Linter.RuleEntry<PerfectionistSortImportAttributes>;
2384
2413
  /**
2385
2414
  * Enforce sorted imports.
2386
2415
  * @see https://perfectionist.dev/rules/sort-imports
@@ -2540,102 +2569,102 @@ interface RuleOptions {
2540
2569
  */
2541
2570
  'quotes'?: Linter.RuleEntry<Quotes>;
2542
2571
  /**
2543
- * Enforce the consistent use of the radix argument when using `parseInt()`
2572
+ * Enforce the use of the radix argument when using `parseInt()`
2544
2573
  * @see https://eslint.org/docs/latest/rules/radix
2545
2574
  */
2546
2575
  'radix'?: Linter.RuleEntry<Radix>;
2547
2576
  /**
2548
- * Disallow `dangerouslySetInnerHTML`.
2577
+ * Disallows DOM elements from using 'dangerouslySetInnerHTML'.
2549
2578
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml
2550
2579
  */
2551
2580
  'react-dom/no-dangerously-set-innerhtml'?: Linter.RuleEntry<[]>;
2552
2581
  /**
2553
- * Disallow `dangerouslySetInnerHTML` and `children` at the same time.
2582
+ * Disallows DOM elements from using 'dangerouslySetInnerHTML' and 'children' at the same time.
2554
2583
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml-with-children
2555
2584
  */
2556
2585
  'react-dom/no-dangerously-set-innerhtml-with-children'?: Linter.RuleEntry<[]>;
2557
2586
  /**
2558
- * Disallow `findDOMNode`.
2587
+ * Disallows 'findDOMNode'.
2559
2588
  * @see https://eslint-react.xyz/docs/rules/dom-no-find-dom-node
2560
2589
  */
2561
2590
  'react-dom/no-find-dom-node'?: Linter.RuleEntry<[]>;
2562
2591
  /**
2563
- * Disallow `flushSync`.
2592
+ * Disallows 'flushSync'.
2564
2593
  * @see https://eslint-react.xyz/docs/rules/dom-no-flush-sync
2565
2594
  */
2566
2595
  'react-dom/no-flush-sync'?: Linter.RuleEntry<[]>;
2567
2596
  /**
2568
- * Replaces usages of `ReactDom.hydrate()` with `hydrateRoot()`.
2597
+ * Replaces usage of 'ReactDOM.hydrate()' with 'hydrateRoot()'.
2569
2598
  * @see https://eslint-react.xyz/docs/rules/dom-no-hydrate
2570
2599
  */
2571
2600
  'react-dom/no-hydrate'?: Linter.RuleEntry<[]>;
2572
2601
  /**
2573
- * Enforces explicit `type` attribute for `button` elements.
2602
+ * Enforces an explicit 'type' attribute for 'button' elements.
2574
2603
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-button-type
2575
2604
  */
2576
2605
  'react-dom/no-missing-button-type'?: Linter.RuleEntry<[]>;
2577
2606
  /**
2578
- * Enforces explicit `sandbox` prop for `iframe` elements.
2607
+ * Enforces an explicit 'sandbox' attribute for 'iframe' elements.
2579
2608
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox
2580
2609
  */
2581
2610
  'react-dom/no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>;
2582
2611
  /**
2583
- * Enforces the absence of a `namespace` in React elements.
2612
+ * Enforces the absence of a 'namespace' in React elements.
2584
2613
  * @see https://eslint-react.xyz/docs/rules/dom-no-namespace
2585
2614
  */
2586
2615
  'react-dom/no-namespace'?: Linter.RuleEntry<[]>;
2587
2616
  /**
2588
- * Replaces usages of `ReactDom.render()` with `createRoot(node).render()`.
2617
+ * Replaces usage of 'ReactDOM.render()' with 'createRoot(node).render()'.
2589
2618
  * @see https://eslint-react.xyz/docs/rules/dom-no-render
2590
2619
  */
2591
2620
  'react-dom/no-render'?: Linter.RuleEntry<[]>;
2592
2621
  /**
2593
- * Disallow the return value of `ReactDOM.render`.
2622
+ * Disallows the return value of 'ReactDOM.render'.
2594
2623
  * @see https://eslint-react.xyz/docs/rules/dom-no-render-return-value
2595
2624
  */
2596
2625
  'react-dom/no-render-return-value'?: Linter.RuleEntry<[]>;
2597
2626
  /**
2598
- * Disallow `javascript:` URLs as attribute values.
2627
+ * Disallows 'javascript:' URLs as attribute values.
2599
2628
  * @see https://eslint-react.xyz/docs/rules/dom-no-script-url
2600
2629
  */
2601
2630
  'react-dom/no-script-url'?: Linter.RuleEntry<[]>;
2602
2631
  /**
2603
- * Disallows the use of string style prop.
2632
+ * Disallows the use of string style prop in JSX. Use an object instead.
2604
2633
  * @see https://eslint-react.xyz/docs/rules/dom-no-string-style-prop
2605
2634
  */
2606
2635
  'react-dom/no-string-style-prop'?: Linter.RuleEntry<[]>;
2607
2636
  /**
2608
- * Disallow unknown `DOM` property.
2637
+ * Disallows unknown 'DOM' properties.
2609
2638
  * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property
2610
2639
  */
2611
2640
  'react-dom/no-unknown-property'?: Linter.RuleEntry<ReactDomNoUnknownProperty>;
2612
2641
  /**
2613
- * Enforces `sandbox` attribute for `iframe` elements is not set to unsafe combinations.
2642
+ * Enforces that the 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations.
2614
2643
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox
2615
2644
  */
2616
2645
  'react-dom/no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>;
2617
2646
  /**
2618
- * Disallow `target="_blank"` without `rel="noreferrer noopener"`.
2647
+ * Disallows 'target="_blank"' without 'rel="noreferrer noopener"'.
2619
2648
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-target-blank
2620
2649
  */
2621
2650
  'react-dom/no-unsafe-target-blank'?: Linter.RuleEntry<[]>;
2622
2651
  /**
2623
- * Replaces usages of `useFormState` with `useActionState`.
2652
+ * Replaces usage of 'useFormState' with 'useActionState'.
2624
2653
  * @see https://eslint-react.xyz/docs/rules/dom-no-use-form-state
2625
2654
  */
2626
2655
  'react-dom/no-use-form-state'?: Linter.RuleEntry<[]>;
2627
2656
  /**
2628
- * Disallow `children` in void DOM elements.
2657
+ * Disallows 'children' in void DOM elements.
2629
2658
  * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
2630
2659
  */
2631
2660
  'react-dom/no-void-elements-with-children'?: Linter.RuleEntry<[]>;
2632
2661
  /**
2633
- * Enforces React Dom is imported via a namespace import.
2662
+ * Enforces importing React DOM via a namespace import.
2634
2663
  * @see https://eslint-react.xyz/docs/rules/dom-prefer-namespace-import
2635
2664
  */
2636
2665
  'react-dom/prefer-namespace-import'?: Linter.RuleEntry<[]>;
2637
2666
  /**
2638
- * Disallow direct calls to the `set` function of `useState` in `useEffect`.
2667
+ * Disallows direct calls to the ['set' function](https://react.dev/reference/react/useState#setstate) of 'useState' in 'useEffect'.
2639
2668
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
2640
2669
  */
2641
2670
  'react-hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>;
@@ -2763,199 +2792,214 @@ interface RuleOptions {
2763
2792
  */
2764
2793
  'react-naming-convention/component-name'?: Linter.RuleEntry<ReactNamingConventionComponentName>;
2765
2794
  /**
2766
- * Enforces context name to be a valid component name with the suffix `Context`.
2795
+ * Enforces the context name to be a valid component name with the suffix 'Context'.
2767
2796
  * @see https://eslint-react.xyz/docs/rules/naming-convention-context-name
2768
2797
  */
2769
2798
  'react-naming-convention/context-name'?: Linter.RuleEntry<[]>;
2770
2799
  /**
2771
- * Enforces consistent file naming conventions.
2800
+ * Enforces consistent file-naming conventions.
2772
2801
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename
2773
2802
  */
2774
2803
  'react-naming-convention/filename'?: Linter.RuleEntry<ReactNamingConventionFilename>;
2775
2804
  /**
2776
- * Enforces consistent file naming conventions.
2805
+ * Enforces consistent use of the JSX file extension.
2777
2806
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename-extension
2778
2807
  */
2779
2808
  'react-naming-convention/filename-extension'?: Linter.RuleEntry<ReactNamingConventionFilenameExtension>;
2780
2809
  /**
2781
- * Enforces destructuring and symmetric naming of `useState` hook value and setter.
2810
+ * Enforces identifier names assigned from 'useId' calls to be either 'id' or end with 'Id'.
2811
+ * @see https://eslint-react.xyz/docs/rules/naming-convention-id-name
2812
+ */
2813
+ 'react-naming-convention/id-name'?: Linter.RuleEntry<[]>;
2814
+ /**
2815
+ * Enforces identifier names assigned from 'useRef' calls to be either 'ref' or end with 'Ref'.
2816
+ * @see https://eslint-react.xyz/docs/rules/naming-convention-ref-name
2817
+ */
2818
+ 'react-naming-convention/ref-name'?: Linter.RuleEntry<[]>;
2819
+ /**
2820
+ * Enforces destructuring and symmetric naming of the 'useState' hook value and setter.
2782
2821
  * @see https://eslint-react.xyz/docs/rules/naming-convention-use-state
2783
2822
  */
2784
- 'react-naming-convention/use-state'?: Linter.RuleEntry<[]>;
2823
+ 'react-naming-convention/use-state'?: Linter.RuleEntry<ReactNamingConventionUseState>;
2785
2824
  'react-refresh/only-export-components'?: Linter.RuleEntry<ReactRefreshOnlyExportComponents>;
2786
2825
  /**
2787
- * Prevents leaked `addEventListener` in a component or custom Hook.
2826
+ * Validate and transform React Client/Server Function definitions.
2827
+ * @see https://eslint-react.xyz/docs/rules/function-definition
2828
+ */
2829
+ 'react-rsc/function-definition'?: Linter.RuleEntry<[]>;
2830
+ /**
2831
+ * Enforces that every 'addEventListener' in a component or custom hook has a corresponding 'removeEventListener'.
2788
2832
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-event-listener
2789
2833
  */
2790
2834
  'react-web-api/no-leaked-event-listener'?: Linter.RuleEntry<[]>;
2791
2835
  /**
2792
- * Prevents leaked `setInterval` in a component or custom Hook.
2836
+ * Enforces that every 'setInterval' in a component or custom hook has a corresponding 'clearInterval'.
2793
2837
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-interval
2794
2838
  */
2795
2839
  'react-web-api/no-leaked-interval'?: Linter.RuleEntry<[]>;
2796
2840
  /**
2797
- * Prevents leaked `ResizeObserver` in a component or custom Hook.
2841
+ * Enforces that every 'ResizeObserver' created in a component or custom hook has a corresponding 'ResizeObserver.disconnect()'.
2798
2842
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-resize-observer
2799
2843
  */
2800
2844
  'react-web-api/no-leaked-resize-observer'?: Linter.RuleEntry<[]>;
2801
2845
  /**
2802
- * Prevents leaked `setTimeout` in a component or custom Hook.
2846
+ * Enforces that every 'setTimeout' in a component or custom hook has a corresponding 'clearTimeout'.
2803
2847
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-timeout
2804
2848
  */
2805
2849
  'react-web-api/no-leaked-timeout'?: Linter.RuleEntry<[]>;
2806
2850
  /**
2807
- * Prevents dollar signs from being inserted as text nodes before expressions.
2851
+ * Prevents unintentional '$' sign before expression.
2808
2852
  * @see https://eslint-react.xyz/docs/rules/jsx-dollar
2809
2853
  */
2810
2854
  'react/jsx-dollar'?: Linter.RuleEntry<[]>;
2811
2855
  /**
2812
- * Enforces that the 'key' prop is placed before the spread prop in JSX elements.
2856
+ * Enforces 'key' prop placement before spread props.
2813
2857
  * @see https://eslint-react.xyz/docs/rules/jsx-key-before-spread
2814
2858
  */
2815
2859
  'react/jsx-key-before-spread'?: Linter.RuleEntry<[]>;
2816
2860
  /**
2817
- * Prevents comments from being inserted as text nodes.
2861
+ * Prevents comment strings (e.g., beginning with '//' or '/*') from being accidentally inserted into a JSX element's text nodes.
2818
2862
  * @see https://eslint-react.xyz/docs/rules/jsx-no-comment-textnodes
2819
2863
  */
2820
2864
  'react/jsx-no-comment-textnodes'?: Linter.RuleEntry<[]>;
2821
2865
  /**
2822
- * Disallow duplicate props in JSX elements.
2866
+ * Disallows duplicate props in JSX elements.
2823
2867
  * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
2824
2868
  */
2825
2869
  'react/jsx-no-duplicate-props'?: Linter.RuleEntry<[]>;
2826
2870
  /**
2827
- * Disallows 'IIFE' in JSX elements.
2871
+ * Disallows immediately-invoked function expressions in JSX.
2828
2872
  * @see https://eslint-react.xyz/docs/rules/jsx-no-iife
2829
2873
  */
2830
2874
  'react/jsx-no-iife'?: Linter.RuleEntry<[]>;
2831
2875
  /**
2832
- * Disallow undefined variables in JSX.
2876
+ * Prevents using variables in JSX that are not defined in the scope.
2833
2877
  * @see https://eslint-react.xyz/docs/rules/jsx-no-undef
2834
2878
  */
2835
2879
  'react/jsx-no-undef'?: Linter.RuleEntry<[]>;
2836
2880
  /**
2837
- * Enforces shorthand syntax for boolean attributes.
2881
+ * Enforces shorthand syntax for boolean props.
2838
2882
  * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-boolean
2839
2883
  */
2840
2884
  'react/jsx-shorthand-boolean'?: Linter.RuleEntry<ReactJsxShorthandBoolean>;
2841
2885
  /**
2842
- * Enforces shorthand syntax for fragments.
2886
+ * Enforces shorthand syntax for fragment elements.
2843
2887
  * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-fragment
2844
2888
  */
2845
2889
  'react/jsx-shorthand-fragment'?: Linter.RuleEntry<ReactJsxShorthandFragment>;
2846
2890
  /**
2847
- * Marks React variables as used when JSX is used.
2891
+ * Marks React variables as used when JSX is present.
2848
2892
  * @see https://eslint-react.xyz/docs/rules/jsx-uses-react
2849
2893
  */
2850
2894
  'react/jsx-uses-react'?: Linter.RuleEntry<[]>;
2851
2895
  /**
2852
- * Marks variables used in JSX elements as used.
2896
+ * Marks JSX element variables as used.
2853
2897
  * @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
2854
2898
  */
2855
2899
  'react/jsx-uses-vars'?: Linter.RuleEntry<[]>;
2856
2900
  /**
2857
- * Disallow accessing `this.state` inside `setState` calls.
2901
+ * Disallows accessing 'this.state' inside 'setState' calls.
2858
2902
  * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate
2859
2903
  */
2860
2904
  'react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>;
2861
2905
  /**
2862
- * Disallow an item's index in the array as its key.
2906
+ * Disallows using an item's index in the array as its key.
2863
2907
  * @see https://eslint-react.xyz/docs/rules/no-array-index-key
2864
2908
  */
2865
2909
  'react/no-array-index-key'?: Linter.RuleEntry<[]>;
2866
2910
  /**
2867
- * Disallow `Children.count`.
2911
+ * Disallows the use of 'Children.count' from the 'react' package.
2868
2912
  * @see https://eslint-react.xyz/docs/rules/no-children-count
2869
2913
  */
2870
2914
  'react/no-children-count'?: Linter.RuleEntry<[]>;
2871
2915
  /**
2872
- * Disallow 'Children.forEach'.
2916
+ * Disallows the use of 'Children.forEach' from the 'react' package.
2873
2917
  * @see https://eslint-react.xyz/docs/rules/no-children-for-each
2874
2918
  */
2875
2919
  'react/no-children-for-each'?: Linter.RuleEntry<[]>;
2876
2920
  /**
2877
- * Disallow `Children.map`.
2921
+ * Disallows the use of 'Children.map' from the 'react' package.
2878
2922
  * @see https://eslint-react.xyz/docs/rules/no-children-map
2879
2923
  */
2880
2924
  'react/no-children-map'?: Linter.RuleEntry<[]>;
2881
2925
  /**
2882
- * Disallow `Children.only`.
2926
+ * Disallows the use of 'Children.only' from the 'react' package.
2883
2927
  * @see https://eslint-react.xyz/docs/rules/no-children-only
2884
2928
  */
2885
2929
  'react/no-children-only'?: Linter.RuleEntry<[]>;
2886
2930
  /**
2887
- * Disallow passing `children` as a prop.
2931
+ * Disallows passing 'children' as a prop.
2888
2932
  * @see https://eslint-react.xyz/docs/rules/no-children-prop
2889
2933
  */
2890
2934
  'react/no-children-prop'?: Linter.RuleEntry<[]>;
2891
2935
  /**
2892
- * Disallow `Children.toArray`.
2936
+ * Disallows the use of 'Children.toArray' from the 'react' package.
2893
2937
  * @see https://eslint-react.xyz/docs/rules/no-children-to-array
2894
2938
  */
2895
2939
  'react/no-children-to-array'?: Linter.RuleEntry<[]>;
2896
2940
  /**
2897
- * Disallow class components except for error boundaries.
2941
+ * Disallows class components except for error boundaries.
2898
2942
  * @see https://eslint-react.xyz/docs/rules/no-class-component
2899
2943
  */
2900
2944
  'react/no-class-component'?: Linter.RuleEntry<[]>;
2901
2945
  /**
2902
- * Disallow `cloneElement`.
2946
+ * Disallows 'cloneElement'.
2903
2947
  * @see https://eslint-react.xyz/docs/rules/no-clone-element
2904
2948
  */
2905
2949
  'react/no-clone-element'?: Linter.RuleEntry<[]>;
2906
2950
  /**
2907
- * Replace usages of `componentWillMount` with `UNSAFE_componentWillMount`.
2951
+ * Replaces usage of 'componentWillMount' with 'UNSAFE_componentWillMount'.
2908
2952
  * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
2909
2953
  */
2910
2954
  'react/no-component-will-mount'?: Linter.RuleEntry<[]>;
2911
2955
  /**
2912
- * Replace usages of `componentWillReceiveProps` with `UNSAFE_componentWillReceiveProps`.
2956
+ * Replaces usage of 'componentWillReceiveProps' with 'UNSAFE_componentWillReceiveProps'.
2913
2957
  * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props
2914
2958
  */
2915
2959
  'react/no-component-will-receive-props'?: Linter.RuleEntry<[]>;
2916
2960
  /**
2917
- * Replace usages of `componentWillUpdate` with `UNSAFE_componentWillUpdate`.
2961
+ * Replaces usage of 'componentWillUpdate' with 'UNSAFE_componentWillUpdate'.
2918
2962
  * @see https://eslint-react.xyz/docs/rules/no-component-will-update
2919
2963
  */
2920
2964
  'react/no-component-will-update'?: Linter.RuleEntry<[]>;
2921
2965
  /**
2922
- * Replace usages of `<Context.Provider>` with `<Context>`.
2966
+ * Replaces usage of '<Context.Provider>' with '<Context>'.
2923
2967
  * @see https://eslint-react.xyz/docs/rules/no-context-provider
2924
2968
  */
2925
2969
  'react/no-context-provider'?: Linter.RuleEntry<[]>;
2926
2970
  /**
2927
- * Disallow `createRef` in function components.
2971
+ * Disallows 'createRef' in function components.
2928
2972
  * @see https://eslint-react.xyz/docs/rules/no-create-ref
2929
2973
  */
2930
2974
  'react/no-create-ref'?: Linter.RuleEntry<[]>;
2931
2975
  /**
2932
- * Disallow `defaultProps` property in favor of ES6 default parameters.
2976
+ * Disallows the 'defaultProps' property in favor of ES6 default parameters.
2933
2977
  * @see https://eslint-react.xyz/docs/rules/no-default-props
2934
2978
  */
2935
2979
  'react/no-default-props'?: Linter.RuleEntry<[]>;
2936
2980
  /**
2937
- * Disallow direct mutation of `this.state`.
2981
+ * Disallows direct mutation of 'this.state'.
2938
2982
  * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
2939
2983
  */
2940
2984
  'react/no-direct-mutation-state'?: Linter.RuleEntry<[]>;
2941
2985
  /**
2942
- * Disallow duplicate `key` on elements in the same array or a list of `children`.
2986
+ * Prevents duplicate 'key' props on sibling elements when rendering lists.
2943
2987
  * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
2944
2988
  */
2945
2989
  'react/no-duplicate-key'?: Linter.RuleEntry<[]>;
2946
2990
  /**
2947
- * Disallow certain props on components.
2991
+ * Disallows certain props on components.
2948
2992
  * @see https://eslint-react.xyz/docs/rules/no-forbidden-props
2949
2993
  * @deprecated
2950
2994
  */
2951
2995
  'react/no-forbidden-props'?: Linter.RuleEntry<ReactNoForbiddenProps>;
2952
2996
  /**
2953
- * Replaces usages of `forwardRef` with passing `ref` as a prop.
2997
+ * Replaces usage of 'forwardRef' with passing 'ref' as a prop.
2954
2998
  * @see https://eslint-react.xyz/docs/rules/no-forward-ref
2955
2999
  */
2956
3000
  'react/no-forward-ref'?: Linter.RuleEntry<[]>;
2957
3001
  /**
2958
- * Prevents `key` from not being explicitly specified (e.g. spreading `key` from objects).
3002
+ * Prevents implicitly passing the 'key' prop to components.
2959
3003
  * @see https://eslint-react.xyz/docs/rules/no-implicit-key
2960
3004
  */
2961
3005
  'react/no-implicit-key'?: Linter.RuleEntry<[]>;
@@ -2965,57 +3009,57 @@ interface RuleOptions {
2965
3009
  */
2966
3010
  'react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>;
2967
3011
  /**
2968
- * Enforces that all components have a `displayName` which can be used in devtools.
3012
+ * Enforces that all components have a 'displayName' that can be used in DevTools.
2969
3013
  * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
2970
3014
  */
2971
3015
  'react/no-missing-component-display-name'?: Linter.RuleEntry<[]>;
2972
3016
  /**
2973
- * Enforces that all contexts have a `displayName` which can be used in devtools.
3017
+ * Enforces that all contexts have a 'displayName' that can be used in DevTools.
2974
3018
  * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
2975
3019
  */
2976
3020
  'react/no-missing-context-display-name'?: Linter.RuleEntry<[]>;
2977
3021
  /**
2978
- * Disallow missing `key` on items in list rendering.
3022
+ * Disallows missing 'key' on items in list rendering.
2979
3023
  * @see https://eslint-react.xyz/docs/rules/no-missing-key
2980
3024
  */
2981
3025
  'react/no-missing-key'?: Linter.RuleEntry<[]>;
2982
3026
  /**
2983
- * Prevents incorrect usage of `captureOwnerStack`.
3027
+ * Prevents incorrect usage of 'captureOwnerStack'.
2984
3028
  * @see https://eslint-react.xyz/docs/rules/no-misused-capture-owner-stack
2985
3029
  */
2986
3030
  'react/no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>;
2987
3031
  /**
2988
- * Disallow nesting component definitions inside other components.
3032
+ * Disallows nesting component definitions inside other components.
2989
3033
  * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
2990
3034
  */
2991
3035
  'react/no-nested-component-definitions'?: Linter.RuleEntry<[]>;
2992
3036
  /**
2993
- * Disallow nesting lazy component declarations inside other components.
3037
+ * Disallows nesting lazy component declarations inside other components.
2994
3038
  * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations
2995
3039
  */
2996
3040
  'react/no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>;
2997
3041
  /**
2998
- * Disallow `propTypes` in favor of TypeScript or another type-checking solution.
3042
+ * Disallows 'propTypes' in favor of TypeScript or another type-checking solution.
2999
3043
  * @see https://eslint-react.xyz/docs/rules/no-prop-types
3000
3044
  */
3001
3045
  'react/no-prop-types'?: Linter.RuleEntry<[]>;
3002
3046
  /**
3003
- * Disallow `shouldComponentUpdate` when extending `React.PureComponent`.
3047
+ * Disallows 'shouldComponentUpdate' when extending 'React.PureComponent'.
3004
3048
  * @see https://eslint-react.xyz/docs/rules/no-redundant-should-component-update
3005
3049
  */
3006
3050
  'react/no-redundant-should-component-update'?: Linter.RuleEntry<[]>;
3007
3051
  /**
3008
- * Disallow calling `this.setState` in `componentDidMount` outside of functions, such as callbacks.
3052
+ * Disallows calling 'this.setState' in 'componentDidMount' outside functions such as callbacks.
3009
3053
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount
3010
3054
  */
3011
3055
  'react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>;
3012
3056
  /**
3013
- * Disallow calling `this.setState` in `componentDidUpdate` outside of functions, such as callbacks.
3057
+ * Disallows calling 'this.setState' in 'componentDidUpdate' outside functions such as callbacks.
3014
3058
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update
3015
3059
  */
3016
3060
  'react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>;
3017
3061
  /**
3018
- * Disallow calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
3062
+ * Disallows calling 'this.setState' in 'componentWillUpdate' outside functions such as callbacks.
3019
3063
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
3020
3064
  */
3021
3065
  'react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>;
@@ -3025,42 +3069,47 @@ interface RuleOptions {
3025
3069
  */
3026
3070
  'react/no-string-refs'?: Linter.RuleEntry<[]>;
3027
3071
  /**
3028
- * Prevents the use of unnecessary `key` props on JSX elements when rendering lists.
3072
+ * Disallows unnecessary 'key' props on nested child elements when rendering lists.
3029
3073
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-key
3030
3074
  */
3031
3075
  'react/no-unnecessary-key'?: Linter.RuleEntry<[]>;
3032
3076
  /**
3033
- * Disallow unnecessary usage of `useCallback`.
3077
+ * Disallows unnecessary usage of 'useCallback'.
3034
3078
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-callback
3035
3079
  */
3036
3080
  'react/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>;
3037
3081
  /**
3038
- * Disallow unnecessary usage of `useMemo`.
3082
+ * Disallows unnecessary usage of 'useMemo'.
3039
3083
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-memo
3040
3084
  */
3041
3085
  'react/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>;
3042
3086
  /**
3043
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
3087
+ * Enforces that a function with the 'use' prefix uses at least one Hook inside it.
3044
3088
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix
3045
3089
  */
3046
3090
  'react/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>;
3047
3091
  /**
3048
- * Warns the usage of `UNSAFE_componentWillMount` in class components.
3092
+ * Disallows unnecessary usage of 'useRef'.
3093
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-ref
3094
+ */
3095
+ 'react/no-unnecessary-use-ref'?: Linter.RuleEntry<[]>;
3096
+ /**
3097
+ * Warns about the use of 'UNSAFE_componentWillMount' in class components.
3049
3098
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
3050
3099
  */
3051
3100
  'react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>;
3052
3101
  /**
3053
- * Warns the usage of `UNSAFE_componentWillReceiveProps` in class components.
3102
+ * Warns about the use of 'UNSAFE_componentWillReceiveProps' in class components.
3054
3103
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props
3055
3104
  */
3056
3105
  'react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>;
3057
3106
  /**
3058
- * Warns the usage of `UNSAFE_componentWillUpdate` in class components.
3107
+ * Warns about the use of 'UNSAFE_componentWillUpdate' in class components.
3059
3108
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update
3060
3109
  */
3061
3110
  'react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>;
3062
3111
  /**
3063
- * Prevents non-stable values (i.e. object literals) from being used as a value for `Context.Provider`.
3112
+ * Prevents non-stable values (i.e., object literals) from being used as a value for 'Context.Provider'.
3064
3113
  * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value
3065
3114
  */
3066
3115
  'react/no-unstable-context-value'?: Linter.RuleEntry<[]>;
@@ -3070,32 +3119,32 @@ interface RuleOptions {
3070
3119
  */
3071
3120
  'react/no-unstable-default-props'?: Linter.RuleEntry<ReactNoUnstableDefaultProps>;
3072
3121
  /**
3073
- * Warns unused class component methods and properties.
3122
+ * Warns about unused class component methods and properties.
3074
3123
  * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
3075
3124
  */
3076
3125
  'react/no-unused-class-component-members'?: Linter.RuleEntry<[]>;
3077
3126
  /**
3078
- * Warns component props that are defined but never used.
3127
+ * Warns about component props that are defined but never used.
3079
3128
  * @see https://eslint-react.xyz/docs/rules/no-unused-props
3080
3129
  */
3081
3130
  'react/no-unused-props'?: Linter.RuleEntry<[]>;
3082
3131
  /**
3083
- * Warns unused class component state.
3132
+ * Warns about unused class component state.
3084
3133
  * @see https://eslint-react.xyz/docs/rules/no-unused-state
3085
3134
  */
3086
3135
  'react/no-unused-state'?: Linter.RuleEntry<[]>;
3087
3136
  /**
3088
- * Replaces usages of `useContext` with `use`.
3137
+ * Replaces usage of 'useContext' with 'use'.
3089
3138
  * @see https://eslint-react.xyz/docs/rules/no-use-context
3090
3139
  */
3091
3140
  'react/no-use-context'?: Linter.RuleEntry<[]>;
3092
3141
  /**
3093
- * Disallow useless `forwardRef` calls on components that don't use `ref`s.
3142
+ * Disallows useless 'forwardRef' calls on components that don't use 'ref's.
3094
3143
  * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
3095
3144
  */
3096
3145
  'react/no-useless-forward-ref'?: Linter.RuleEntry<[]>;
3097
3146
  /**
3098
- * Disallow useless fragment elements.
3147
+ * Disallows useless fragment elements.
3099
3148
  * @see https://eslint-react.xyz/docs/rules/no-useless-fragment
3100
3149
  */
3101
3150
  'react/no-useless-fragment'?: Linter.RuleEntry<ReactNoUselessFragment>;
@@ -3105,7 +3154,7 @@ interface RuleOptions {
3105
3154
  */
3106
3155
  'react/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>;
3107
3156
  /**
3108
- * Enforces React is imported via a namespace import.
3157
+ * Enforces importing React via a namespace import.
3109
3158
  * @see https://eslint-react.xyz/docs/rules/prefer-namespace-import
3110
3159
  */
3111
3160
  'react/prefer-namespace-import'?: Linter.RuleEntry<[]>;
@@ -3115,7 +3164,7 @@ interface RuleOptions {
3115
3164
  */
3116
3165
  'react/prefer-read-only-props'?: Linter.RuleEntry<[]>;
3117
3166
  /**
3118
- * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
3167
+ * Enforces wrapping function calls made inside 'useState' in an 'initializer function'.
3119
3168
  * @see https://eslint-react.xyz/docs/rules/prefer-use-state-lazy-initialization
3120
3169
  */
3121
3170
  'react/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>;
@@ -3699,6 +3748,11 @@ interface RuleOptions {
3699
3748
  * @see https://eslint.style/rules/eol-last
3700
3749
  */
3701
3750
  'style/eol-last'?: Linter.RuleEntry<StyleEolLast>;
3751
+ /**
3752
+ * Enforce consistent line break styles for JSX props
3753
+ * @see https://eslint.style/rules/jsx-props-style
3754
+ */
3755
+ 'style/exp-jsx-props-style'?: Linter.RuleEntry<StyleExpJsxPropsStyle>;
3702
3756
  /**
3703
3757
  * Enforce consistent spacing and line break styles inside brackets.
3704
3758
  * @see https://eslint.style/rules/list-style
@@ -3834,6 +3888,7 @@ interface RuleOptions {
3834
3888
  /**
3835
3889
  * Enforce props alphabetical sorting
3836
3890
  * @see https://eslint.style/rules/jsx-sort-props
3891
+ * @deprecated
3837
3892
  */
3838
3893
  'style/jsx-sort-props'?: Linter.RuleEntry<StyleJsxSortProps>;
3839
3894
  /**
@@ -4188,7 +4243,7 @@ interface RuleOptions {
4188
4243
  * disallow conditional expects
4189
4244
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-expect.md
4190
4245
  */
4191
- 'test/no-conditional-expect'?: Linter.RuleEntry<[]>;
4246
+ 'test/no-conditional-expect'?: Linter.RuleEntry<TestNoConditionalExpect>;
4192
4247
  /**
4193
4248
  * disallow conditional tests
4194
4249
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-in-test.md
@@ -4399,7 +4454,7 @@ interface RuleOptions {
4399
4454
  * prefer dynamic import in mock
4400
4455
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-import-in-mock.md
4401
4456
  */
4402
- 'test/prefer-import-in-mock'?: Linter.RuleEntry<[]>;
4457
+ 'test/prefer-import-in-mock'?: Linter.RuleEntry<TestPreferImportInMock>;
4403
4458
  /**
4404
4459
  * enforce importing Vitest globals
4405
4460
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-importing-vitest-globals.md
@@ -4415,6 +4470,11 @@ interface RuleOptions {
4415
4470
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-promise-shorthand.md
4416
4471
  */
4417
4472
  'test/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>;
4473
+ /**
4474
+ * Prefer mock return shorthands
4475
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-return-shorthand.md
4476
+ */
4477
+ 'test/prefer-mock-return-shorthand'?: Linter.RuleEntry<[]>;
4418
4478
  /**
4419
4479
  * enforce including a hint with external snapshots
4420
4480
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-snapshot-hint.md
@@ -4460,6 +4520,11 @@ interface RuleOptions {
4460
4520
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-contain.md
4461
4521
  */
4462
4522
  'test/prefer-to-contain'?: Linter.RuleEntry<[]>;
4523
+ /**
4524
+ * Suggest using `toHaveBeenCalledTimes()`
4525
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-been-called-times.md
4526
+ */
4527
+ 'test/prefer-to-have-been-called-times'?: Linter.RuleEntry<[]>;
4463
4528
  /**
4464
4529
  * enforce using toHaveLength()
4465
4530
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md
@@ -4485,11 +4550,6 @@ interface RuleOptions {
4485
4550
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-hook.md
4486
4551
  */
4487
4552
  'test/require-hook'?: Linter.RuleEntry<TestRequireHook>;
4488
- /**
4489
- * require usage of import in vi.mock()
4490
- * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-import-vi-mock.md
4491
- */
4492
- 'test/require-import-vi-mock'?: Linter.RuleEntry<[]>;
4493
4553
  /**
4494
4554
  * require local Test Context for concurrent snapshot tests
4495
4555
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-local-test-context-for-concurrent-snapshots.md
@@ -4500,6 +4560,11 @@ interface RuleOptions {
4500
4560
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-mock-type-parameters.md
4501
4561
  */
4502
4562
  'test/require-mock-type-parameters'?: Linter.RuleEntry<TestRequireMockTypeParameters>;
4563
+ /**
4564
+ * require tests to declare a timeout
4565
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-test-timeout.md
4566
+ */
4567
+ 'test/require-test-timeout'?: Linter.RuleEntry<[]>;
4503
4568
  /**
4504
4569
  * require toThrow() to be called with an error message
4505
4570
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-to-throw-message.md
@@ -4560,11 +4625,21 @@ interface RuleOptions {
4560
4625
  * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/indent.html
4561
4626
  */
4562
4627
  'toml/indent'?: Linter.RuleEntry<TomlIndent>;
4628
+ /**
4629
+ * enforce linebreaks after opening and before closing braces
4630
+ * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/inline-table-curly-newline.html
4631
+ */
4632
+ 'toml/inline-table-curly-newline'?: Linter.RuleEntry<TomlInlineTableCurlyNewline>;
4563
4633
  /**
4564
4634
  * enforce consistent spacing inside braces
4565
4635
  * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/inline-table-curly-spacing.html
4566
4636
  */
4567
4637
  'toml/inline-table-curly-spacing'?: Linter.RuleEntry<TomlInlineTableCurlySpacing>;
4638
+ /**
4639
+ * enforce placing inline table key-value pairs on separate lines
4640
+ * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/inline-table-key-value-newline.html
4641
+ */
4642
+ 'toml/inline-table-key-value-newline'?: Linter.RuleEntry<TomlInlineTableKeyValueNewline>;
4568
4643
  /**
4569
4644
  * enforce consistent spacing between keys and values in key/value pairs
4570
4645
  * @see https://ota-meshi.github.io/eslint-plugin-toml/rules/key-spacing.html
@@ -5113,7 +5188,7 @@ interface RuleOptions {
5113
5188
  * Disallow default values that will never be used
5114
5189
  * @see https://typescript-eslint.io/rules/no-useless-default-assignment
5115
5190
  */
5116
- 'ts/no-useless-default-assignment'?: Linter.RuleEntry<[]>;
5191
+ 'ts/no-useless-default-assignment'?: Linter.RuleEntry<TsNoUselessDefaultAssignment>;
5117
5192
  /**
5118
5193
  * Disallow empty exports that don't change anything in a module file
5119
5194
  * @see https://typescript-eslint.io/rules/no-useless-empty-export
@@ -5287,6 +5362,11 @@ interface RuleOptions {
5287
5362
  * @see https://typescript-eslint.io/rules/strict-boolean-expressions
5288
5363
  */
5289
5364
  'ts/strict-boolean-expressions'?: Linter.RuleEntry<TsStrictBooleanExpressions>;
5365
+ /**
5366
+ * Disallow passing a value-returning function in a position accepting a void function
5367
+ * @see https://typescript-eslint.io/rules/strict-void-return
5368
+ */
5369
+ 'ts/strict-void-return'?: Linter.RuleEntry<TsStrictVoidReturn>;
5290
5370
  /**
5291
5371
  * Require switch-case statements to be exhaustive
5292
5372
  * @see https://typescript-eslint.io/rules/switch-exhaustiveness-check
@@ -5325,725 +5405,730 @@ interface RuleOptions {
5325
5405
  'unicode-bom'?: Linter.RuleEntry<UnicodeBom>;
5326
5406
  /**
5327
5407
  * Improve regexes by making them shorter, consistent, and safer.
5328
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/better-regex.md
5408
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/better-regex.md
5329
5409
  */
5330
5410
  'unicorn/better-regex'?: Linter.RuleEntry<UnicornBetterRegex>;
5331
5411
  /**
5332
5412
  * Enforce a specific parameter name in catch clauses.
5333
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/catch-error-name.md
5413
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/catch-error-name.md
5334
5414
  */
5335
5415
  'unicorn/catch-error-name'?: Linter.RuleEntry<UnicornCatchErrorName>;
5336
5416
  /**
5337
5417
  * Enforce consistent assertion style with `node:assert`.
5338
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-assert.md
5418
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-assert.md
5339
5419
  */
5340
5420
  'unicorn/consistent-assert'?: Linter.RuleEntry<[]>;
5341
5421
  /**
5342
5422
  * Prefer passing `Date` directly to the constructor when cloning.
5343
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-date-clone.md
5423
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-date-clone.md
5344
5424
  */
5345
5425
  'unicorn/consistent-date-clone'?: Linter.RuleEntry<[]>;
5346
5426
  /**
5347
5427
  * Use destructured variables over properties.
5348
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-destructuring.md
5428
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-destructuring.md
5349
5429
  */
5350
5430
  'unicorn/consistent-destructuring'?: Linter.RuleEntry<[]>;
5351
5431
  /**
5352
5432
  * Prefer consistent types when spreading a ternary in an array literal.
5353
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-empty-array-spread.md
5433
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-empty-array-spread.md
5354
5434
  */
5355
5435
  'unicorn/consistent-empty-array-spread'?: Linter.RuleEntry<[]>;
5356
5436
  /**
5357
5437
  * Enforce consistent style for element existence checks with `indexOf()`, `lastIndexOf()`, `findIndex()`, and `findLastIndex()`.
5358
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-existence-index-check.md
5438
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-existence-index-check.md
5359
5439
  */
5360
5440
  'unicorn/consistent-existence-index-check'?: Linter.RuleEntry<[]>;
5361
5441
  /**
5362
5442
  * Move function definitions to the highest possible scope.
5363
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/consistent-function-scoping.md
5443
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/consistent-function-scoping.md
5364
5444
  */
5365
5445
  'unicorn/consistent-function-scoping'?: Linter.RuleEntry<UnicornConsistentFunctionScoping>;
5366
5446
  /**
5367
5447
  * Enforce correct `Error` subclassing.
5368
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/custom-error-definition.md
5448
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/custom-error-definition.md
5369
5449
  */
5370
5450
  'unicorn/custom-error-definition'?: Linter.RuleEntry<[]>;
5371
5451
  /**
5372
5452
  * Enforce no spaces between braces.
5373
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/empty-brace-spaces.md
5453
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/empty-brace-spaces.md
5374
5454
  */
5375
5455
  'unicorn/empty-brace-spaces'?: Linter.RuleEntry<[]>;
5376
5456
  /**
5377
5457
  * Enforce passing a `message` value when creating a built-in error.
5378
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/error-message.md
5458
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/error-message.md
5379
5459
  */
5380
5460
  'unicorn/error-message'?: Linter.RuleEntry<[]>;
5381
5461
  /**
5382
5462
  * Require escape sequences to use uppercase or lowercase values.
5383
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/escape-case.md
5463
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/escape-case.md
5384
5464
  */
5385
5465
  'unicorn/escape-case'?: Linter.RuleEntry<UnicornEscapeCase>;
5386
5466
  /**
5387
5467
  * Add expiration conditions to TODO comments.
5388
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/expiring-todo-comments.md
5468
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/expiring-todo-comments.md
5389
5469
  */
5390
5470
  'unicorn/expiring-todo-comments'?: Linter.RuleEntry<UnicornExpiringTodoComments>;
5391
5471
  /**
5392
5472
  * Enforce explicitly comparing the `length` or `size` property of a value.
5393
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/explicit-length-check.md
5473
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/explicit-length-check.md
5394
5474
  */
5395
5475
  'unicorn/explicit-length-check'?: Linter.RuleEntry<UnicornExplicitLengthCheck>;
5396
5476
  /**
5397
5477
  * Enforce a case style for filenames.
5398
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/filename-case.md
5478
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/filename-case.md
5399
5479
  */
5400
5480
  'unicorn/filename-case'?: Linter.RuleEntry<UnicornFilenameCase>;
5401
5481
  /**
5402
5482
  * Enforce specific import styles per module.
5403
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/import-style.md
5483
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/import-style.md
5404
5484
  */
5405
5485
  'unicorn/import-style'?: Linter.RuleEntry<UnicornImportStyle>;
5486
+ /**
5487
+ * Prevent usage of variables from outside the scope of isolated functions.
5488
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/isolated-functions.md
5489
+ */
5490
+ 'unicorn/isolated-functions'?: Linter.RuleEntry<UnicornIsolatedFunctions>;
5406
5491
  /**
5407
5492
  * Enforce the use of `new` for all builtins, except `String`, `Number`, `Boolean`, `Symbol` and `BigInt`.
5408
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/new-for-builtins.md
5493
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/new-for-builtins.md
5409
5494
  */
5410
5495
  'unicorn/new-for-builtins'?: Linter.RuleEntry<[]>;
5411
5496
  /**
5412
5497
  * Enforce specifying rules to disable in `eslint-disable` comments.
5413
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-abusive-eslint-disable.md
5498
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-abusive-eslint-disable.md
5414
5499
  */
5415
5500
  'unicorn/no-abusive-eslint-disable'?: Linter.RuleEntry<[]>;
5416
5501
  /**
5417
5502
  * Disallow recursive access to `this` within getters and setters.
5418
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-accessor-recursion.md
5503
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-accessor-recursion.md
5419
5504
  */
5420
5505
  'unicorn/no-accessor-recursion'?: Linter.RuleEntry<[]>;
5421
5506
  /**
5422
5507
  * Disallow anonymous functions and classes as the default export.
5423
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-anonymous-default-export.md
5508
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-anonymous-default-export.md
5424
5509
  */
5425
5510
  'unicorn/no-anonymous-default-export'?: Linter.RuleEntry<[]>;
5426
5511
  /**
5427
5512
  * Prevent passing a function reference directly to iterator methods.
5428
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-callback-reference.md
5513
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-callback-reference.md
5429
5514
  */
5430
5515
  'unicorn/no-array-callback-reference'?: Linter.RuleEntry<[]>;
5431
5516
  /**
5432
5517
  * Prefer `for…of` over the `forEach` method.
5433
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-for-each.md
5518
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-for-each.md
5434
5519
  */
5435
5520
  'unicorn/no-array-for-each'?: Linter.RuleEntry<[]>;
5436
5521
  /**
5437
5522
  * Disallow using the `this` argument in array methods.
5438
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-method-this-argument.md
5523
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-method-this-argument.md
5439
5524
  */
5440
5525
  'unicorn/no-array-method-this-argument'?: Linter.RuleEntry<[]>;
5441
5526
  /**
5442
5527
  * Replaced by `unicorn/prefer-single-call` which covers more cases.
5443
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-array-push-push
5528
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/deleted-and-deprecated-rules.md#no-array-push-push
5444
5529
  * @deprecated
5445
5530
  */
5446
5531
  'unicorn/no-array-push-push'?: Linter.RuleEntry<[]>;
5447
5532
  /**
5448
5533
  * Disallow `Array#reduce()` and `Array#reduceRight()`.
5449
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-reduce.md
5534
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-reduce.md
5450
5535
  */
5451
5536
  'unicorn/no-array-reduce'?: Linter.RuleEntry<UnicornNoArrayReduce>;
5452
5537
  /**
5453
5538
  * Prefer `Array#toReversed()` over `Array#reverse()`.
5454
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-reverse.md
5539
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-reverse.md
5455
5540
  */
5456
5541
  'unicorn/no-array-reverse'?: Linter.RuleEntry<UnicornNoArrayReverse>;
5457
5542
  /**
5458
5543
  * Prefer `Array#toSorted()` over `Array#sort()`.
5459
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-array-sort.md
5544
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-array-sort.md
5460
5545
  */
5461
5546
  'unicorn/no-array-sort'?: Linter.RuleEntry<UnicornNoArraySort>;
5462
5547
  /**
5463
5548
  * Disallow member access from await expression.
5464
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-await-expression-member.md
5549
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-await-expression-member.md
5465
5550
  */
5466
5551
  'unicorn/no-await-expression-member'?: Linter.RuleEntry<[]>;
5467
5552
  /**
5468
5553
  * Disallow using `await` in `Promise` method parameters.
5469
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-await-in-promise-methods.md
5554
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-await-in-promise-methods.md
5470
5555
  */
5471
5556
  'unicorn/no-await-in-promise-methods'?: Linter.RuleEntry<[]>;
5472
5557
  /**
5473
5558
  * Do not use leading/trailing space between `console.log` parameters.
5474
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-console-spaces.md
5559
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-console-spaces.md
5475
5560
  */
5476
5561
  'unicorn/no-console-spaces'?: Linter.RuleEntry<[]>;
5477
5562
  /**
5478
5563
  * Do not use `document.cookie` directly.
5479
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-document-cookie.md
5564
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-document-cookie.md
5480
5565
  */
5481
5566
  'unicorn/no-document-cookie'?: Linter.RuleEntry<[]>;
5482
5567
  /**
5483
5568
  * Disallow empty files.
5484
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-empty-file.md
5569
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-empty-file.md
5485
5570
  */
5486
5571
  'unicorn/no-empty-file'?: Linter.RuleEntry<[]>;
5487
5572
  /**
5488
5573
  * Do not use a `for` loop that can be replaced with a `for-of` loop.
5489
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-for-loop.md
5574
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-for-loop.md
5490
5575
  */
5491
5576
  'unicorn/no-for-loop'?: Linter.RuleEntry<[]>;
5492
5577
  /**
5493
5578
  * Enforce the use of Unicode escapes instead of hexadecimal escapes.
5494
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-hex-escape.md
5579
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-hex-escape.md
5495
5580
  */
5496
5581
  'unicorn/no-hex-escape'?: Linter.RuleEntry<[]>;
5497
5582
  /**
5498
5583
  * Disallow immediate mutation after variable assignment.
5499
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-immediate-mutation.md
5584
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-immediate-mutation.md
5500
5585
  */
5501
5586
  'unicorn/no-immediate-mutation'?: Linter.RuleEntry<[]>;
5502
5587
  /**
5503
5588
  * Replaced by `unicorn/no-instanceof-builtins` which covers more cases.
5504
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-instanceof-array
5589
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/deleted-and-deprecated-rules.md#no-instanceof-array
5505
5590
  * @deprecated
5506
5591
  */
5507
5592
  'unicorn/no-instanceof-array'?: Linter.RuleEntry<[]>;
5508
5593
  /**
5509
5594
  * Disallow `instanceof` with built-in objects
5510
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-instanceof-builtins.md
5595
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-instanceof-builtins.md
5511
5596
  */
5512
5597
  'unicorn/no-instanceof-builtins'?: Linter.RuleEntry<UnicornNoInstanceofBuiltins>;
5513
5598
  /**
5514
5599
  * Disallow invalid options in `fetch()` and `new Request()`.
5515
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-invalid-fetch-options.md
5600
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-invalid-fetch-options.md
5516
5601
  */
5517
5602
  'unicorn/no-invalid-fetch-options'?: Linter.RuleEntry<[]>;
5518
5603
  /**
5519
5604
  * Prevent calling `EventTarget#removeEventListener()` with the result of an expression.
5520
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-invalid-remove-event-listener.md
5605
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-invalid-remove-event-listener.md
5521
5606
  */
5522
5607
  'unicorn/no-invalid-remove-event-listener'?: Linter.RuleEntry<[]>;
5523
5608
  /**
5524
5609
  * Disallow identifiers starting with `new` or `class`.
5525
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-keyword-prefix.md
5610
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-keyword-prefix.md
5526
5611
  */
5527
5612
  'unicorn/no-keyword-prefix'?: Linter.RuleEntry<UnicornNoKeywordPrefix>;
5528
5613
  /**
5529
5614
  * Replaced by `unicorn/no-unnecessary-slice-end` which covers more cases.
5530
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/deprecated-rules.md#no-length-as-slice-end
5615
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/deleted-and-deprecated-rules.md#no-length-as-slice-end
5531
5616
  * @deprecated
5532
5617
  */
5533
5618
  'unicorn/no-length-as-slice-end'?: Linter.RuleEntry<[]>;
5534
5619
  /**
5535
5620
  * Disallow `if` statements as the only statement in `if` blocks without `else`.
5536
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-lonely-if.md
5621
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-lonely-if.md
5537
5622
  */
5538
5623
  'unicorn/no-lonely-if'?: Linter.RuleEntry<[]>;
5539
5624
  /**
5540
5625
  * Disallow a magic number as the `depth` argument in `Array#flat(…).`
5541
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-magic-array-flat-depth.md
5626
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-magic-array-flat-depth.md
5542
5627
  */
5543
5628
  'unicorn/no-magic-array-flat-depth'?: Linter.RuleEntry<[]>;
5544
5629
  /**
5545
5630
  * Disallow named usage of default import and export.
5546
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-named-default.md
5631
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-named-default.md
5547
5632
  */
5548
5633
  'unicorn/no-named-default'?: Linter.RuleEntry<[]>;
5549
5634
  /**
5550
5635
  * Disallow negated conditions.
5551
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-negated-condition.md
5636
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-negated-condition.md
5552
5637
  */
5553
5638
  'unicorn/no-negated-condition'?: Linter.RuleEntry<[]>;
5554
5639
  /**
5555
5640
  * Disallow negated expression in equality check.
5556
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-negation-in-equality-check.md
5641
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-negation-in-equality-check.md
5557
5642
  */
5558
5643
  'unicorn/no-negation-in-equality-check'?: Linter.RuleEntry<[]>;
5559
5644
  /**
5560
5645
  * Disallow nested ternary expressions.
5561
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-nested-ternary.md
5646
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-nested-ternary.md
5562
5647
  */
5563
5648
  'unicorn/no-nested-ternary'?: Linter.RuleEntry<[]>;
5564
5649
  /**
5565
5650
  * Disallow `new Array()`.
5566
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-new-array.md
5651
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-new-array.md
5567
5652
  */
5568
5653
  'unicorn/no-new-array'?: Linter.RuleEntry<[]>;
5569
5654
  /**
5570
5655
  * Enforce the use of `Buffer.from()` and `Buffer.alloc()` instead of the deprecated `new Buffer()`.
5571
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-new-buffer.md
5656
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-new-buffer.md
5572
5657
  */
5573
5658
  'unicorn/no-new-buffer'?: Linter.RuleEntry<[]>;
5574
5659
  /**
5575
5660
  * Disallow the use of the `null` literal.
5576
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-null.md
5661
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-null.md
5577
5662
  */
5578
5663
  'unicorn/no-null'?: Linter.RuleEntry<UnicornNoNull>;
5579
5664
  /**
5580
5665
  * Disallow the use of objects as default parameters.
5581
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-object-as-default-parameter.md
5666
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-object-as-default-parameter.md
5582
5667
  */
5583
5668
  'unicorn/no-object-as-default-parameter'?: Linter.RuleEntry<[]>;
5584
5669
  /**
5585
5670
  * Disallow `process.exit()`.
5586
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-process-exit.md
5671
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-process-exit.md
5587
5672
  */
5588
5673
  'unicorn/no-process-exit'?: Linter.RuleEntry<[]>;
5589
5674
  /**
5590
5675
  * Disallow passing single-element arrays to `Promise` methods.
5591
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-single-promise-in-promise-methods.md
5676
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-single-promise-in-promise-methods.md
5592
5677
  */
5593
5678
  'unicorn/no-single-promise-in-promise-methods'?: Linter.RuleEntry<[]>;
5594
5679
  /**
5595
5680
  * Disallow classes that only have static members.
5596
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-static-only-class.md
5681
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-static-only-class.md
5597
5682
  */
5598
5683
  'unicorn/no-static-only-class'?: Linter.RuleEntry<[]>;
5599
5684
  /**
5600
5685
  * Disallow `then` property.
5601
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-thenable.md
5686
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-thenable.md
5602
5687
  */
5603
5688
  'unicorn/no-thenable'?: Linter.RuleEntry<[]>;
5604
5689
  /**
5605
5690
  * Disallow assigning `this` to a variable.
5606
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-this-assignment.md
5691
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-this-assignment.md
5607
5692
  */
5608
5693
  'unicorn/no-this-assignment'?: Linter.RuleEntry<[]>;
5609
5694
  /**
5610
5695
  * Disallow comparing `undefined` using `typeof`.
5611
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-typeof-undefined.md
5696
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-typeof-undefined.md
5612
5697
  */
5613
5698
  'unicorn/no-typeof-undefined'?: Linter.RuleEntry<UnicornNoTypeofUndefined>;
5614
5699
  /**
5615
5700
  * Disallow using `1` as the `depth` argument of `Array#flat()`.
5616
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-array-flat-depth.md
5701
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-array-flat-depth.md
5617
5702
  */
5618
5703
  'unicorn/no-unnecessary-array-flat-depth'?: Linter.RuleEntry<[]>;
5619
5704
  /**
5620
5705
  * Disallow using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#{splice,toSpliced}()`.
5621
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-array-splice-count.md
5706
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-array-splice-count.md
5622
5707
  */
5623
5708
  'unicorn/no-unnecessary-array-splice-count'?: Linter.RuleEntry<[]>;
5624
5709
  /**
5625
5710
  * Disallow awaiting non-promise values.
5626
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-await.md
5711
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-await.md
5627
5712
  */
5628
5713
  'unicorn/no-unnecessary-await'?: Linter.RuleEntry<[]>;
5629
5714
  /**
5630
5715
  * Enforce the use of built-in methods instead of unnecessary polyfills.
5631
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-polyfills.md
5716
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-polyfills.md
5632
5717
  */
5633
5718
  'unicorn/no-unnecessary-polyfills'?: Linter.RuleEntry<UnicornNoUnnecessaryPolyfills>;
5634
5719
  /**
5635
5720
  * Disallow using `.length` or `Infinity` as the `end` argument of `{Array,String,TypedArray}#slice()`.
5636
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unnecessary-slice-end.md
5721
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unnecessary-slice-end.md
5637
5722
  */
5638
5723
  'unicorn/no-unnecessary-slice-end'?: Linter.RuleEntry<[]>;
5639
5724
  /**
5640
5725
  * Disallow unreadable array destructuring.
5641
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unreadable-array-destructuring.md
5726
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unreadable-array-destructuring.md
5642
5727
  */
5643
5728
  'unicorn/no-unreadable-array-destructuring'?: Linter.RuleEntry<[]>;
5644
5729
  /**
5645
5730
  * Disallow unreadable IIFEs.
5646
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unreadable-iife.md
5731
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unreadable-iife.md
5647
5732
  */
5648
5733
  'unicorn/no-unreadable-iife'?: Linter.RuleEntry<[]>;
5649
5734
  /**
5650
5735
  * Disallow unused object properties.
5651
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-unused-properties.md
5736
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-unused-properties.md
5652
5737
  */
5653
5738
  'unicorn/no-unused-properties'?: Linter.RuleEntry<[]>;
5654
5739
  /**
5655
5740
  * Disallow useless values or fallbacks in `Set`, `Map`, `WeakSet`, or `WeakMap`.
5656
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-collection-argument.md
5741
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-collection-argument.md
5657
5742
  */
5658
5743
  'unicorn/no-useless-collection-argument'?: Linter.RuleEntry<[]>;
5659
5744
  /**
5660
5745
  * Disallow unnecessary `Error.captureStackTrace(…)`.
5661
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-error-capture-stack-trace.md
5746
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-error-capture-stack-trace.md
5662
5747
  */
5663
5748
  'unicorn/no-useless-error-capture-stack-trace'?: Linter.RuleEntry<[]>;
5664
5749
  /**
5665
5750
  * Disallow useless fallback when spreading in object literals.
5666
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-fallback-in-spread.md
5751
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-fallback-in-spread.md
5667
5752
  */
5668
5753
  'unicorn/no-useless-fallback-in-spread'?: Linter.RuleEntry<[]>;
5669
5754
  /**
5670
5755
  * Disallow useless array length check.
5671
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-length-check.md
5756
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-length-check.md
5672
5757
  */
5673
5758
  'unicorn/no-useless-length-check'?: Linter.RuleEntry<[]>;
5674
5759
  /**
5675
5760
  * Disallow returning/yielding `Promise.resolve/reject()` in async functions or promise callbacks
5676
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-promise-resolve-reject.md
5761
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-promise-resolve-reject.md
5677
5762
  */
5678
5763
  'unicorn/no-useless-promise-resolve-reject'?: Linter.RuleEntry<[]>;
5679
5764
  /**
5680
5765
  * Disallow unnecessary spread.
5681
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-spread.md
5766
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-spread.md
5682
5767
  */
5683
5768
  'unicorn/no-useless-spread'?: Linter.RuleEntry<[]>;
5684
5769
  /**
5685
5770
  * Disallow useless case in switch statements.
5686
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-switch-case.md
5771
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-switch-case.md
5687
5772
  */
5688
5773
  'unicorn/no-useless-switch-case'?: Linter.RuleEntry<[]>;
5689
5774
  /**
5690
5775
  * Disallow useless `undefined`.
5691
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-useless-undefined.md
5776
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-useless-undefined.md
5692
5777
  */
5693
5778
  'unicorn/no-useless-undefined'?: Linter.RuleEntry<UnicornNoUselessUndefined>;
5694
5779
  /**
5695
5780
  * Disallow number literals with zero fractions or dangling dots.
5696
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/no-zero-fractions.md
5781
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/no-zero-fractions.md
5697
5782
  */
5698
5783
  'unicorn/no-zero-fractions'?: Linter.RuleEntry<[]>;
5699
5784
  /**
5700
5785
  * Enforce proper case for numeric literals.
5701
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/number-literal-case.md
5786
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/number-literal-case.md
5702
5787
  */
5703
5788
  'unicorn/number-literal-case'?: Linter.RuleEntry<UnicornNumberLiteralCase>;
5704
5789
  /**
5705
5790
  * Enforce the style of numeric separators by correctly grouping digits.
5706
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/numeric-separators-style.md
5791
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/numeric-separators-style.md
5707
5792
  */
5708
5793
  'unicorn/numeric-separators-style'?: Linter.RuleEntry<UnicornNumericSeparatorsStyle>;
5709
5794
  /**
5710
5795
  * Prefer `.addEventListener()` and `.removeEventListener()` over `on`-functions.
5711
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-add-event-listener.md
5796
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-add-event-listener.md
5712
5797
  */
5713
5798
  'unicorn/prefer-add-event-listener'?: Linter.RuleEntry<UnicornPreferAddEventListener>;
5714
5799
  /**
5715
5800
  * Prefer `.find(…)` and `.findLast(…)` over the first or last element from `.filter(…)`.
5716
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-find.md
5801
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-find.md
5717
5802
  */
5718
5803
  'unicorn/prefer-array-find'?: Linter.RuleEntry<UnicornPreferArrayFind>;
5719
5804
  /**
5720
5805
  * Prefer `Array#flat()` over legacy techniques to flatten arrays.
5721
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-flat.md
5806
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-flat.md
5722
5807
  */
5723
5808
  'unicorn/prefer-array-flat'?: Linter.RuleEntry<UnicornPreferArrayFlat>;
5724
5809
  /**
5725
5810
  * Prefer `.flatMap(…)` over `.map(…).flat()`.
5726
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-flat-map.md
5811
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-flat-map.md
5727
5812
  */
5728
5813
  'unicorn/prefer-array-flat-map'?: Linter.RuleEntry<[]>;
5729
5814
  /**
5730
5815
  * Prefer `Array#{indexOf,lastIndexOf}()` over `Array#{findIndex,findLastIndex}()` when looking for the index of an item.
5731
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-index-of.md
5816
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-index-of.md
5732
5817
  */
5733
5818
  'unicorn/prefer-array-index-of'?: Linter.RuleEntry<[]>;
5734
5819
  /**
5735
5820
  * Prefer `.some(…)` over `.filter(…).length` check and `.{find,findLast,findIndex,findLastIndex}(…)`.
5736
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-array-some.md
5821
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-array-some.md
5737
5822
  */
5738
5823
  'unicorn/prefer-array-some'?: Linter.RuleEntry<[]>;
5739
5824
  /**
5740
5825
  * Prefer `.at()` method for index access and `String#charAt()`.
5741
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-at.md
5826
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-at.md
5742
5827
  */
5743
5828
  'unicorn/prefer-at'?: Linter.RuleEntry<UnicornPreferAt>;
5744
5829
  /**
5745
5830
  * Prefer `BigInt` literals over the constructor.
5746
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-bigint-literals.md
5831
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-bigint-literals.md
5747
5832
  */
5748
5833
  'unicorn/prefer-bigint-literals'?: Linter.RuleEntry<[]>;
5749
5834
  /**
5750
5835
  * Prefer `Blob#arrayBuffer()` over `FileReader#readAsArrayBuffer(…)` and `Blob#text()` over `FileReader#readAsText(…)`.
5751
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-blob-reading-methods.md
5836
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-blob-reading-methods.md
5752
5837
  */
5753
5838
  'unicorn/prefer-blob-reading-methods'?: Linter.RuleEntry<[]>;
5754
5839
  /**
5755
5840
  * Prefer class field declarations over `this` assignments in constructors.
5756
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-class-fields.md
5841
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-class-fields.md
5757
5842
  */
5758
5843
  'unicorn/prefer-class-fields'?: Linter.RuleEntry<[]>;
5759
5844
  /**
5760
5845
  * Prefer using `Element#classList.toggle()` to toggle class names.
5761
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-classlist-toggle.md
5846
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-classlist-toggle.md
5762
5847
  */
5763
5848
  'unicorn/prefer-classlist-toggle'?: Linter.RuleEntry<[]>;
5764
5849
  /**
5765
5850
  * Prefer `String#codePointAt(…)` over `String#charCodeAt(…)` and `String.fromCodePoint(…)` over `String.fromCharCode(…)`.
5766
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-code-point.md
5851
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-code-point.md
5767
5852
  */
5768
5853
  'unicorn/prefer-code-point'?: Linter.RuleEntry<[]>;
5769
5854
  /**
5770
5855
  * Prefer `Date.now()` to get the number of milliseconds since the Unix Epoch.
5771
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-date-now.md
5856
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-date-now.md
5772
5857
  */
5773
5858
  'unicorn/prefer-date-now'?: Linter.RuleEntry<[]>;
5774
5859
  /**
5775
5860
  * Prefer default parameters over reassignment.
5776
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-default-parameters.md
5861
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-default-parameters.md
5777
5862
  */
5778
5863
  'unicorn/prefer-default-parameters'?: Linter.RuleEntry<[]>;
5779
5864
  /**
5780
5865
  * Prefer `Node#append()` over `Node#appendChild()`.
5781
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-append.md
5866
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-dom-node-append.md
5782
5867
  */
5783
5868
  'unicorn/prefer-dom-node-append'?: Linter.RuleEntry<[]>;
5784
5869
  /**
5785
5870
  * Prefer using `.dataset` on DOM elements over calling attribute methods.
5786
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-dataset.md
5871
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-dom-node-dataset.md
5787
5872
  */
5788
5873
  'unicorn/prefer-dom-node-dataset'?: Linter.RuleEntry<[]>;
5789
5874
  /**
5790
5875
  * Prefer `childNode.remove()` over `parentNode.removeChild(childNode)`.
5791
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-remove.md
5876
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-dom-node-remove.md
5792
5877
  */
5793
5878
  'unicorn/prefer-dom-node-remove'?: Linter.RuleEntry<[]>;
5794
5879
  /**
5795
5880
  * Prefer `.textContent` over `.innerText`.
5796
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-dom-node-text-content.md
5881
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-dom-node-text-content.md
5797
5882
  */
5798
5883
  'unicorn/prefer-dom-node-text-content'?: Linter.RuleEntry<[]>;
5799
5884
  /**
5800
5885
  * Prefer `EventTarget` over `EventEmitter`.
5801
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-event-target.md
5886
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-event-target.md
5802
5887
  */
5803
5888
  'unicorn/prefer-event-target'?: Linter.RuleEntry<[]>;
5804
5889
  /**
5805
5890
  * Prefer `export…from` when re-exporting.
5806
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-export-from.md
5891
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-export-from.md
5807
5892
  */
5808
5893
  'unicorn/prefer-export-from'?: Linter.RuleEntry<UnicornPreferExportFrom>;
5809
5894
  /**
5810
5895
  * Prefer `globalThis` over `window`, `self`, and `global`.
5811
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-global-this.md
5896
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-global-this.md
5812
5897
  */
5813
5898
  'unicorn/prefer-global-this'?: Linter.RuleEntry<[]>;
5814
5899
  /**
5815
5900
  * Prefer `import.meta.{dirname,filename}` over legacy techniques for getting file paths.
5816
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-import-meta-properties.md
5901
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-import-meta-properties.md
5817
5902
  */
5818
5903
  'unicorn/prefer-import-meta-properties'?: Linter.RuleEntry<[]>;
5819
5904
  /**
5820
5905
  * Prefer `.includes()` over `.indexOf()`, `.lastIndexOf()`, and `Array#some()` when checking for existence or non-existence.
5821
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-includes.md
5906
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-includes.md
5822
5907
  */
5823
5908
  'unicorn/prefer-includes'?: Linter.RuleEntry<[]>;
5824
5909
  /**
5825
5910
  * Prefer reading a JSON file as a buffer.
5826
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-json-parse-buffer.md
5911
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-json-parse-buffer.md
5827
5912
  */
5828
5913
  'unicorn/prefer-json-parse-buffer'?: Linter.RuleEntry<[]>;
5829
5914
  /**
5830
5915
  * Prefer `KeyboardEvent#key` over `KeyboardEvent#keyCode`.
5831
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-keyboard-event-key.md
5916
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-keyboard-event-key.md
5832
5917
  */
5833
5918
  'unicorn/prefer-keyboard-event-key'?: Linter.RuleEntry<[]>;
5834
5919
  /**
5835
5920
  * Prefer using a logical operator over a ternary.
5836
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-logical-operator-over-ternary.md
5921
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-logical-operator-over-ternary.md
5837
5922
  */
5838
5923
  'unicorn/prefer-logical-operator-over-ternary'?: Linter.RuleEntry<[]>;
5839
5924
  /**
5840
5925
  * Prefer `Math.min()` and `Math.max()` over ternaries for simple comparisons.
5841
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-math-min-max.md
5926
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-math-min-max.md
5842
5927
  */
5843
5928
  'unicorn/prefer-math-min-max'?: Linter.RuleEntry<[]>;
5844
5929
  /**
5845
5930
  * Enforce the use of `Math.trunc` instead of bitwise operators.
5846
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-math-trunc.md
5931
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-math-trunc.md
5847
5932
  */
5848
5933
  'unicorn/prefer-math-trunc'?: Linter.RuleEntry<[]>;
5849
5934
  /**
5850
5935
  * Prefer `.before()` over `.insertBefore()`, `.replaceWith()` over `.replaceChild()`, prefer one of `.before()`, `.after()`, `.append()` or `.prepend()` over `insertAdjacentText()` and `insertAdjacentElement()`.
5851
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-modern-dom-apis.md
5936
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-modern-dom-apis.md
5852
5937
  */
5853
5938
  'unicorn/prefer-modern-dom-apis'?: Linter.RuleEntry<[]>;
5854
5939
  /**
5855
5940
  * Prefer modern `Math` APIs over legacy patterns.
5856
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-modern-math-apis.md
5941
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-modern-math-apis.md
5857
5942
  */
5858
5943
  'unicorn/prefer-modern-math-apis'?: Linter.RuleEntry<[]>;
5859
5944
  /**
5860
5945
  * Prefer JavaScript modules (ESM) over CommonJS.
5861
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-module.md
5946
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-module.md
5862
5947
  */
5863
5948
  'unicorn/prefer-module'?: Linter.RuleEntry<[]>;
5864
5949
  /**
5865
5950
  * Prefer using `String`, `Number`, `BigInt`, `Boolean`, and `Symbol` directly.
5866
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-native-coercion-functions.md
5951
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-native-coercion-functions.md
5867
5952
  */
5868
5953
  'unicorn/prefer-native-coercion-functions'?: Linter.RuleEntry<[]>;
5869
5954
  /**
5870
5955
  * Prefer negative index over `.length - index` when possible.
5871
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-negative-index.md
5956
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-negative-index.md
5872
5957
  */
5873
5958
  'unicorn/prefer-negative-index'?: Linter.RuleEntry<[]>;
5874
5959
  /**
5875
5960
  * Prefer using the `node:` protocol when importing Node.js builtin modules.
5876
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-node-protocol.md
5961
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-node-protocol.md
5877
5962
  */
5878
5963
  'unicorn/prefer-node-protocol'?: Linter.RuleEntry<[]>;
5879
5964
  /**
5880
5965
  * Prefer `Number` static properties over global ones.
5881
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-number-properties.md
5966
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-number-properties.md
5882
5967
  */
5883
5968
  'unicorn/prefer-number-properties'?: Linter.RuleEntry<UnicornPreferNumberProperties>;
5884
5969
  /**
5885
5970
  * Prefer using `Object.fromEntries(…)` to transform a list of key-value pairs into an object.
5886
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-object-from-entries.md
5971
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-object-from-entries.md
5887
5972
  */
5888
5973
  'unicorn/prefer-object-from-entries'?: Linter.RuleEntry<UnicornPreferObjectFromEntries>;
5889
5974
  /**
5890
5975
  * Prefer omitting the `catch` binding parameter.
5891
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-optional-catch-binding.md
5976
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-optional-catch-binding.md
5892
5977
  */
5893
5978
  'unicorn/prefer-optional-catch-binding'?: Linter.RuleEntry<[]>;
5894
5979
  /**
5895
5980
  * Prefer borrowing methods from the prototype instead of the instance.
5896
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-prototype-methods.md
5981
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-prototype-methods.md
5897
5982
  */
5898
5983
  'unicorn/prefer-prototype-methods'?: Linter.RuleEntry<[]>;
5899
5984
  /**
5900
5985
  * Prefer `.querySelector()` over `.getElementById()`, `.querySelectorAll()` over `.getElementsByClassName()` and `.getElementsByTagName()` and `.getElementsByName()`.
5901
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-query-selector.md
5986
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-query-selector.md
5902
5987
  */
5903
5988
  'unicorn/prefer-query-selector'?: Linter.RuleEntry<[]>;
5904
5989
  /**
5905
5990
  * Prefer `Reflect.apply()` over `Function#apply()`.
5906
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-reflect-apply.md
5991
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-reflect-apply.md
5907
5992
  */
5908
5993
  'unicorn/prefer-reflect-apply'?: Linter.RuleEntry<[]>;
5909
5994
  /**
5910
5995
  * Prefer `RegExp#test()` over `String#match()` and `RegExp#exec()`.
5911
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-regexp-test.md
5996
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-regexp-test.md
5912
5997
  */
5913
5998
  'unicorn/prefer-regexp-test'?: Linter.RuleEntry<[]>;
5914
5999
  /**
5915
6000
  * Prefer `Response.json()` over `new Response(JSON.stringify())`.
5916
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-response-static-json.md
6001
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-response-static-json.md
5917
6002
  */
5918
6003
  'unicorn/prefer-response-static-json'?: Linter.RuleEntry<[]>;
5919
6004
  /**
5920
6005
  * Prefer `Set#has()` over `Array#includes()` when checking for existence or non-existence.
5921
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-set-has.md
6006
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-set-has.md
5922
6007
  */
5923
6008
  'unicorn/prefer-set-has'?: Linter.RuleEntry<[]>;
5924
6009
  /**
5925
6010
  * Prefer using `Set#size` instead of `Array#length`.
5926
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-set-size.md
6011
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-set-size.md
5927
6012
  */
5928
6013
  'unicorn/prefer-set-size'?: Linter.RuleEntry<[]>;
5929
6014
  /**
5930
6015
  * Enforce combining multiple `Array#push()`, `Element#classList.{add,remove}()`, and `importScripts()` into one call.
5931
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-single-call.md
6016
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-single-call.md
5932
6017
  */
5933
6018
  'unicorn/prefer-single-call'?: Linter.RuleEntry<UnicornPreferSingleCall>;
5934
6019
  /**
5935
6020
  * Prefer the spread operator over `Array.from(…)`, `Array#concat(…)`, `Array#{slice,toSpliced}()` and `String#split('')`.
5936
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-spread.md
6021
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-spread.md
5937
6022
  */
5938
6023
  'unicorn/prefer-spread'?: Linter.RuleEntry<[]>;
5939
6024
  /**
5940
6025
  * Prefer using the `String.raw` tag to avoid escaping `\`.
5941
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-raw.md
6026
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-raw.md
5942
6027
  */
5943
6028
  'unicorn/prefer-string-raw'?: Linter.RuleEntry<[]>;
5944
6029
  /**
5945
6030
  * Prefer `String#replaceAll()` over regex searches with the global flag.
5946
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-replace-all.md
6031
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-replace-all.md
5947
6032
  */
5948
6033
  'unicorn/prefer-string-replace-all'?: Linter.RuleEntry<[]>;
5949
6034
  /**
5950
6035
  * Prefer `String#slice()` over `String#substr()` and `String#substring()`.
5951
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-slice.md
6036
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-slice.md
5952
6037
  */
5953
6038
  'unicorn/prefer-string-slice'?: Linter.RuleEntry<[]>;
5954
6039
  /**
5955
6040
  * Prefer `String#startsWith()` & `String#endsWith()` over `RegExp#test()`.
5956
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-starts-ends-with.md
6041
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-starts-ends-with.md
5957
6042
  */
5958
6043
  'unicorn/prefer-string-starts-ends-with'?: Linter.RuleEntry<[]>;
5959
6044
  /**
5960
6045
  * Prefer `String#trimStart()` / `String#trimEnd()` over `String#trimLeft()` / `String#trimRight()`.
5961
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-string-trim-start-end.md
6046
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-string-trim-start-end.md
5962
6047
  */
5963
6048
  'unicorn/prefer-string-trim-start-end'?: Linter.RuleEntry<[]>;
5964
6049
  /**
5965
6050
  * Prefer using `structuredClone` to create a deep clone.
5966
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-structured-clone.md
6051
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-structured-clone.md
5967
6052
  */
5968
6053
  'unicorn/prefer-structured-clone'?: Linter.RuleEntry<UnicornPreferStructuredClone>;
5969
6054
  /**
5970
6055
  * Prefer `switch` over multiple `else-if`.
5971
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-switch.md
6056
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-switch.md
5972
6057
  */
5973
6058
  'unicorn/prefer-switch'?: Linter.RuleEntry<UnicornPreferSwitch>;
5974
6059
  /**
5975
6060
  * Prefer ternary expressions over simple `if-else` statements.
5976
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-ternary.md
6061
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-ternary.md
5977
6062
  */
5978
6063
  'unicorn/prefer-ternary'?: Linter.RuleEntry<UnicornPreferTernary>;
5979
6064
  /**
5980
6065
  * Prefer top-level await over top-level promises and async function calls.
5981
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-top-level-await.md
6066
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-top-level-await.md
5982
6067
  */
5983
6068
  'unicorn/prefer-top-level-await'?: Linter.RuleEntry<[]>;
5984
6069
  /**
5985
6070
  * Enforce throwing `TypeError` in type checking conditions.
5986
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prefer-type-error.md
6071
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prefer-type-error.md
5987
6072
  */
5988
6073
  'unicorn/prefer-type-error'?: Linter.RuleEntry<[]>;
5989
6074
  /**
5990
6075
  * Prevent abbreviations.
5991
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/prevent-abbreviations.md
6076
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/prevent-abbreviations.md
5992
6077
  */
5993
6078
  'unicorn/prevent-abbreviations'?: Linter.RuleEntry<UnicornPreventAbbreviations>;
5994
6079
  /**
5995
6080
  * Enforce consistent relative URL style.
5996
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/relative-url-style.md
6081
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/relative-url-style.md
5997
6082
  */
5998
6083
  'unicorn/relative-url-style'?: Linter.RuleEntry<UnicornRelativeUrlStyle>;
5999
6084
  /**
6000
6085
  * Enforce using the separator argument with `Array#join()`.
6001
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-array-join-separator.md
6086
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-array-join-separator.md
6002
6087
  */
6003
6088
  'unicorn/require-array-join-separator'?: Linter.RuleEntry<[]>;
6004
6089
  /**
6005
6090
  * Require non-empty module attributes for imports and exports
6006
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-module-attributes.md
6091
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-module-attributes.md
6007
6092
  */
6008
6093
  'unicorn/require-module-attributes'?: Linter.RuleEntry<[]>;
6009
6094
  /**
6010
6095
  * Require non-empty specifier list in import and export statements.
6011
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-module-specifiers.md
6096
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-module-specifiers.md
6012
6097
  */
6013
6098
  'unicorn/require-module-specifiers'?: Linter.RuleEntry<[]>;
6014
6099
  /**
6015
6100
  * Enforce using the digits argument with `Number#toFixed()`.
6016
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-number-to-fixed-digits-argument.md
6101
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-number-to-fixed-digits-argument.md
6017
6102
  */
6018
6103
  'unicorn/require-number-to-fixed-digits-argument'?: Linter.RuleEntry<[]>;
6019
6104
  /**
6020
6105
  * Enforce using the `targetOrigin` argument with `window.postMessage()`.
6021
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/require-post-message-target-origin.md
6106
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/require-post-message-target-origin.md
6022
6107
  */
6023
6108
  'unicorn/require-post-message-target-origin'?: Linter.RuleEntry<[]>;
6024
6109
  /**
6025
6110
  * Enforce better string content.
6026
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/string-content.md
6111
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/string-content.md
6027
6112
  */
6028
6113
  'unicorn/string-content'?: Linter.RuleEntry<UnicornStringContent>;
6029
6114
  /**
6030
6115
  * Enforce consistent brace style for `case` clauses.
6031
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/switch-case-braces.md
6116
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/switch-case-braces.md
6032
6117
  */
6033
6118
  'unicorn/switch-case-braces'?: Linter.RuleEntry<UnicornSwitchCaseBraces>;
6034
6119
  /**
6035
6120
  * Fix whitespace-insensitive template indentation.
6036
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/template-indent.md
6121
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/template-indent.md
6037
6122
  */
6038
6123
  'unicorn/template-indent'?: Linter.RuleEntry<UnicornTemplateIndent>;
6039
6124
  /**
6040
6125
  * Enforce consistent case for text encoding identifiers.
6041
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/text-encoding-identifier-case.md
6126
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/text-encoding-identifier-case.md
6042
6127
  */
6043
6128
  'unicorn/text-encoding-identifier-case'?: Linter.RuleEntry<UnicornTextEncodingIdentifierCase>;
6044
6129
  /**
6045
6130
  * Require `new` when creating an error.
6046
- * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v62.0.0/docs/rules/throw-new-error.md
6131
+ * @see https://github.com/sindresorhus/eslint-plugin-unicorn/blob/v63.0.0/docs/rules/throw-new-error.md
6047
6132
  */
6048
6133
  'unicorn/throw-new-error'?: Linter.RuleEntry<[]>;
6049
6134
  /**
@@ -6596,6 +6681,11 @@ interface RuleOptions {
6596
6681
  * @see https://eslint.vuejs.org/rules/no-lifecycle-after-await.html
6597
6682
  */
6598
6683
  'vue/no-lifecycle-after-await'?: Linter.RuleEntry<[]>;
6684
+ /**
6685
+ * disallow object, array, and function literals in template
6686
+ * @see https://eslint.vuejs.org/rules/no-literals-in-template.html
6687
+ */
6688
+ 'vue/no-literals-in-template'?: Linter.RuleEntry<[]>;
6599
6689
  /**
6600
6690
  * disallow unnecessary `<template>`
6601
6691
  * @see https://eslint.vuejs.org/rules/no-lone-template.html
@@ -6806,6 +6896,11 @@ interface RuleOptions {
6806
6896
  * @see https://eslint.vuejs.org/rules/no-undef-components.html
6807
6897
  */
6808
6898
  'vue/no-undef-components'?: Linter.RuleEntry<VueNoUndefComponents>;
6899
+ /**
6900
+ * disallow use of undefined custom directives
6901
+ * @see https://eslint.vuejs.org/rules/no-undef-directives.html
6902
+ */
6903
+ 'vue/no-undef-directives'?: Linter.RuleEntry<VueNoUndefDirectives>;
6809
6904
  /**
6810
6905
  * disallow undefined properties
6811
6906
  * @see https://eslint.vuejs.org/rules/no-undef-properties.html
@@ -7279,7 +7374,7 @@ interface RuleOptions {
7279
7374
  * enforce valid `v-for` directives
7280
7375
  * @see https://eslint.vuejs.org/rules/valid-v-for.html
7281
7376
  */
7282
- 'vue/valid-v-for'?: Linter.RuleEntry<[]>;
7377
+ 'vue/valid-v-for'?: Linter.RuleEntry<VueValidVFor>;
7283
7378
  /**
7284
7379
  * enforce valid `v-html` directives
7285
7380
  * @see https://eslint.vuejs.org/rules/valid-v-html.html
@@ -7520,6 +7615,7 @@ type AntfuConsistentListNewline = [] | [{
7520
7615
  ExportNamedDeclaration?: boolean;
7521
7616
  FunctionDeclaration?: boolean;
7522
7617
  FunctionExpression?: boolean;
7618
+ IfStatement?: boolean;
7523
7619
  ImportDeclaration?: boolean;
7524
7620
  JSONArrayExpression?: boolean;
7525
7621
  JSONObjectExpression?: boolean;
@@ -7694,11 +7790,16 @@ type FormatDprint = [] | [{
7694
7790
  languageOptions?: {
7695
7791
  [k: string]: unknown | undefined;
7696
7792
  };
7793
+ plugins?: unknown[];
7794
+ [k: string]: unknown | undefined;
7795
+ }];
7796
+ // ----- format/oxfmt -----
7797
+ type FormatOxfmt = [] | [{
7697
7798
  [k: string]: unknown | undefined;
7698
7799
  }];
7699
7800
  // ----- format/prettier -----
7700
7801
  type FormatPrettier = [] | [{
7701
- parser?: string;
7802
+ parser: string;
7702
7803
  [k: string]: unknown | undefined;
7703
7804
  }];
7704
7805
  // ----- func-call-spacing -----
@@ -7794,6 +7895,10 @@ type ImportNewlineAfterImport = [] | [{
7794
7895
  type ImportNoDuplicates = [] | [{
7795
7896
  "prefer-inline"?: boolean;
7796
7897
  }];
7898
+ // ----- import/prefer-default-export -----
7899
+ type ImportPreferDefaultExport = [] | [{
7900
+ target?: ("single" | "any");
7901
+ }];
7797
7902
  // ----- indent -----
7798
7903
  type Indent = [] | [("tab" | number)] | [("tab" | number), {
7799
7904
  SwitchCase?: number;
@@ -8155,6 +8260,7 @@ type JsdocRequireHyphenBeforeParamDescription = [] | [("always" | "never")] | [(
8155
8260
  }];
8156
8261
  // ----- jsdoc/require-jsdoc -----
8157
8262
  type JsdocRequireJsdoc = [] | [{
8263
+ checkAllFunctionExpressions?: boolean;
8158
8264
  checkConstructors?: boolean;
8159
8265
  checkGetters?: (boolean | "no-setter");
8160
8266
  checkSetters?: (boolean | "no-getter");
@@ -8345,6 +8451,7 @@ type JsdocTagLines = [] | [("always" | "any" | "never")] | [("always" | "any" |
8345
8451
  endLines?: (number | null);
8346
8452
  maxBlockLines?: (number | null);
8347
8453
  startLines?: (number | null);
8454
+ startLinesWithNoTags?: number;
8348
8455
  tags?: {
8349
8456
  [k: string]: {
8350
8457
  count?: number;
@@ -8392,11 +8499,13 @@ type JsdocTypeFormatting = [] | [{
8392
8499
  objectFieldSeparator?: ("comma" | "comma-and-linebreak" | "linebreak" | "semicolon" | "semicolon-and-linebreak");
8393
8500
  objectFieldSeparatorOptionalLinebreak?: boolean;
8394
8501
  objectFieldSeparatorTrailingPunctuation?: boolean;
8502
+ objectTypeBracketSpacing?: string;
8395
8503
  parameterDefaultValueSpacing?: string;
8396
8504
  postMethodNameSpacing?: string;
8397
8505
  postNewSpacing?: string;
8398
8506
  separatorForSingleObjectField?: boolean;
8399
8507
  stringQuotes?: ("double" | "single");
8508
+ trailingPunctuationMultilineOnly?: boolean;
8400
8509
  typeBracketSpacing?: string;
8401
8510
  unionSpacing?: string;
8402
8511
  }];
@@ -8571,6 +8680,7 @@ type JsoncObjectCurlyNewline = [] | [((("always" | "never") | {
8571
8680
  type JsoncObjectCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), {
8572
8681
  arraysInObjects?: boolean;
8573
8682
  objectsInObjects?: boolean;
8683
+ emptyObjects?: ("ignore" | "always" | "never");
8574
8684
  }];
8575
8685
  // ----- jsonc/object-property-newline -----
8576
8686
  type JsoncObjectPropertyNewline = [] | [{
@@ -9215,6 +9325,7 @@ type MaxParams = [] | [(number | {
9215
9325
  maximum?: number;
9216
9326
  max?: number;
9217
9327
  countVoidThis?: boolean;
9328
+ countThis?: ("never" | "except-void" | "always");
9218
9329
  })];
9219
9330
  // ----- max-statements -----
9220
9331
  type MaxStatements = [] | [(number | {
@@ -9871,12 +9982,16 @@ type NodeNoUnsupportedFeaturesNodeBuiltins = [] | [{
9871
9982
  type NodePreferGlobalBuffer = [] | [("always" | "never")];
9872
9983
  // ----- node/prefer-global/console -----
9873
9984
  type NodePreferGlobalConsole = [] | [("always" | "never")];
9985
+ // ----- node/prefer-global/crypto -----
9986
+ type NodePreferGlobalCrypto = [] | [("always" | "never")];
9874
9987
  // ----- node/prefer-global/process -----
9875
9988
  type NodePreferGlobalProcess = [] | [("always" | "never")];
9876
9989
  // ----- node/prefer-global/text-decoder -----
9877
9990
  type NodePreferGlobalTextDecoder = [] | [("always" | "never")];
9878
9991
  // ----- node/prefer-global/text-encoder -----
9879
9992
  type NodePreferGlobalTextEncoder = [] | [("always" | "never")];
9993
+ // ----- node/prefer-global/timers -----
9994
+ type NodePreferGlobalTimers = [] | [("always" | "never")];
9880
9995
  // ----- node/prefer-global/url -----
9881
9996
  type NodePreferGlobalUrl = [] | [("always" | "never")];
9882
9997
  // ----- node/prefer-global/url-search-params -----
@@ -10005,27 +10120,34 @@ type PaddingLineBetweenStatements = {
10005
10120
  // ----- perfectionist/sort-array-includes -----
10006
10121
  type PerfectionistSortArrayIncludes = {
10007
10122
  fallbackSort?: {
10123
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10008
10124
  order?: ("asc" | "desc");
10009
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10010
10125
  };
10126
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10011
10127
  specialCharacters?: ("remove" | "trim" | "keep");
10012
10128
  ignoreCase?: boolean;
10013
10129
  alphabet?: string;
10014
10130
  locales?: (string | string[]);
10015
10131
  order?: ("asc" | "desc");
10016
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10017
- groupKind?: ("mixed" | "literals-first" | "spreads-first");
10018
10132
  customGroups?: ({
10019
- newlinesInside?: (("always" | "never") | number);
10020
10133
  fallbackSort?: {
10134
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10021
10135
  order?: ("asc" | "desc");
10022
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10023
10136
  };
10137
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10024
10138
  groupName: string;
10139
+ newlinesInside?: ("ignore" | number);
10025
10140
  order?: ("asc" | "desc");
10026
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10027
- anyOf?: {
10028
- selector?: ("literal" | "spread");
10141
+ anyOf: [{
10142
+ elementNamePattern?: (({
10143
+ pattern: string;
10144
+ flags?: string;
10145
+ } | string)[] | ({
10146
+ pattern: string;
10147
+ flags?: string;
10148
+ } | string));
10149
+ selector?: "literal";
10150
+ }, ...({
10029
10151
  elementNamePattern?: (({
10030
10152
  pattern: string;
10031
10153
  flags?: string;
@@ -10033,17 +10155,17 @@ type PerfectionistSortArrayIncludes = {
10033
10155
  pattern: string;
10034
10156
  flags?: string;
10035
10157
  } | string));
10036
- }[];
10158
+ selector?: "literal";
10159
+ })[]];
10037
10160
  } | {
10038
- newlinesInside?: (("always" | "never") | number);
10039
10161
  fallbackSort?: {
10162
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10040
10163
  order?: ("asc" | "desc");
10041
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10042
10164
  };
10165
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10043
10166
  groupName: string;
10167
+ newlinesInside?: ("ignore" | number);
10044
10168
  order?: ("asc" | "desc");
10045
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10046
- selector?: ("literal" | "spread");
10047
10169
  elementNamePattern?: (({
10048
10170
  pattern: string;
10049
10171
  flags?: string;
@@ -10051,7 +10173,23 @@ type PerfectionistSortArrayIncludes = {
10051
10173
  pattern: string;
10052
10174
  flags?: string;
10053
10175
  } | string));
10176
+ selector?: "literal";
10177
+ })[];
10178
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10179
+ groups?: (string | [string, ...(string)[]] | {
10180
+ newlinesBetween: ("ignore" | number);
10181
+ } | {
10182
+ group: (string | [string, ...(string)[]]);
10183
+ fallbackSort?: {
10184
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10185
+ order?: ("asc" | "desc");
10186
+ };
10187
+ commentAbove?: string;
10188
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10189
+ newlinesInside?: ("ignore" | number);
10190
+ order?: ("asc" | "desc");
10054
10191
  })[];
10192
+ newlinesBetween?: ("ignore" | number);
10055
10193
  useConfigurationIf?: {
10056
10194
  allNamesMatchPattern?: (({
10057
10195
  pattern: string;
@@ -10084,34 +10222,36 @@ type PerfectionistSortArrayIncludes = {
10084
10222
  } | string)));
10085
10223
  });
10086
10224
  partitionByNewLine?: boolean;
10087
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10088
- groups?: (string | string[] | {
10089
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10090
- commentAbove?: string;
10091
- })[];
10092
10225
  }[];
10093
10226
  // ----- perfectionist/sort-classes -----
10094
10227
  type PerfectionistSortClasses = [] | [{
10095
10228
  fallbackSort?: {
10229
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10096
10230
  order?: ("asc" | "desc");
10097
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10098
10231
  };
10232
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10099
10233
  specialCharacters?: ("remove" | "trim" | "keep");
10100
10234
  ignoreCase?: boolean;
10101
10235
  alphabet?: string;
10102
10236
  locales?: (string | string[]);
10103
10237
  order?: ("asc" | "desc");
10104
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10105
10238
  customGroups?: ({
10106
- newlinesInside?: (("always" | "never") | number);
10107
10239
  fallbackSort?: {
10240
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10108
10241
  order?: ("asc" | "desc");
10109
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10110
10242
  };
10243
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10111
10244
  groupName: string;
10245
+ newlinesInside?: ("ignore" | number);
10112
10246
  order?: ("asc" | "desc");
10113
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10114
- anyOf?: {
10247
+ anyOf: [{
10248
+ elementNamePattern?: (({
10249
+ pattern: string;
10250
+ flags?: string;
10251
+ } | string)[] | ({
10252
+ pattern: string;
10253
+ flags?: string;
10254
+ } | string));
10115
10255
  modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
10116
10256
  selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
10117
10257
  decoratorNamePattern?: (({
@@ -10128,6 +10268,7 @@ type PerfectionistSortClasses = [] | [{
10128
10268
  pattern: string;
10129
10269
  flags?: string;
10130
10270
  } | string));
10271
+ }, ...({
10131
10272
  elementNamePattern?: (({
10132
10273
  pattern: string;
10133
10274
  flags?: string;
@@ -10135,33 +10276,49 @@ type PerfectionistSortClasses = [] | [{
10135
10276
  pattern: string;
10136
10277
  flags?: string;
10137
10278
  } | string));
10138
- }[];
10279
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
10280
+ selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
10281
+ decoratorNamePattern?: (({
10282
+ pattern: string;
10283
+ flags?: string;
10284
+ } | string)[] | ({
10285
+ pattern: string;
10286
+ flags?: string;
10287
+ } | string));
10288
+ elementValuePattern?: (({
10289
+ pattern: string;
10290
+ flags?: string;
10291
+ } | string)[] | ({
10292
+ pattern: string;
10293
+ flags?: string;
10294
+ } | string));
10295
+ })[]];
10139
10296
  } | {
10140
- newlinesInside?: (("always" | "never") | number);
10141
10297
  fallbackSort?: {
10298
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10142
10299
  order?: ("asc" | "desc");
10143
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10144
10300
  };
10301
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10145
10302
  groupName: string;
10303
+ newlinesInside?: ("ignore" | number);
10146
10304
  order?: ("asc" | "desc");
10147
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10148
- modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
10149
- selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
10150
- decoratorNamePattern?: (({
10305
+ elementNamePattern?: (({
10151
10306
  pattern: string;
10152
10307
  flags?: string;
10153
10308
  } | string)[] | ({
10154
10309
  pattern: string;
10155
10310
  flags?: string;
10156
10311
  } | string));
10157
- elementValuePattern?: (({
10312
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
10313
+ selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
10314
+ decoratorNamePattern?: (({
10158
10315
  pattern: string;
10159
10316
  flags?: string;
10160
10317
  } | string)[] | ({
10161
10318
  pattern: string;
10162
10319
  flags?: string;
10163
10320
  } | string));
10164
- elementNamePattern?: (({
10321
+ elementValuePattern?: (({
10165
10322
  pattern: string;
10166
10323
  flags?: string;
10167
10324
  } | string)[] | ({
@@ -10169,6 +10326,22 @@ type PerfectionistSortClasses = [] | [{
10169
10326
  flags?: string;
10170
10327
  } | string));
10171
10328
  })[];
10329
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10330
+ groups?: (string | [string, ...(string)[]] | {
10331
+ newlinesBetween: ("ignore" | number);
10332
+ } | {
10333
+ group: (string | [string, ...(string)[]]);
10334
+ fallbackSort?: {
10335
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10336
+ order?: ("asc" | "desc");
10337
+ };
10338
+ commentAbove?: string;
10339
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10340
+ newlinesInside?: ("ignore" | number);
10341
+ order?: ("asc" | "desc");
10342
+ })[];
10343
+ newlinesBetween?: ("ignore" | number);
10344
+ useExperimentalDependencyDetection?: boolean;
10172
10345
  ignoreCallbackDependenciesPatterns?: (({
10173
10346
  pattern: string;
10174
10347
  flags?: string;
@@ -10199,24 +10372,77 @@ type PerfectionistSortClasses = [] | [{
10199
10372
  } | string)));
10200
10373
  });
10201
10374
  partitionByNewLine?: boolean;
10202
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10203
- groups?: (string | string[] | {
10204
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10205
- commentAbove?: string;
10206
- })[];
10207
10375
  }];
10208
10376
  // ----- perfectionist/sort-decorators -----
10209
- type PerfectionistSortDecorators = [] | [{
10377
+ type PerfectionistSortDecorators = {
10210
10378
  fallbackSort?: {
10379
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10211
10380
  order?: ("asc" | "desc");
10212
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10213
10381
  };
10382
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10214
10383
  specialCharacters?: ("remove" | "trim" | "keep");
10215
10384
  ignoreCase?: boolean;
10216
10385
  alphabet?: string;
10217
10386
  locales?: (string | string[]);
10218
10387
  order?: ("asc" | "desc");
10219
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10388
+ customGroups?: ({
10389
+ fallbackSort?: {
10390
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10391
+ order?: ("asc" | "desc");
10392
+ };
10393
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10394
+ groupName: string;
10395
+ newlinesInside?: ("ignore" | number);
10396
+ order?: ("asc" | "desc");
10397
+ anyOf: [{
10398
+ elementNamePattern?: (({
10399
+ pattern: string;
10400
+ flags?: string;
10401
+ } | string)[] | ({
10402
+ pattern: string;
10403
+ flags?: string;
10404
+ } | string));
10405
+ }, ...({
10406
+ elementNamePattern?: (({
10407
+ pattern: string;
10408
+ flags?: string;
10409
+ } | string)[] | ({
10410
+ pattern: string;
10411
+ flags?: string;
10412
+ } | string));
10413
+ })[]];
10414
+ } | {
10415
+ fallbackSort?: {
10416
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10417
+ order?: ("asc" | "desc");
10418
+ };
10419
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10420
+ groupName: string;
10421
+ newlinesInside?: ("ignore" | number);
10422
+ order?: ("asc" | "desc");
10423
+ elementNamePattern?: (({
10424
+ pattern: string;
10425
+ flags?: string;
10426
+ } | string)[] | ({
10427
+ pattern: string;
10428
+ flags?: string;
10429
+ } | string));
10430
+ })[];
10431
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10432
+ groups?: (string | [string, ...(string)[]] | {
10433
+ newlinesBetween: ("ignore" | number);
10434
+ } | {
10435
+ group: (string | [string, ...(string)[]]);
10436
+ fallbackSort?: {
10437
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10438
+ order?: ("asc" | "desc");
10439
+ };
10440
+ commentAbove?: string;
10441
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10442
+ newlinesInside?: ("ignore" | number);
10443
+ order?: ("asc" | "desc");
10444
+ })[];
10445
+ newlinesBetween?: ("ignore" | number);
10220
10446
  sortOnParameters?: boolean;
10221
10447
  sortOnProperties?: boolean;
10222
10448
  sortOnAccessors?: boolean;
@@ -10244,38 +10470,37 @@ type PerfectionistSortDecorators = [] | [{
10244
10470
  flags?: string;
10245
10471
  } | string)));
10246
10472
  });
10247
- customGroups?: {
10248
- [k: string]: (string | string[]) | undefined;
10249
- };
10250
- groups?: (string | string[] | {
10251
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10252
- commentAbove?: string;
10253
- })[];
10254
- }];
10473
+ partitionByNewLine?: boolean;
10474
+ }[];
10255
10475
  // ----- perfectionist/sort-enums -----
10256
10476
  type PerfectionistSortEnums = [] | [{
10257
10477
  fallbackSort?: {
10478
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10258
10479
  order?: ("asc" | "desc");
10259
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10260
10480
  };
10481
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10261
10482
  specialCharacters?: ("remove" | "trim" | "keep");
10262
10483
  ignoreCase?: boolean;
10263
10484
  alphabet?: string;
10264
10485
  locales?: (string | string[]);
10265
10486
  order?: ("asc" | "desc");
10266
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10267
10487
  customGroups?: ({
10268
- [k: string]: (string | string[]) | undefined;
10269
- } | ({
10270
- newlinesInside?: (("always" | "never") | number);
10271
10488
  fallbackSort?: {
10489
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10272
10490
  order?: ("asc" | "desc");
10273
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10274
10491
  };
10492
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10275
10493
  groupName: string;
10494
+ newlinesInside?: ("ignore" | number);
10276
10495
  order?: ("asc" | "desc");
10277
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10278
- anyOf?: {
10496
+ anyOf: [{
10497
+ elementNamePattern?: (({
10498
+ pattern: string;
10499
+ flags?: string;
10500
+ } | string)[] | ({
10501
+ pattern: string;
10502
+ flags?: string;
10503
+ } | string));
10279
10504
  elementValuePattern?: (({
10280
10505
  pattern: string;
10281
10506
  flags?: string;
@@ -10283,6 +10508,7 @@ type PerfectionistSortEnums = [] | [{
10283
10508
  pattern: string;
10284
10509
  flags?: string;
10285
10510
  } | string));
10511
+ }, ...({
10286
10512
  elementNamePattern?: (({
10287
10513
  pattern: string;
10288
10514
  flags?: string;
@@ -10290,33 +10516,55 @@ type PerfectionistSortEnums = [] | [{
10290
10516
  pattern: string;
10291
10517
  flags?: string;
10292
10518
  } | string));
10293
- }[];
10519
+ elementValuePattern?: (({
10520
+ pattern: string;
10521
+ flags?: string;
10522
+ } | string)[] | ({
10523
+ pattern: string;
10524
+ flags?: string;
10525
+ } | string));
10526
+ })[]];
10294
10527
  } | {
10295
- newlinesInside?: (("always" | "never") | number);
10296
10528
  fallbackSort?: {
10529
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10297
10530
  order?: ("asc" | "desc");
10298
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10299
10531
  };
10532
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10300
10533
  groupName: string;
10534
+ newlinesInside?: ("ignore" | number);
10301
10535
  order?: ("asc" | "desc");
10302
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10303
- elementValuePattern?: (({
10536
+ elementNamePattern?: (({
10304
10537
  pattern: string;
10305
10538
  flags?: string;
10306
10539
  } | string)[] | ({
10307
10540
  pattern: string;
10308
10541
  flags?: string;
10309
10542
  } | string));
10310
- elementNamePattern?: (({
10543
+ elementValuePattern?: (({
10311
10544
  pattern: string;
10312
10545
  flags?: string;
10313
10546
  } | string)[] | ({
10314
10547
  pattern: string;
10315
10548
  flags?: string;
10316
10549
  } | string));
10317
- })[]);
10318
- forceNumericSort?: boolean;
10319
- sortByValue?: boolean;
10550
+ })[];
10551
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10552
+ groups?: (string | [string, ...(string)[]] | {
10553
+ newlinesBetween: ("ignore" | number);
10554
+ } | {
10555
+ group: (string | [string, ...(string)[]]);
10556
+ fallbackSort?: {
10557
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10558
+ order?: ("asc" | "desc");
10559
+ };
10560
+ commentAbove?: string;
10561
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10562
+ newlinesInside?: ("ignore" | number);
10563
+ order?: ("asc" | "desc");
10564
+ })[];
10565
+ newlinesBetween?: ("ignore" | number);
10566
+ sortByValue?: ("always" | "ifNumericEnum" | "never");
10567
+ useExperimentalDependencyDetection?: boolean;
10320
10568
  partitionByComment?: (boolean | (({
10321
10569
  pattern: string;
10322
10570
  flags?: string;
@@ -10340,37 +10588,37 @@ type PerfectionistSortEnums = [] | [{
10340
10588
  } | string)));
10341
10589
  });
10342
10590
  partitionByNewLine?: boolean;
10343
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10344
- groups?: (string | string[] | {
10345
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10346
- commentAbove?: string;
10347
- })[];
10348
10591
  }];
10349
- // ----- perfectionist/sort-exports -----
10350
- type PerfectionistSortExports = {
10592
+ // ----- perfectionist/sort-export-attributes -----
10593
+ type PerfectionistSortExportAttributes = {
10351
10594
  fallbackSort?: {
10595
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10352
10596
  order?: ("asc" | "desc");
10353
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10354
10597
  };
10598
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10355
10599
  specialCharacters?: ("remove" | "trim" | "keep");
10356
10600
  ignoreCase?: boolean;
10357
10601
  alphabet?: string;
10358
10602
  locales?: (string | string[]);
10359
10603
  order?: ("asc" | "desc");
10360
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10361
- groupKind?: ("mixed" | "values-first" | "types-first");
10362
10604
  customGroups?: ({
10363
- newlinesInside?: (("always" | "never") | number);
10364
10605
  fallbackSort?: {
10606
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10365
10607
  order?: ("asc" | "desc");
10366
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10367
10608
  };
10609
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10368
10610
  groupName: string;
10611
+ newlinesInside?: ("ignore" | number);
10369
10612
  order?: ("asc" | "desc");
10370
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10371
- anyOf?: {
10372
- modifiers?: ("value" | "type")[];
10373
- selector?: "export";
10613
+ anyOf: [{
10614
+ elementNamePattern?: (({
10615
+ pattern: string;
10616
+ flags?: string;
10617
+ } | string)[] | ({
10618
+ pattern: string;
10619
+ flags?: string;
10620
+ } | string));
10621
+ }, ...({
10374
10622
  elementNamePattern?: (({
10375
10623
  pattern: string;
10376
10624
  flags?: string;
@@ -10378,18 +10626,16 @@ type PerfectionistSortExports = {
10378
10626
  pattern: string;
10379
10627
  flags?: string;
10380
10628
  } | string));
10381
- }[];
10629
+ })[]];
10382
10630
  } | {
10383
- newlinesInside?: (("always" | "never") | number);
10384
10631
  fallbackSort?: {
10632
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10385
10633
  order?: ("asc" | "desc");
10386
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10387
10634
  };
10635
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10388
10636
  groupName: string;
10637
+ newlinesInside?: ("ignore" | number);
10389
10638
  order?: ("asc" | "desc");
10390
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10391
- modifiers?: ("value" | "type")[];
10392
- selector?: "export";
10393
10639
  elementNamePattern?: (({
10394
10640
  pattern: string;
10395
10641
  flags?: string;
@@ -10398,6 +10644,21 @@ type PerfectionistSortExports = {
10398
10644
  flags?: string;
10399
10645
  } | string));
10400
10646
  })[];
10647
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10648
+ groups?: (string | [string, ...(string)[]] | {
10649
+ newlinesBetween: ("ignore" | number);
10650
+ } | {
10651
+ group: (string | [string, ...(string)[]]);
10652
+ fallbackSort?: {
10653
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10654
+ order?: ("asc" | "desc");
10655
+ };
10656
+ commentAbove?: string;
10657
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10658
+ newlinesInside?: ("ignore" | number);
10659
+ order?: ("asc" | "desc");
10660
+ })[];
10661
+ newlinesBetween?: ("ignore" | number);
10401
10662
  partitionByComment?: (boolean | (({
10402
10663
  pattern: string;
10403
10664
  flags?: string;
@@ -10421,70 +10682,39 @@ type PerfectionistSortExports = {
10421
10682
  } | string)));
10422
10683
  });
10423
10684
  partitionByNewLine?: boolean;
10424
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10425
- groups?: (string | string[] | {
10426
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10427
- commentAbove?: string;
10428
- })[];
10429
10685
  }[];
10430
- // ----- perfectionist/sort-heritage-clauses -----
10431
- type PerfectionistSortHeritageClauses = [] | [{
10432
- fallbackSort?: {
10433
- order?: ("asc" | "desc");
10434
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10435
- };
10436
- specialCharacters?: ("remove" | "trim" | "keep");
10437
- ignoreCase?: boolean;
10438
- alphabet?: string;
10439
- locales?: (string | string[]);
10440
- order?: ("asc" | "desc");
10441
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10442
- customGroups?: {
10443
- [k: string]: (string | string[]) | undefined;
10444
- };
10445
- groups?: (string | string[] | {
10446
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10447
- commentAbove?: string;
10448
- })[];
10449
- }];
10450
- // ----- perfectionist/sort-imports -----
10451
- type PerfectionistSortImports = {
10686
+ // ----- perfectionist/sort-exports -----
10687
+ type PerfectionistSortExports = {
10452
10688
  fallbackSort?: {
10689
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10453
10690
  order?: ("asc" | "desc");
10454
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10455
10691
  };
10692
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10456
10693
  specialCharacters?: ("remove" | "trim" | "keep");
10457
10694
  ignoreCase?: boolean;
10458
10695
  alphabet?: string;
10459
10696
  locales?: (string | string[]);
10460
10697
  order?: ("asc" | "desc");
10461
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10462
10698
  customGroups?: ({
10463
- value?: {
10464
- [k: string]: (string | string[]) | undefined;
10465
- };
10466
- type?: {
10467
- [k: string]: (string | string[]) | undefined;
10468
- };
10469
- } | ({
10470
- newlinesInside?: (("always" | "never") | number);
10471
10699
  fallbackSort?: {
10700
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10472
10701
  order?: ("asc" | "desc");
10473
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10474
10702
  };
10703
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10475
10704
  groupName: string;
10705
+ newlinesInside?: ("ignore" | number);
10476
10706
  order?: ("asc" | "desc");
10477
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10478
- anyOf?: {
10479
- modifiers?: ("default" | "named" | "require" | "side-effect" | "ts-equals" | "type" | "value" | "wildcard")[];
10480
- selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
10481
- elementValuePattern?: (({
10707
+ anyOf: [{
10708
+ elementNamePattern?: (({
10482
10709
  pattern: string;
10483
10710
  flags?: string;
10484
10711
  } | string)[] | ({
10485
10712
  pattern: string;
10486
10713
  flags?: string;
10487
10714
  } | string));
10715
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[];
10716
+ selector?: "export";
10717
+ }, ...({
10488
10718
  elementNamePattern?: (({
10489
10719
  pattern: string;
10490
10720
  flags?: string;
@@ -10492,25 +10722,18 @@ type PerfectionistSortImports = {
10492
10722
  pattern: string;
10493
10723
  flags?: string;
10494
10724
  } | string));
10495
- }[];
10725
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[];
10726
+ selector?: "export";
10727
+ })[]];
10496
10728
  } | {
10497
- newlinesInside?: (("always" | "never") | number);
10498
10729
  fallbackSort?: {
10730
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10499
10731
  order?: ("asc" | "desc");
10500
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10501
10732
  };
10733
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10502
10734
  groupName: string;
10735
+ newlinesInside?: ("ignore" | number);
10503
10736
  order?: ("asc" | "desc");
10504
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10505
- modifiers?: ("default" | "named" | "require" | "side-effect" | "ts-equals" | "type" | "value" | "wildcard")[];
10506
- selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
10507
- elementValuePattern?: (({
10508
- pattern: string;
10509
- flags?: string;
10510
- } | string)[] | ({
10511
- pattern: string;
10512
- flags?: string;
10513
- } | string));
10514
10737
  elementNamePattern?: (({
10515
10738
  pattern: string;
10516
10739
  flags?: string;
@@ -10518,15 +10741,24 @@ type PerfectionistSortImports = {
10518
10741
  pattern: string;
10519
10742
  flags?: string;
10520
10743
  } | string));
10521
- })[]);
10522
- tsconfig?: {
10523
- rootDir: string;
10524
- filename?: string;
10525
- };
10526
- maxLineLength?: number;
10527
- sortSideEffects?: boolean;
10528
- environment?: ("node" | "bun");
10529
- tsconfigRootDir?: string;
10744
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[];
10745
+ selector?: "export";
10746
+ })[];
10747
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10748
+ groups?: (string | [string, ...(string)[]] | {
10749
+ newlinesBetween: ("ignore" | number);
10750
+ } | {
10751
+ group: (string | [string, ...(string)[]]);
10752
+ fallbackSort?: {
10753
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10754
+ order?: ("asc" | "desc");
10755
+ };
10756
+ commentAbove?: string;
10757
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10758
+ newlinesInside?: ("ignore" | number);
10759
+ order?: ("asc" | "desc");
10760
+ })[];
10761
+ newlinesBetween?: ("ignore" | number);
10530
10762
  partitionByComment?: (boolean | (({
10531
10763
  pattern: string;
10532
10764
  flags?: string;
@@ -10550,47 +10782,353 @@ type PerfectionistSortImports = {
10550
10782
  } | string)));
10551
10783
  });
10552
10784
  partitionByNewLine?: boolean;
10553
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10554
- internalPattern?: (({
10555
- pattern: string;
10556
- flags?: string;
10785
+ }[];
10786
+ // ----- perfectionist/sort-heritage-clauses -----
10787
+ type PerfectionistSortHeritageClauses = {
10788
+ fallbackSort?: {
10789
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10790
+ order?: ("asc" | "desc");
10791
+ };
10792
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10793
+ specialCharacters?: ("remove" | "trim" | "keep");
10794
+ ignoreCase?: boolean;
10795
+ alphabet?: string;
10796
+ locales?: (string | string[]);
10797
+ order?: ("asc" | "desc");
10798
+ customGroups?: ({
10799
+ fallbackSort?: {
10800
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10801
+ order?: ("asc" | "desc");
10802
+ };
10803
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10804
+ groupName: string;
10805
+ newlinesInside?: ("ignore" | number);
10806
+ order?: ("asc" | "desc");
10807
+ anyOf: [{
10808
+ elementNamePattern?: (({
10809
+ pattern: string;
10810
+ flags?: string;
10811
+ } | string)[] | ({
10812
+ pattern: string;
10813
+ flags?: string;
10814
+ } | string));
10815
+ }, ...({
10816
+ elementNamePattern?: (({
10817
+ pattern: string;
10818
+ flags?: string;
10819
+ } | string)[] | ({
10820
+ pattern: string;
10821
+ flags?: string;
10822
+ } | string));
10823
+ })[]];
10824
+ } | {
10825
+ fallbackSort?: {
10826
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10827
+ order?: ("asc" | "desc");
10828
+ };
10829
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10830
+ groupName: string;
10831
+ newlinesInside?: ("ignore" | number);
10832
+ order?: ("asc" | "desc");
10833
+ elementNamePattern?: (({
10834
+ pattern: string;
10835
+ flags?: string;
10836
+ } | string)[] | ({
10837
+ pattern: string;
10838
+ flags?: string;
10839
+ } | string));
10840
+ })[];
10841
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10842
+ groups?: (string | [string, ...(string)[]] | {
10843
+ newlinesBetween: ("ignore" | number);
10844
+ } | {
10845
+ group: (string | [string, ...(string)[]]);
10846
+ fallbackSort?: {
10847
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10848
+ order?: ("asc" | "desc");
10849
+ };
10850
+ commentAbove?: string;
10851
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10852
+ newlinesInside?: ("ignore" | number);
10853
+ order?: ("asc" | "desc");
10854
+ })[];
10855
+ newlinesBetween?: ("ignore" | number);
10856
+ partitionByNewLine?: boolean;
10857
+ partitionByComment?: (boolean | (({
10858
+ pattern: string;
10859
+ flags?: string;
10557
10860
  } | string)[] | ({
10558
10861
  pattern: string;
10559
10862
  flags?: string;
10560
- } | string));
10561
- groups?: (string | string[] | {
10562
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10863
+ } | string)) | {
10864
+ block?: (boolean | (({
10865
+ pattern: string;
10866
+ flags?: string;
10867
+ } | string)[] | ({
10868
+ pattern: string;
10869
+ flags?: string;
10870
+ } | string)));
10871
+ line?: (boolean | (({
10872
+ pattern: string;
10873
+ flags?: string;
10874
+ } | string)[] | ({
10875
+ pattern: string;
10876
+ flags?: string;
10877
+ } | string)));
10878
+ });
10879
+ }[];
10880
+ // ----- perfectionist/sort-import-attributes -----
10881
+ type PerfectionistSortImportAttributes = {
10882
+ fallbackSort?: {
10883
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10884
+ order?: ("asc" | "desc");
10885
+ };
10886
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10887
+ specialCharacters?: ("remove" | "trim" | "keep");
10888
+ ignoreCase?: boolean;
10889
+ alphabet?: string;
10890
+ locales?: (string | string[]);
10891
+ order?: ("asc" | "desc");
10892
+ customGroups?: ({
10893
+ fallbackSort?: {
10894
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10895
+ order?: ("asc" | "desc");
10896
+ };
10897
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10898
+ groupName: string;
10899
+ newlinesInside?: ("ignore" | number);
10900
+ order?: ("asc" | "desc");
10901
+ anyOf: [{
10902
+ elementNamePattern?: (({
10903
+ pattern: string;
10904
+ flags?: string;
10905
+ } | string)[] | ({
10906
+ pattern: string;
10907
+ flags?: string;
10908
+ } | string));
10909
+ }, ...({
10910
+ elementNamePattern?: (({
10911
+ pattern: string;
10912
+ flags?: string;
10913
+ } | string)[] | ({
10914
+ pattern: string;
10915
+ flags?: string;
10916
+ } | string));
10917
+ })[]];
10918
+ } | {
10919
+ fallbackSort?: {
10920
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10921
+ order?: ("asc" | "desc");
10922
+ };
10923
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10924
+ groupName: string;
10925
+ newlinesInside?: ("ignore" | number);
10926
+ order?: ("asc" | "desc");
10927
+ elementNamePattern?: (({
10928
+ pattern: string;
10929
+ flags?: string;
10930
+ } | string)[] | ({
10931
+ pattern: string;
10932
+ flags?: string;
10933
+ } | string));
10934
+ })[];
10935
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
10936
+ groups?: (string | [string, ...(string)[]] | {
10937
+ newlinesBetween: ("ignore" | number);
10938
+ } | {
10939
+ group: (string | [string, ...(string)[]]);
10940
+ fallbackSort?: {
10941
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10942
+ order?: ("asc" | "desc");
10943
+ };
10563
10944
  commentAbove?: string;
10945
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10946
+ newlinesInside?: ("ignore" | number);
10947
+ order?: ("asc" | "desc");
10564
10948
  })[];
10949
+ newlinesBetween?: ("ignore" | number);
10950
+ partitionByComment?: (boolean | (({
10951
+ pattern: string;
10952
+ flags?: string;
10953
+ } | string)[] | ({
10954
+ pattern: string;
10955
+ flags?: string;
10956
+ } | string)) | {
10957
+ block?: (boolean | (({
10958
+ pattern: string;
10959
+ flags?: string;
10960
+ } | string)[] | ({
10961
+ pattern: string;
10962
+ flags?: string;
10963
+ } | string)));
10964
+ line?: (boolean | (({
10965
+ pattern: string;
10966
+ flags?: string;
10967
+ } | string)[] | ({
10968
+ pattern: string;
10969
+ flags?: string;
10970
+ } | string)));
10971
+ });
10972
+ partitionByNewLine?: boolean;
10973
+ }[];
10974
+ // ----- perfectionist/sort-imports -----
10975
+ type PerfectionistSortImports = {
10976
+ fallbackSort?: {
10977
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10978
+ order?: ("asc" | "desc");
10979
+ sortBy?: ("specifier" | "path");
10980
+ };
10981
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10982
+ specialCharacters?: ("remove" | "trim" | "keep");
10983
+ ignoreCase?: boolean;
10984
+ alphabet?: string;
10985
+ locales?: (string | string[]);
10986
+ order?: ("asc" | "desc");
10987
+ sortBy?: ("specifier" | "path");
10988
+ customGroups?: ({
10989
+ fallbackSort?: {
10990
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10991
+ order?: ("asc" | "desc");
10992
+ sortBy?: ("specifier" | "path");
10993
+ };
10994
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
10995
+ groupName: string;
10996
+ newlinesInside?: ("ignore" | number);
10997
+ order?: ("asc" | "desc");
10998
+ sortBy?: ("specifier" | "path");
10999
+ anyOf: [{
11000
+ elementNamePattern?: (({
11001
+ pattern: string;
11002
+ flags?: string;
11003
+ } | string)[] | ({
11004
+ pattern: string;
11005
+ flags?: string;
11006
+ } | string));
11007
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[];
11008
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
11009
+ }, ...({
11010
+ elementNamePattern?: (({
11011
+ pattern: string;
11012
+ flags?: string;
11013
+ } | string)[] | ({
11014
+ pattern: string;
11015
+ flags?: string;
11016
+ } | string));
11017
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[];
11018
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
11019
+ })[]];
11020
+ } | {
11021
+ fallbackSort?: {
11022
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
11023
+ order?: ("asc" | "desc");
11024
+ sortBy?: ("specifier" | "path");
11025
+ };
11026
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
11027
+ groupName: string;
11028
+ newlinesInside?: ("ignore" | number);
11029
+ order?: ("asc" | "desc");
11030
+ sortBy?: ("specifier" | "path");
11031
+ elementNamePattern?: (({
11032
+ pattern: string;
11033
+ flags?: string;
11034
+ } | string)[] | ({
11035
+ pattern: string;
11036
+ flags?: string;
11037
+ } | string));
11038
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[];
11039
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
11040
+ })[];
11041
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11042
+ groups?: (string | [string, ...(string)[]] | {
11043
+ newlinesBetween: ("ignore" | number);
11044
+ } | {
11045
+ group: (string | [string, ...(string)[]]);
11046
+ fallbackSort?: {
11047
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
11048
+ order?: ("asc" | "desc");
11049
+ sortBy?: ("specifier" | "path");
11050
+ };
11051
+ commentAbove?: string;
11052
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first");
11053
+ newlinesInside?: ("ignore" | number);
11054
+ order?: ("asc" | "desc");
11055
+ sortBy?: ("specifier" | "path");
11056
+ })[];
11057
+ newlinesBetween?: ("ignore" | number);
11058
+ tsconfig?: {
11059
+ rootDir: string;
11060
+ filename?: string;
11061
+ };
11062
+ maxLineLength?: number;
11063
+ sortSideEffects?: boolean;
11064
+ environment?: ("node" | "bun");
11065
+ useExperimentalDependencyDetection?: boolean;
11066
+ partitionByComment?: (boolean | (({
11067
+ pattern: string;
11068
+ flags?: string;
11069
+ } | string)[] | ({
11070
+ pattern: string;
11071
+ flags?: string;
11072
+ } | string)) | {
11073
+ block?: (boolean | (({
11074
+ pattern: string;
11075
+ flags?: string;
11076
+ } | string)[] | ({
11077
+ pattern: string;
11078
+ flags?: string;
11079
+ } | string)));
11080
+ line?: (boolean | (({
11081
+ pattern: string;
11082
+ flags?: string;
11083
+ } | string)[] | ({
11084
+ pattern: string;
11085
+ flags?: string;
11086
+ } | string)));
11087
+ });
11088
+ partitionByNewLine?: boolean;
11089
+ internalPattern?: (({
11090
+ pattern: string;
11091
+ flags?: string;
11092
+ } | string)[] | ({
11093
+ pattern: string;
11094
+ flags?: string;
11095
+ } | string));
10565
11096
  }[];
10566
11097
  // ----- perfectionist/sort-interfaces -----
10567
11098
  type PerfectionistSortInterfaces = {
10568
11099
  fallbackSort?: {
11100
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10569
11101
  order?: ("asc" | "desc");
10570
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10571
11102
  sortBy?: ("name" | "value");
10572
11103
  };
11104
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10573
11105
  specialCharacters?: ("remove" | "trim" | "keep");
10574
11106
  ignoreCase?: boolean;
10575
11107
  alphabet?: string;
10576
11108
  locales?: (string | string[]);
10577
11109
  order?: ("asc" | "desc");
10578
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11110
+ sortBy?: ("name" | "value");
10579
11111
  customGroups?: ({
10580
- [k: string]: (string | string[]) | undefined;
10581
- } | ({
10582
- newlinesInside?: (("always" | "never") | number);
10583
11112
  fallbackSort?: {
11113
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10584
11114
  order?: ("asc" | "desc");
10585
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10586
11115
  sortBy?: ("name" | "value");
10587
11116
  };
11117
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10588
11118
  groupName: string;
11119
+ newlinesInside?: ("ignore" | number);
10589
11120
  order?: ("asc" | "desc");
10590
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10591
- anyOf?: {
11121
+ sortBy?: ("name" | "value");
11122
+ anyOf: [{
11123
+ elementNamePattern?: (({
11124
+ pattern: string;
11125
+ flags?: string;
11126
+ } | string)[] | ({
11127
+ pattern: string;
11128
+ flags?: string;
11129
+ } | string));
10592
11130
  modifiers?: ("optional" | "required" | "multiline")[];
10593
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
11131
+ selector?: ("index-signature" | "member" | "method" | "property");
10594
11132
  elementValuePattern?: (({
10595
11133
  pattern: string;
10596
11134
  flags?: string;
@@ -10598,6 +11136,7 @@ type PerfectionistSortInterfaces = {
10598
11136
  pattern: string;
10599
11137
  flags?: string;
10600
11138
  } | string));
11139
+ }, ...({
10601
11140
  elementNamePattern?: (({
10602
11141
  pattern: string;
10603
11142
  flags?: string;
@@ -10605,37 +11144,61 @@ type PerfectionistSortInterfaces = {
10605
11144
  pattern: string;
10606
11145
  flags?: string;
10607
11146
  } | string));
10608
- sortBy?: ("name" | "value");
10609
- }[];
11147
+ modifiers?: ("optional" | "required" | "multiline")[];
11148
+ selector?: ("index-signature" | "member" | "method" | "property");
11149
+ elementValuePattern?: (({
11150
+ pattern: string;
11151
+ flags?: string;
11152
+ } | string)[] | ({
11153
+ pattern: string;
11154
+ flags?: string;
11155
+ } | string));
11156
+ })[]];
10610
11157
  } | {
10611
- newlinesInside?: (("always" | "never") | number);
10612
11158
  fallbackSort?: {
11159
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10613
11160
  order?: ("asc" | "desc");
10614
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10615
11161
  sortBy?: ("name" | "value");
10616
11162
  };
11163
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10617
11164
  groupName: string;
11165
+ newlinesInside?: ("ignore" | number);
10618
11166
  order?: ("asc" | "desc");
10619
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10620
- modifiers?: ("optional" | "required" | "multiline")[];
10621
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
10622
- elementValuePattern?: (({
11167
+ sortBy?: ("name" | "value");
11168
+ elementNamePattern?: (({
10623
11169
  pattern: string;
10624
11170
  flags?: string;
10625
11171
  } | string)[] | ({
10626
11172
  pattern: string;
10627
11173
  flags?: string;
10628
11174
  } | string));
10629
- elementNamePattern?: (({
11175
+ modifiers?: ("optional" | "required" | "multiline")[];
11176
+ selector?: ("index-signature" | "member" | "method" | "property");
11177
+ elementValuePattern?: (({
10630
11178
  pattern: string;
10631
11179
  flags?: string;
10632
11180
  } | string)[] | ({
10633
11181
  pattern: string;
10634
11182
  flags?: string;
10635
11183
  } | string));
11184
+ })[];
11185
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11186
+ groups?: (string | [string, ...(string)[]] | {
11187
+ newlinesBetween: ("ignore" | number);
11188
+ } | {
11189
+ group: (string | [string, ...(string)[]]);
11190
+ fallbackSort?: {
11191
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11192
+ order?: ("asc" | "desc");
11193
+ sortBy?: ("name" | "value");
11194
+ };
11195
+ commentAbove?: string;
11196
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11197
+ newlinesInside?: ("ignore" | number);
11198
+ order?: ("asc" | "desc");
10636
11199
  sortBy?: ("name" | "value");
10637
- })[]);
10638
- groupKind?: ("mixed" | "required-first" | "optional-first");
11200
+ })[];
11201
+ newlinesBetween?: ("ignore" | number);
10639
11202
  useConfigurationIf?: {
10640
11203
  allNamesMatchPattern?: (({
10641
11204
  pattern: string;
@@ -10644,10 +11207,22 @@ type PerfectionistSortInterfaces = {
10644
11207
  pattern: string;
10645
11208
  flags?: string;
10646
11209
  } | string));
11210
+ hasNumericKeysOnly?: boolean;
11211
+ declarationCommentMatchesPattern?: (({
11212
+ scope?: ("shallow" | "deep");
11213
+ pattern: string;
11214
+ flags?: string;
11215
+ } | string)[] | ({
11216
+ scope?: ("shallow" | "deep");
11217
+ pattern: string;
11218
+ flags?: string;
11219
+ } | string));
10647
11220
  declarationMatchesPattern?: (({
11221
+ scope?: ("shallow" | "deep");
10648
11222
  pattern: string;
10649
11223
  flags?: string;
10650
11224
  } | string)[] | ({
11225
+ scope?: ("shallow" | "deep");
10651
11226
  pattern: string;
10652
11227
  flags?: string;
10653
11228
  } | string));
@@ -10675,43 +11250,38 @@ type PerfectionistSortInterfaces = {
10675
11250
  } | string)));
10676
11251
  });
10677
11252
  partitionByNewLine?: boolean;
10678
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10679
- ignorePattern?: (({
10680
- pattern: string;
10681
- flags?: string;
10682
- } | string)[] | ({
10683
- pattern: string;
10684
- flags?: string;
10685
- } | string));
10686
- sortBy?: ("name" | "value");
10687
- groups?: (string | string[] | {
10688
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10689
- commentAbove?: string;
10690
- })[];
10691
11253
  }[];
10692
11254
  // ----- perfectionist/sort-intersection-types -----
10693
11255
  type PerfectionistSortIntersectionTypes = {
10694
11256
  fallbackSort?: {
11257
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10695
11258
  order?: ("asc" | "desc");
10696
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10697
11259
  };
11260
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10698
11261
  specialCharacters?: ("remove" | "trim" | "keep");
10699
11262
  ignoreCase?: boolean;
10700
11263
  alphabet?: string;
10701
11264
  locales?: (string | string[]);
10702
11265
  order?: ("asc" | "desc");
10703
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10704
11266
  customGroups?: ({
10705
- newlinesInside?: (("always" | "never") | number);
10706
11267
  fallbackSort?: {
11268
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10707
11269
  order?: ("asc" | "desc");
10708
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10709
11270
  };
11271
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10710
11272
  groupName: string;
11273
+ newlinesInside?: ("ignore" | number);
10711
11274
  order?: ("asc" | "desc");
10712
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10713
- anyOf?: {
11275
+ anyOf: [{
11276
+ elementNamePattern?: (({
11277
+ pattern: string;
11278
+ flags?: string;
11279
+ } | string)[] | ({
11280
+ pattern: string;
11281
+ flags?: string;
11282
+ } | string));
10714
11283
  selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
11284
+ }, ...({
10715
11285
  elementNamePattern?: (({
10716
11286
  pattern: string;
10717
11287
  flags?: string;
@@ -10719,17 +11289,17 @@ type PerfectionistSortIntersectionTypes = {
10719
11289
  pattern: string;
10720
11290
  flags?: string;
10721
11291
  } | string));
10722
- }[];
11292
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
11293
+ })[]];
10723
11294
  } | {
10724
- newlinesInside?: (("always" | "never") | number);
10725
11295
  fallbackSort?: {
11296
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10726
11297
  order?: ("asc" | "desc");
10727
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10728
11298
  };
11299
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10729
11300
  groupName: string;
11301
+ newlinesInside?: ("ignore" | number);
10730
11302
  order?: ("asc" | "desc");
10731
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10732
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
10733
11303
  elementNamePattern?: (({
10734
11304
  pattern: string;
10735
11305
  flags?: string;
@@ -10737,7 +11307,23 @@ type PerfectionistSortIntersectionTypes = {
10737
11307
  pattern: string;
10738
11308
  flags?: string;
10739
11309
  } | string));
11310
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
10740
11311
  })[];
11312
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11313
+ groups?: (string | [string, ...(string)[]] | {
11314
+ newlinesBetween: ("ignore" | number);
11315
+ } | {
11316
+ group: (string | [string, ...(string)[]]);
11317
+ fallbackSort?: {
11318
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11319
+ order?: ("asc" | "desc");
11320
+ };
11321
+ commentAbove?: string;
11322
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11323
+ newlinesInside?: ("ignore" | number);
11324
+ order?: ("asc" | "desc");
11325
+ })[];
11326
+ newlinesBetween?: ("ignore" | number);
10741
11327
  partitionByComment?: (boolean | (({
10742
11328
  pattern: string;
10743
11329
  flags?: string;
@@ -10761,38 +11347,38 @@ type PerfectionistSortIntersectionTypes = {
10761
11347
  } | string)));
10762
11348
  });
10763
11349
  partitionByNewLine?: boolean;
10764
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10765
- groups?: (string | string[] | {
10766
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10767
- commentAbove?: string;
10768
- })[];
10769
11350
  }[];
10770
11351
  // ----- perfectionist/sort-jsx-props -----
10771
11352
  type PerfectionistSortJsxProps = {
10772
11353
  fallbackSort?: {
11354
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10773
11355
  order?: ("asc" | "desc");
10774
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10775
11356
  };
11357
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10776
11358
  specialCharacters?: ("remove" | "trim" | "keep");
10777
11359
  ignoreCase?: boolean;
10778
11360
  alphabet?: string;
10779
11361
  locales?: (string | string[]);
10780
11362
  order?: ("asc" | "desc");
10781
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10782
11363
  customGroups?: ({
10783
- [k: string]: (string | string[]) | undefined;
10784
- } | ({
10785
- newlinesInside?: (("always" | "never") | number);
10786
11364
  fallbackSort?: {
11365
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10787
11366
  order?: ("asc" | "desc");
10788
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10789
11367
  };
11368
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10790
11369
  groupName: string;
11370
+ newlinesInside?: ("ignore" | number);
10791
11371
  order?: ("asc" | "desc");
10792
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10793
- anyOf?: {
11372
+ anyOf: [{
11373
+ elementNamePattern?: (({
11374
+ pattern: string;
11375
+ flags?: string;
11376
+ } | string)[] | ({
11377
+ pattern: string;
11378
+ flags?: string;
11379
+ } | string));
10794
11380
  modifiers?: ("shorthand" | "multiline")[];
10795
- selector?: ("multiline" | "prop" | "shorthand");
11381
+ selector?: "prop";
10796
11382
  elementValuePattern?: (({
10797
11383
  pattern: string;
10798
11384
  flags?: string;
@@ -10800,6 +11386,7 @@ type PerfectionistSortJsxProps = {
10800
11386
  pattern: string;
10801
11387
  flags?: string;
10802
11388
  } | string));
11389
+ }, ...({
10803
11390
  elementNamePattern?: (({
10804
11391
  pattern: string;
10805
11392
  flags?: string;
@@ -10807,33 +11394,57 @@ type PerfectionistSortJsxProps = {
10807
11394
  pattern: string;
10808
11395
  flags?: string;
10809
11396
  } | string));
10810
- }[];
11397
+ modifiers?: ("shorthand" | "multiline")[];
11398
+ selector?: "prop";
11399
+ elementValuePattern?: (({
11400
+ pattern: string;
11401
+ flags?: string;
11402
+ } | string)[] | ({
11403
+ pattern: string;
11404
+ flags?: string;
11405
+ } | string));
11406
+ })[]];
10811
11407
  } | {
10812
- newlinesInside?: (("always" | "never") | number);
10813
11408
  fallbackSort?: {
11409
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10814
11410
  order?: ("asc" | "desc");
10815
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10816
11411
  };
11412
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10817
11413
  groupName: string;
11414
+ newlinesInside?: ("ignore" | number);
10818
11415
  order?: ("asc" | "desc");
10819
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10820
- modifiers?: ("shorthand" | "multiline")[];
10821
- selector?: ("multiline" | "prop" | "shorthand");
10822
- elementValuePattern?: (({
11416
+ elementNamePattern?: (({
10823
11417
  pattern: string;
10824
11418
  flags?: string;
10825
11419
  } | string)[] | ({
10826
11420
  pattern: string;
10827
11421
  flags?: string;
10828
11422
  } | string));
10829
- elementNamePattern?: (({
11423
+ modifiers?: ("shorthand" | "multiline")[];
11424
+ selector?: "prop";
11425
+ elementValuePattern?: (({
10830
11426
  pattern: string;
10831
11427
  flags?: string;
10832
11428
  } | string)[] | ({
10833
11429
  pattern: string;
10834
11430
  flags?: string;
10835
11431
  } | string));
10836
- })[]);
11432
+ })[];
11433
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11434
+ groups?: (string | [string, ...(string)[]] | {
11435
+ newlinesBetween: ("ignore" | number);
11436
+ } | {
11437
+ group: (string | [string, ...(string)[]]);
11438
+ fallbackSort?: {
11439
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11440
+ order?: ("asc" | "desc");
11441
+ };
11442
+ commentAbove?: string;
11443
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11444
+ newlinesInside?: ("ignore" | number);
11445
+ order?: ("asc" | "desc");
11446
+ })[];
11447
+ newlinesBetween?: ("ignore" | number);
10837
11448
  useConfigurationIf?: {
10838
11449
  allNamesMatchPattern?: (({
10839
11450
  pattern: string;
@@ -10851,41 +11462,29 @@ type PerfectionistSortJsxProps = {
10851
11462
  } | string));
10852
11463
  };
10853
11464
  partitionByNewLine?: boolean;
10854
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10855
- ignorePattern?: (({
10856
- pattern: string;
10857
- flags?: string;
10858
- } | string)[] | ({
10859
- pattern: string;
10860
- flags?: string;
10861
- } | string));
10862
- groups?: (string | string[] | {
10863
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10864
- commentAbove?: string;
10865
- })[];
10866
11465
  }[];
10867
11466
  // ----- perfectionist/sort-maps -----
10868
11467
  type PerfectionistSortMaps = {
10869
11468
  fallbackSort?: {
11469
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10870
11470
  order?: ("asc" | "desc");
10871
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10872
11471
  };
11472
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10873
11473
  specialCharacters?: ("remove" | "trim" | "keep");
10874
11474
  ignoreCase?: boolean;
10875
11475
  alphabet?: string;
10876
11476
  locales?: (string | string[]);
10877
11477
  order?: ("asc" | "desc");
10878
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10879
11478
  customGroups?: ({
10880
- newlinesInside?: (("always" | "never") | number);
10881
11479
  fallbackSort?: {
11480
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10882
11481
  order?: ("asc" | "desc");
10883
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10884
11482
  };
11483
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10885
11484
  groupName: string;
11485
+ newlinesInside?: ("ignore" | number);
10886
11486
  order?: ("asc" | "desc");
10887
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10888
- anyOf?: {
11487
+ anyOf: [{
10889
11488
  elementNamePattern?: (({
10890
11489
  pattern: string;
10891
11490
  flags?: string;
@@ -10893,16 +11492,24 @@ type PerfectionistSortMaps = {
10893
11492
  pattern: string;
10894
11493
  flags?: string;
10895
11494
  } | string));
10896
- }[];
11495
+ }, ...({
11496
+ elementNamePattern?: (({
11497
+ pattern: string;
11498
+ flags?: string;
11499
+ } | string)[] | ({
11500
+ pattern: string;
11501
+ flags?: string;
11502
+ } | string));
11503
+ })[]];
10897
11504
  } | {
10898
- newlinesInside?: (("always" | "never") | number);
10899
11505
  fallbackSort?: {
11506
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10900
11507
  order?: ("asc" | "desc");
10901
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10902
11508
  };
11509
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
10903
11510
  groupName: string;
11511
+ newlinesInside?: ("ignore" | number);
10904
11512
  order?: ("asc" | "desc");
10905
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10906
11513
  elementNamePattern?: (({
10907
11514
  pattern: string;
10908
11515
  flags?: string;
@@ -10911,6 +11518,21 @@ type PerfectionistSortMaps = {
10911
11518
  flags?: string;
10912
11519
  } | string));
10913
11520
  })[];
11521
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11522
+ groups?: (string | [string, ...(string)[]] | {
11523
+ newlinesBetween: ("ignore" | number);
11524
+ } | {
11525
+ group: (string | [string, ...(string)[]]);
11526
+ fallbackSort?: {
11527
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11528
+ order?: ("asc" | "desc");
11529
+ };
11530
+ commentAbove?: string;
11531
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11532
+ newlinesInside?: ("ignore" | number);
11533
+ order?: ("asc" | "desc");
11534
+ })[];
11535
+ newlinesBetween?: ("ignore" | number);
10914
11536
  useConfigurationIf?: {
10915
11537
  allNamesMatchPattern?: (({
10916
11538
  pattern: string;
@@ -10943,34 +11565,36 @@ type PerfectionistSortMaps = {
10943
11565
  } | string)));
10944
11566
  });
10945
11567
  partitionByNewLine?: boolean;
10946
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10947
- groups?: (string | string[] | {
10948
- newlinesBetween?: (("ignore" | "always" | "never") | number);
10949
- commentAbove?: string;
10950
- })[];
10951
11568
  }[];
10952
11569
  // ----- perfectionist/sort-modules -----
10953
11570
  type PerfectionistSortModules = [] | [{
10954
11571
  fallbackSort?: {
11572
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10955
11573
  order?: ("asc" | "desc");
10956
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10957
11574
  };
11575
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10958
11576
  specialCharacters?: ("remove" | "trim" | "keep");
10959
11577
  ignoreCase?: boolean;
10960
11578
  alphabet?: string;
10961
11579
  locales?: (string | string[]);
10962
11580
  order?: ("asc" | "desc");
10963
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10964
11581
  customGroups?: ({
10965
- newlinesInside?: (("always" | "never") | number);
10966
11582
  fallbackSort?: {
11583
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10967
11584
  order?: ("asc" | "desc");
10968
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10969
11585
  };
11586
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10970
11587
  groupName: string;
11588
+ newlinesInside?: ("ignore" | number);
10971
11589
  order?: ("asc" | "desc");
10972
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10973
- anyOf?: {
11590
+ anyOf: [{
11591
+ elementNamePattern?: (({
11592
+ pattern: string;
11593
+ flags?: string;
11594
+ } | string)[] | ({
11595
+ pattern: string;
11596
+ flags?: string;
11597
+ } | string));
10974
11598
  modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
10975
11599
  selector?: ("enum" | "function" | "interface" | "type" | "class");
10976
11600
  decoratorNamePattern?: (({
@@ -10980,6 +11604,7 @@ type PerfectionistSortModules = [] | [{
10980
11604
  pattern: string;
10981
11605
  flags?: string;
10982
11606
  } | string));
11607
+ }, ...({
10983
11608
  elementNamePattern?: (({
10984
11609
  pattern: string;
10985
11610
  flags?: string;
@@ -10987,26 +11612,35 @@ type PerfectionistSortModules = [] | [{
10987
11612
  pattern: string;
10988
11613
  flags?: string;
10989
11614
  } | string));
10990
- }[];
11615
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
11616
+ selector?: ("enum" | "function" | "interface" | "type" | "class");
11617
+ decoratorNamePattern?: (({
11618
+ pattern: string;
11619
+ flags?: string;
11620
+ } | string)[] | ({
11621
+ pattern: string;
11622
+ flags?: string;
11623
+ } | string));
11624
+ })[]];
10991
11625
  } | {
10992
- newlinesInside?: (("always" | "never") | number);
10993
11626
  fallbackSort?: {
11627
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10994
11628
  order?: ("asc" | "desc");
10995
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
10996
11629
  };
11630
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
10997
11631
  groupName: string;
11632
+ newlinesInside?: ("ignore" | number);
10998
11633
  order?: ("asc" | "desc");
10999
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11000
- modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
11001
- selector?: ("enum" | "function" | "interface" | "type" | "class");
11002
- decoratorNamePattern?: (({
11634
+ elementNamePattern?: (({
11003
11635
  pattern: string;
11004
11636
  flags?: string;
11005
11637
  } | string)[] | ({
11006
11638
  pattern: string;
11007
11639
  flags?: string;
11008
11640
  } | string));
11009
- elementNamePattern?: (({
11641
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
11642
+ selector?: ("enum" | "function" | "interface" | "type" | "class");
11643
+ decoratorNamePattern?: (({
11010
11644
  pattern: string;
11011
11645
  flags?: string;
11012
11646
  } | string)[] | ({
@@ -11014,6 +11648,22 @@ type PerfectionistSortModules = [] | [{
11014
11648
  flags?: string;
11015
11649
  } | string));
11016
11650
  })[];
11651
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11652
+ groups?: (string | [string, ...(string)[]] | {
11653
+ newlinesBetween: ("ignore" | number);
11654
+ } | {
11655
+ group: (string | [string, ...(string)[]]);
11656
+ fallbackSort?: {
11657
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
11658
+ order?: ("asc" | "desc");
11659
+ };
11660
+ commentAbove?: string;
11661
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage");
11662
+ newlinesInside?: ("ignore" | number);
11663
+ order?: ("asc" | "desc");
11664
+ })[];
11665
+ newlinesBetween?: ("ignore" | number);
11666
+ useExperimentalDependencyDetection?: boolean;
11017
11667
  partitionByComment?: (boolean | (({
11018
11668
  pattern: string;
11019
11669
  flags?: string;
@@ -11037,38 +11687,39 @@ type PerfectionistSortModules = [] | [{
11037
11687
  } | string)));
11038
11688
  });
11039
11689
  partitionByNewLine?: boolean;
11040
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11041
- groups?: (string | string[] | {
11042
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11043
- commentAbove?: string;
11044
- })[];
11045
11690
  }];
11046
11691
  // ----- perfectionist/sort-named-exports -----
11047
11692
  type PerfectionistSortNamedExports = {
11048
11693
  fallbackSort?: {
11694
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11049
11695
  order?: ("asc" | "desc");
11050
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11051
11696
  };
11697
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11052
11698
  specialCharacters?: ("remove" | "trim" | "keep");
11053
11699
  ignoreCase?: boolean;
11054
11700
  alphabet?: string;
11055
11701
  locales?: (string | string[]);
11056
11702
  order?: ("asc" | "desc");
11057
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11058
- groupKind?: ("mixed" | "values-first" | "types-first");
11059
- ignoreAlias?: boolean;
11060
11703
  customGroups?: ({
11061
- newlinesInside?: (("always" | "never") | number);
11062
11704
  fallbackSort?: {
11705
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11063
11706
  order?: ("asc" | "desc");
11064
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11065
11707
  };
11708
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11066
11709
  groupName: string;
11710
+ newlinesInside?: ("ignore" | number);
11067
11711
  order?: ("asc" | "desc");
11068
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11069
- anyOf?: {
11712
+ anyOf: [{
11713
+ elementNamePattern?: (({
11714
+ pattern: string;
11715
+ flags?: string;
11716
+ } | string)[] | ({
11717
+ pattern: string;
11718
+ flags?: string;
11719
+ } | string));
11070
11720
  modifiers?: ("value" | "type")[];
11071
11721
  selector?: "export";
11722
+ }, ...({
11072
11723
  elementNamePattern?: (({
11073
11724
  pattern: string;
11074
11725
  flags?: string;
@@ -11076,18 +11727,18 @@ type PerfectionistSortNamedExports = {
11076
11727
  pattern: string;
11077
11728
  flags?: string;
11078
11729
  } | string));
11079
- }[];
11730
+ modifiers?: ("value" | "type")[];
11731
+ selector?: "export";
11732
+ })[]];
11080
11733
  } | {
11081
- newlinesInside?: (("always" | "never") | number);
11082
11734
  fallbackSort?: {
11735
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11083
11736
  order?: ("asc" | "desc");
11084
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11085
11737
  };
11738
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11086
11739
  groupName: string;
11740
+ newlinesInside?: ("ignore" | number);
11087
11741
  order?: ("asc" | "desc");
11088
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11089
- modifiers?: ("value" | "type")[];
11090
- selector?: "export";
11091
11742
  elementNamePattern?: (({
11092
11743
  pattern: string;
11093
11744
  flags?: string;
@@ -11095,7 +11746,25 @@ type PerfectionistSortNamedExports = {
11095
11746
  pattern: string;
11096
11747
  flags?: string;
11097
11748
  } | string));
11749
+ modifiers?: ("value" | "type")[];
11750
+ selector?: "export";
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");
11098
11765
  })[];
11766
+ newlinesBetween?: ("ignore" | number);
11767
+ ignoreAlias?: boolean;
11099
11768
  partitionByComment?: (boolean | (({
11100
11769
  pattern: string;
11101
11770
  flags?: string;
@@ -11119,38 +11788,39 @@ type PerfectionistSortNamedExports = {
11119
11788
  } | string)));
11120
11789
  });
11121
11790
  partitionByNewLine?: boolean;
11122
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11123
- groups?: (string | string[] | {
11124
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11125
- commentAbove?: string;
11126
- })[];
11127
11791
  }[];
11128
11792
  // ----- perfectionist/sort-named-imports -----
11129
11793
  type PerfectionistSortNamedImports = {
11130
11794
  fallbackSort?: {
11795
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11131
11796
  order?: ("asc" | "desc");
11132
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11133
11797
  };
11798
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11134
11799
  specialCharacters?: ("remove" | "trim" | "keep");
11135
11800
  ignoreCase?: boolean;
11136
11801
  alphabet?: string;
11137
11802
  locales?: (string | string[]);
11138
11803
  order?: ("asc" | "desc");
11139
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11140
- groupKind?: ("mixed" | "values-first" | "types-first");
11141
- ignoreAlias?: boolean;
11142
11804
  customGroups?: ({
11143
- newlinesInside?: (("always" | "never") | number);
11144
11805
  fallbackSort?: {
11806
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11145
11807
  order?: ("asc" | "desc");
11146
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11147
11808
  };
11809
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11148
11810
  groupName: string;
11811
+ newlinesInside?: ("ignore" | number);
11149
11812
  order?: ("asc" | "desc");
11150
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11151
- anyOf?: {
11813
+ anyOf: [{
11814
+ elementNamePattern?: (({
11815
+ pattern: string;
11816
+ flags?: string;
11817
+ } | string)[] | ({
11818
+ pattern: string;
11819
+ flags?: string;
11820
+ } | string));
11152
11821
  modifiers?: ("value" | "type")[];
11153
11822
  selector?: "import";
11823
+ }, ...({
11154
11824
  elementNamePattern?: (({
11155
11825
  pattern: string;
11156
11826
  flags?: string;
@@ -11158,18 +11828,18 @@ type PerfectionistSortNamedImports = {
11158
11828
  pattern: string;
11159
11829
  flags?: string;
11160
11830
  } | string));
11161
- }[];
11831
+ modifiers?: ("value" | "type")[];
11832
+ selector?: "import";
11833
+ })[]];
11162
11834
  } | {
11163
- newlinesInside?: (("always" | "never") | number);
11164
11835
  fallbackSort?: {
11836
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11165
11837
  order?: ("asc" | "desc");
11166
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11167
11838
  };
11839
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11168
11840
  groupName: string;
11841
+ newlinesInside?: ("ignore" | number);
11169
11842
  order?: ("asc" | "desc");
11170
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11171
- modifiers?: ("value" | "type")[];
11172
- selector?: "import";
11173
11843
  elementNamePattern?: (({
11174
11844
  pattern: string;
11175
11845
  flags?: string;
@@ -11177,7 +11847,25 @@ type PerfectionistSortNamedImports = {
11177
11847
  pattern: string;
11178
11848
  flags?: string;
11179
11849
  } | string));
11850
+ modifiers?: ("value" | "type")[];
11851
+ selector?: "import";
11852
+ })[];
11853
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11854
+ groups?: (string | [string, ...(string)[]] | {
11855
+ newlinesBetween: ("ignore" | number);
11856
+ } | {
11857
+ group: (string | [string, ...(string)[]]);
11858
+ fallbackSort?: {
11859
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11860
+ order?: ("asc" | "desc");
11861
+ };
11862
+ commentAbove?: string;
11863
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11864
+ newlinesInside?: ("ignore" | number);
11865
+ order?: ("asc" | "desc");
11180
11866
  })[];
11867
+ newlinesBetween?: ("ignore" | number);
11868
+ ignoreAlias?: boolean;
11181
11869
  partitionByComment?: (boolean | (({
11182
11870
  pattern: string;
11183
11871
  flags?: string;
@@ -11201,40 +11889,42 @@ type PerfectionistSortNamedImports = {
11201
11889
  } | string)));
11202
11890
  });
11203
11891
  partitionByNewLine?: boolean;
11204
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11205
- groups?: (string | string[] | {
11206
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11207
- commentAbove?: string;
11208
- })[];
11209
11892
  }[];
11210
11893
  // ----- perfectionist/sort-object-types -----
11211
11894
  type PerfectionistSortObjectTypes = {
11212
11895
  fallbackSort?: {
11896
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11213
11897
  order?: ("asc" | "desc");
11214
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11215
11898
  sortBy?: ("name" | "value");
11216
11899
  };
11900
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11217
11901
  specialCharacters?: ("remove" | "trim" | "keep");
11218
11902
  ignoreCase?: boolean;
11219
11903
  alphabet?: string;
11220
11904
  locales?: (string | string[]);
11221
11905
  order?: ("asc" | "desc");
11222
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11906
+ sortBy?: ("name" | "value");
11223
11907
  customGroups?: ({
11224
- [k: string]: (string | string[]) | undefined;
11225
- } | ({
11226
- newlinesInside?: (("always" | "never") | number);
11227
11908
  fallbackSort?: {
11909
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11228
11910
  order?: ("asc" | "desc");
11229
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11230
11911
  sortBy?: ("name" | "value");
11231
11912
  };
11913
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11232
11914
  groupName: string;
11915
+ newlinesInside?: ("ignore" | number);
11233
11916
  order?: ("asc" | "desc");
11234
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11235
- anyOf?: {
11917
+ sortBy?: ("name" | "value");
11918
+ anyOf: [{
11919
+ elementNamePattern?: (({
11920
+ pattern: string;
11921
+ flags?: string;
11922
+ } | string)[] | ({
11923
+ pattern: string;
11924
+ flags?: string;
11925
+ } | string));
11236
11926
  modifiers?: ("optional" | "required" | "multiline")[];
11237
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
11927
+ selector?: ("index-signature" | "member" | "method" | "property");
11238
11928
  elementValuePattern?: (({
11239
11929
  pattern: string;
11240
11930
  flags?: string;
@@ -11242,6 +11932,7 @@ type PerfectionistSortObjectTypes = {
11242
11932
  pattern: string;
11243
11933
  flags?: string;
11244
11934
  } | string));
11935
+ }, ...({
11245
11936
  elementNamePattern?: (({
11246
11937
  pattern: string;
11247
11938
  flags?: string;
@@ -11249,37 +11940,61 @@ type PerfectionistSortObjectTypes = {
11249
11940
  pattern: string;
11250
11941
  flags?: string;
11251
11942
  } | string));
11252
- sortBy?: ("name" | "value");
11253
- }[];
11943
+ modifiers?: ("optional" | "required" | "multiline")[];
11944
+ selector?: ("index-signature" | "member" | "method" | "property");
11945
+ elementValuePattern?: (({
11946
+ pattern: string;
11947
+ flags?: string;
11948
+ } | string)[] | ({
11949
+ pattern: string;
11950
+ flags?: string;
11951
+ } | string));
11952
+ })[]];
11254
11953
  } | {
11255
- newlinesInside?: (("always" | "never") | number);
11256
11954
  fallbackSort?: {
11955
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11257
11956
  order?: ("asc" | "desc");
11258
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11259
11957
  sortBy?: ("name" | "value");
11260
11958
  };
11959
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11261
11960
  groupName: string;
11961
+ newlinesInside?: ("ignore" | number);
11262
11962
  order?: ("asc" | "desc");
11263
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11264
- modifiers?: ("optional" | "required" | "multiline")[];
11265
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
11266
- elementValuePattern?: (({
11963
+ sortBy?: ("name" | "value");
11964
+ elementNamePattern?: (({
11267
11965
  pattern: string;
11268
11966
  flags?: string;
11269
11967
  } | string)[] | ({
11270
11968
  pattern: string;
11271
11969
  flags?: string;
11272
11970
  } | string));
11273
- elementNamePattern?: (({
11971
+ modifiers?: ("optional" | "required" | "multiline")[];
11972
+ selector?: ("index-signature" | "member" | "method" | "property");
11973
+ elementValuePattern?: (({
11274
11974
  pattern: string;
11275
11975
  flags?: string;
11276
11976
  } | string)[] | ({
11277
11977
  pattern: string;
11278
11978
  flags?: string;
11279
11979
  } | string));
11980
+ })[];
11981
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
11982
+ groups?: (string | [string, ...(string)[]] | {
11983
+ newlinesBetween: ("ignore" | number);
11984
+ } | {
11985
+ group: (string | [string, ...(string)[]]);
11986
+ fallbackSort?: {
11987
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11988
+ order?: ("asc" | "desc");
11989
+ sortBy?: ("name" | "value");
11990
+ };
11991
+ commentAbove?: string;
11992
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11993
+ newlinesInside?: ("ignore" | number);
11994
+ order?: ("asc" | "desc");
11280
11995
  sortBy?: ("name" | "value");
11281
- })[]);
11282
- groupKind?: ("mixed" | "required-first" | "optional-first");
11996
+ })[];
11997
+ newlinesBetween?: ("ignore" | number);
11283
11998
  useConfigurationIf?: {
11284
11999
  allNamesMatchPattern?: (({
11285
12000
  pattern: string;
@@ -11288,10 +12003,22 @@ type PerfectionistSortObjectTypes = {
11288
12003
  pattern: string;
11289
12004
  flags?: string;
11290
12005
  } | string));
12006
+ hasNumericKeysOnly?: boolean;
12007
+ declarationCommentMatchesPattern?: (({
12008
+ scope?: ("shallow" | "deep");
12009
+ pattern: string;
12010
+ flags?: string;
12011
+ } | string)[] | ({
12012
+ scope?: ("shallow" | "deep");
12013
+ pattern: string;
12014
+ flags?: string;
12015
+ } | string));
11291
12016
  declarationMatchesPattern?: (({
12017
+ scope?: ("shallow" | "deep");
11292
12018
  pattern: string;
11293
12019
  flags?: string;
11294
12020
  } | string)[] | ({
12021
+ scope?: ("shallow" | "deep");
11295
12022
  pattern: string;
11296
12023
  flags?: string;
11297
12024
  } | string));
@@ -11319,49 +12046,42 @@ type PerfectionistSortObjectTypes = {
11319
12046
  } | string)));
11320
12047
  });
11321
12048
  partitionByNewLine?: boolean;
11322
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11323
- ignorePattern?: (({
11324
- pattern: string;
11325
- flags?: string;
11326
- } | string)[] | ({
11327
- pattern: string;
11328
- flags?: string;
11329
- } | string));
11330
- sortBy?: ("name" | "value");
11331
- groups?: (string | string[] | {
11332
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11333
- commentAbove?: string;
11334
- })[];
11335
12049
  }[];
11336
12050
  // ----- perfectionist/sort-objects -----
11337
12051
  type PerfectionistSortObjects = {
11338
12052
  fallbackSort?: {
12053
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11339
12054
  order?: ("asc" | "desc");
11340
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12055
+ sortBy?: ("name" | "value");
11341
12056
  };
12057
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11342
12058
  specialCharacters?: ("remove" | "trim" | "keep");
11343
12059
  ignoreCase?: boolean;
11344
12060
  alphabet?: string;
11345
12061
  locales?: (string | string[]);
11346
12062
  order?: ("asc" | "desc");
11347
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11348
- destructuredObjects?: (boolean | {
11349
- groups?: boolean;
11350
- });
12063
+ sortBy?: ("name" | "value");
11351
12064
  customGroups?: ({
11352
- [k: string]: (string | string[]) | undefined;
11353
- } | ({
11354
- newlinesInside?: (("always" | "never") | number);
11355
12065
  fallbackSort?: {
12066
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11356
12067
  order?: ("asc" | "desc");
11357
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12068
+ sortBy?: ("name" | "value");
11358
12069
  };
12070
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11359
12071
  groupName: string;
12072
+ newlinesInside?: ("ignore" | number);
11360
12073
  order?: ("asc" | "desc");
11361
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11362
- anyOf?: {
11363
- modifiers?: ("optional" | "required" | "multiline")[];
11364
- selector?: ("member" | "method" | "multiline" | "property");
12074
+ sortBy?: ("name" | "value");
12075
+ anyOf: [{
12076
+ elementNamePattern?: (({
12077
+ pattern: string;
12078
+ flags?: string;
12079
+ } | string)[] | ({
12080
+ pattern: string;
12081
+ flags?: string;
12082
+ } | string));
12083
+ modifiers?: ("multiline")[];
12084
+ selector?: ("member" | "method" | "property");
11365
12085
  elementValuePattern?: (({
11366
12086
  pattern: string;
11367
12087
  flags?: string;
@@ -11369,6 +12089,7 @@ type PerfectionistSortObjects = {
11369
12089
  pattern: string;
11370
12090
  flags?: string;
11371
12091
  } | string));
12092
+ }, ...({
11372
12093
  elementNamePattern?: (({
11373
12094
  pattern: string;
11374
12095
  flags?: string;
@@ -11376,33 +12097,61 @@ type PerfectionistSortObjects = {
11376
12097
  pattern: string;
11377
12098
  flags?: string;
11378
12099
  } | string));
11379
- }[];
12100
+ modifiers?: ("multiline")[];
12101
+ selector?: ("member" | "method" | "property");
12102
+ elementValuePattern?: (({
12103
+ pattern: string;
12104
+ flags?: string;
12105
+ } | string)[] | ({
12106
+ pattern: string;
12107
+ flags?: string;
12108
+ } | string));
12109
+ })[]];
11380
12110
  } | {
11381
- newlinesInside?: (("always" | "never") | number);
11382
12111
  fallbackSort?: {
12112
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11383
12113
  order?: ("asc" | "desc");
11384
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12114
+ sortBy?: ("name" | "value");
11385
12115
  };
12116
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11386
12117
  groupName: string;
12118
+ newlinesInside?: ("ignore" | number);
11387
12119
  order?: ("asc" | "desc");
11388
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11389
- modifiers?: ("optional" | "required" | "multiline")[];
11390
- selector?: ("member" | "method" | "multiline" | "property");
11391
- elementValuePattern?: (({
12120
+ sortBy?: ("name" | "value");
12121
+ elementNamePattern?: (({
11392
12122
  pattern: string;
11393
12123
  flags?: string;
11394
12124
  } | string)[] | ({
11395
12125
  pattern: string;
11396
12126
  flags?: string;
11397
12127
  } | string));
11398
- elementNamePattern?: (({
12128
+ modifiers?: ("multiline")[];
12129
+ selector?: ("member" | "method" | "property");
12130
+ elementValuePattern?: (({
11399
12131
  pattern: string;
11400
12132
  flags?: string;
11401
12133
  } | string)[] | ({
11402
12134
  pattern: string;
11403
12135
  flags?: string;
11404
12136
  } | string));
11405
- })[]);
12137
+ })[];
12138
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
12139
+ groups?: (string | [string, ...(string)[]] | {
12140
+ newlinesBetween: ("ignore" | number);
12141
+ } | {
12142
+ group: (string | [string, ...(string)[]]);
12143
+ fallbackSort?: {
12144
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
12145
+ order?: ("asc" | "desc");
12146
+ sortBy?: ("name" | "value");
12147
+ };
12148
+ commentAbove?: string;
12149
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
12150
+ newlinesInside?: ("ignore" | number);
12151
+ order?: ("asc" | "desc");
12152
+ sortBy?: ("name" | "value");
12153
+ })[];
12154
+ newlinesBetween?: ("ignore" | number);
11406
12155
  useConfigurationIf?: {
11407
12156
  allNamesMatchPattern?: (({
11408
12157
  pattern: string;
@@ -11411,17 +12160,38 @@ type PerfectionistSortObjects = {
11411
12160
  pattern: string;
11412
12161
  flags?: string;
11413
12162
  } | string));
12163
+ objectType?: ("destructured" | "non-destructured");
12164
+ hasNumericKeysOnly?: boolean;
12165
+ declarationCommentMatchesPattern?: (({
12166
+ scope?: ("shallow" | "deep");
12167
+ pattern: string;
12168
+ flags?: string;
12169
+ } | string)[] | ({
12170
+ scope?: ("shallow" | "deep");
12171
+ pattern: string;
12172
+ flags?: string;
12173
+ } | string));
11414
12174
  callingFunctionNamePattern?: (({
12175
+ scope?: ("shallow" | "deep");
12176
+ pattern: string;
12177
+ flags?: string;
12178
+ } | string)[] | ({
12179
+ scope?: ("shallow" | "deep");
12180
+ pattern: string;
12181
+ flags?: string;
12182
+ } | string));
12183
+ declarationMatchesPattern?: (({
12184
+ scope?: ("shallow" | "deep");
11415
12185
  pattern: string;
11416
12186
  flags?: string;
11417
12187
  } | string)[] | ({
12188
+ scope?: ("shallow" | "deep");
11418
12189
  pattern: string;
11419
12190
  flags?: string;
11420
12191
  } | string));
11421
12192
  };
11422
- destructureOnly?: boolean;
11423
- objectDeclarations?: boolean;
11424
12193
  styledComponents?: boolean;
12194
+ useExperimentalDependencyDetection?: boolean;
11425
12195
  partitionByComment?: (boolean | (({
11426
12196
  pattern: string;
11427
12197
  flags?: string;
@@ -11445,43 +12215,38 @@ type PerfectionistSortObjects = {
11445
12215
  } | string)));
11446
12216
  });
11447
12217
  partitionByNewLine?: boolean;
11448
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11449
- ignorePattern?: (({
11450
- pattern: string;
11451
- flags?: string;
11452
- } | string)[] | ({
11453
- pattern: string;
11454
- flags?: string;
11455
- } | string));
11456
- groups?: (string | string[] | {
11457
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11458
- commentAbove?: string;
11459
- })[];
11460
12218
  }[];
11461
12219
  // ----- perfectionist/sort-sets -----
11462
12220
  type PerfectionistSortSets = {
11463
12221
  fallbackSort?: {
12222
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11464
12223
  order?: ("asc" | "desc");
11465
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11466
12224
  };
12225
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11467
12226
  specialCharacters?: ("remove" | "trim" | "keep");
11468
12227
  ignoreCase?: boolean;
11469
12228
  alphabet?: string;
11470
12229
  locales?: (string | string[]);
11471
12230
  order?: ("asc" | "desc");
11472
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11473
- groupKind?: ("mixed" | "literals-first" | "spreads-first");
11474
12231
  customGroups?: ({
11475
- newlinesInside?: (("always" | "never") | number);
11476
12232
  fallbackSort?: {
12233
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11477
12234
  order?: ("asc" | "desc");
11478
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11479
12235
  };
12236
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11480
12237
  groupName: string;
12238
+ newlinesInside?: ("ignore" | number);
11481
12239
  order?: ("asc" | "desc");
11482
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11483
- anyOf?: {
11484
- selector?: ("literal" | "spread");
12240
+ anyOf: [{
12241
+ elementNamePattern?: (({
12242
+ pattern: string;
12243
+ flags?: string;
12244
+ } | string)[] | ({
12245
+ pattern: string;
12246
+ flags?: string;
12247
+ } | string));
12248
+ selector?: "literal";
12249
+ }, ...({
11485
12250
  elementNamePattern?: (({
11486
12251
  pattern: string;
11487
12252
  flags?: string;
@@ -11489,17 +12254,17 @@ type PerfectionistSortSets = {
11489
12254
  pattern: string;
11490
12255
  flags?: string;
11491
12256
  } | string));
11492
- }[];
12257
+ selector?: "literal";
12258
+ })[]];
11493
12259
  } | {
11494
- newlinesInside?: (("always" | "never") | number);
11495
12260
  fallbackSort?: {
12261
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11496
12262
  order?: ("asc" | "desc");
11497
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11498
12263
  };
12264
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11499
12265
  groupName: string;
12266
+ newlinesInside?: ("ignore" | number);
11500
12267
  order?: ("asc" | "desc");
11501
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11502
- selector?: ("literal" | "spread");
11503
12268
  elementNamePattern?: (({
11504
12269
  pattern: string;
11505
12270
  flags?: string;
@@ -11507,7 +12272,23 @@ type PerfectionistSortSets = {
11507
12272
  pattern: string;
11508
12273
  flags?: string;
11509
12274
  } | string));
12275
+ selector?: "literal";
11510
12276
  })[];
12277
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
12278
+ groups?: (string | [string, ...(string)[]] | {
12279
+ newlinesBetween: ("ignore" | number);
12280
+ } | {
12281
+ group: (string | [string, ...(string)[]]);
12282
+ fallbackSort?: {
12283
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
12284
+ order?: ("asc" | "desc");
12285
+ };
12286
+ commentAbove?: string;
12287
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
12288
+ newlinesInside?: ("ignore" | number);
12289
+ order?: ("asc" | "desc");
12290
+ })[];
12291
+ newlinesBetween?: ("ignore" | number);
11511
12292
  useConfigurationIf?: {
11512
12293
  allNamesMatchPattern?: (({
11513
12294
  pattern: string;
@@ -11540,48 +12321,51 @@ type PerfectionistSortSets = {
11540
12321
  } | string)));
11541
12322
  });
11542
12323
  partitionByNewLine?: boolean;
11543
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11544
- groups?: (string | string[] | {
11545
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11546
- commentAbove?: string;
11547
- })[];
11548
12324
  }[];
11549
12325
  // ----- perfectionist/sort-switch-case -----
11550
12326
  type PerfectionistSortSwitchCase = [] | [{
11551
12327
  fallbackSort?: {
12328
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11552
12329
  order?: ("asc" | "desc");
11553
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11554
12330
  };
12331
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11555
12332
  specialCharacters?: ("remove" | "trim" | "keep");
11556
12333
  ignoreCase?: boolean;
11557
12334
  alphabet?: string;
11558
12335
  locales?: (string | string[]);
11559
12336
  order?: ("asc" | "desc");
11560
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11561
12337
  }];
11562
12338
  // ----- perfectionist/sort-union-types -----
11563
12339
  type PerfectionistSortUnionTypes = {
11564
12340
  fallbackSort?: {
12341
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11565
12342
  order?: ("asc" | "desc");
11566
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11567
12343
  };
12344
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11568
12345
  specialCharacters?: ("remove" | "trim" | "keep");
11569
12346
  ignoreCase?: boolean;
11570
12347
  alphabet?: string;
11571
12348
  locales?: (string | string[]);
11572
12349
  order?: ("asc" | "desc");
11573
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11574
12350
  customGroups?: ({
11575
- newlinesInside?: (("always" | "never") | number);
11576
12351
  fallbackSort?: {
12352
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11577
12353
  order?: ("asc" | "desc");
11578
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11579
12354
  };
12355
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11580
12356
  groupName: string;
12357
+ newlinesInside?: ("ignore" | number);
11581
12358
  order?: ("asc" | "desc");
11582
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11583
- anyOf?: {
12359
+ anyOf: [{
12360
+ elementNamePattern?: (({
12361
+ pattern: string;
12362
+ flags?: string;
12363
+ } | string)[] | ({
12364
+ pattern: string;
12365
+ flags?: string;
12366
+ } | string));
11584
12367
  selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
12368
+ }, ...({
11585
12369
  elementNamePattern?: (({
11586
12370
  pattern: string;
11587
12371
  flags?: string;
@@ -11589,17 +12373,17 @@ type PerfectionistSortUnionTypes = {
11589
12373
  pattern: string;
11590
12374
  flags?: string;
11591
12375
  } | string));
11592
- }[];
12376
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
12377
+ })[]];
11593
12378
  } | {
11594
- newlinesInside?: (("always" | "never") | number);
11595
12379
  fallbackSort?: {
12380
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11596
12381
  order?: ("asc" | "desc");
11597
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11598
12382
  };
12383
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11599
12384
  groupName: string;
12385
+ newlinesInside?: ("ignore" | number);
11600
12386
  order?: ("asc" | "desc");
11601
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11602
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
11603
12387
  elementNamePattern?: (({
11604
12388
  pattern: string;
11605
12389
  flags?: string;
@@ -11607,7 +12391,23 @@ type PerfectionistSortUnionTypes = {
11607
12391
  pattern: string;
11608
12392
  flags?: string;
11609
12393
  } | string));
12394
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
12395
+ })[];
12396
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
12397
+ groups?: (string | [string, ...(string)[]] | {
12398
+ newlinesBetween: ("ignore" | number);
12399
+ } | {
12400
+ group: (string | [string, ...(string)[]]);
12401
+ fallbackSort?: {
12402
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
12403
+ order?: ("asc" | "desc");
12404
+ };
12405
+ commentAbove?: string;
12406
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
12407
+ newlinesInside?: ("ignore" | number);
12408
+ order?: ("asc" | "desc");
11610
12409
  })[];
12410
+ newlinesBetween?: ("ignore" | number);
11611
12411
  partitionByComment?: (boolean | (({
11612
12412
  pattern: string;
11613
12413
  flags?: string;
@@ -11631,35 +12431,38 @@ type PerfectionistSortUnionTypes = {
11631
12431
  } | string)));
11632
12432
  });
11633
12433
  partitionByNewLine?: boolean;
11634
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11635
- groups?: (string | string[] | {
11636
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11637
- commentAbove?: string;
11638
- })[];
11639
12434
  }[];
11640
12435
  // ----- perfectionist/sort-variable-declarations -----
11641
12436
  type PerfectionistSortVariableDeclarations = [] | [{
11642
12437
  fallbackSort?: {
12438
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11643
12439
  order?: ("asc" | "desc");
11644
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11645
12440
  };
12441
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11646
12442
  specialCharacters?: ("remove" | "trim" | "keep");
11647
12443
  ignoreCase?: boolean;
11648
12444
  alphabet?: string;
11649
12445
  locales?: (string | string[]);
11650
12446
  order?: ("asc" | "desc");
11651
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11652
12447
  customGroups?: ({
11653
- newlinesInside?: (("always" | "never") | number);
11654
12448
  fallbackSort?: {
12449
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11655
12450
  order?: ("asc" | "desc");
11656
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11657
12451
  };
12452
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11658
12453
  groupName: string;
12454
+ newlinesInside?: ("ignore" | number);
11659
12455
  order?: ("asc" | "desc");
11660
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11661
- anyOf?: {
12456
+ anyOf: [{
12457
+ elementNamePattern?: (({
12458
+ pattern: string;
12459
+ flags?: string;
12460
+ } | string)[] | ({
12461
+ pattern: string;
12462
+ flags?: string;
12463
+ } | string));
11662
12464
  selector?: ("initialized" | "uninitialized");
12465
+ }, ...({
11663
12466
  elementNamePattern?: (({
11664
12467
  pattern: string;
11665
12468
  flags?: string;
@@ -11667,17 +12470,17 @@ type PerfectionistSortVariableDeclarations = [] | [{
11667
12470
  pattern: string;
11668
12471
  flags?: string;
11669
12472
  } | string));
11670
- }[];
12473
+ selector?: ("initialized" | "uninitialized");
12474
+ })[]];
11671
12475
  } | {
11672
- newlinesInside?: (("always" | "never") | number);
11673
12476
  fallbackSort?: {
12477
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11674
12478
  order?: ("asc" | "desc");
11675
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11676
12479
  };
12480
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
11677
12481
  groupName: string;
12482
+ newlinesInside?: ("ignore" | number);
11678
12483
  order?: ("asc" | "desc");
11679
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
11680
- selector?: ("initialized" | "uninitialized");
11681
12484
  elementNamePattern?: (({
11682
12485
  pattern: string;
11683
12486
  flags?: string;
@@ -11685,7 +12488,24 @@ type PerfectionistSortVariableDeclarations = [] | [{
11685
12488
  pattern: string;
11686
12489
  flags?: string;
11687
12490
  } | string));
12491
+ selector?: ("initialized" | "uninitialized");
12492
+ })[];
12493
+ newlinesInside?: (("ignore" | number) | "newlinesBetween");
12494
+ groups?: (string | [string, ...(string)[]] | {
12495
+ newlinesBetween: ("ignore" | number);
12496
+ } | {
12497
+ group: (string | [string, ...(string)[]]);
12498
+ fallbackSort?: {
12499
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
12500
+ order?: ("asc" | "desc");
12501
+ };
12502
+ commentAbove?: string;
12503
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order");
12504
+ newlinesInside?: ("ignore" | number);
12505
+ order?: ("asc" | "desc");
11688
12506
  })[];
12507
+ newlinesBetween?: ("ignore" | number);
12508
+ useExperimentalDependencyDetection?: boolean;
11689
12509
  partitionByComment?: (boolean | (({
11690
12510
  pattern: string;
11691
12511
  flags?: string;
@@ -11709,11 +12529,6 @@ type PerfectionistSortVariableDeclarations = [] | [{
11709
12529
  } | string)));
11710
12530
  });
11711
12531
  partitionByNewLine?: boolean;
11712
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11713
- groups?: (string | string[] | {
11714
- newlinesBetween?: (("ignore" | "always" | "never") | number);
11715
- commentAbove?: string;
11716
- })[];
11717
12532
  }];
11718
12533
  // ----- prefer-arrow-callback -----
11719
12534
  type PreferArrowCallback = [] | [{
@@ -11924,11 +12739,16 @@ type ReactNamingConventionFilenameExtension = [] | [(("always" | "as-needed") |
11924
12739
  extensions?: string[];
11925
12740
  ignoreFilesWithoutCode?: boolean;
11926
12741
  })];
12742
+ // ----- react-naming-convention/use-state -----
12743
+ type ReactNamingConventionUseState = [] | [{
12744
+ enforceAssignment?: boolean;
12745
+ enforceSetterName?: boolean;
12746
+ }];
11927
12747
  // ----- react-refresh/only-export-components -----
11928
12748
  type ReactRefreshOnlyExportComponents = [] | [{
12749
+ extraHOCs?: string[];
11929
12750
  allowExportNames?: string[];
11930
12751
  allowConstantExport?: boolean;
11931
- customHOCs?: string[];
11932
12752
  checkJS?: boolean;
11933
12753
  }];
11934
12754
  // ----- react/jsx-shorthand-boolean -----
@@ -12344,15 +13164,25 @@ type StyleCurlyNewline = [] | [(("always" | "never") | {
12344
13164
  type StyleDotLocation = [] | [("object" | "property")];
12345
13165
  // ----- style/eol-last -----
12346
13166
  type StyleEolLast = [] | [("always" | "never" | "unix" | "windows")];
13167
+ // ----- style/exp-jsx-props-style -----
13168
+ type StyleExpJsxPropsStyle = [] | [{
13169
+ singleLine?: {
13170
+ maxItems?: number;
13171
+ };
13172
+ multiLine?: {
13173
+ minItems?: number;
13174
+ maxItemsPerLine?: number;
13175
+ };
13176
+ }];
12347
13177
  // ----- style/exp-list-style -----
12348
13178
  type StyleExpListStyle = [] | [{
12349
13179
  singleLine?: _StyleExpListStyle_SingleLineConfig;
12350
13180
  multiLine?: _StyleExpListStyle_MultiLineConfig;
12351
13181
  overrides?: {
13182
+ "()"?: _StyleExpListStyle_BaseConfig;
12352
13183
  "[]"?: _StyleExpListStyle_BaseConfig;
12353
13184
  "{}"?: _StyleExpListStyle_BaseConfig;
12354
13185
  "<>"?: _StyleExpListStyle_BaseConfig;
12355
- "()"?: _StyleExpListStyle_BaseConfig;
12356
13186
  ArrayExpression?: _StyleExpListStyle_BaseConfig;
12357
13187
  ArrayPattern?: _StyleExpListStyle_BaseConfig;
12358
13188
  ArrowFunctionExpression?: _StyleExpListStyle_BaseConfig;
@@ -12360,21 +13190,22 @@ type StyleExpListStyle = [] | [{
12360
13190
  ExportNamedDeclaration?: _StyleExpListStyle_BaseConfig;
12361
13191
  FunctionDeclaration?: _StyleExpListStyle_BaseConfig;
12362
13192
  FunctionExpression?: _StyleExpListStyle_BaseConfig;
12363
- ImportDeclaration?: _StyleExpListStyle_BaseConfig;
13193
+ IfStatement?: _StyleExpListStyle_BaseConfig;
12364
13194
  ImportAttributes?: _StyleExpListStyle_BaseConfig;
13195
+ ImportDeclaration?: _StyleExpListStyle_BaseConfig;
13196
+ JSONArrayExpression?: _StyleExpListStyle_BaseConfig;
13197
+ JSONObjectExpression?: _StyleExpListStyle_BaseConfig;
12365
13198
  NewExpression?: _StyleExpListStyle_BaseConfig;
12366
13199
  ObjectExpression?: _StyleExpListStyle_BaseConfig;
12367
13200
  ObjectPattern?: _StyleExpListStyle_BaseConfig;
12368
13201
  TSDeclareFunction?: _StyleExpListStyle_BaseConfig;
13202
+ TSEnumBody?: _StyleExpListStyle_BaseConfig;
12369
13203
  TSFunctionType?: _StyleExpListStyle_BaseConfig;
12370
13204
  TSInterfaceBody?: _StyleExpListStyle_BaseConfig;
12371
- TSEnumBody?: _StyleExpListStyle_BaseConfig;
12372
13205
  TSTupleType?: _StyleExpListStyle_BaseConfig;
12373
13206
  TSTypeLiteral?: _StyleExpListStyle_BaseConfig;
12374
13207
  TSTypeParameterDeclaration?: _StyleExpListStyle_BaseConfig;
12375
13208
  TSTypeParameterInstantiation?: _StyleExpListStyle_BaseConfig;
12376
- JSONArrayExpression?: _StyleExpListStyle_BaseConfig;
12377
- JSONObjectExpression?: _StyleExpListStyle_BaseConfig;
12378
13209
  };
12379
13210
  }];
12380
13211
  interface _StyleExpListStyle_SingleLineConfig {
@@ -13290,13 +14121,17 @@ type StylePaddedBlocks = [] | [(("always" | "never" | "start" | "end") | {
13290
14121
  }];
13291
14122
  // ----- style/padding-line-between-statements -----
13292
14123
  type _StylePaddingLineBetweenStatementsPaddingType = ("any" | "never" | "always");
13293
- type _StylePaddingLineBetweenStatementsStatementOption = (_StylePaddingLineBetweenStatementsStatementType | [_StylePaddingLineBetweenStatementsStatementType, ...(_StylePaddingLineBetweenStatementsStatementType)[]]);
14124
+ type _StylePaddingLineBetweenStatementsStatementOption = (_StylePaddingLineBetweenStatementsStatementMatcher | [_StylePaddingLineBetweenStatementsStatementMatcher, ...(_StylePaddingLineBetweenStatementsStatementMatcher)[]]);
14125
+ type _StylePaddingLineBetweenStatementsStatementMatcher = (_StylePaddingLineBetweenStatementsStatementType | _StylePaddingLineBetweenStatements_SelectorOption);
13294
14126
  type _StylePaddingLineBetweenStatementsStatementType = ("*" | "exports" | "require" | "directive" | "iife" | "block" | "empty" | "function" | "ts-method" | "break" | "case" | "class" | "continue" | "debugger" | "default" | "do" | "for" | "if" | "import" | "switch" | "throw" | "try" | "while" | "with" | "cjs-export" | "cjs-import" | "enum" | "interface" | "function-overload" | "block-like" | "singleline-block-like" | "multiline-block-like" | "expression" | "singleline-expression" | "multiline-expression" | "return" | "singleline-return" | "multiline-return" | "export" | "singleline-export" | "multiline-export" | "var" | "singleline-var" | "multiline-var" | "let" | "singleline-let" | "multiline-let" | "const" | "singleline-const" | "multiline-const" | "using" | "singleline-using" | "multiline-using" | "type" | "singleline-type" | "multiline-type");
13295
14127
  type StylePaddingLineBetweenStatements = {
13296
14128
  blankLine: _StylePaddingLineBetweenStatementsPaddingType;
13297
14129
  prev: _StylePaddingLineBetweenStatementsStatementOption;
13298
14130
  next: _StylePaddingLineBetweenStatementsStatementOption;
13299
14131
  }[];
14132
+ interface _StylePaddingLineBetweenStatements_SelectorOption {
14133
+ selector: string;
14134
+ }
13300
14135
  // ----- style/quote-props -----
13301
14136
  type StyleQuoteProps = ([] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [] | [("always" | "as-needed" | "consistent" | "consistent-as-needed")] | [("always" | "as-needed" | "consistent" | "consistent-as-needed"), {
13302
14137
  keywords?: boolean;
@@ -13385,7 +14220,7 @@ type StyleTypeAnnotationSpacing = [] | [{
13385
14220
  after?: boolean;
13386
14221
  overrides?: {
13387
14222
  colon?: _StyleTypeAnnotationSpacing_SpacingConfig;
13388
- arrow?: _StyleTypeAnnotationSpacing_SpacingConfig;
14223
+ arrow?: ("ignore" | _StyleTypeAnnotationSpacing_SpacingConfig);
13389
14224
  variable?: _StyleTypeAnnotationSpacing_SpacingConfig;
13390
14225
  parameter?: _StyleTypeAnnotationSpacing_SpacingConfig;
13391
14226
  property?: _StyleTypeAnnotationSpacing_SpacingConfig;
@@ -13448,6 +14283,10 @@ type TestMaxExpects = [] | [{
13448
14283
  type TestMaxNestedDescribe = [] | [{
13449
14284
  max?: number;
13450
14285
  }];
14286
+ // ----- test/no-conditional-expect -----
14287
+ type TestNoConditionalExpect = [] | [{
14288
+ expectAssertions?: boolean;
14289
+ }];
13451
14290
  // ----- test/no-focused-tests -----
13452
14291
  type TestNoFocusedTests = [] | [{
13453
14292
  fixable?: boolean;
@@ -13489,6 +14328,10 @@ type TestPreferExpectAssertions = [] | [{
13489
14328
  onlyFunctionsWithExpectInLoop?: boolean;
13490
14329
  onlyFunctionsWithExpectInCallback?: boolean;
13491
14330
  }];
14331
+ // ----- test/prefer-import-in-mock -----
14332
+ type TestPreferImportInMock = [] | [{
14333
+ fixable?: boolean;
14334
+ }];
13492
14335
  // ----- test/prefer-lowercase-title -----
13493
14336
  type TestPreferLowercaseTitle = [] | [{
13494
14337
  ignore?: ("describe" | "test" | "it")[];
@@ -13558,10 +14401,21 @@ type TomlIndent = [] | [("tab" | number)] | [("tab" | number), {
13558
14401
  subTables?: number;
13559
14402
  keyValuePairs?: number;
13560
14403
  }];
14404
+ // ----- toml/inline-table-curly-newline -----
14405
+ type TomlInlineTableCurlyNewline = [] | [(("always" | "never") | {
14406
+ multiline?: boolean;
14407
+ minProperties?: number;
14408
+ consistent?: boolean;
14409
+ })];
13561
14410
  // ----- toml/inline-table-curly-spacing -----
13562
14411
  type TomlInlineTableCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), {
13563
14412
  arraysInObjects?: boolean;
13564
14413
  objectsInObjects?: boolean;
14414
+ emptyObjects?: ("ignore" | "always" | "never");
14415
+ }];
14416
+ // ----- toml/inline-table-key-value-newline -----
14417
+ type TomlInlineTableKeyValueNewline = [] | [{
14418
+ allowAllPropertiesOnSameLine?: boolean;
13565
14419
  }];
13566
14420
  // ----- toml/key-spacing -----
13567
14421
  type TomlKeySpacing = [] | [({
@@ -14366,6 +15220,9 @@ type TsNoUnusedVars = [] | [(("all" | "local") | {
14366
15220
  caughtErrors?: ("all" | "none");
14367
15221
  caughtErrorsIgnorePattern?: string;
14368
15222
  destructuredArrayIgnorePattern?: string;
15223
+ enableAutofixRemoval?: {
15224
+ imports?: boolean;
15225
+ };
14369
15226
  ignoreClassWithStaticInitBlock?: boolean;
14370
15227
  ignoreRestSiblings?: boolean;
14371
15228
  ignoreUsingDeclarations?: boolean;
@@ -14383,6 +15240,10 @@ type TsNoUseBeforeDefine = [] | [("nofunc" | {
14383
15240
  typedefs?: boolean;
14384
15241
  variables?: boolean;
14385
15242
  })];
15243
+ // ----- ts/no-useless-default-assignment -----
15244
+ type TsNoUselessDefaultAssignment = [] | [{
15245
+ allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
15246
+ }];
14386
15247
  // ----- ts/no-var-requires -----
14387
15248
  type TsNoVarRequires = [] | [{
14388
15249
  allow?: string[];
@@ -14566,6 +15427,10 @@ type TsStrictBooleanExpressions = [] | [{
14566
15427
  allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean;
14567
15428
  allowString?: boolean;
14568
15429
  }];
15430
+ // ----- ts/strict-void-return -----
15431
+ type TsStrictVoidReturn = [] | [{
15432
+ allowReturnAny?: boolean;
15433
+ }];
14569
15434
  // ----- ts/switch-exhaustiveness-check -----
14570
15435
  type TsSwitchExhaustivenessCheck = [] | [{
14571
15436
  allowDefaultCaseForExhaustiveSwitch?: boolean;
@@ -14659,6 +15524,15 @@ interface _UnicornImportStyle_ModuleStyles {
14659
15524
  interface _UnicornImportStyle_BooleanObject {
14660
15525
  [k: string]: boolean | undefined;
14661
15526
  }
15527
+ // ----- unicorn/isolated-functions -----
15528
+ type UnicornIsolatedFunctions = [] | [{
15529
+ overrideGlobals?: {
15530
+ [k: string]: (boolean | ("readonly" | "writable" | "writeable" | "off")) | undefined;
15531
+ };
15532
+ functions?: string[];
15533
+ selectors?: string[];
15534
+ comments?: string[];
15535
+ }];
14662
15536
  // ----- unicorn/no-array-reduce -----
14663
15537
  type UnicornNoArrayReduce = [] | [{
14664
15538
  allowSimpleOperations?: boolean;
@@ -14840,6 +15714,9 @@ type UnusedImportsNoUnusedImports = [] | [(("all" | "local") | {
14840
15714
  caughtErrors?: ("all" | "none");
14841
15715
  caughtErrorsIgnorePattern?: string;
14842
15716
  destructuredArrayIgnorePattern?: string;
15717
+ enableAutofixRemoval?: {
15718
+ imports?: boolean;
15719
+ };
14843
15720
  ignoreClassWithStaticInitBlock?: boolean;
14844
15721
  ignoreRestSiblings?: boolean;
14845
15722
  ignoreUsingDeclarations?: boolean;
@@ -14854,6 +15731,9 @@ type UnusedImportsNoUnusedVars = [] | [(("all" | "local") | {
14854
15731
  caughtErrors?: ("all" | "none");
14855
15732
  caughtErrorsIgnorePattern?: string;
14856
15733
  destructuredArrayIgnorePattern?: string;
15734
+ enableAutofixRemoval?: {
15735
+ imports?: boolean;
15736
+ };
14857
15737
  ignoreClassWithStaticInitBlock?: boolean;
14858
15738
  ignoreRestSiblings?: boolean;
14859
15739
  ignoreUsingDeclarations?: boolean;
@@ -14909,6 +15789,7 @@ type VueAttributesOrder = [] | [{
14909
15789
  order?: (("DEFINITION" | "LIST_RENDERING" | "CONDITIONALS" | "RENDER_MODIFIERS" | "GLOBAL" | "UNIQUE" | "SLOT" | "TWO_WAY_BINDING" | "OTHER_DIRECTIVES" | "OTHER_ATTR" | "ATTR_STATIC" | "ATTR_DYNAMIC" | "ATTR_SHORTHAND_BOOL" | "EVENTS" | "CONTENT") | ("DEFINITION" | "LIST_RENDERING" | "CONDITIONALS" | "RENDER_MODIFIERS" | "GLOBAL" | "UNIQUE" | "SLOT" | "TWO_WAY_BINDING" | "OTHER_DIRECTIVES" | "OTHER_ATTR" | "ATTR_STATIC" | "ATTR_DYNAMIC" | "ATTR_SHORTHAND_BOOL" | "EVENTS" | "CONTENT")[])[];
14910
15790
  alphabetical?: boolean;
14911
15791
  sortLineLength?: boolean;
15792
+ ignoreVBindObject?: boolean;
14912
15793
  }];
14913
15794
  // ----- vue/block-lang -----
14914
15795
  type VueBlockLang = [] | [{
@@ -15000,7 +15881,7 @@ type VueDefineMacrosOrder = [] | [{
15000
15881
  type VueDefinePropsDeclaration = [] | [("type-based" | "runtime")];
15001
15882
  // ----- vue/define-props-destructuring -----
15002
15883
  type VueDefinePropsDestructuring = [] | [{
15003
- destructure?: ("always" | "never");
15884
+ destructure?: ("only-when-assigned" | "always" | "never");
15004
15885
  }];
15005
15886
  // ----- vue/dot-location -----
15006
15887
  type VueDotLocation = [] | [("object" | "property")];
@@ -15648,6 +16529,7 @@ type VueNoLoneTemplate = [] | [{
15648
16529
  // ----- vue/no-multi-spaces -----
15649
16530
  type VueNoMultiSpaces = [] | [{
15650
16531
  ignoreProperties?: boolean;
16532
+ ignoreEOLComments?: boolean;
15651
16533
  }];
15652
16534
  // ----- vue/no-multiple-template-root -----
15653
16535
  type VueNoMultipleTemplateRoot = [] | [{
@@ -15805,6 +16687,10 @@ type VueNoTemplateTargetBlank = [] | [{
15805
16687
  type VueNoUndefComponents = [] | [{
15806
16688
  ignorePatterns?: unknown[];
15807
16689
  }];
16690
+ // ----- vue/no-undef-directives -----
16691
+ type VueNoUndefDirectives = [] | [{
16692
+ ignore?: string[];
16693
+ }];
15808
16694
  // ----- vue/no-undef-properties -----
15809
16695
  type VueNoUndefProperties = [] | [{
15810
16696
  ignores?: string[];
@@ -16048,6 +16934,10 @@ type VueVSlotStyle = [] | [(("shorthand" | "longform") | {
16048
16934
  default?: ("shorthand" | "longform" | "v-slot");
16049
16935
  named?: ("shorthand" | "longform");
16050
16936
  })];
16937
+ // ----- vue/valid-v-for -----
16938
+ type VueValidVFor = [] | [{
16939
+ allowEmptyAlias?: boolean;
16940
+ }];
16051
16941
  // ----- vue/valid-v-on -----
16052
16942
  type VueValidVOn = [] | [{
16053
16943
  modifiers?: unknown[];
@@ -16094,6 +16984,7 @@ type YamlFlowMappingCurlyNewline = [] | [(("always" | "never") | {
16094
16984
  type YamlFlowMappingCurlySpacing = [] | [("always" | "never")] | [("always" | "never"), {
16095
16985
  arraysInObjects?: boolean;
16096
16986
  objectsInObjects?: boolean;
16987
+ emptyObjects?: ("ignore" | "always" | "never");
16097
16988
  }];
16098
16989
  // ----- yaml/flow-sequence-bracket-newline -----
16099
16990
  type YamlFlowSequenceBracketNewline = [] | [(("always" | "never" | "consistent") | {
@@ -16279,7 +17170,7 @@ type Yoda = [] | [("always" | "never")] | [("always" | "never"), {
16279
17170
  onlyEquality?: boolean;
16280
17171
  }];
16281
17172
  // Names of all the configs
16282
- type ConfigNames = 'eslint/comments/rules' | 'eslint/formatter/setup' | 'eslint/formatter/html' | 'eslint/formatter/xml' | 'eslint/formatter/svg' | 'eslint/formatter/markdown' | 'eslint/formatter/graphql' | 'eslint/imports/rules' | 'eslint/javascript/setup' | 'eslint/javascript/rules' | 'eslint/jsdoc/rules' | 'eslint/jsonc/setup' | 'eslint/jsonc/rules' | 'eslint/markdown/setup' | 'eslint/markdown/processor' | 'eslint/markdown/parser' | 'eslint/markdown/disables' | 'eslint/node/rules' | 'eslint/perfectionist/setup' | 'eslint/react/setup' | 'eslint/react/rules' | 'eslint/regexp/rules' | 'eslint/sort/package-json' | 'eslint/stylistic/rules' | 'eslint/test/setup' | 'eslint/test/rules' | 'eslint/toml/setup' | 'eslint/toml/rules' | 'eslint/typescript/setup' | 'eslint/typescript/parser' | 'eslint/typescript/rules' | 'eslint/unicorn/rules' | 'eslint/unocss/rules' | 'eslint/vue/setup' | 'eslint/vue/rules' | 'eslint/yaml/setup' | 'eslint/yaml/rules';
17173
+ type ConfigNames = 'eslint/comments/rules' | 'eslint/formatter/setup' | 'eslint/formatter/html' | 'eslint/formatter/xml' | 'eslint/formatter/svg' | 'eslint/formatter/markdown' | 'eslint/formatter/graphql' | 'eslint/imports/rules' | 'eslint/javascript/setup' | 'eslint/javascript/rules' | 'eslint/jsdoc/setup' | 'eslint/jsdoc/rules' | 'eslint/jsonc/setup' | 'eslint/jsonc/rules' | 'eslint/markdown/setup' | 'eslint/markdown/processor' | 'eslint/markdown/parser' | 'eslint/markdown/rules' | 'eslint/markdown/disables/markdown' | 'eslint/markdown/disables/code' | 'eslint/node/rules' | 'eslint/perfectionist/setup' | 'eslint/react/setup' | 'eslint/react/rules' | 'eslint/react/typescript' | 'eslint/regexp/rules' | 'eslint/sort/package-json' | 'eslint/stylistic/rules' | 'eslint/test/setup' | 'eslint/test/rules' | 'eslint/toml/setup' | 'eslint/toml/rules' | 'eslint/typescript/setup' | 'eslint/typescript/parser' | 'eslint/typescript/rules' | 'eslint/unicorn/rules' | 'eslint/unocss/rules' | 'eslint/vue/setup' | 'eslint/vue/rules' | 'eslint/yaml/setup' | 'eslint/yaml/rules';
16283
17174
  //#endregion
16284
17175
  //#region src/prettier.types.d.ts
16285
17176
  /**
@@ -16409,7 +17300,7 @@ type Rules = Record<string, Linter.RuleEntry<any> | undefined> & RuleOptions;
16409
17300
  * 为 `rules` 提供自动补全功能,并放宽了 `plugins` 和 `rules` 的类型限制,
16410
17301
  * 因为许多插件仍然缺乏适当的类型定义。
16411
17302
  */
16412
- type TypedFlatConfigItem = Omit<Linter.Config, 'plugins' | 'rules'> & {
17303
+ type TypedFlatConfigItem = Omit<ConfigWithExtends, 'plugins' | 'rules'> & {
16413
17304
  /**
16414
17305
  * 一个包含插件名称到插件对象的键值对映射的对象。
16415
17306
  * 当指定 `files` 时,这些插件仅适用于匹配的文件。
@@ -16549,9 +17440,9 @@ interface OptionsStylistic {
16549
17440
  }
16550
17441
  interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'quotes' | 'jsx' | 'semi'> {
16551
17442
  /**
16552
- * Disable some opinionated rules to Anthony's preference.
17443
+ * 禁用了一些带有主观色彩的规则。
16553
17444
  *
16554
- * Including:
17445
+ * 包括:
16555
17446
  * - `antfu/top-level-function`
16556
17447
  * - `antfu/if-newline`
16557
17448
  * - `antfu/curly`
@@ -16561,8 +17452,23 @@ interface StylisticConfig extends Pick<StylisticCustomizeOptions, 'indent' | 'qu
16561
17452
  lessOpinionated?: boolean;
16562
17453
  }
16563
17454
  interface OptionsOverrides {
17455
+ /**
17456
+ * 覆盖规则
17457
+ */
16564
17458
  overrides?: TypedFlatConfigItem['rules'];
16565
17459
  }
17460
+ interface OptionsMarkdown extends OptionsOverrides {
17461
+ /**
17462
+ * 启用 GFM(GitHub Flavored Markdown)支持
17463
+ *
17464
+ * @default true
17465
+ */
17466
+ gfm?: boolean;
17467
+ /**
17468
+ * 覆盖 Markdown 本身的规则
17469
+ */
17470
+ overridesMarkdown?: TypedFlatConfigItem['rules'];
17471
+ }
16566
17472
  interface OptionsProjectType {
16567
17473
  /**
16568
17474
  * 项目类型。“lib”将为库启用更严格的规则。
@@ -16582,7 +17488,7 @@ interface OptionsTypeScriptErasableOnly {
16582
17488
  }
16583
17489
  interface OptionsRegExp {
16584
17490
  /**
16585
- * Override rulelevels
17491
+ * 覆盖规则级别
16586
17492
  */
16587
17493
  level?: 'error' | 'warn';
16588
17494
  }
@@ -16597,6 +17503,24 @@ interface OptionsPnpm extends OptionsIsInEditor {
16597
17503
  * 需要使用目录支持?
16598
17504
  */
16599
17505
  catalogs?: boolean;
17506
+ /**
17507
+ * 启用 package.json 的 lint 功能,将会安装 jsonc 解析器。
17508
+ *
17509
+ * @default true
17510
+ */
17511
+ json?: boolean;
17512
+ /**
17513
+ * 启用 pnpm-workspace.yaml 的 lint 功能,将会安装 yaml 解析器。
17514
+ *
17515
+ * @default true
17516
+ */
17517
+ yaml?: boolean;
17518
+ /**
17519
+ * 对 pnpm-workspace.yaml 中的条目进行排序
17520
+ *
17521
+ * @default false
17522
+ */
17523
+ sort?: boolean;
16600
17524
  }
16601
17525
  interface OptionsUnoCSS {
16602
17526
  /**
@@ -16860,7 +17784,7 @@ declare function jsonc(options?: OptionsFiles & OptionsStylistic & OptionsOverri
16860
17784
  declare function jsx(): Promise<TypedFlatConfigItem[]>;
16861
17785
  //#endregion
16862
17786
  //#region src/configs/markdown.d.ts
16863
- declare function markdown(options?: OptionsFiles & OptionsComponentExts & OptionsOverrides): Promise<TypedFlatConfigItem[]>;
17787
+ declare function markdown(options?: OptionsFiles & OptionsComponentExts & OptionsMarkdown): Promise<TypedFlatConfigItem[]>;
16864
17788
  //#endregion
16865
17789
  //#region src/configs/nextjs.d.ts
16866
17790
  declare function nextjs(options?: OptionsOverrides & OptionsFiles): Promise<TypedFlatConfigItem[]>;
@@ -16877,7 +17801,7 @@ declare function node(options?: OptionsOverrides): Promise<TypedFlatConfigItem[]
16877
17801
  declare function perfectionist(options?: OptionsOverrides): Promise<TypedFlatConfigItem[]>;
16878
17802
  //#endregion
16879
17803
  //#region src/configs/pnpm.d.ts
16880
- declare function pnpm(options?: OptionsPnpm): Promise<TypedFlatConfigItem[]>;
17804
+ declare function pnpm(options: OptionsPnpm): Promise<TypedFlatConfigItem[]>;
16881
17805
  //#endregion
16882
17806
  //#region src/configs/react.d.ts
16883
17807
  declare function react(options?: OptionsTypeScriptParserOptions & OptionsTypeScriptWithTypes & OptionsOverrides & OptionsReact): Promise<TypedFlatConfigItem[]>;
@@ -16997,4 +17921,4 @@ declare function ensurePackages(packages: (string | undefined)[]): Promise<void>
16997
17921
  declare function isInEditorEnv(): boolean;
16998
17922
  declare function isInGitHooksOrLintStaged(): boolean;
16999
17923
  //#endregion
17000
- export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIgnores, OptionsIsInEditor, OptionsOverrides, OptionsPnpm, OptionsProjectType, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, Rules, StylisticConfig, StylisticConfigDefaults, TypedFlatConfigItem, combine, comments, lincy as default, lincy, defaultPluginRenaming, disables, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };
17924
+ export { Awaitable, type ConfigNames, GLOB_ALL_SRC, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLE, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsFormatters, OptionsHasTypeScript, OptionsIgnores, OptionsIsInEditor, OptionsMarkdown, OptionsOverrides, OptionsPnpm, OptionsProjectType, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsUnicorn, OptionsUnoCSS, OptionsVue, ResolvedOptions, type RuleOptions, Rules, StylisticConfig, StylisticConfigDefaults, TypedFlatConfigItem, combine, comments, lincy as default, lincy, defaultPluginRenaming, disables, ensurePackages, formatters, getOverrides, ignores, imports, interopDefault, isInEditorEnv, isInGitHooksOrLintStaged, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, nextjs, node, parserPlain, perfectionist, pnpm, react, regexp, renamePluginInConfigs, renameRules, resolveSubOptions, sortPackageJson, sortTsconfig, stylistic, test, toArray, toml, typescript, unicorn, unocss, vue, yaml };