@yunarch/config-web 0.6.0 → 0.7.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.
@@ -9,147 +9,147 @@ import { FlatGitignoreOptions } from 'eslint-config-flat-gitignore';
9
9
 
10
10
  interface RuleOptions {
11
11
  /**
12
- * Disallow `dangerouslySetInnerHTML`.
12
+ * Disallows DOM elements from using 'dangerouslySetInnerHTML'.
13
13
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml
14
14
  */
15
15
  '@eslint-react/dom/no-dangerously-set-innerhtml'?: Linter.RuleEntry<[]>
16
16
  /**
17
- * Disallow `dangerouslySetInnerHTML` and `children` at the same time.
17
+ * Disallows DOM elements from using 'dangerouslySetInnerHTML' and 'children' at the same time.
18
18
  * @see https://eslint-react.xyz/docs/rules/dom-no-dangerously-set-innerhtml-with-children
19
19
  */
20
20
  '@eslint-react/dom/no-dangerously-set-innerhtml-with-children'?: Linter.RuleEntry<[]>
21
21
  /**
22
- * Disallow `findDOMNode`.
22
+ * Disallows 'findDOMNode'.
23
23
  * @see https://eslint-react.xyz/docs/rules/dom-no-find-dom-node
24
24
  */
25
25
  '@eslint-react/dom/no-find-dom-node'?: Linter.RuleEntry<[]>
26
26
  /**
27
- * Disallow `flushSync`.
27
+ * Disallows 'flushSync'.
28
28
  * @see https://eslint-react.xyz/docs/rules/dom-no-flush-sync
29
29
  */
30
30
  '@eslint-react/dom/no-flush-sync'?: Linter.RuleEntry<[]>
31
31
  /**
32
- * Replaces usages of `ReactDom.hydrate()` with `hydrateRoot()`.
32
+ * Replaces usage of 'ReactDOM.hydrate()' with 'hydrateRoot()'.
33
33
  * @see https://eslint-react.xyz/docs/rules/dom-no-hydrate
34
34
  */
35
35
  '@eslint-react/dom/no-hydrate'?: Linter.RuleEntry<[]>
36
36
  /**
37
- * Enforces explicit `type` attribute for `button` elements.
37
+ * Enforces an explicit 'type' attribute for 'button' elements.
38
38
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-button-type
39
39
  */
40
40
  '@eslint-react/dom/no-missing-button-type'?: Linter.RuleEntry<[]>
41
41
  /**
42
- * Enforces explicit `sandbox` prop for `iframe` elements.
42
+ * Enforces an explicit 'sandbox' attribute for 'iframe' elements.
43
43
  * @see https://eslint-react.xyz/docs/rules/dom-no-missing-iframe-sandbox
44
44
  */
45
45
  '@eslint-react/dom/no-missing-iframe-sandbox'?: Linter.RuleEntry<[]>
46
46
  /**
47
- * Enforces the absence of a `namespace` in React elements.
47
+ * Enforces the absence of a 'namespace' in React elements.
48
48
  * @see https://eslint-react.xyz/docs/rules/dom-no-namespace
49
49
  */
50
50
  '@eslint-react/dom/no-namespace'?: Linter.RuleEntry<[]>
51
51
  /**
52
- * Replaces usages of `ReactDom.render()` with `createRoot(node).render()`.
52
+ * Replaces usage of 'ReactDOM.render()' with 'createRoot(node).render()'.
53
53
  * @see https://eslint-react.xyz/docs/rules/dom-no-render
54
54
  */
55
55
  '@eslint-react/dom/no-render'?: Linter.RuleEntry<[]>
56
56
  /**
57
- * Disallow the return value of `ReactDOM.render`.
57
+ * Disallows the return value of 'ReactDOM.render'.
58
58
  * @see https://eslint-react.xyz/docs/rules/dom-no-render-return-value
59
59
  */
60
60
  '@eslint-react/dom/no-render-return-value'?: Linter.RuleEntry<[]>
61
61
  /**
62
- * Disallow `javascript:` URLs as attribute values.
62
+ * Disallows 'javascript:' URLs as attribute values.
63
63
  * @see https://eslint-react.xyz/docs/rules/dom-no-script-url
64
64
  */
65
65
  '@eslint-react/dom/no-script-url'?: Linter.RuleEntry<[]>
66
66
  /**
67
- * Disallows the use of string style prop.
67
+ * Disallows the use of string style prop in JSX. Use an object instead.
68
68
  * @see https://eslint-react.xyz/docs/rules/dom-no-string-style-prop
69
69
  */
70
70
  '@eslint-react/dom/no-string-style-prop'?: Linter.RuleEntry<[]>
71
71
  /**
72
- * Disallow unknown `DOM` property.
72
+ * Disallows unknown 'DOM' properties.
73
73
  * @see https://eslint-react.xyz/docs/rules/dom-no-unknown-property
74
74
  */
75
75
  '@eslint-react/dom/no-unknown-property'?: Linter.RuleEntry<EslintReactDomNoUnknownProperty>
76
76
  /**
77
- * Enforces `sandbox` attribute for `iframe` elements is not set to unsafe combinations.
77
+ * Enforces that the 'sandbox' attribute for 'iframe' elements is not set to unsafe combinations.
78
78
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-iframe-sandbox
79
79
  */
80
80
  '@eslint-react/dom/no-unsafe-iframe-sandbox'?: Linter.RuleEntry<[]>
81
81
  /**
82
- * Disallow `target="_blank"` without `rel="noreferrer noopener"`.
82
+ * Disallows 'target="_blank"' without 'rel="noreferrer noopener"'.
83
83
  * @see https://eslint-react.xyz/docs/rules/dom-no-unsafe-target-blank
84
84
  */
85
85
  '@eslint-react/dom/no-unsafe-target-blank'?: Linter.RuleEntry<[]>
86
86
  /**
87
- * Replaces usages of `useFormState` with `useActionState`.
87
+ * Replaces usage of 'useFormState' with 'useActionState'.
88
88
  * @see https://eslint-react.xyz/docs/rules/dom-no-use-form-state
89
89
  */
90
90
  '@eslint-react/dom/no-use-form-state'?: Linter.RuleEntry<[]>
91
91
  /**
92
- * Disallow `children` in void DOM elements.
92
+ * Disallows 'children' in void DOM elements.
93
93
  * @see https://eslint-react.xyz/docs/rules/dom-no-void-elements-with-children
94
94
  */
95
95
  '@eslint-react/dom/no-void-elements-with-children'?: Linter.RuleEntry<[]>
96
96
  /**
97
- * Enforces React Dom is imported via a namespace import.
97
+ * Enforces importing React DOM via a namespace import.
98
98
  * @see https://eslint-react.xyz/docs/rules/dom-prefer-namespace-import
99
99
  */
100
100
  '@eslint-react/dom/prefer-namespace-import'?: Linter.RuleEntry<[]>
101
101
  /**
102
- * Disallow direct calls to the `set` function of `useState` in `useEffect`.
102
+ * Disallows direct calls to the ['set' function](https://react.dev/reference/react/useState#setstate) of 'useState' in 'useEffect'.
103
103
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-no-direct-set-state-in-use-effect
104
104
  */
105
105
  '@eslint-react/hooks-extra/no-direct-set-state-in-use-effect'?: Linter.RuleEntry<[]>
106
106
  /**
107
- * Prevents dollar signs from being inserted as text nodes before expressions.
107
+ * Prevents unnecessary '$' symbols before JSX expressions.
108
108
  * @see https://eslint-react.xyz/docs/rules/jsx-dollar
109
109
  */
110
110
  '@eslint-react/jsx-dollar'?: Linter.RuleEntry<[]>
111
111
  /**
112
- * Enforces that the 'key' prop is placed before the spread prop in JSX elements.
112
+ * Enforces 'key' prop placement before spread props.
113
113
  * @see https://eslint-react.xyz/docs/rules/jsx-key-before-spread
114
114
  */
115
115
  '@eslint-react/jsx-key-before-spread'?: Linter.RuleEntry<[]>
116
116
  /**
117
- * Prevents comments from being inserted as text nodes.
117
+ * Prevents comment strings (e.g., beginning with '//' or '/*') from being accidentally inserted into a JSX element's text nodes.
118
118
  * @see https://eslint-react.xyz/docs/rules/jsx-no-comment-textnodes
119
119
  */
120
120
  '@eslint-react/jsx-no-comment-textnodes'?: Linter.RuleEntry<[]>
121
121
  /**
122
- * Disallow duplicate props in JSX elements.
122
+ * Disallows duplicate props in JSX elements.
123
123
  * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
124
124
  */
125
125
  '@eslint-react/jsx-no-duplicate-props'?: Linter.RuleEntry<[]>
126
126
  /**
127
- * Disallows 'IIFE' in JSX elements.
127
+ * Disallows immediately-invoked function expressions in JSX.
128
128
  * @see https://eslint-react.xyz/docs/rules/jsx-no-iife
129
129
  */
130
130
  '@eslint-react/jsx-no-iife'?: Linter.RuleEntry<[]>
131
131
  /**
132
- * Disallow undefined variables in JSX.
132
+ * Prevents using variables in JSX that are not defined in the scope.
133
133
  * @see https://eslint-react.xyz/docs/rules/jsx-no-undef
134
134
  */
135
135
  '@eslint-react/jsx-no-undef'?: Linter.RuleEntry<[]>
136
136
  /**
137
- * Enforces shorthand syntax for boolean attributes.
137
+ * Enforces shorthand syntax for boolean props.
138
138
  * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-boolean
139
139
  */
140
140
  '@eslint-react/jsx-shorthand-boolean'?: Linter.RuleEntry<EslintReactJsxShorthandBoolean>
141
141
  /**
142
- * Enforces shorthand syntax for fragments.
142
+ * Enforces shorthand syntax for fragment elements.
143
143
  * @see https://eslint-react.xyz/docs/rules/jsx-shorthand-fragment
144
144
  */
145
145
  '@eslint-react/jsx-shorthand-fragment'?: Linter.RuleEntry<EslintReactJsxShorthandFragment>
146
146
  /**
147
- * Marks React variables as used when JSX is used.
147
+ * Marks React variables as used when JSX is present.
148
148
  * @see https://eslint-react.xyz/docs/rules/jsx-uses-react
149
149
  */
150
150
  '@eslint-react/jsx-uses-react'?: Linter.RuleEntry<[]>
151
151
  /**
152
- * Marks variables used in JSX elements as used.
152
+ * Marks JSX element variables as used.
153
153
  * @see https://eslint-react.xyz/docs/rules/jsx-uses-vars
154
154
  */
155
155
  '@eslint-react/jsx-uses-vars'?: Linter.RuleEntry<[]>
@@ -159,127 +159,133 @@ interface RuleOptions {
159
159
  */
160
160
  '@eslint-react/naming-convention/component-name'?: Linter.RuleEntry<EslintReactNamingConventionComponentName>
161
161
  /**
162
- * Enforces context name to be a valid component name with the suffix `Context`.
162
+ * Enforces the context name to be a valid component name with the suffix 'Context'.
163
163
  * @see https://eslint-react.xyz/docs/rules/naming-convention-context-name
164
164
  */
165
165
  '@eslint-react/naming-convention/context-name'?: Linter.RuleEntry<[]>
166
166
  /**
167
- * Enforces consistent file naming conventions.
167
+ * Enforces consistent file-naming conventions.
168
168
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename
169
169
  */
170
170
  '@eslint-react/naming-convention/filename'?: Linter.RuleEntry<EslintReactNamingConventionFilename>
171
171
  /**
172
- * Enforces consistent file naming conventions.
172
+ * Enforces consistent use of the JSX file extension.
173
173
  * @see https://eslint-react.xyz/docs/rules/naming-convention-filename-extension
174
174
  */
175
175
  '@eslint-react/naming-convention/filename-extension'?: Linter.RuleEntry<EslintReactNamingConventionFilenameExtension>
176
176
  /**
177
- * Enforces destructuring and symmetric naming of `useState` hook value and setter.
177
+ * Enforces identifier names assigned from 'useRef' calls to be either 'ref' or end with 'Ref'.
178
+ * @see https://eslint-react.xyz/docs/rules/naming-convention-ref-name
179
+ */
180
+ '@eslint-react/naming-convention/ref-name'?: Linter.RuleEntry<[]>
181
+ /**
182
+ * Enforces destructuring and symmetric naming of the 'useState' hook value and setter.
178
183
  * @see https://eslint-react.xyz/docs/rules/naming-convention-use-state
179
184
  */
180
- '@eslint-react/naming-convention/use-state'?: Linter.RuleEntry<[]>
185
+ '@eslint-react/naming-convention/use-state'?: Linter.RuleEntry<EslintReactNamingConventionUseState>
181
186
  /**
182
- * Disallow accessing `this.state` inside `setState` calls.
187
+ * Disallows accessing 'this.state' inside 'setState' calls.
183
188
  * @see https://eslint-react.xyz/docs/rules/no-access-state-in-setstate
184
189
  */
185
190
  '@eslint-react/no-access-state-in-setstate'?: Linter.RuleEntry<[]>
186
191
  /**
187
- * Disallow an item's index in the array as its key.
192
+ * Disallows using an item's index in the array as its key.
188
193
  * @see https://eslint-react.xyz/docs/rules/no-array-index-key
189
194
  */
190
195
  '@eslint-react/no-array-index-key'?: Linter.RuleEntry<[]>
191
196
  /**
192
- * Disallow `Children.count`.
197
+ * Disallows the use of 'Children.count' from the 'react' package.
193
198
  * @see https://eslint-react.xyz/docs/rules/no-children-count
194
199
  */
195
200
  '@eslint-react/no-children-count'?: Linter.RuleEntry<[]>
196
201
  /**
197
- * Disallow 'Children.forEach'.
202
+ * Disallows the use of 'Children.forEach' from the 'react' package.
198
203
  * @see https://eslint-react.xyz/docs/rules/no-children-for-each
199
204
  */
200
205
  '@eslint-react/no-children-for-each'?: Linter.RuleEntry<[]>
201
206
  /**
202
- * Disallow `Children.map`.
207
+ * Disallows the use of 'Children.map' from the 'react' package.
203
208
  * @see https://eslint-react.xyz/docs/rules/no-children-map
204
209
  */
205
210
  '@eslint-react/no-children-map'?: Linter.RuleEntry<[]>
206
211
  /**
207
- * Disallow `Children.only`.
212
+ * Disallows the use of 'Children.only' from the 'react' package.
208
213
  * @see https://eslint-react.xyz/docs/rules/no-children-only
209
214
  */
210
215
  '@eslint-react/no-children-only'?: Linter.RuleEntry<[]>
211
216
  /**
212
- * Disallow passing `children` as a prop.
217
+ * Disallows passing 'children' as a prop.
213
218
  * @see https://eslint-react.xyz/docs/rules/no-children-prop
214
219
  */
215
220
  '@eslint-react/no-children-prop'?: Linter.RuleEntry<[]>
216
221
  /**
217
- * Disallow `Children.toArray`.
222
+ * Disallows the use of 'Children.toArray' from the 'react' package.
218
223
  * @see https://eslint-react.xyz/docs/rules/no-children-to-array
219
224
  */
220
225
  '@eslint-react/no-children-to-array'?: Linter.RuleEntry<[]>
221
226
  /**
222
- * Disallow class components except for error boundaries.
227
+ * Disallows class components except for error boundaries.
223
228
  * @see https://eslint-react.xyz/docs/rules/no-class-component
224
229
  */
225
230
  '@eslint-react/no-class-component'?: Linter.RuleEntry<[]>
226
231
  /**
227
- * Disallow `cloneElement`.
232
+ * Disallows 'cloneElement'.
228
233
  * @see https://eslint-react.xyz/docs/rules/no-clone-element
229
234
  */
230
235
  '@eslint-react/no-clone-element'?: Linter.RuleEntry<[]>
231
236
  /**
232
- * Replace usages of `componentWillMount` with `UNSAFE_componentWillMount`.
237
+ * Replaces usage of 'componentWillMount' with 'UNSAFE_componentWillMount'.
233
238
  * @see https://eslint-react.xyz/docs/rules/no-component-will-mount
234
239
  */
235
240
  '@eslint-react/no-component-will-mount'?: Linter.RuleEntry<[]>
236
241
  /**
237
- * Replace usages of `componentWillReceiveProps` with `UNSAFE_componentWillReceiveProps`.
242
+ * Replaces usage of 'componentWillReceiveProps' with 'UNSAFE_componentWillReceiveProps'.
238
243
  * @see https://eslint-react.xyz/docs/rules/no-component-will-receive-props
239
244
  */
240
245
  '@eslint-react/no-component-will-receive-props'?: Linter.RuleEntry<[]>
241
246
  /**
242
- * Replace usages of `componentWillUpdate` with `UNSAFE_componentWillUpdate`.
247
+ * Replaces usage of 'componentWillUpdate' with 'UNSAFE_componentWillUpdate'.
243
248
  * @see https://eslint-react.xyz/docs/rules/no-component-will-update
244
249
  */
245
250
  '@eslint-react/no-component-will-update'?: Linter.RuleEntry<[]>
246
251
  /**
247
- * Replace usages of `<Context.Provider>` with `<Context>`.
252
+ * Replaces usage of '<Context.Provider>' with '<Context>'.
248
253
  * @see https://eslint-react.xyz/docs/rules/no-context-provider
249
254
  */
250
255
  '@eslint-react/no-context-provider'?: Linter.RuleEntry<[]>
251
256
  /**
252
- * Disallow `createRef` in function components.
257
+ * Disallows 'createRef' in function components.
253
258
  * @see https://eslint-react.xyz/docs/rules/no-create-ref
254
259
  */
255
260
  '@eslint-react/no-create-ref'?: Linter.RuleEntry<[]>
256
261
  /**
257
- * Disallow `defaultProps` property in favor of ES6 default parameters.
262
+ * Disallows the 'defaultProps' property in favor of ES6 default parameters.
258
263
  * @see https://eslint-react.xyz/docs/rules/no-default-props
259
264
  */
260
265
  '@eslint-react/no-default-props'?: Linter.RuleEntry<[]>
261
266
  /**
262
- * Disallow direct mutation of `this.state`.
267
+ * Disallows direct mutation of 'this.state'.
263
268
  * @see https://eslint-react.xyz/docs/rules/no-direct-mutation-state
264
269
  */
265
270
  '@eslint-react/no-direct-mutation-state'?: Linter.RuleEntry<[]>
266
271
  /**
267
- * Disallow duplicate `key` on elements in the same array or a list of `children`.
272
+ * Prevents duplicate 'key' props on sibling elements when rendering lists.
268
273
  * @see https://eslint-react.xyz/docs/rules/no-duplicate-key
269
274
  */
270
275
  '@eslint-react/no-duplicate-key'?: Linter.RuleEntry<[]>
271
276
  /**
272
- * Disallow certain props on components.
277
+ * Disallows certain props on components.
273
278
  * @see https://eslint-react.xyz/docs/rules/no-forbidden-props
279
+ * @deprecated
274
280
  */
275
281
  '@eslint-react/no-forbidden-props'?: Linter.RuleEntry<EslintReactNoForbiddenProps>
276
282
  /**
277
- * Replaces usages of `forwardRef` with passing `ref` as a prop.
283
+ * Replaces usage of 'forwardRef' with passing 'ref' as a prop.
278
284
  * @see https://eslint-react.xyz/docs/rules/no-forward-ref
279
285
  */
280
286
  '@eslint-react/no-forward-ref'?: Linter.RuleEntry<[]>
281
287
  /**
282
- * Prevents `key` from not being explicitly specified (e.g. spreading `key` from objects).
288
+ * Prevents 'key' from not being explicitly specified (e.g., spreading 'key' from objects).
283
289
  * @see https://eslint-react.xyz/docs/rules/no-implicit-key
284
290
  */
285
291
  '@eslint-react/no-implicit-key'?: Linter.RuleEntry<[]>
@@ -289,57 +295,57 @@ interface RuleOptions {
289
295
  */
290
296
  '@eslint-react/no-leaked-conditional-rendering'?: Linter.RuleEntry<[]>
291
297
  /**
292
- * Enforces that all components have a `displayName` which can be used in devtools.
298
+ * Enforces that all components have a 'displayName' that can be used in DevTools.
293
299
  * @see https://eslint-react.xyz/docs/rules/no-missing-component-display-name
294
300
  */
295
301
  '@eslint-react/no-missing-component-display-name'?: Linter.RuleEntry<[]>
296
302
  /**
297
- * Enforces that all contexts have a `displayName` which can be used in devtools.
303
+ * Enforces that all contexts have a 'displayName' that can be used in DevTools.
298
304
  * @see https://eslint-react.xyz/docs/rules/no-missing-context-display-name
299
305
  */
300
306
  '@eslint-react/no-missing-context-display-name'?: Linter.RuleEntry<[]>
301
307
  /**
302
- * Disallow missing `key` on items in list rendering.
308
+ * Disallows missing 'key' on items in list rendering.
303
309
  * @see https://eslint-react.xyz/docs/rules/no-missing-key
304
310
  */
305
311
  '@eslint-react/no-missing-key'?: Linter.RuleEntry<[]>
306
312
  /**
307
- * Prevents incorrect usage of `captureOwnerStack`.
313
+ * Prevents incorrect usage of 'captureOwnerStack'.
308
314
  * @see https://eslint-react.xyz/docs/rules/no-misused-capture-owner-stack
309
315
  */
310
316
  '@eslint-react/no-misused-capture-owner-stack'?: Linter.RuleEntry<[]>
311
317
  /**
312
- * Disallow nesting component definitions inside other components.
318
+ * Disallows nesting component definitions inside other components.
313
319
  * @see https://eslint-react.xyz/docs/rules/no-nested-component-definitions
314
320
  */
315
321
  '@eslint-react/no-nested-component-definitions'?: Linter.RuleEntry<[]>
316
322
  /**
317
- * Disallow nesting lazy component declarations inside other components.
323
+ * Disallows nesting lazy component declarations inside other components.
318
324
  * @see https://eslint-react.xyz/docs/rules/no-nested-lazy-component-declarations
319
325
  */
320
326
  '@eslint-react/no-nested-lazy-component-declarations'?: Linter.RuleEntry<[]>
321
327
  /**
322
- * Disallow `propTypes` in favor of TypeScript or another type-checking solution.
328
+ * Disallows 'propTypes' in favor of TypeScript or another type-checking solution.
323
329
  * @see https://eslint-react.xyz/docs/rules/no-prop-types
324
330
  */
325
331
  '@eslint-react/no-prop-types'?: Linter.RuleEntry<[]>
326
332
  /**
327
- * Disallow `shouldComponentUpdate` when extending `React.PureComponent`.
333
+ * Disallows 'shouldComponentUpdate' when extending 'React.PureComponent'.
328
334
  * @see https://eslint-react.xyz/docs/rules/no-redundant-should-component-update
329
335
  */
330
336
  '@eslint-react/no-redundant-should-component-update'?: Linter.RuleEntry<[]>
331
337
  /**
332
- * Disallow calling `this.setState` in `componentDidMount` outside of functions, such as callbacks.
338
+ * Disallows calling 'this.setState' in 'componentDidMount' outside functions such as callbacks.
333
339
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-mount
334
340
  */
335
341
  '@eslint-react/no-set-state-in-component-did-mount'?: Linter.RuleEntry<[]>
336
342
  /**
337
- * Disallow calling `this.setState` in `componentDidUpdate` outside of functions, such as callbacks.
343
+ * Disallows calling 'this.setState' in 'componentDidUpdate' outside functions such as callbacks.
338
344
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-did-update
339
345
  */
340
346
  '@eslint-react/no-set-state-in-component-did-update'?: Linter.RuleEntry<[]>
341
347
  /**
342
- * Disallow calling `this.setState` in `componentWillUpdate` outside of functions, such as callbacks.
348
+ * Disallows calling 'this.setState' in 'componentWillUpdate' outside functions such as callbacks.
343
349
  * @see https://eslint-react.xyz/docs/rules/no-set-state-in-component-will-update
344
350
  */
345
351
  '@eslint-react/no-set-state-in-component-will-update'?: Linter.RuleEntry<[]>
@@ -349,42 +355,47 @@ interface RuleOptions {
349
355
  */
350
356
  '@eslint-react/no-string-refs'?: Linter.RuleEntry<[]>
351
357
  /**
352
- * Prevents the use of unnecessary `key` props on JSX elements when rendering lists.
358
+ * Disallows unnecessary 'key' props on nested child elements when rendering lists.
353
359
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-key
354
360
  */
355
361
  '@eslint-react/no-unnecessary-key'?: Linter.RuleEntry<[]>
356
362
  /**
357
- * Disallow unnecessary usage of `useCallback`.
363
+ * Disallows unnecessary usage of 'useCallback'.
358
364
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-callback
359
365
  */
360
366
  '@eslint-react/no-unnecessary-use-callback'?: Linter.RuleEntry<[]>
361
367
  /**
362
- * Disallow unnecessary usage of `useMemo`.
368
+ * Disallows unnecessary usage of 'useMemo'.
363
369
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-memo
364
370
  */
365
371
  '@eslint-react/no-unnecessary-use-memo'?: Linter.RuleEntry<[]>
366
372
  /**
367
- * Enforces that a function with the `use` prefix should use at least one Hook inside of it.
373
+ * Enforces that a function with the 'use' prefix uses at least one Hook inside it.
368
374
  * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-prefix
369
375
  */
370
376
  '@eslint-react/no-unnecessary-use-prefix'?: Linter.RuleEntry<[]>
371
377
  /**
372
- * Warns the usage of `UNSAFE_componentWillMount` in class components.
378
+ * Disallows unnecessary usage of 'useRef'.
379
+ * @see https://eslint-react.xyz/docs/rules/no-unnecessary-use-ref
380
+ */
381
+ '@eslint-react/no-unnecessary-use-ref'?: Linter.RuleEntry<[]>
382
+ /**
383
+ * Warns about the use of 'UNSAFE_componentWillMount' in class components.
373
384
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-mount
374
385
  */
375
386
  '@eslint-react/no-unsafe-component-will-mount'?: Linter.RuleEntry<[]>
376
387
  /**
377
- * Warns the usage of `UNSAFE_componentWillReceiveProps` in class components.
388
+ * Warns about the use of 'UNSAFE_componentWillReceiveProps' in class components.
378
389
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-receive-props
379
390
  */
380
391
  '@eslint-react/no-unsafe-component-will-receive-props'?: Linter.RuleEntry<[]>
381
392
  /**
382
- * Warns the usage of `UNSAFE_componentWillUpdate` in class components.
393
+ * Warns about the use of 'UNSAFE_componentWillUpdate' in class components.
383
394
  * @see https://eslint-react.xyz/docs/rules/no-unsafe-component-will-update
384
395
  */
385
396
  '@eslint-react/no-unsafe-component-will-update'?: Linter.RuleEntry<[]>
386
397
  /**
387
- * Prevents non-stable values (i.e. object literals) from being used as a value for `Context.Provider`.
398
+ * Prevents non-stable values (i.e., object literals) from being used as a value for 'Context.Provider'.
388
399
  * @see https://eslint-react.xyz/docs/rules/no-unstable-context-value
389
400
  */
390
401
  '@eslint-react/no-unstable-context-value'?: Linter.RuleEntry<[]>
@@ -392,34 +403,34 @@ interface RuleOptions {
392
403
  * Prevents using referential-type values as default props in object destructuring.
393
404
  * @see https://eslint-react.xyz/docs/rules/no-unstable-default-props
394
405
  */
395
- '@eslint-react/no-unstable-default-props'?: Linter.RuleEntry<[]>
406
+ '@eslint-react/no-unstable-default-props'?: Linter.RuleEntry<EslintReactNoUnstableDefaultProps>
396
407
  /**
397
- * Warns unused class component methods and properties.
408
+ * Warns about unused class component methods and properties.
398
409
  * @see https://eslint-react.xyz/docs/rules/no-unused-class-component-members
399
410
  */
400
411
  '@eslint-react/no-unused-class-component-members'?: Linter.RuleEntry<[]>
401
412
  /**
402
- * Warns component props that are defined but never used.
413
+ * Warns about component props that are defined but never used.
403
414
  * @see https://eslint-react.xyz/docs/rules/no-unused-props
404
415
  */
405
416
  '@eslint-react/no-unused-props'?: Linter.RuleEntry<[]>
406
417
  /**
407
- * Warns unused class component state.
418
+ * Warns about unused class component state.
408
419
  * @see https://eslint-react.xyz/docs/rules/no-unused-state
409
420
  */
410
421
  '@eslint-react/no-unused-state'?: Linter.RuleEntry<[]>
411
422
  /**
412
- * Replaces usages of `useContext` with `use`.
423
+ * Replaces usage of 'useContext' with 'use'.
413
424
  * @see https://eslint-react.xyz/docs/rules/no-use-context
414
425
  */
415
426
  '@eslint-react/no-use-context'?: Linter.RuleEntry<[]>
416
427
  /**
417
- * Disallow useless `forwardRef` calls on components that don't use `ref`s.
428
+ * Disallows useless 'forwardRef' calls on components that don't use 'ref's.
418
429
  * @see https://eslint-react.xyz/docs/rules/no-useless-forward-ref
419
430
  */
420
431
  '@eslint-react/no-useless-forward-ref'?: Linter.RuleEntry<[]>
421
432
  /**
422
- * Disallow useless fragment elements.
433
+ * Disallows useless fragment elements.
423
434
  * @see https://eslint-react.xyz/docs/rules/no-useless-fragment
424
435
  */
425
436
  '@eslint-react/no-useless-fragment'?: Linter.RuleEntry<EslintReactNoUselessFragment>
@@ -429,7 +440,7 @@ interface RuleOptions {
429
440
  */
430
441
  '@eslint-react/prefer-destructuring-assignment'?: Linter.RuleEntry<[]>
431
442
  /**
432
- * Enforces React is imported via a namespace import.
443
+ * Enforces importing React via a namespace import.
433
444
  * @see https://eslint-react.xyz/docs/rules/prefer-namespace-import
434
445
  */
435
446
  '@eslint-react/prefer-namespace-import'?: Linter.RuleEntry<[]>
@@ -439,27 +450,27 @@ interface RuleOptions {
439
450
  */
440
451
  '@eslint-react/prefer-read-only-props'?: Linter.RuleEntry<[]>
441
452
  /**
442
- * Enforces function calls made inside `useState` to be wrapped in an `initializer function`.
453
+ * Enforces wrapping function calls made inside 'useState' in an 'initializer function'.
443
454
  * @see https://eslint-react.xyz/docs/rules/prefer-use-state-lazy-initialization
444
455
  */
445
456
  '@eslint-react/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>
446
457
  /**
447
- * Prevents leaked `addEventListener` in a component or custom Hook.
458
+ * Enforces that every 'addEventListener' in a component or custom hook has a corresponding 'removeEventListener'.
448
459
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-event-listener
449
460
  */
450
461
  '@eslint-react/web-api/no-leaked-event-listener'?: Linter.RuleEntry<[]>
451
462
  /**
452
- * Prevents leaked `setInterval` in a component or custom Hook.
463
+ * Enforces that every 'setInterval' in a component or custom hook has a corresponding 'clearInterval'.
453
464
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-interval
454
465
  */
455
466
  '@eslint-react/web-api/no-leaked-interval'?: Linter.RuleEntry<[]>
456
467
  /**
457
- * Prevents leaked `ResizeObserver` in a component or custom Hook.
468
+ * Enforces that every 'ResizeObserver' created in a component or custom hook has a corresponding 'ResizeObserver.disconnect()'.
458
469
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-resize-observer
459
470
  */
460
471
  '@eslint-react/web-api/no-leaked-resize-observer'?: Linter.RuleEntry<[]>
461
472
  /**
462
- * Prevents leaked `setTimeout` in a component or custom Hook.
473
+ * Enforces that every 'setTimeout' in a component or custom hook has a corresponding 'clearTimeout'.
463
474
  * @see https://eslint-react.xyz/docs/rules/web-api-no-leaked-timeout
464
475
  */
465
476
  '@eslint-react/web-api/no-leaked-timeout'?: Linter.RuleEntry<[]>
@@ -503,6 +514,11 @@ interface RuleOptions {
503
514
  * @see https://tanstack.com/router/latest/docs/eslint/create-route-property-order
504
515
  */
505
516
  '@tanstack/router/create-route-property-order'?: Linter.RuleEntry<[]>
517
+ /**
518
+ * Ensure route param names are valid JavaScript identifiers
519
+ * @see https://tanstack.com/router/latest/docs/eslint/route-param-names
520
+ */
521
+ '@tanstack/router/route-param-names'?: Linter.RuleEntry<[]>
506
522
  /**
507
523
  * Require that function overload signatures be consecutive
508
524
  * @see https://typescript-eslint.io/rules/adjacent-overload-signatures
@@ -946,6 +962,11 @@ interface RuleOptions {
946
962
  * @see https://typescript-eslint.io/rules/no-unused-expressions
947
963
  */
948
964
  '@typescript-eslint/no-unused-expressions'?: Linter.RuleEntry<TypescriptEslintNoUnusedExpressions>
965
+ /**
966
+ * Disallow unused private class members
967
+ * @see https://typescript-eslint.io/rules/no-unused-private-class-members
968
+ */
969
+ '@typescript-eslint/no-unused-private-class-members'?: Linter.RuleEntry<[]>
949
970
  /**
950
971
  * Disallow unused variables
951
972
  * @see https://typescript-eslint.io/rules/no-unused-vars
@@ -961,6 +982,11 @@ interface RuleOptions {
961
982
  * @see https://typescript-eslint.io/rules/no-useless-constructor
962
983
  */
963
984
  '@typescript-eslint/no-useless-constructor'?: Linter.RuleEntry<[]>
985
+ /**
986
+ * Disallow default values that will never be used
987
+ * @see https://typescript-eslint.io/rules/no-useless-default-assignment
988
+ */
989
+ '@typescript-eslint/no-useless-default-assignment'?: Linter.RuleEntry<[]>
964
990
  /**
965
991
  * Disallow empty exports that don't change anything in a module file
966
992
  * @see https://typescript-eslint.io/rules/no-useless-empty-export
@@ -1134,6 +1160,11 @@ interface RuleOptions {
1134
1160
  * @see https://typescript-eslint.io/rules/strict-boolean-expressions
1135
1161
  */
1136
1162
  '@typescript-eslint/strict-boolean-expressions'?: Linter.RuleEntry<TypescriptEslintStrictBooleanExpressions>
1163
+ /**
1164
+ * Disallow passing a value-returning function in a position accepting a void function
1165
+ * @see https://typescript-eslint.io/rules/strict-void-return
1166
+ */
1167
+ '@typescript-eslint/strict-void-return'?: Linter.RuleEntry<TypescriptEslintStrictVoidReturn>
1137
1168
  /**
1138
1169
  * Require switch-case statements to be exhaustive
1139
1170
  * @see https://typescript-eslint.io/rules/switch-exhaustiveness-check
@@ -1940,6 +1971,11 @@ interface RuleOptions {
1940
1971
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-property-type.md#repos-sticky-header
1941
1972
  */
1942
1973
  'jsdoc/require-property-type'?: Linter.RuleEntry<[]>
1974
+ /**
1975
+ * Requires that Promise rejections are documented with `@rejects` tags.
1976
+ * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-rejects.md#repos-sticky-header
1977
+ */
1978
+ 'jsdoc/require-rejects'?: Linter.RuleEntry<JsdocRequireRejects>
1943
1979
  /**
1944
1980
  * Requires that returns are documented with `@returns`.
1945
1981
  * @see https://github.com/gajus/eslint-plugin-jsdoc/blob/main/docs/rules/require-returns.md#repos-sticky-header
@@ -3085,6 +3121,11 @@ interface RuleOptions {
3085
3121
  * @see https://perfectionist.dev/rules/sort-enums
3086
3122
  */
3087
3123
  'perfectionist/sort-enums'?: Linter.RuleEntry<PerfectionistSortEnums>
3124
+ /**
3125
+ * Enforce sorted export attributes.
3126
+ * @see https://perfectionist.dev/rules/sort-export-attributes
3127
+ */
3128
+ 'perfectionist/sort-export-attributes'?: Linter.RuleEntry<PerfectionistSortExportAttributes>
3088
3129
  /**
3089
3130
  * Enforce sorted exports.
3090
3131
  * @see https://perfectionist.dev/rules/sort-exports
@@ -3095,6 +3136,11 @@ interface RuleOptions {
3095
3136
  * @see https://perfectionist.dev/rules/sort-heritage-clauses
3096
3137
  */
3097
3138
  'perfectionist/sort-heritage-clauses'?: Linter.RuleEntry<PerfectionistSortHeritageClauses>
3139
+ /**
3140
+ * Enforce sorted import attributes.
3141
+ * @see https://perfectionist.dev/rules/sort-import-attributes
3142
+ */
3143
+ 'perfectionist/sort-import-attributes'?: Linter.RuleEntry<PerfectionistSortImportAttributes>
3098
3144
  /**
3099
3145
  * Enforce sorted imports.
3100
3146
  * @see https://perfectionist.dev/rules/sort-imports
@@ -4253,6 +4299,11 @@ interface RuleOptions {
4253
4299
  * @see https://eslint.org/docs/latest/rules/vars-on-top
4254
4300
  */
4255
4301
  'vars-on-top'?: Linter.RuleEntry<[]>
4302
+ /**
4303
+ * enforce using `.each` or `.for` consistently
4304
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-each-for.md
4305
+ */
4306
+ 'vitest/consistent-each-for'?: Linter.RuleEntry<VitestConsistentEachFor>
4256
4307
  /**
4257
4308
  * require test file pattern
4258
4309
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-filename.md
@@ -4302,7 +4353,7 @@ interface RuleOptions {
4302
4353
  * disallow conditional expects
4303
4354
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-expect.md
4304
4355
  */
4305
- 'vitest/no-conditional-expect'?: Linter.RuleEntry<[]>
4356
+ 'vitest/no-conditional-expect'?: Linter.RuleEntry<VitestNoConditionalExpect>
4306
4357
  /**
4307
4358
  * disallow conditional tests
4308
4359
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-in-test.md
@@ -4394,6 +4445,11 @@ interface RuleOptions {
4394
4445
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-return-statement.md
4395
4446
  */
4396
4447
  'vitest/no-test-return-statement'?: Linter.RuleEntry<[]>
4448
+ /**
4449
+ * Disallow unnecessary async function wrapper for expected promises
4450
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-unneeded-async-expect-function.md
4451
+ */
4452
+ 'vitest/no-unneeded-async-expect-function'?: Linter.RuleEntry<[]>
4397
4453
  /**
4398
4454
  * Enforce padding around `afterAll` blocks
4399
4455
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-all-blocks.md
@@ -4470,7 +4526,7 @@ interface RuleOptions {
4470
4526
  */
4471
4527
  'vitest/prefer-each'?: Linter.RuleEntry<[]>
4472
4528
  /**
4473
- * enforce using the built-in quality matchers
4529
+ * enforce using the built-in equality matchers
4474
4530
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-equality-matcher.md
4475
4531
  */
4476
4532
  'vitest/prefer-equality-matcher'?: Linter.RuleEntry<[]>
@@ -4503,7 +4559,7 @@ interface RuleOptions {
4503
4559
  * prefer dynamic import in mock
4504
4560
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-import-in-mock.md
4505
4561
  */
4506
- 'vitest/prefer-import-in-mock'?: Linter.RuleEntry<[]>
4562
+ 'vitest/prefer-import-in-mock'?: Linter.RuleEntry<VitestPreferImportInMock>
4507
4563
  /**
4508
4564
  * enforce importing Vitest globals
4509
4565
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-importing-vitest-globals.md
@@ -4519,6 +4575,11 @@ interface RuleOptions {
4519
4575
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-promise-shorthand.md
4520
4576
  */
4521
4577
  'vitest/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>
4578
+ /**
4579
+ * Prefer mock return shorthands
4580
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-return-shorthand.md
4581
+ */
4582
+ 'vitest/prefer-mock-return-shorthand'?: Linter.RuleEntry<[]>
4522
4583
  /**
4523
4584
  * enforce including a hint with external snapshots
4524
4585
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-snapshot-hint.md
@@ -4564,6 +4625,11 @@ interface RuleOptions {
4564
4625
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-contain.md
4565
4626
  */
4566
4627
  'vitest/prefer-to-contain'?: Linter.RuleEntry<[]>
4628
+ /**
4629
+ * Suggest using `toHaveBeenCalledTimes()`
4630
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-been-called-times.md
4631
+ */
4632
+ 'vitest/prefer-to-have-been-called-times'?: Linter.RuleEntry<[]>
4567
4633
  /**
4568
4634
  * enforce using toHaveLength()
4569
4635
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md
@@ -4599,6 +4665,11 @@ interface RuleOptions {
4599
4665
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-mock-type-parameters.md
4600
4666
  */
4601
4667
  'vitest/require-mock-type-parameters'?: Linter.RuleEntry<VitestRequireMockTypeParameters>
4668
+ /**
4669
+ * require tests to declare a timeout
4670
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-test-timeout.md
4671
+ */
4672
+ 'vitest/require-test-timeout'?: Linter.RuleEntry<[]>
4602
4673
  /**
4603
4674
  * require toThrow() to be called with an error message
4604
4675
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-to-throw-message.md
@@ -4687,6 +4758,11 @@ type EslintReactNamingConventionFilenameExtension = []|[(("always" | "as-needed"
4687
4758
  extensions?: string[]
4688
4759
  ignoreFilesWithoutCode?: boolean
4689
4760
  })]
4761
+ // ----- @eslint-react/naming-convention/use-state -----
4762
+ type EslintReactNamingConventionUseState = []|[{
4763
+ enforceAssignment?: boolean
4764
+ enforceSetterName?: boolean
4765
+ }]
4690
4766
  // ----- @eslint-react/no-forbidden-props -----
4691
4767
  type EslintReactNoForbiddenProps = []|[{
4692
4768
  forbid?: (string | {
@@ -4697,9 +4773,15 @@ type EslintReactNoForbiddenProps = []|[{
4697
4773
  prop: string
4698
4774
  })[]
4699
4775
  }]
4776
+ // ----- @eslint-react/no-unstable-default-props -----
4777
+ type EslintReactNoUnstableDefaultProps = []|[{
4778
+ safeDefaultProps?: string[]
4779
+ }]
4700
4780
  // ----- @eslint-react/no-useless-fragment -----
4701
4781
  type EslintReactNoUselessFragment = []|[{
4702
4782
 
4783
+ allowEmptyFragment?: boolean
4784
+
4703
4785
  allowExpressions?: boolean
4704
4786
  }]
4705
4787
  // ----- @typescript-eslint/array-type -----
@@ -5562,6 +5644,11 @@ type TypescriptEslintNoUnusedVars = []|[(("all" | "local") | {
5562
5644
 
5563
5645
  destructuredArrayIgnorePattern?: string
5564
5646
 
5647
+ enableAutofixRemoval?: {
5648
+
5649
+ imports?: boolean
5650
+ }
5651
+
5565
5652
  ignoreClassWithStaticInitBlock?: boolean
5566
5653
 
5567
5654
  ignoreRestSiblings?: boolean
@@ -5846,6 +5933,11 @@ type TypescriptEslintStrictBooleanExpressions = []|[{
5846
5933
 
5847
5934
  allowString?: boolean
5848
5935
  }]
5936
+ // ----- @typescript-eslint/strict-void-return -----
5937
+ type TypescriptEslintStrictVoidReturn = []|[{
5938
+
5939
+ allowReturnAny?: boolean
5940
+ }]
5849
5941
  // ----- @typescript-eslint/switch-exhaustiveness-check -----
5850
5942
  type TypescriptEslintSwitchExhaustivenessCheck = []|[{
5851
5943
 
@@ -6476,6 +6568,8 @@ type JsdocCheckExamples = []|[{
6476
6568
  // ----- jsdoc/check-indentation -----
6477
6569
  type JsdocCheckIndentation = []|[{
6478
6570
 
6571
+ allowIndentedSections?: boolean
6572
+
6479
6573
  excludeTags?: string[]
6480
6574
  }]
6481
6575
  // ----- jsdoc/check-line-alignment -----
@@ -6861,6 +6955,8 @@ type JsdocRequireHyphenBeforeParamDescription = []|[("always" | "never")]|[("alw
6861
6955
  // ----- jsdoc/require-jsdoc -----
6862
6956
  type JsdocRequireJsdoc = []|[{
6863
6957
 
6958
+ checkAllFunctionExpressions?: boolean
6959
+
6864
6960
  checkConstructors?: boolean
6865
6961
 
6866
6962
  checkGetters?: (boolean | "no-setter")
@@ -6981,6 +7077,16 @@ type JsdocRequireParamType = []|[{
6981
7077
 
6982
7078
  setDefaultDestructuredRootType?: boolean
6983
7079
  }]
7080
+ // ----- jsdoc/require-rejects -----
7081
+ type JsdocRequireRejects = []|[{
7082
+
7083
+ contexts?: (string | {
7084
+ comment?: string
7085
+ context?: string
7086
+ })[]
7087
+
7088
+ exemptedBy?: string[]
7089
+ }]
6984
7090
  // ----- jsdoc/require-returns -----
6985
7091
  type JsdocRequireReturns = []|[{
6986
7092
 
@@ -7105,6 +7211,10 @@ type JsdocSortTags = []|[{
7105
7211
 
7106
7212
  reportTagGroupSpacing?: boolean
7107
7213
 
7214
+ tagExceptions?: {
7215
+ [k: string]: number
7216
+ }
7217
+
7108
7218
  tagSequence?: {
7109
7219
 
7110
7220
  tags?: string[]
@@ -7197,6 +7307,8 @@ type JsdocTypeFormatting = []|[{
7197
7307
 
7198
7308
  objectFieldSeparatorTrailingPunctuation?: boolean
7199
7309
 
7310
+ objectTypeBracketSpacing?: string
7311
+
7200
7312
  parameterDefaultValueSpacing?: string
7201
7313
 
7202
7314
  postMethodNameSpacing?: string
@@ -7207,6 +7319,8 @@ type JsdocTypeFormatting = []|[{
7207
7319
 
7208
7320
  stringQuotes?: ("double" | "single")
7209
7321
 
7322
+ trailingPunctuationMultilineOnly?: boolean
7323
+
7210
7324
  typeBracketSpacing?: string
7211
7325
 
7212
7326
  unionSpacing?: string
@@ -8237,11 +8351,13 @@ type PerfectionistSortArrayIncludes = {
8237
8351
 
8238
8352
  fallbackSort?: {
8239
8353
 
8240
- order?: ("asc" | "desc")
8354
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8241
8355
 
8242
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8356
+ order?: ("asc" | "desc")
8243
8357
  }
8244
8358
 
8359
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8360
+
8245
8361
  specialCharacters?: ("remove" | "trim" | "keep")
8246
8362
 
8247
8363
  ignoreCase?: boolean
@@ -8252,28 +8368,38 @@ type PerfectionistSortArrayIncludes = {
8252
8368
 
8253
8369
  order?: ("asc" | "desc")
8254
8370
 
8255
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8256
-
8257
- groupKind?: ("mixed" | "literals-first" | "spreads-first")
8258
-
8259
8371
  customGroups?: ({
8260
- newlinesInside?: (("always" | "never") | number)
8261
8372
 
8262
8373
  fallbackSort?: {
8263
8374
 
8264
- order?: ("asc" | "desc")
8375
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8265
8376
 
8266
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8377
+ order?: ("asc" | "desc")
8267
8378
  }
8268
8379
 
8380
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8381
+
8269
8382
  groupName: string
8383
+ newlinesInside?: ("ignore" | number)
8270
8384
 
8271
8385
  order?: ("asc" | "desc")
8272
8386
 
8273
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8274
- anyOf?: {
8387
+ anyOf: [{
8388
+
8389
+ elementNamePattern?: (({
8390
+
8391
+ pattern: string
8392
+
8393
+ flags?: string
8394
+ } | string)[] | ({
8395
+
8396
+ pattern: string
8397
+
8398
+ flags?: string
8399
+ } | string))
8275
8400
 
8276
8401
  selector?: ("literal" | "spread")
8402
+ }, ...({
8277
8403
 
8278
8404
  elementNamePattern?: (({
8279
8405
 
@@ -8286,25 +8412,25 @@ type PerfectionistSortArrayIncludes = {
8286
8412
 
8287
8413
  flags?: string
8288
8414
  } | string))
8289
- }[]
8415
+
8416
+ selector?: ("literal" | "spread")
8417
+ })[]]
8290
8418
  } | {
8291
- newlinesInside?: (("always" | "never") | number)
8292
8419
 
8293
8420
  fallbackSort?: {
8294
8421
 
8295
- order?: ("asc" | "desc")
8422
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8296
8423
 
8297
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8424
+ order?: ("asc" | "desc")
8298
8425
  }
8299
8426
 
8427
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8428
+
8300
8429
  groupName: string
8430
+ newlinesInside?: ("ignore" | number)
8301
8431
 
8302
8432
  order?: ("asc" | "desc")
8303
8433
 
8304
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8305
-
8306
- selector?: ("literal" | "spread")
8307
-
8308
8434
  elementNamePattern?: (({
8309
8435
 
8310
8436
  pattern: string
@@ -8316,7 +8442,31 @@ type PerfectionistSortArrayIncludes = {
8316
8442
 
8317
8443
  flags?: string
8318
8444
  } | string))
8445
+
8446
+ selector?: ("literal" | "spread")
8447
+ })[]
8448
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
8449
+
8450
+ groups?: (string | [string, ...(string)[]] | {
8451
+ newlinesBetween: ("ignore" | number)
8452
+ } | {
8453
+ group: (string | [string, ...(string)[]])
8454
+
8455
+ fallbackSort?: {
8456
+
8457
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8458
+
8459
+ order?: ("asc" | "desc")
8460
+ }
8461
+
8462
+ commentAbove?: string
8463
+
8464
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8465
+ newlinesInside?: ("ignore" | number)
8466
+
8467
+ order?: ("asc" | "desc")
8319
8468
  })[]
8469
+ newlinesBetween?: ("ignore" | number)
8320
8470
 
8321
8471
  useConfigurationIf?: {
8322
8472
 
@@ -8371,24 +8521,19 @@ type PerfectionistSortArrayIncludes = {
8371
8521
  })
8372
8522
 
8373
8523
  partitionByNewLine?: boolean
8374
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8375
-
8376
- groups?: (string | string[] | {
8377
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8378
-
8379
- commentAbove?: string
8380
- })[]
8381
8524
  }[]
8382
8525
  // ----- perfectionist/sort-classes -----
8383
8526
  type PerfectionistSortClasses = []|[{
8384
8527
 
8385
8528
  fallbackSort?: {
8386
8529
 
8387
- order?: ("asc" | "desc")
8530
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8388
8531
 
8389
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8532
+ order?: ("asc" | "desc")
8390
8533
  }
8391
8534
 
8535
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8536
+
8392
8537
  specialCharacters?: ("remove" | "trim" | "keep")
8393
8538
 
8394
8539
  ignoreCase?: boolean
@@ -8399,24 +8544,35 @@ type PerfectionistSortClasses = []|[{
8399
8544
 
8400
8545
  order?: ("asc" | "desc")
8401
8546
 
8402
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8403
-
8404
8547
  customGroups?: ({
8405
- newlinesInside?: (("always" | "never") | number)
8406
8548
 
8407
8549
  fallbackSort?: {
8408
8550
 
8409
- order?: ("asc" | "desc")
8551
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8410
8552
 
8411
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8553
+ order?: ("asc" | "desc")
8412
8554
  }
8413
8555
 
8556
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8557
+
8414
8558
  groupName: string
8559
+ newlinesInside?: ("ignore" | number)
8415
8560
 
8416
8561
  order?: ("asc" | "desc")
8417
8562
 
8418
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8419
- anyOf?: {
8563
+ anyOf: [{
8564
+
8565
+ elementNamePattern?: (({
8566
+
8567
+ pattern: string
8568
+
8569
+ flags?: string
8570
+ } | string)[] | ({
8571
+
8572
+ pattern: string
8573
+
8574
+ flags?: string
8575
+ } | string))
8420
8576
 
8421
8577
  modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
8422
8578
 
@@ -8445,6 +8601,7 @@ type PerfectionistSortClasses = []|[{
8445
8601
 
8446
8602
  flags?: string
8447
8603
  } | string))
8604
+ }, ...({
8448
8605
 
8449
8606
  elementNamePattern?: (({
8450
8607
 
@@ -8457,28 +8614,52 @@ type PerfectionistSortClasses = []|[{
8457
8614
 
8458
8615
  flags?: string
8459
8616
  } | string))
8460
- }[]
8617
+
8618
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
8619
+
8620
+ selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method")
8621
+
8622
+ decoratorNamePattern?: (({
8623
+
8624
+ pattern: string
8625
+
8626
+ flags?: string
8627
+ } | string)[] | ({
8628
+
8629
+ pattern: string
8630
+
8631
+ flags?: string
8632
+ } | string))
8633
+
8634
+ elementValuePattern?: (({
8635
+
8636
+ pattern: string
8637
+
8638
+ flags?: string
8639
+ } | string)[] | ({
8640
+
8641
+ pattern: string
8642
+
8643
+ flags?: string
8644
+ } | string))
8645
+ })[]]
8461
8646
  } | {
8462
- newlinesInside?: (("always" | "never") | number)
8463
8647
 
8464
8648
  fallbackSort?: {
8465
8649
 
8466
- order?: ("asc" | "desc")
8650
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8467
8651
 
8468
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8652
+ order?: ("asc" | "desc")
8469
8653
  }
8470
8654
 
8655
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8656
+
8471
8657
  groupName: string
8658
+ newlinesInside?: ("ignore" | number)
8472
8659
 
8473
8660
  order?: ("asc" | "desc")
8474
8661
 
8475
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8476
-
8477
- modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
8478
-
8479
- selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method")
8480
-
8481
- decoratorNamePattern?: (({
8662
+ elementNamePattern?: (({
8482
8663
 
8483
8664
  pattern: string
8484
8665
 
@@ -8490,7 +8671,11 @@ type PerfectionistSortClasses = []|[{
8490
8671
  flags?: string
8491
8672
  } | string))
8492
8673
 
8493
- elementValuePattern?: (({
8674
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
8675
+
8676
+ selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method")
8677
+
8678
+ decoratorNamePattern?: (({
8494
8679
 
8495
8680
  pattern: string
8496
8681
 
@@ -8502,7 +8687,7 @@ type PerfectionistSortClasses = []|[{
8502
8687
  flags?: string
8503
8688
  } | string))
8504
8689
 
8505
- elementNamePattern?: (({
8690
+ elementValuePattern?: (({
8506
8691
 
8507
8692
  pattern: string
8508
8693
 
@@ -8514,6 +8699,28 @@ type PerfectionistSortClasses = []|[{
8514
8699
  flags?: string
8515
8700
  } | string))
8516
8701
  })[]
8702
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
8703
+
8704
+ groups?: (string | [string, ...(string)[]] | {
8705
+ newlinesBetween: ("ignore" | number)
8706
+ } | {
8707
+ group: (string | [string, ...(string)[]])
8708
+
8709
+ fallbackSort?: {
8710
+
8711
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8712
+
8713
+ order?: ("asc" | "desc")
8714
+ }
8715
+
8716
+ commentAbove?: string
8717
+
8718
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8719
+ newlinesInside?: ("ignore" | number)
8720
+
8721
+ order?: ("asc" | "desc")
8722
+ })[]
8723
+ newlinesBetween?: ("ignore" | number)
8517
8724
 
8518
8725
  ignoreCallbackDependenciesPatterns?: (({
8519
8726
 
@@ -8565,24 +8772,19 @@ type PerfectionistSortClasses = []|[{
8565
8772
  })
8566
8773
 
8567
8774
  partitionByNewLine?: boolean
8568
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8569
-
8570
- groups?: (string | string[] | {
8571
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8572
-
8573
- commentAbove?: string
8574
- })[]
8575
8775
  }]
8576
8776
  // ----- perfectionist/sort-decorators -----
8577
- type PerfectionistSortDecorators = []|[{
8777
+ type PerfectionistSortDecorators = {
8578
8778
 
8579
8779
  fallbackSort?: {
8580
8780
 
8581
- order?: ("asc" | "desc")
8781
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8582
8782
 
8583
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8783
+ order?: ("asc" | "desc")
8584
8784
  }
8585
8785
 
8786
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8787
+
8586
8788
  specialCharacters?: ("remove" | "trim" | "keep")
8587
8789
 
8588
8790
  ignoreCase?: boolean
@@ -8593,43 +8795,66 @@ type PerfectionistSortDecorators = []|[{
8593
8795
 
8594
8796
  order?: ("asc" | "desc")
8595
8797
 
8596
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8597
-
8598
- sortOnParameters?: boolean
8599
-
8600
- sortOnProperties?: boolean
8601
-
8602
- sortOnAccessors?: boolean
8603
-
8604
- sortOnMethods?: boolean
8605
-
8606
- sortOnClasses?: boolean
8607
-
8608
- partitionByComment?: (boolean | (({
8798
+ customGroups?: ({
8609
8799
 
8610
- pattern: string
8800
+ fallbackSort?: {
8801
+
8802
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8803
+
8804
+ order?: ("asc" | "desc")
8805
+ }
8611
8806
 
8612
- flags?: string
8613
- } | string)[] | ({
8807
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8614
8808
 
8615
- pattern: string
8809
+ groupName: string
8810
+ newlinesInside?: ("ignore" | number)
8616
8811
 
8617
- flags?: string
8618
- } | string)) | {
8812
+ order?: ("asc" | "desc")
8619
8813
 
8620
- block?: (boolean | (({
8814
+ anyOf: [{
8621
8815
 
8622
- pattern: string
8816
+ elementNamePattern?: (({
8817
+
8818
+ pattern: string
8819
+
8820
+ flags?: string
8821
+ } | string)[] | ({
8822
+
8823
+ pattern: string
8824
+
8825
+ flags?: string
8826
+ } | string))
8827
+ }, ...({
8623
8828
 
8624
- flags?: string
8625
- } | string)[] | ({
8829
+ elementNamePattern?: (({
8830
+
8831
+ pattern: string
8832
+
8833
+ flags?: string
8834
+ } | string)[] | ({
8835
+
8836
+ pattern: string
8837
+
8838
+ flags?: string
8839
+ } | string))
8840
+ })[]]
8841
+ } | {
8842
+
8843
+ fallbackSort?: {
8626
8844
 
8627
- pattern: string
8845
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8628
8846
 
8629
- flags?: string
8630
- } | string)))
8847
+ order?: ("asc" | "desc")
8848
+ }
8631
8849
 
8632
- line?: (boolean | (({
8850
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8851
+
8852
+ groupName: string
8853
+ newlinesInside?: ("ignore" | number)
8854
+
8855
+ order?: ("asc" | "desc")
8856
+
8857
+ elementNamePattern?: (({
8633
8858
 
8634
8859
  pattern: string
8635
8860
 
@@ -8639,29 +8864,609 @@ type PerfectionistSortDecorators = []|[{
8639
8864
  pattern: string
8640
8865
 
8641
8866
  flags?: string
8642
- } | string)))
8643
- })
8644
-
8645
- customGroups?: {
8646
- [k: string]: (string | string[]) | undefined
8867
+ } | string))
8868
+ })[]
8869
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
8870
+
8871
+ groups?: (string | [string, ...(string)[]] | {
8872
+ newlinesBetween: ("ignore" | number)
8873
+ } | {
8874
+ group: (string | [string, ...(string)[]])
8875
+
8876
+ fallbackSort?: {
8877
+
8878
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8879
+
8880
+ order?: ("asc" | "desc")
8881
+ }
8882
+
8883
+ commentAbove?: string
8884
+
8885
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8886
+ newlinesInside?: ("ignore" | number)
8887
+
8888
+ order?: ("asc" | "desc")
8889
+ })[]
8890
+ newlinesBetween?: ("ignore" | number)
8891
+
8892
+ sortOnParameters?: boolean
8893
+
8894
+ sortOnProperties?: boolean
8895
+
8896
+ sortOnAccessors?: boolean
8897
+
8898
+ sortOnMethods?: boolean
8899
+
8900
+ sortOnClasses?: boolean
8901
+
8902
+ partitionByComment?: (boolean | (({
8903
+
8904
+ pattern: string
8905
+
8906
+ flags?: string
8907
+ } | string)[] | ({
8908
+
8909
+ pattern: string
8910
+
8911
+ flags?: string
8912
+ } | string)) | {
8913
+
8914
+ block?: (boolean | (({
8915
+
8916
+ pattern: string
8917
+
8918
+ flags?: string
8919
+ } | string)[] | ({
8920
+
8921
+ pattern: string
8922
+
8923
+ flags?: string
8924
+ } | string)))
8925
+
8926
+ line?: (boolean | (({
8927
+
8928
+ pattern: string
8929
+
8930
+ flags?: string
8931
+ } | string)[] | ({
8932
+
8933
+ pattern: string
8934
+
8935
+ flags?: string
8936
+ } | string)))
8937
+ })
8938
+
8939
+ partitionByNewLine?: boolean
8940
+ }[]
8941
+ // ----- perfectionist/sort-enums -----
8942
+ type PerfectionistSortEnums = []|[{
8943
+
8944
+ fallbackSort?: {
8945
+
8946
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8947
+
8948
+ order?: ("asc" | "desc")
8949
+ }
8950
+
8951
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8952
+
8953
+ specialCharacters?: ("remove" | "trim" | "keep")
8954
+
8955
+ ignoreCase?: boolean
8956
+
8957
+ alphabet?: string
8958
+
8959
+ locales?: (string | string[])
8960
+
8961
+ order?: ("asc" | "desc")
8962
+
8963
+ customGroups?: ({
8964
+
8965
+ fallbackSort?: {
8966
+
8967
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8968
+
8969
+ order?: ("asc" | "desc")
8970
+ }
8971
+
8972
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8973
+
8974
+ groupName: string
8975
+ newlinesInside?: ("ignore" | number)
8976
+
8977
+ order?: ("asc" | "desc")
8978
+
8979
+ anyOf: [{
8980
+
8981
+ elementNamePattern?: (({
8982
+
8983
+ pattern: string
8984
+
8985
+ flags?: string
8986
+ } | string)[] | ({
8987
+
8988
+ pattern: string
8989
+
8990
+ flags?: string
8991
+ } | string))
8992
+
8993
+ elementValuePattern?: (({
8994
+
8995
+ pattern: string
8996
+
8997
+ flags?: string
8998
+ } | string)[] | ({
8999
+
9000
+ pattern: string
9001
+
9002
+ flags?: string
9003
+ } | string))
9004
+ }, ...({
9005
+
9006
+ elementNamePattern?: (({
9007
+
9008
+ pattern: string
9009
+
9010
+ flags?: string
9011
+ } | string)[] | ({
9012
+
9013
+ pattern: string
9014
+
9015
+ flags?: string
9016
+ } | string))
9017
+
9018
+ elementValuePattern?: (({
9019
+
9020
+ pattern: string
9021
+
9022
+ flags?: string
9023
+ } | string)[] | ({
9024
+
9025
+ pattern: string
9026
+
9027
+ flags?: string
9028
+ } | string))
9029
+ })[]]
9030
+ } | {
9031
+
9032
+ fallbackSort?: {
9033
+
9034
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9035
+
9036
+ order?: ("asc" | "desc")
9037
+ }
9038
+
9039
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9040
+
9041
+ groupName: string
9042
+ newlinesInside?: ("ignore" | number)
9043
+
9044
+ order?: ("asc" | "desc")
9045
+
9046
+ elementNamePattern?: (({
9047
+
9048
+ pattern: string
9049
+
9050
+ flags?: string
9051
+ } | string)[] | ({
9052
+
9053
+ pattern: string
9054
+
9055
+ flags?: string
9056
+ } | string))
9057
+
9058
+ elementValuePattern?: (({
9059
+
9060
+ pattern: string
9061
+
9062
+ flags?: string
9063
+ } | string)[] | ({
9064
+
9065
+ pattern: string
9066
+
9067
+ flags?: string
9068
+ } | string))
9069
+ })[]
9070
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
9071
+
9072
+ groups?: (string | [string, ...(string)[]] | {
9073
+ newlinesBetween: ("ignore" | number)
9074
+ } | {
9075
+ group: (string | [string, ...(string)[]])
9076
+
9077
+ fallbackSort?: {
9078
+
9079
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9080
+
9081
+ order?: ("asc" | "desc")
9082
+ }
9083
+
9084
+ commentAbove?: string
9085
+
9086
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9087
+ newlinesInside?: ("ignore" | number)
9088
+
9089
+ order?: ("asc" | "desc")
9090
+ })[]
9091
+ newlinesBetween?: ("ignore" | number)
9092
+
9093
+ sortByValue?: ("always" | "ifNumericEnum" | "never")
9094
+
9095
+ useExperimentalDependencyDetection?: boolean
9096
+
9097
+ partitionByComment?: (boolean | (({
9098
+
9099
+ pattern: string
9100
+
9101
+ flags?: string
9102
+ } | string)[] | ({
9103
+
9104
+ pattern: string
9105
+
9106
+ flags?: string
9107
+ } | string)) | {
9108
+
9109
+ block?: (boolean | (({
9110
+
9111
+ pattern: string
9112
+
9113
+ flags?: string
9114
+ } | string)[] | ({
9115
+
9116
+ pattern: string
9117
+
9118
+ flags?: string
9119
+ } | string)))
9120
+
9121
+ line?: (boolean | (({
9122
+
9123
+ pattern: string
9124
+
9125
+ flags?: string
9126
+ } | string)[] | ({
9127
+
9128
+ pattern: string
9129
+
9130
+ flags?: string
9131
+ } | string)))
9132
+ })
9133
+
9134
+ partitionByNewLine?: boolean
9135
+ }]
9136
+ // ----- perfectionist/sort-export-attributes -----
9137
+ type PerfectionistSortExportAttributes = {
9138
+
9139
+ fallbackSort?: {
9140
+
9141
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9142
+
9143
+ order?: ("asc" | "desc")
8647
9144
  }
8648
9145
 
8649
- groups?: (string | string[] | {
8650
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9146
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9147
+
9148
+ specialCharacters?: ("remove" | "trim" | "keep")
9149
+
9150
+ ignoreCase?: boolean
9151
+
9152
+ alphabet?: string
9153
+
9154
+ locales?: (string | string[])
9155
+
9156
+ order?: ("asc" | "desc")
9157
+
9158
+ customGroups?: ({
9159
+
9160
+ fallbackSort?: {
9161
+
9162
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9163
+
9164
+ order?: ("asc" | "desc")
9165
+ }
9166
+
9167
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9168
+
9169
+ groupName: string
9170
+ newlinesInside?: ("ignore" | number)
9171
+
9172
+ order?: ("asc" | "desc")
9173
+
9174
+ anyOf: [{
9175
+
9176
+ elementNamePattern?: (({
9177
+
9178
+ pattern: string
9179
+
9180
+ flags?: string
9181
+ } | string)[] | ({
9182
+
9183
+ pattern: string
9184
+
9185
+ flags?: string
9186
+ } | string))
9187
+ }, ...({
9188
+
9189
+ elementNamePattern?: (({
9190
+
9191
+ pattern: string
9192
+
9193
+ flags?: string
9194
+ } | string)[] | ({
9195
+
9196
+ pattern: string
9197
+
9198
+ flags?: string
9199
+ } | string))
9200
+ })[]]
9201
+ } | {
9202
+
9203
+ fallbackSort?: {
9204
+
9205
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9206
+
9207
+ order?: ("asc" | "desc")
9208
+ }
9209
+
9210
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9211
+
9212
+ groupName: string
9213
+ newlinesInside?: ("ignore" | number)
9214
+
9215
+ order?: ("asc" | "desc")
9216
+
9217
+ elementNamePattern?: (({
9218
+
9219
+ pattern: string
9220
+
9221
+ flags?: string
9222
+ } | string)[] | ({
9223
+
9224
+ pattern: string
9225
+
9226
+ flags?: string
9227
+ } | string))
9228
+ })[]
9229
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
9230
+
9231
+ groups?: (string | [string, ...(string)[]] | {
9232
+ newlinesBetween: ("ignore" | number)
9233
+ } | {
9234
+ group: (string | [string, ...(string)[]])
9235
+
9236
+ fallbackSort?: {
9237
+
9238
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9239
+
9240
+ order?: ("asc" | "desc")
9241
+ }
9242
+
9243
+ commentAbove?: string
9244
+
9245
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9246
+ newlinesInside?: ("ignore" | number)
9247
+
9248
+ order?: ("asc" | "desc")
9249
+ })[]
9250
+ newlinesBetween?: ("ignore" | number)
9251
+
9252
+ partitionByComment?: (boolean | (({
9253
+
9254
+ pattern: string
9255
+
9256
+ flags?: string
9257
+ } | string)[] | ({
9258
+
9259
+ pattern: string
9260
+
9261
+ flags?: string
9262
+ } | string)) | {
9263
+
9264
+ block?: (boolean | (({
9265
+
9266
+ pattern: string
9267
+
9268
+ flags?: string
9269
+ } | string)[] | ({
9270
+
9271
+ pattern: string
9272
+
9273
+ flags?: string
9274
+ } | string)))
9275
+
9276
+ line?: (boolean | (({
9277
+
9278
+ pattern: string
9279
+
9280
+ flags?: string
9281
+ } | string)[] | ({
9282
+
9283
+ pattern: string
9284
+
9285
+ flags?: string
9286
+ } | string)))
9287
+ })
9288
+
9289
+ partitionByNewLine?: boolean
9290
+ }[]
9291
+ // ----- perfectionist/sort-exports -----
9292
+ type PerfectionistSortExports = {
9293
+
9294
+ fallbackSort?: {
9295
+
9296
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9297
+
9298
+ order?: ("asc" | "desc")
9299
+ }
9300
+
9301
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9302
+
9303
+ specialCharacters?: ("remove" | "trim" | "keep")
9304
+
9305
+ ignoreCase?: boolean
9306
+
9307
+ alphabet?: string
9308
+
9309
+ locales?: (string | string[])
9310
+
9311
+ order?: ("asc" | "desc")
9312
+
9313
+ customGroups?: ({
9314
+
9315
+ fallbackSort?: {
9316
+
9317
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9318
+
9319
+ order?: ("asc" | "desc")
9320
+ }
9321
+
9322
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9323
+
9324
+ groupName: string
9325
+ newlinesInside?: ("ignore" | number)
9326
+
9327
+ order?: ("asc" | "desc")
9328
+
9329
+ anyOf: [{
9330
+
9331
+ elementNamePattern?: (({
9332
+
9333
+ pattern: string
9334
+
9335
+ flags?: string
9336
+ } | string)[] | ({
9337
+
9338
+ pattern: string
9339
+
9340
+ flags?: string
9341
+ } | string))
9342
+
9343
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[]
9344
+
9345
+ selector?: "export"
9346
+ }, ...({
9347
+
9348
+ elementNamePattern?: (({
9349
+
9350
+ pattern: string
9351
+
9352
+ flags?: string
9353
+ } | string)[] | ({
9354
+
9355
+ pattern: string
9356
+
9357
+ flags?: string
9358
+ } | string))
9359
+
9360
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[]
9361
+
9362
+ selector?: "export"
9363
+ })[]]
9364
+ } | {
9365
+
9366
+ fallbackSort?: {
9367
+
9368
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9369
+
9370
+ order?: ("asc" | "desc")
9371
+ }
9372
+
9373
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9374
+
9375
+ groupName: string
9376
+ newlinesInside?: ("ignore" | number)
9377
+
9378
+ order?: ("asc" | "desc")
9379
+
9380
+ elementNamePattern?: (({
9381
+
9382
+ pattern: string
9383
+
9384
+ flags?: string
9385
+ } | string)[] | ({
9386
+
9387
+ pattern: string
9388
+
9389
+ flags?: string
9390
+ } | string))
9391
+
9392
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[]
9393
+
9394
+ selector?: "export"
9395
+ })[]
9396
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
9397
+
9398
+ groups?: (string | [string, ...(string)[]] | {
9399
+ newlinesBetween: ("ignore" | number)
9400
+ } | {
9401
+ group: (string | [string, ...(string)[]])
9402
+
9403
+ fallbackSort?: {
9404
+
9405
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9406
+
9407
+ order?: ("asc" | "desc")
9408
+ }
9409
+
9410
+ commentAbove?: string
9411
+
9412
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9413
+ newlinesInside?: ("ignore" | number)
9414
+
9415
+ order?: ("asc" | "desc")
9416
+ })[]
9417
+ newlinesBetween?: ("ignore" | number)
9418
+
9419
+ partitionByComment?: (boolean | (({
9420
+
9421
+ pattern: string
9422
+
9423
+ flags?: string
9424
+ } | string)[] | ({
9425
+
9426
+ pattern: string
9427
+
9428
+ flags?: string
9429
+ } | string)) | {
9430
+
9431
+ block?: (boolean | (({
9432
+
9433
+ pattern: string
9434
+
9435
+ flags?: string
9436
+ } | string)[] | ({
9437
+
9438
+ pattern: string
9439
+
9440
+ flags?: string
9441
+ } | string)))
8651
9442
 
8652
- commentAbove?: string
8653
- })[]
8654
- }]
8655
- // ----- perfectionist/sort-enums -----
8656
- type PerfectionistSortEnums = []|[{
9443
+ line?: (boolean | (({
9444
+
9445
+ pattern: string
9446
+
9447
+ flags?: string
9448
+ } | string)[] | ({
9449
+
9450
+ pattern: string
9451
+
9452
+ flags?: string
9453
+ } | string)))
9454
+ })
9455
+
9456
+ partitionByNewLine?: boolean
9457
+ }[]
9458
+ // ----- perfectionist/sort-heritage-clauses -----
9459
+ type PerfectionistSortHeritageClauses = {
8657
9460
 
8658
9461
  fallbackSort?: {
8659
9462
 
8660
- order?: ("asc" | "desc")
9463
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8661
9464
 
8662
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9465
+ order?: ("asc" | "desc")
8663
9466
  }
8664
9467
 
9468
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9469
+
8665
9470
  specialCharacters?: ("remove" | "trim" | "keep")
8666
9471
 
8667
9472
  ignoreCase?: boolean
@@ -8672,27 +9477,25 @@ type PerfectionistSortEnums = []|[{
8672
9477
 
8673
9478
  order?: ("asc" | "desc")
8674
9479
 
8675
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8676
9480
  customGroups?: ({
8677
- [k: string]: (string | string[]) | undefined
8678
- } | ({
8679
- newlinesInside?: (("always" | "never") | number)
8680
9481
 
8681
9482
  fallbackSort?: {
8682
9483
 
8683
- order?: ("asc" | "desc")
9484
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8684
9485
 
8685
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9486
+ order?: ("asc" | "desc")
8686
9487
  }
8687
9488
 
9489
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9490
+
8688
9491
  groupName: string
9492
+ newlinesInside?: ("ignore" | number)
8689
9493
 
8690
9494
  order?: ("asc" | "desc")
8691
9495
 
8692
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8693
- anyOf?: {
9496
+ anyOf: [{
8694
9497
 
8695
- elementValuePattern?: (({
9498
+ elementNamePattern?: (({
8696
9499
 
8697
9500
  pattern: string
8698
9501
 
@@ -8703,6 +9506,7 @@ type PerfectionistSortEnums = []|[{
8703
9506
 
8704
9507
  flags?: string
8705
9508
  } | string))
9509
+ }, ...({
8706
9510
 
8707
9511
  elementNamePattern?: (({
8708
9512
 
@@ -8715,24 +9519,24 @@ type PerfectionistSortEnums = []|[{
8715
9519
 
8716
9520
  flags?: string
8717
9521
  } | string))
8718
- }[]
9522
+ })[]]
8719
9523
  } | {
8720
- newlinesInside?: (("always" | "never") | number)
8721
9524
 
8722
9525
  fallbackSort?: {
8723
9526
 
8724
- order?: ("asc" | "desc")
9527
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8725
9528
 
8726
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9529
+ order?: ("asc" | "desc")
8727
9530
  }
8728
9531
 
9532
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9533
+
8729
9534
  groupName: string
9535
+ newlinesInside?: ("ignore" | number)
8730
9536
 
8731
9537
  order?: ("asc" | "desc")
8732
9538
 
8733
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8734
-
8735
- elementValuePattern?: (({
9539
+ elementNamePattern?: (({
8736
9540
 
8737
9541
  pattern: string
8738
9542
 
@@ -8743,23 +9547,31 @@ type PerfectionistSortEnums = []|[{
8743
9547
 
8744
9548
  flags?: string
8745
9549
  } | string))
9550
+ })[]
9551
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
9552
+
9553
+ groups?: (string | [string, ...(string)[]] | {
9554
+ newlinesBetween: ("ignore" | number)
9555
+ } | {
9556
+ group: (string | [string, ...(string)[]])
8746
9557
 
8747
- elementNamePattern?: (({
8748
-
8749
- pattern: string
8750
-
8751
- flags?: string
8752
- } | string)[] | ({
9558
+ fallbackSort?: {
8753
9559
 
8754
- pattern: string
9560
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8755
9561
 
8756
- flags?: string
8757
- } | string))
8758
- })[])
8759
-
8760
- forceNumericSort?: boolean
9562
+ order?: ("asc" | "desc")
9563
+ }
9564
+
9565
+ commentAbove?: string
9566
+
9567
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9568
+ newlinesInside?: ("ignore" | number)
9569
+
9570
+ order?: ("asc" | "desc")
9571
+ })[]
9572
+ newlinesBetween?: ("ignore" | number)
8761
9573
 
8762
- sortByValue?: boolean
9574
+ partitionByNewLine?: boolean
8763
9575
 
8764
9576
  partitionByComment?: (boolean | (({
8765
9577
 
@@ -8797,26 +9609,19 @@ type PerfectionistSortEnums = []|[{
8797
9609
  flags?: string
8798
9610
  } | string)))
8799
9611
  })
8800
-
8801
- partitionByNewLine?: boolean
8802
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8803
-
8804
- groups?: (string | string[] | {
8805
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8806
-
8807
- commentAbove?: string
8808
- })[]
8809
- }]
8810
- // ----- perfectionist/sort-exports -----
8811
- type PerfectionistSortExports = {
9612
+ }[]
9613
+ // ----- perfectionist/sort-import-attributes -----
9614
+ type PerfectionistSortImportAttributes = {
8812
9615
 
8813
9616
  fallbackSort?: {
8814
9617
 
8815
- order?: ("asc" | "desc")
9618
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8816
9619
 
8817
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9620
+ order?: ("asc" | "desc")
8818
9621
  }
8819
9622
 
9623
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9624
+
8820
9625
  specialCharacters?: ("remove" | "trim" | "keep")
8821
9626
 
8822
9627
  ignoreCase?: boolean
@@ -8827,30 +9632,36 @@ type PerfectionistSortExports = {
8827
9632
 
8828
9633
  order?: ("asc" | "desc")
8829
9634
 
8830
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8831
-
8832
- groupKind?: ("mixed" | "values-first" | "types-first")
8833
-
8834
9635
  customGroups?: ({
8835
- newlinesInside?: (("always" | "never") | number)
8836
9636
 
8837
9637
  fallbackSort?: {
8838
9638
 
8839
- order?: ("asc" | "desc")
9639
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8840
9640
 
8841
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9641
+ order?: ("asc" | "desc")
8842
9642
  }
8843
9643
 
9644
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9645
+
8844
9646
  groupName: string
9647
+ newlinesInside?: ("ignore" | number)
8845
9648
 
8846
9649
  order?: ("asc" | "desc")
8847
9650
 
8848
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8849
- anyOf?: {
8850
-
8851
- modifiers?: ("value" | "type")[]
9651
+ anyOf: [{
8852
9652
 
8853
- selector?: "export"
9653
+ elementNamePattern?: (({
9654
+
9655
+ pattern: string
9656
+
9657
+ flags?: string
9658
+ } | string)[] | ({
9659
+
9660
+ pattern: string
9661
+
9662
+ flags?: string
9663
+ } | string))
9664
+ }, ...({
8854
9665
 
8855
9666
  elementNamePattern?: (({
8856
9667
 
@@ -8863,27 +9674,23 @@ type PerfectionistSortExports = {
8863
9674
 
8864
9675
  flags?: string
8865
9676
  } | string))
8866
- }[]
9677
+ })[]]
8867
9678
  } | {
8868
- newlinesInside?: (("always" | "never") | number)
8869
9679
 
8870
9680
  fallbackSort?: {
8871
9681
 
8872
- order?: ("asc" | "desc")
9682
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
8873
9683
 
8874
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9684
+ order?: ("asc" | "desc")
8875
9685
  }
8876
9686
 
9687
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9688
+
8877
9689
  groupName: string
9690
+ newlinesInside?: ("ignore" | number)
8878
9691
 
8879
9692
  order?: ("asc" | "desc")
8880
9693
 
8881
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8882
-
8883
- modifiers?: ("value" | "type")[]
8884
-
8885
- selector?: "export"
8886
-
8887
9694
  elementNamePattern?: (({
8888
9695
 
8889
9696
  pattern: string
@@ -8896,6 +9703,28 @@ type PerfectionistSortExports = {
8896
9703
  flags?: string
8897
9704
  } | string))
8898
9705
  })[]
9706
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
9707
+
9708
+ groups?: (string | [string, ...(string)[]] | {
9709
+ newlinesBetween: ("ignore" | number)
9710
+ } | {
9711
+ group: (string | [string, ...(string)[]])
9712
+
9713
+ fallbackSort?: {
9714
+
9715
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9716
+
9717
+ order?: ("asc" | "desc")
9718
+ }
9719
+
9720
+ commentAbove?: string
9721
+
9722
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9723
+ newlinesInside?: ("ignore" | number)
9724
+
9725
+ order?: ("asc" | "desc")
9726
+ })[]
9727
+ newlinesBetween?: ("ignore" | number)
8899
9728
 
8900
9729
  partitionByComment?: (boolean | (({
8901
9730
 
@@ -8935,56 +9764,20 @@ type PerfectionistSortExports = {
8935
9764
  })
8936
9765
 
8937
9766
  partitionByNewLine?: boolean
8938
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8939
-
8940
- groups?: (string | string[] | {
8941
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8942
-
8943
- commentAbove?: string
8944
- })[]
8945
9767
  }[]
8946
- // ----- perfectionist/sort-heritage-clauses -----
8947
- type PerfectionistSortHeritageClauses = []|[{
8948
-
8949
- fallbackSort?: {
8950
-
8951
- order?: ("asc" | "desc")
8952
-
8953
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8954
- }
8955
-
8956
- specialCharacters?: ("remove" | "trim" | "keep")
8957
-
8958
- ignoreCase?: boolean
8959
-
8960
- alphabet?: string
8961
-
8962
- locales?: (string | string[])
8963
-
8964
- order?: ("asc" | "desc")
8965
-
8966
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8967
-
8968
- customGroups?: {
8969
- [k: string]: (string | string[]) | undefined
8970
- }
8971
-
8972
- groups?: (string | string[] | {
8973
- newlinesBetween?: (("ignore" | "always" | "never") | number)
8974
-
8975
- commentAbove?: string
8976
- })[]
8977
- }]
8978
9768
  // ----- perfectionist/sort-imports -----
8979
9769
  type PerfectionistSortImports = {
8980
9770
 
8981
9771
  fallbackSort?: {
8982
9772
 
8983
- order?: ("asc" | "desc")
9773
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first")
8984
9774
 
8985
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9775
+ order?: ("asc" | "desc")
9776
+ sortBy?: ("specifier" | "path")
8986
9777
  }
8987
9778
 
9779
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first")
9780
+
8988
9781
  specialCharacters?: ("remove" | "trim" | "keep")
8989
9782
 
8990
9783
  ignoreCase?: boolean
@@ -8994,39 +9787,29 @@ type PerfectionistSortImports = {
8994
9787
  locales?: (string | string[])
8995
9788
 
8996
9789
  order?: ("asc" | "desc")
9790
+ sortBy?: ("specifier" | "path")
8997
9791
 
8998
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
8999
9792
  customGroups?: ({
9000
9793
 
9001
- value?: {
9002
- [k: string]: (string | string[]) | undefined
9003
- }
9004
-
9005
- type?: {
9006
- [k: string]: (string | string[]) | undefined
9007
- }
9008
- } | ({
9009
- newlinesInside?: (("always" | "never") | number)
9010
-
9011
9794
  fallbackSort?: {
9012
9795
 
9013
- order?: ("asc" | "desc")
9796
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first")
9014
9797
 
9015
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9798
+ order?: ("asc" | "desc")
9799
+ sortBy?: ("specifier" | "path")
9016
9800
  }
9017
9801
 
9802
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first")
9803
+
9018
9804
  groupName: string
9805
+ newlinesInside?: ("ignore" | number)
9019
9806
 
9020
9807
  order?: ("asc" | "desc")
9808
+ sortBy?: ("specifier" | "path")
9021
9809
 
9022
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9023
- anyOf?: {
9024
-
9025
- modifiers?: ("default" | "named" | "require" | "side-effect" | "ts-equals" | "type" | "value" | "wildcard")[]
9026
-
9027
- selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type")
9810
+ anyOf: [{
9028
9811
 
9029
- elementValuePattern?: (({
9812
+ elementNamePattern?: (({
9030
9813
 
9031
9814
  pattern: string
9032
9815
 
@@ -9038,6 +9821,11 @@ type PerfectionistSortImports = {
9038
9821
  flags?: string
9039
9822
  } | string))
9040
9823
 
9824
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[]
9825
+
9826
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type")
9827
+ }, ...({
9828
+
9041
9829
  elementNamePattern?: (({
9042
9830
 
9043
9831
  pattern: string
@@ -9049,28 +9837,30 @@ type PerfectionistSortImports = {
9049
9837
 
9050
9838
  flags?: string
9051
9839
  } | string))
9052
- }[]
9840
+
9841
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[]
9842
+
9843
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type")
9844
+ })[]]
9053
9845
  } | {
9054
- newlinesInside?: (("always" | "never") | number)
9055
9846
 
9056
9847
  fallbackSort?: {
9057
9848
 
9058
- order?: ("asc" | "desc")
9849
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first")
9059
9850
 
9060
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9851
+ order?: ("asc" | "desc")
9852
+ sortBy?: ("specifier" | "path")
9061
9853
  }
9062
9854
 
9855
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first")
9856
+
9063
9857
  groupName: string
9858
+ newlinesInside?: ("ignore" | number)
9064
9859
 
9065
9860
  order?: ("asc" | "desc")
9861
+ sortBy?: ("specifier" | "path")
9066
9862
 
9067
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9068
-
9069
- modifiers?: ("default" | "named" | "require" | "side-effect" | "ts-equals" | "type" | "value" | "wildcard")[]
9070
-
9071
- selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type")
9072
-
9073
- elementValuePattern?: (({
9863
+ elementNamePattern?: (({
9074
9864
 
9075
9865
  pattern: string
9076
9866
 
@@ -9082,18 +9872,34 @@ type PerfectionistSortImports = {
9082
9872
  flags?: string
9083
9873
  } | string))
9084
9874
 
9085
- elementNamePattern?: (({
9086
-
9087
- pattern: string
9088
-
9089
- flags?: string
9090
- } | string)[] | ({
9875
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[]
9876
+
9877
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type")
9878
+ })[]
9879
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
9880
+
9881
+ groups?: (string | [string, ...(string)[]] | {
9882
+ newlinesBetween: ("ignore" | number)
9883
+ } | {
9884
+ group: (string | [string, ...(string)[]])
9885
+
9886
+ fallbackSort?: {
9091
9887
 
9092
- pattern: string
9888
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first")
9093
9889
 
9094
- flags?: string
9095
- } | string))
9096
- })[])
9890
+ order?: ("asc" | "desc")
9891
+ sortBy?: ("specifier" | "path")
9892
+ }
9893
+
9894
+ commentAbove?: string
9895
+
9896
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "type-import-first")
9897
+ newlinesInside?: ("ignore" | number)
9898
+
9899
+ order?: ("asc" | "desc")
9900
+ sortBy?: ("specifier" | "path")
9901
+ })[]
9902
+ newlinesBetween?: ("ignore" | number)
9097
9903
  tsconfig?: {
9098
9904
 
9099
9905
  rootDir: string
@@ -9107,7 +9913,7 @@ type PerfectionistSortImports = {
9107
9913
 
9108
9914
  environment?: ("node" | "bun")
9109
9915
 
9110
- tsconfigRootDir?: string
9916
+ useExperimentalDependencyDetection?: boolean
9111
9917
 
9112
9918
  partitionByComment?: (boolean | (({
9113
9919
 
@@ -9147,7 +9953,6 @@ type PerfectionistSortImports = {
9147
9953
  })
9148
9954
 
9149
9955
  partitionByNewLine?: boolean
9150
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9151
9956
 
9152
9957
  internalPattern?: (({
9153
9958
 
@@ -9160,24 +9965,20 @@ type PerfectionistSortImports = {
9160
9965
 
9161
9966
  flags?: string
9162
9967
  } | string))
9163
-
9164
- groups?: (string | string[] | {
9165
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9166
-
9167
- commentAbove?: string
9168
- })[]
9169
9968
  }[]
9170
9969
  // ----- perfectionist/sort-interfaces -----
9171
9970
  type PerfectionistSortInterfaces = {
9172
9971
 
9173
9972
  fallbackSort?: {
9174
9973
 
9175
- order?: ("asc" | "desc")
9974
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9176
9975
 
9177
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9976
+ order?: ("asc" | "desc")
9178
9977
  sortBy?: ("name" | "value")
9179
9978
  }
9180
9979
 
9980
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9981
+
9181
9982
  specialCharacters?: ("remove" | "trim" | "keep")
9182
9983
 
9183
9984
  ignoreCase?: boolean
@@ -9187,31 +9988,43 @@ type PerfectionistSortInterfaces = {
9187
9988
  locales?: (string | string[])
9188
9989
 
9189
9990
  order?: ("asc" | "desc")
9991
+ sortBy?: ("name" | "value")
9190
9992
 
9191
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9192
9993
  customGroups?: ({
9193
- [k: string]: (string | string[]) | undefined
9194
- } | ({
9195
- newlinesInside?: (("always" | "never") | number)
9196
9994
 
9197
9995
  fallbackSort?: {
9198
9996
 
9199
- order?: ("asc" | "desc")
9997
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9200
9998
 
9201
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9999
+ order?: ("asc" | "desc")
9202
10000
  sortBy?: ("name" | "value")
9203
10001
  }
9204
10002
 
10003
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10004
+
9205
10005
  groupName: string
10006
+ newlinesInside?: ("ignore" | number)
9206
10007
 
9207
10008
  order?: ("asc" | "desc")
10009
+ sortBy?: ("name" | "value")
9208
10010
 
9209
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9210
- anyOf?: {
10011
+ anyOf: [{
10012
+
10013
+ elementNamePattern?: (({
10014
+
10015
+ pattern: string
10016
+
10017
+ flags?: string
10018
+ } | string)[] | ({
10019
+
10020
+ pattern: string
10021
+
10022
+ flags?: string
10023
+ } | string))
9211
10024
 
9212
10025
  modifiers?: ("optional" | "required" | "multiline")[]
9213
10026
 
9214
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
10027
+ selector?: ("index-signature" | "member" | "method" | "property")
9215
10028
 
9216
10029
  elementValuePattern?: (({
9217
10030
 
@@ -9224,6 +10037,7 @@ type PerfectionistSortInterfaces = {
9224
10037
 
9225
10038
  flags?: string
9226
10039
  } | string))
10040
+ }, ...({
9227
10041
 
9228
10042
  elementNamePattern?: (({
9229
10043
 
@@ -9236,28 +10050,56 @@ type PerfectionistSortInterfaces = {
9236
10050
 
9237
10051
  flags?: string
9238
10052
  } | string))
9239
- sortBy?: ("name" | "value")
9240
- }[]
10053
+
10054
+ modifiers?: ("optional" | "required" | "multiline")[]
10055
+
10056
+ selector?: ("index-signature" | "member" | "method" | "property")
10057
+
10058
+ elementValuePattern?: (({
10059
+
10060
+ pattern: string
10061
+
10062
+ flags?: string
10063
+ } | string)[] | ({
10064
+
10065
+ pattern: string
10066
+
10067
+ flags?: string
10068
+ } | string))
10069
+ })[]]
9241
10070
  } | {
9242
- newlinesInside?: (("always" | "never") | number)
9243
10071
 
9244
10072
  fallbackSort?: {
9245
10073
 
9246
- order?: ("asc" | "desc")
10074
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9247
10075
 
9248
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10076
+ order?: ("asc" | "desc")
9249
10077
  sortBy?: ("name" | "value")
9250
10078
  }
9251
10079
 
10080
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10081
+
9252
10082
  groupName: string
10083
+ newlinesInside?: ("ignore" | number)
9253
10084
 
9254
10085
  order?: ("asc" | "desc")
10086
+ sortBy?: ("name" | "value")
9255
10087
 
9256
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10088
+ elementNamePattern?: (({
10089
+
10090
+ pattern: string
10091
+
10092
+ flags?: string
10093
+ } | string)[] | ({
10094
+
10095
+ pattern: string
10096
+
10097
+ flags?: string
10098
+ } | string))
9257
10099
 
9258
10100
  modifiers?: ("optional" | "required" | "multiline")[]
9259
10101
 
9260
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
10102
+ selector?: ("index-signature" | "member" | "method" | "property")
9261
10103
 
9262
10104
  elementValuePattern?: (({
9263
10105
 
@@ -9270,8 +10112,35 @@ type PerfectionistSortInterfaces = {
9270
10112
 
9271
10113
  flags?: string
9272
10114
  } | string))
10115
+ })[]
10116
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
10117
+
10118
+ groups?: (string | [string, ...(string)[]] | {
10119
+ newlinesBetween: ("ignore" | number)
10120
+ } | {
10121
+ group: (string | [string, ...(string)[]])
9273
10122
 
9274
- elementNamePattern?: (({
10123
+ fallbackSort?: {
10124
+
10125
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10126
+
10127
+ order?: ("asc" | "desc")
10128
+ sortBy?: ("name" | "value")
10129
+ }
10130
+
10131
+ commentAbove?: string
10132
+
10133
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10134
+ newlinesInside?: ("ignore" | number)
10135
+
10136
+ order?: ("asc" | "desc")
10137
+ sortBy?: ("name" | "value")
10138
+ })[]
10139
+ newlinesBetween?: ("ignore" | number)
10140
+
10141
+ useConfigurationIf?: {
10142
+
10143
+ allNamesMatchPattern?: (({
9275
10144
 
9276
10145
  pattern: string
9277
10146
 
@@ -9282,19 +10151,17 @@ type PerfectionistSortInterfaces = {
9282
10151
 
9283
10152
  flags?: string
9284
10153
  } | string))
9285
- sortBy?: ("name" | "value")
9286
- })[])
9287
-
9288
- groupKind?: ("mixed" | "required-first" | "optional-first")
9289
-
9290
- useConfigurationIf?: {
9291
10154
 
9292
- allNamesMatchPattern?: (({
10155
+ hasNumericKeysOnly?: boolean
10156
+
10157
+ declarationCommentMatchesPattern?: (({
10158
+ scope?: ("shallow" | "deep")
9293
10159
 
9294
10160
  pattern: string
9295
10161
 
9296
10162
  flags?: string
9297
10163
  } | string)[] | ({
10164
+ scope?: ("shallow" | "deep")
9298
10165
 
9299
10166
  pattern: string
9300
10167
 
@@ -9302,11 +10169,13 @@ type PerfectionistSortInterfaces = {
9302
10169
  } | string))
9303
10170
 
9304
10171
  declarationMatchesPattern?: (({
10172
+ scope?: ("shallow" | "deep")
9305
10173
 
9306
10174
  pattern: string
9307
10175
 
9308
10176
  flags?: string
9309
10177
  } | string)[] | ({
10178
+ scope?: ("shallow" | "deep")
9310
10179
 
9311
10180
  pattern: string
9312
10181
 
@@ -9352,37 +10221,19 @@ type PerfectionistSortInterfaces = {
9352
10221
  })
9353
10222
 
9354
10223
  partitionByNewLine?: boolean
9355
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9356
-
9357
- ignorePattern?: (({
9358
-
9359
- pattern: string
9360
-
9361
- flags?: string
9362
- } | string)[] | ({
9363
-
9364
- pattern: string
9365
-
9366
- flags?: string
9367
- } | string))
9368
- sortBy?: ("name" | "value")
9369
-
9370
- groups?: (string | string[] | {
9371
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9372
-
9373
- commentAbove?: string
9374
- })[]
9375
10224
  }[]
9376
10225
  // ----- perfectionist/sort-intersection-types -----
9377
10226
  type PerfectionistSortIntersectionTypes = {
9378
10227
 
9379
10228
  fallbackSort?: {
9380
10229
 
9381
- order?: ("asc" | "desc")
10230
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9382
10231
 
9383
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10232
+ order?: ("asc" | "desc")
9384
10233
  }
9385
10234
 
10235
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10236
+
9386
10237
  specialCharacters?: ("remove" | "trim" | "keep")
9387
10238
 
9388
10239
  ignoreCase?: boolean
@@ -9393,26 +10244,38 @@ type PerfectionistSortIntersectionTypes = {
9393
10244
 
9394
10245
  order?: ("asc" | "desc")
9395
10246
 
9396
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9397
-
9398
10247
  customGroups?: ({
9399
- newlinesInside?: (("always" | "never") | number)
9400
10248
 
9401
10249
  fallbackSort?: {
9402
10250
 
9403
- order?: ("asc" | "desc")
10251
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9404
10252
 
9405
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10253
+ order?: ("asc" | "desc")
9406
10254
  }
9407
10255
 
10256
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10257
+
9408
10258
  groupName: string
10259
+ newlinesInside?: ("ignore" | number)
9409
10260
 
9410
10261
  order?: ("asc" | "desc")
9411
10262
 
9412
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9413
- anyOf?: {
10263
+ anyOf: [{
10264
+
10265
+ elementNamePattern?: (({
10266
+
10267
+ pattern: string
10268
+
10269
+ flags?: string
10270
+ } | string)[] | ({
10271
+
10272
+ pattern: string
10273
+
10274
+ flags?: string
10275
+ } | string))
9414
10276
 
9415
10277
  selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union")
10278
+ }, ...({
9416
10279
 
9417
10280
  elementNamePattern?: (({
9418
10281
 
@@ -9425,25 +10288,25 @@ type PerfectionistSortIntersectionTypes = {
9425
10288
 
9426
10289
  flags?: string
9427
10290
  } | string))
9428
- }[]
10291
+
10292
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union")
10293
+ })[]]
9429
10294
  } | {
9430
- newlinesInside?: (("always" | "never") | number)
9431
10295
 
9432
10296
  fallbackSort?: {
9433
10297
 
9434
- order?: ("asc" | "desc")
10298
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9435
10299
 
9436
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10300
+ order?: ("asc" | "desc")
9437
10301
  }
9438
10302
 
10303
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10304
+
9439
10305
  groupName: string
10306
+ newlinesInside?: ("ignore" | number)
9440
10307
 
9441
10308
  order?: ("asc" | "desc")
9442
10309
 
9443
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9444
-
9445
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union")
9446
-
9447
10310
  elementNamePattern?: (({
9448
10311
 
9449
10312
  pattern: string
@@ -9455,7 +10318,31 @@ type PerfectionistSortIntersectionTypes = {
9455
10318
 
9456
10319
  flags?: string
9457
10320
  } | string))
10321
+
10322
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union")
10323
+ })[]
10324
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
10325
+
10326
+ groups?: (string | [string, ...(string)[]] | {
10327
+ newlinesBetween: ("ignore" | number)
10328
+ } | {
10329
+ group: (string | [string, ...(string)[]])
10330
+
10331
+ fallbackSort?: {
10332
+
10333
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10334
+
10335
+ order?: ("asc" | "desc")
10336
+ }
10337
+
10338
+ commentAbove?: string
10339
+
10340
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10341
+ newlinesInside?: ("ignore" | number)
10342
+
10343
+ order?: ("asc" | "desc")
9458
10344
  })[]
10345
+ newlinesBetween?: ("ignore" | number)
9459
10346
 
9460
10347
  partitionByComment?: (boolean | (({
9461
10348
 
@@ -9495,24 +10382,19 @@ type PerfectionistSortIntersectionTypes = {
9495
10382
  })
9496
10383
 
9497
10384
  partitionByNewLine?: boolean
9498
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9499
-
9500
- groups?: (string | string[] | {
9501
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9502
-
9503
- commentAbove?: string
9504
- })[]
9505
10385
  }[]
9506
10386
  // ----- perfectionist/sort-jsx-props -----
9507
10387
  type PerfectionistSortJsxProps = {
9508
10388
 
9509
10389
  fallbackSort?: {
9510
10390
 
9511
- order?: ("asc" | "desc")
10391
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9512
10392
 
9513
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10393
+ order?: ("asc" | "desc")
9514
10394
  }
9515
10395
 
10396
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10397
+
9516
10398
  specialCharacters?: ("remove" | "trim" | "keep")
9517
10399
 
9518
10400
  ignoreCase?: boolean
@@ -9523,29 +10405,39 @@ type PerfectionistSortJsxProps = {
9523
10405
 
9524
10406
  order?: ("asc" | "desc")
9525
10407
 
9526
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9527
10408
  customGroups?: ({
9528
- [k: string]: (string | string[]) | undefined
9529
- } | ({
9530
- newlinesInside?: (("always" | "never") | number)
9531
10409
 
9532
10410
  fallbackSort?: {
9533
10411
 
9534
- order?: ("asc" | "desc")
10412
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9535
10413
 
9536
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10414
+ order?: ("asc" | "desc")
9537
10415
  }
9538
10416
 
10417
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10418
+
9539
10419
  groupName: string
10420
+ newlinesInside?: ("ignore" | number)
9540
10421
 
9541
10422
  order?: ("asc" | "desc")
9542
10423
 
9543
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9544
- anyOf?: {
10424
+ anyOf: [{
10425
+
10426
+ elementNamePattern?: (({
10427
+
10428
+ pattern: string
10429
+
10430
+ flags?: string
10431
+ } | string)[] | ({
10432
+
10433
+ pattern: string
10434
+
10435
+ flags?: string
10436
+ } | string))
9545
10437
 
9546
10438
  modifiers?: ("shorthand" | "multiline")[]
9547
10439
 
9548
- selector?: ("multiline" | "prop" | "shorthand")
10440
+ selector?: "prop"
9549
10441
 
9550
10442
  elementValuePattern?: (({
9551
10443
 
@@ -9558,6 +10450,7 @@ type PerfectionistSortJsxProps = {
9558
10450
 
9559
10451
  flags?: string
9560
10452
  } | string))
10453
+ }, ...({
9561
10454
 
9562
10455
  elementNamePattern?: (({
9563
10456
 
@@ -9570,28 +10463,40 @@ type PerfectionistSortJsxProps = {
9570
10463
 
9571
10464
  flags?: string
9572
10465
  } | string))
9573
- }[]
10466
+
10467
+ modifiers?: ("shorthand" | "multiline")[]
10468
+
10469
+ selector?: "prop"
10470
+
10471
+ elementValuePattern?: (({
10472
+
10473
+ pattern: string
10474
+
10475
+ flags?: string
10476
+ } | string)[] | ({
10477
+
10478
+ pattern: string
10479
+
10480
+ flags?: string
10481
+ } | string))
10482
+ })[]]
9574
10483
  } | {
9575
- newlinesInside?: (("always" | "never") | number)
9576
10484
 
9577
10485
  fallbackSort?: {
9578
10486
 
9579
- order?: ("asc" | "desc")
10487
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9580
10488
 
9581
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10489
+ order?: ("asc" | "desc")
9582
10490
  }
9583
10491
 
10492
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10493
+
9584
10494
  groupName: string
10495
+ newlinesInside?: ("ignore" | number)
9585
10496
 
9586
10497
  order?: ("asc" | "desc")
9587
10498
 
9588
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9589
-
9590
- modifiers?: ("shorthand" | "multiline")[]
9591
-
9592
- selector?: ("multiline" | "prop" | "shorthand")
9593
-
9594
- elementValuePattern?: (({
10499
+ elementNamePattern?: (({
9595
10500
 
9596
10501
  pattern: string
9597
10502
 
@@ -9603,7 +10508,11 @@ type PerfectionistSortJsxProps = {
9603
10508
  flags?: string
9604
10509
  } | string))
9605
10510
 
9606
- elementNamePattern?: (({
10511
+ modifiers?: ("shorthand" | "multiline")[]
10512
+
10513
+ selector?: "prop"
10514
+
10515
+ elementValuePattern?: (({
9607
10516
 
9608
10517
  pattern: string
9609
10518
 
@@ -9614,7 +10523,29 @@ type PerfectionistSortJsxProps = {
9614
10523
 
9615
10524
  flags?: string
9616
10525
  } | string))
9617
- })[])
10526
+ })[]
10527
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
10528
+
10529
+ groups?: (string | [string, ...(string)[]] | {
10530
+ newlinesBetween: ("ignore" | number)
10531
+ } | {
10532
+ group: (string | [string, ...(string)[]])
10533
+
10534
+ fallbackSort?: {
10535
+
10536
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10537
+
10538
+ order?: ("asc" | "desc")
10539
+ }
10540
+
10541
+ commentAbove?: string
10542
+
10543
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10544
+ newlinesInside?: ("ignore" | number)
10545
+
10546
+ order?: ("asc" | "desc")
10547
+ })[]
10548
+ newlinesBetween?: ("ignore" | number)
9618
10549
 
9619
10550
  useConfigurationIf?: {
9620
10551
 
@@ -9644,36 +10575,19 @@ type PerfectionistSortJsxProps = {
9644
10575
  }
9645
10576
 
9646
10577
  partitionByNewLine?: boolean
9647
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9648
-
9649
- ignorePattern?: (({
9650
-
9651
- pattern: string
9652
-
9653
- flags?: string
9654
- } | string)[] | ({
9655
-
9656
- pattern: string
9657
-
9658
- flags?: string
9659
- } | string))
9660
-
9661
- groups?: (string | string[] | {
9662
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9663
-
9664
- commentAbove?: string
9665
- })[]
9666
10578
  }[]
9667
10579
  // ----- perfectionist/sort-maps -----
9668
10580
  type PerfectionistSortMaps = {
9669
10581
 
9670
10582
  fallbackSort?: {
9671
10583
 
9672
- order?: ("asc" | "desc")
10584
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9673
10585
 
9674
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10586
+ order?: ("asc" | "desc")
9675
10587
  }
9676
10588
 
10589
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10590
+
9677
10591
  specialCharacters?: ("remove" | "trim" | "keep")
9678
10592
 
9679
10593
  ignoreCase?: boolean
@@ -9684,24 +10598,36 @@ type PerfectionistSortMaps = {
9684
10598
 
9685
10599
  order?: ("asc" | "desc")
9686
10600
 
9687
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9688
-
9689
10601
  customGroups?: ({
9690
- newlinesInside?: (("always" | "never") | number)
9691
10602
 
9692
10603
  fallbackSort?: {
9693
10604
 
9694
- order?: ("asc" | "desc")
10605
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9695
10606
 
9696
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10607
+ order?: ("asc" | "desc")
9697
10608
  }
9698
10609
 
10610
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10611
+
9699
10612
  groupName: string
10613
+ newlinesInside?: ("ignore" | number)
9700
10614
 
9701
10615
  order?: ("asc" | "desc")
9702
10616
 
9703
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9704
- anyOf?: {
10617
+ anyOf: [{
10618
+
10619
+ elementNamePattern?: (({
10620
+
10621
+ pattern: string
10622
+
10623
+ flags?: string
10624
+ } | string)[] | ({
10625
+
10626
+ pattern: string
10627
+
10628
+ flags?: string
10629
+ } | string))
10630
+ }, ...({
9705
10631
 
9706
10632
  elementNamePattern?: (({
9707
10633
 
@@ -9714,23 +10640,23 @@ type PerfectionistSortMaps = {
9714
10640
 
9715
10641
  flags?: string
9716
10642
  } | string))
9717
- }[]
10643
+ })[]]
9718
10644
  } | {
9719
- newlinesInside?: (("always" | "never") | number)
9720
10645
 
9721
10646
  fallbackSort?: {
9722
10647
 
9723
- order?: ("asc" | "desc")
10648
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9724
10649
 
9725
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10650
+ order?: ("asc" | "desc")
9726
10651
  }
9727
10652
 
10653
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10654
+
9728
10655
  groupName: string
10656
+ newlinesInside?: ("ignore" | number)
9729
10657
 
9730
10658
  order?: ("asc" | "desc")
9731
10659
 
9732
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9733
-
9734
10660
  elementNamePattern?: (({
9735
10661
 
9736
10662
  pattern: string
@@ -9743,6 +10669,28 @@ type PerfectionistSortMaps = {
9743
10669
  flags?: string
9744
10670
  } | string))
9745
10671
  })[]
10672
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
10673
+
10674
+ groups?: (string | [string, ...(string)[]] | {
10675
+ newlinesBetween: ("ignore" | number)
10676
+ } | {
10677
+ group: (string | [string, ...(string)[]])
10678
+
10679
+ fallbackSort?: {
10680
+
10681
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10682
+
10683
+ order?: ("asc" | "desc")
10684
+ }
10685
+
10686
+ commentAbove?: string
10687
+
10688
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10689
+ newlinesInside?: ("ignore" | number)
10690
+
10691
+ order?: ("asc" | "desc")
10692
+ })[]
10693
+ newlinesBetween?: ("ignore" | number)
9746
10694
 
9747
10695
  useConfigurationIf?: {
9748
10696
 
@@ -9797,24 +10745,19 @@ type PerfectionistSortMaps = {
9797
10745
  })
9798
10746
 
9799
10747
  partitionByNewLine?: boolean
9800
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9801
-
9802
- groups?: (string | string[] | {
9803
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9804
-
9805
- commentAbove?: string
9806
- })[]
9807
10748
  }[]
9808
10749
  // ----- perfectionist/sort-modules -----
9809
10750
  type PerfectionistSortModules = []|[{
9810
10751
 
9811
10752
  fallbackSort?: {
9812
10753
 
9813
- order?: ("asc" | "desc")
10754
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage")
9814
10755
 
9815
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10756
+ order?: ("asc" | "desc")
9816
10757
  }
9817
10758
 
10759
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage")
10760
+
9818
10761
  specialCharacters?: ("remove" | "trim" | "keep")
9819
10762
 
9820
10763
  ignoreCase?: boolean
@@ -9825,24 +10768,35 @@ type PerfectionistSortModules = []|[{
9825
10768
 
9826
10769
  order?: ("asc" | "desc")
9827
10770
 
9828
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9829
-
9830
10771
  customGroups?: ({
9831
- newlinesInside?: (("always" | "never") | number)
9832
10772
 
9833
10773
  fallbackSort?: {
9834
10774
 
9835
- order?: ("asc" | "desc")
10775
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage")
9836
10776
 
9837
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10777
+ order?: ("asc" | "desc")
9838
10778
  }
9839
10779
 
10780
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage")
10781
+
9840
10782
  groupName: string
10783
+ newlinesInside?: ("ignore" | number)
9841
10784
 
9842
10785
  order?: ("asc" | "desc")
9843
10786
 
9844
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9845
- anyOf?: {
10787
+ anyOf: [{
10788
+
10789
+ elementNamePattern?: (({
10790
+
10791
+ pattern: string
10792
+
10793
+ flags?: string
10794
+ } | string)[] | ({
10795
+
10796
+ pattern: string
10797
+
10798
+ flags?: string
10799
+ } | string))
9846
10800
 
9847
10801
  modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
9848
10802
 
@@ -9859,6 +10813,7 @@ type PerfectionistSortModules = []|[{
9859
10813
 
9860
10814
  flags?: string
9861
10815
  } | string))
10816
+ }, ...({
9862
10817
 
9863
10818
  elementNamePattern?: (({
9864
10819
 
@@ -9871,28 +10826,40 @@ type PerfectionistSortModules = []|[{
9871
10826
 
9872
10827
  flags?: string
9873
10828
  } | string))
9874
- }[]
10829
+
10830
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
10831
+
10832
+ selector?: ("enum" | "function" | "interface" | "type" | "class")
10833
+
10834
+ decoratorNamePattern?: (({
10835
+
10836
+ pattern: string
10837
+
10838
+ flags?: string
10839
+ } | string)[] | ({
10840
+
10841
+ pattern: string
10842
+
10843
+ flags?: string
10844
+ } | string))
10845
+ })[]]
9875
10846
  } | {
9876
- newlinesInside?: (("always" | "never") | number)
9877
10847
 
9878
10848
  fallbackSort?: {
9879
10849
 
9880
- order?: ("asc" | "desc")
10850
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage")
9881
10851
 
9882
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10852
+ order?: ("asc" | "desc")
9883
10853
  }
9884
10854
 
9885
- groupName: string
9886
-
9887
- order?: ("asc" | "desc")
9888
-
9889
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10855
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage")
9890
10856
 
9891
- modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
10857
+ groupName: string
10858
+ newlinesInside?: ("ignore" | number)
9892
10859
 
9893
- selector?: ("enum" | "function" | "interface" | "type" | "class")
10860
+ order?: ("asc" | "desc")
9894
10861
 
9895
- decoratorNamePattern?: (({
10862
+ elementNamePattern?: (({
9896
10863
 
9897
10864
  pattern: string
9898
10865
 
@@ -9904,7 +10871,11 @@ type PerfectionistSortModules = []|[{
9904
10871
  flags?: string
9905
10872
  } | string))
9906
10873
 
9907
- elementNamePattern?: (({
10874
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
10875
+
10876
+ selector?: ("enum" | "function" | "interface" | "type" | "class")
10877
+
10878
+ decoratorNamePattern?: (({
9908
10879
 
9909
10880
  pattern: string
9910
10881
 
@@ -9916,6 +10887,30 @@ type PerfectionistSortModules = []|[{
9916
10887
  flags?: string
9917
10888
  } | string))
9918
10889
  })[]
10890
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
10891
+
10892
+ groups?: (string | [string, ...(string)[]] | {
10893
+ newlinesBetween: ("ignore" | number)
10894
+ } | {
10895
+ group: (string | [string, ...(string)[]])
10896
+
10897
+ fallbackSort?: {
10898
+
10899
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage")
10900
+
10901
+ order?: ("asc" | "desc")
10902
+ }
10903
+
10904
+ commentAbove?: string
10905
+
10906
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order" | "usage")
10907
+ newlinesInside?: ("ignore" | number)
10908
+
10909
+ order?: ("asc" | "desc")
10910
+ })[]
10911
+ newlinesBetween?: ("ignore" | number)
10912
+
10913
+ useExperimentalDependencyDetection?: boolean
9919
10914
 
9920
10915
  partitionByComment?: (boolean | (({
9921
10916
 
@@ -9955,24 +10950,19 @@ type PerfectionistSortModules = []|[{
9955
10950
  })
9956
10951
 
9957
10952
  partitionByNewLine?: boolean
9958
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9959
-
9960
- groups?: (string | string[] | {
9961
- newlinesBetween?: (("ignore" | "always" | "never") | number)
9962
-
9963
- commentAbove?: string
9964
- })[]
9965
10953
  }]
9966
10954
  // ----- perfectionist/sort-named-exports -----
9967
10955
  type PerfectionistSortNamedExports = {
9968
10956
 
9969
10957
  fallbackSort?: {
9970
10958
 
9971
- order?: ("asc" | "desc")
10959
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9972
10960
 
9973
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10961
+ order?: ("asc" | "desc")
9974
10962
  }
9975
10963
 
10964
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10965
+
9976
10966
  specialCharacters?: ("remove" | "trim" | "keep")
9977
10967
 
9978
10968
  ignoreCase?: boolean
@@ -9983,32 +10973,40 @@ type PerfectionistSortNamedExports = {
9983
10973
 
9984
10974
  order?: ("asc" | "desc")
9985
10975
 
9986
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
9987
-
9988
- groupKind?: ("mixed" | "values-first" | "types-first")
9989
-
9990
- ignoreAlias?: boolean
9991
-
9992
10976
  customGroups?: ({
9993
- newlinesInside?: (("always" | "never") | number)
9994
10977
 
9995
10978
  fallbackSort?: {
9996
10979
 
9997
- order?: ("asc" | "desc")
10980
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
9998
10981
 
9999
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10982
+ order?: ("asc" | "desc")
10000
10983
  }
10001
10984
 
10985
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10986
+
10002
10987
  groupName: string
10988
+ newlinesInside?: ("ignore" | number)
10003
10989
 
10004
10990
  order?: ("asc" | "desc")
10005
10991
 
10006
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10007
- anyOf?: {
10992
+ anyOf: [{
10993
+
10994
+ elementNamePattern?: (({
10995
+
10996
+ pattern: string
10997
+
10998
+ flags?: string
10999
+ } | string)[] | ({
11000
+
11001
+ pattern: string
11002
+
11003
+ flags?: string
11004
+ } | string))
10008
11005
 
10009
11006
  modifiers?: ("value" | "type")[]
10010
11007
 
10011
11008
  selector?: "export"
11009
+ }, ...({
10012
11010
 
10013
11011
  elementNamePattern?: (({
10014
11012
 
@@ -10021,27 +11019,27 @@ type PerfectionistSortNamedExports = {
10021
11019
 
10022
11020
  flags?: string
10023
11021
  } | string))
10024
- }[]
11022
+
11023
+ modifiers?: ("value" | "type")[]
11024
+
11025
+ selector?: "export"
11026
+ })[]]
10025
11027
  } | {
10026
- newlinesInside?: (("always" | "never") | number)
10027
11028
 
10028
11029
  fallbackSort?: {
10029
11030
 
10030
- order?: ("asc" | "desc")
11031
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10031
11032
 
10032
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11033
+ order?: ("asc" | "desc")
10033
11034
  }
10034
11035
 
11036
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11037
+
10035
11038
  groupName: string
11039
+ newlinesInside?: ("ignore" | number)
10036
11040
 
10037
11041
  order?: ("asc" | "desc")
10038
11042
 
10039
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10040
-
10041
- modifiers?: ("value" | "type")[]
10042
-
10043
- selector?: "export"
10044
-
10045
11043
  elementNamePattern?: (({
10046
11044
 
10047
11045
  pattern: string
@@ -10053,7 +11051,35 @@ type PerfectionistSortNamedExports = {
10053
11051
 
10054
11052
  flags?: string
10055
11053
  } | string))
11054
+
11055
+ modifiers?: ("value" | "type")[]
11056
+
11057
+ selector?: "export"
11058
+ })[]
11059
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
11060
+
11061
+ groups?: (string | [string, ...(string)[]] | {
11062
+ newlinesBetween: ("ignore" | number)
11063
+ } | {
11064
+ group: (string | [string, ...(string)[]])
11065
+
11066
+ fallbackSort?: {
11067
+
11068
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11069
+
11070
+ order?: ("asc" | "desc")
11071
+ }
11072
+
11073
+ commentAbove?: string
11074
+
11075
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11076
+ newlinesInside?: ("ignore" | number)
11077
+
11078
+ order?: ("asc" | "desc")
10056
11079
  })[]
11080
+ newlinesBetween?: ("ignore" | number)
11081
+
11082
+ ignoreAlias?: boolean
10057
11083
 
10058
11084
  partitionByComment?: (boolean | (({
10059
11085
 
@@ -10093,24 +11119,19 @@ type PerfectionistSortNamedExports = {
10093
11119
  })
10094
11120
 
10095
11121
  partitionByNewLine?: boolean
10096
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10097
-
10098
- groups?: (string | string[] | {
10099
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10100
-
10101
- commentAbove?: string
10102
- })[]
10103
11122
  }[]
10104
11123
  // ----- perfectionist/sort-named-imports -----
10105
11124
  type PerfectionistSortNamedImports = {
10106
11125
 
10107
11126
  fallbackSort?: {
10108
11127
 
10109
- order?: ("asc" | "desc")
11128
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10110
11129
 
10111
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11130
+ order?: ("asc" | "desc")
10112
11131
  }
10113
11132
 
11133
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11134
+
10114
11135
  specialCharacters?: ("remove" | "trim" | "keep")
10115
11136
 
10116
11137
  ignoreCase?: boolean
@@ -10121,32 +11142,40 @@ type PerfectionistSortNamedImports = {
10121
11142
 
10122
11143
  order?: ("asc" | "desc")
10123
11144
 
10124
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10125
-
10126
- groupKind?: ("mixed" | "values-first" | "types-first")
10127
-
10128
- ignoreAlias?: boolean
10129
-
10130
11145
  customGroups?: ({
10131
- newlinesInside?: (("always" | "never") | number)
10132
11146
 
10133
11147
  fallbackSort?: {
10134
11148
 
10135
- order?: ("asc" | "desc")
11149
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10136
11150
 
10137
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11151
+ order?: ("asc" | "desc")
10138
11152
  }
10139
11153
 
11154
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11155
+
10140
11156
  groupName: string
11157
+ newlinesInside?: ("ignore" | number)
10141
11158
 
10142
11159
  order?: ("asc" | "desc")
10143
11160
 
10144
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10145
- anyOf?: {
11161
+ anyOf: [{
11162
+
11163
+ elementNamePattern?: (({
11164
+
11165
+ pattern: string
11166
+
11167
+ flags?: string
11168
+ } | string)[] | ({
11169
+
11170
+ pattern: string
11171
+
11172
+ flags?: string
11173
+ } | string))
10146
11174
 
10147
11175
  modifiers?: ("value" | "type")[]
10148
11176
 
10149
11177
  selector?: "import"
11178
+ }, ...({
10150
11179
 
10151
11180
  elementNamePattern?: (({
10152
11181
 
@@ -10159,27 +11188,27 @@ type PerfectionistSortNamedImports = {
10159
11188
 
10160
11189
  flags?: string
10161
11190
  } | string))
10162
- }[]
11191
+
11192
+ modifiers?: ("value" | "type")[]
11193
+
11194
+ selector?: "import"
11195
+ })[]]
10163
11196
  } | {
10164
- newlinesInside?: (("always" | "never") | number)
10165
11197
 
10166
11198
  fallbackSort?: {
10167
11199
 
10168
- order?: ("asc" | "desc")
11200
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10169
11201
 
10170
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11202
+ order?: ("asc" | "desc")
10171
11203
  }
10172
11204
 
11205
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11206
+
10173
11207
  groupName: string
11208
+ newlinesInside?: ("ignore" | number)
10174
11209
 
10175
11210
  order?: ("asc" | "desc")
10176
11211
 
10177
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10178
-
10179
- modifiers?: ("value" | "type")[]
10180
-
10181
- selector?: "import"
10182
-
10183
11212
  elementNamePattern?: (({
10184
11213
 
10185
11214
  pattern: string
@@ -10191,7 +11220,35 @@ type PerfectionistSortNamedImports = {
10191
11220
 
10192
11221
  flags?: string
10193
11222
  } | string))
11223
+
11224
+ modifiers?: ("value" | "type")[]
11225
+
11226
+ selector?: "import"
11227
+ })[]
11228
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
11229
+
11230
+ groups?: (string | [string, ...(string)[]] | {
11231
+ newlinesBetween: ("ignore" | number)
11232
+ } | {
11233
+ group: (string | [string, ...(string)[]])
11234
+
11235
+ fallbackSort?: {
11236
+
11237
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11238
+
11239
+ order?: ("asc" | "desc")
11240
+ }
11241
+
11242
+ commentAbove?: string
11243
+
11244
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11245
+ newlinesInside?: ("ignore" | number)
11246
+
11247
+ order?: ("asc" | "desc")
10194
11248
  })[]
11249
+ newlinesBetween?: ("ignore" | number)
11250
+
11251
+ ignoreAlias?: boolean
10195
11252
 
10196
11253
  partitionByComment?: (boolean | (({
10197
11254
 
@@ -10231,25 +11288,20 @@ type PerfectionistSortNamedImports = {
10231
11288
  })
10232
11289
 
10233
11290
  partitionByNewLine?: boolean
10234
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10235
-
10236
- groups?: (string | string[] | {
10237
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10238
-
10239
- commentAbove?: string
10240
- })[]
10241
11291
  }[]
10242
11292
  // ----- perfectionist/sort-object-types -----
10243
11293
  type PerfectionistSortObjectTypes = {
10244
11294
 
10245
11295
  fallbackSort?: {
10246
11296
 
10247
- order?: ("asc" | "desc")
11297
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10248
11298
 
10249
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11299
+ order?: ("asc" | "desc")
10250
11300
  sortBy?: ("name" | "value")
10251
11301
  }
10252
11302
 
11303
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11304
+
10253
11305
  specialCharacters?: ("remove" | "trim" | "keep")
10254
11306
 
10255
11307
  ignoreCase?: boolean
@@ -10259,31 +11311,43 @@ type PerfectionistSortObjectTypes = {
10259
11311
  locales?: (string | string[])
10260
11312
 
10261
11313
  order?: ("asc" | "desc")
11314
+ sortBy?: ("name" | "value")
10262
11315
 
10263
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10264
11316
  customGroups?: ({
10265
- [k: string]: (string | string[]) | undefined
10266
- } | ({
10267
- newlinesInside?: (("always" | "never") | number)
10268
11317
 
10269
11318
  fallbackSort?: {
10270
11319
 
10271
- order?: ("asc" | "desc")
11320
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10272
11321
 
10273
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11322
+ order?: ("asc" | "desc")
10274
11323
  sortBy?: ("name" | "value")
10275
11324
  }
10276
11325
 
11326
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11327
+
10277
11328
  groupName: string
11329
+ newlinesInside?: ("ignore" | number)
10278
11330
 
10279
11331
  order?: ("asc" | "desc")
11332
+ sortBy?: ("name" | "value")
10280
11333
 
10281
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10282
- anyOf?: {
11334
+ anyOf: [{
11335
+
11336
+ elementNamePattern?: (({
11337
+
11338
+ pattern: string
11339
+
11340
+ flags?: string
11341
+ } | string)[] | ({
11342
+
11343
+ pattern: string
11344
+
11345
+ flags?: string
11346
+ } | string))
10283
11347
 
10284
11348
  modifiers?: ("optional" | "required" | "multiline")[]
10285
11349
 
10286
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
11350
+ selector?: ("index-signature" | "member" | "method" | "property")
10287
11351
 
10288
11352
  elementValuePattern?: (({
10289
11353
 
@@ -10296,6 +11360,7 @@ type PerfectionistSortObjectTypes = {
10296
11360
 
10297
11361
  flags?: string
10298
11362
  } | string))
11363
+ }, ...({
10299
11364
 
10300
11365
  elementNamePattern?: (({
10301
11366
 
@@ -10308,28 +11373,56 @@ type PerfectionistSortObjectTypes = {
10308
11373
 
10309
11374
  flags?: string
10310
11375
  } | string))
10311
- sortBy?: ("name" | "value")
10312
- }[]
11376
+
11377
+ modifiers?: ("optional" | "required" | "multiline")[]
11378
+
11379
+ selector?: ("index-signature" | "member" | "method" | "property")
11380
+
11381
+ elementValuePattern?: (({
11382
+
11383
+ pattern: string
11384
+
11385
+ flags?: string
11386
+ } | string)[] | ({
11387
+
11388
+ pattern: string
11389
+
11390
+ flags?: string
11391
+ } | string))
11392
+ })[]]
10313
11393
  } | {
10314
- newlinesInside?: (("always" | "never") | number)
10315
11394
 
10316
11395
  fallbackSort?: {
10317
11396
 
10318
- order?: ("asc" | "desc")
11397
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10319
11398
 
10320
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11399
+ order?: ("asc" | "desc")
10321
11400
  sortBy?: ("name" | "value")
10322
11401
  }
10323
11402
 
11403
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11404
+
10324
11405
  groupName: string
11406
+ newlinesInside?: ("ignore" | number)
10325
11407
 
10326
11408
  order?: ("asc" | "desc")
11409
+ sortBy?: ("name" | "value")
10327
11410
 
10328
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11411
+ elementNamePattern?: (({
11412
+
11413
+ pattern: string
11414
+
11415
+ flags?: string
11416
+ } | string)[] | ({
11417
+
11418
+ pattern: string
11419
+
11420
+ flags?: string
11421
+ } | string))
10329
11422
 
10330
11423
  modifiers?: ("optional" | "required" | "multiline")[]
10331
11424
 
10332
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
11425
+ selector?: ("index-signature" | "member" | "method" | "property")
10333
11426
 
10334
11427
  elementValuePattern?: (({
10335
11428
 
@@ -10342,8 +11435,35 @@ type PerfectionistSortObjectTypes = {
10342
11435
 
10343
11436
  flags?: string
10344
11437
  } | string))
11438
+ })[]
11439
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
11440
+
11441
+ groups?: (string | [string, ...(string)[]] | {
11442
+ newlinesBetween: ("ignore" | number)
11443
+ } | {
11444
+ group: (string | [string, ...(string)[]])
10345
11445
 
10346
- elementNamePattern?: (({
11446
+ fallbackSort?: {
11447
+
11448
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11449
+
11450
+ order?: ("asc" | "desc")
11451
+ sortBy?: ("name" | "value")
11452
+ }
11453
+
11454
+ commentAbove?: string
11455
+
11456
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11457
+ newlinesInside?: ("ignore" | number)
11458
+
11459
+ order?: ("asc" | "desc")
11460
+ sortBy?: ("name" | "value")
11461
+ })[]
11462
+ newlinesBetween?: ("ignore" | number)
11463
+
11464
+ useConfigurationIf?: {
11465
+
11466
+ allNamesMatchPattern?: (({
10347
11467
 
10348
11468
  pattern: string
10349
11469
 
@@ -10354,19 +11474,17 @@ type PerfectionistSortObjectTypes = {
10354
11474
 
10355
11475
  flags?: string
10356
11476
  } | string))
10357
- sortBy?: ("name" | "value")
10358
- })[])
10359
-
10360
- groupKind?: ("mixed" | "required-first" | "optional-first")
10361
-
10362
- useConfigurationIf?: {
10363
11477
 
10364
- allNamesMatchPattern?: (({
11478
+ hasNumericKeysOnly?: boolean
11479
+
11480
+ declarationCommentMatchesPattern?: (({
11481
+ scope?: ("shallow" | "deep")
10365
11482
 
10366
11483
  pattern: string
10367
11484
 
10368
11485
  flags?: string
10369
11486
  } | string)[] | ({
11487
+ scope?: ("shallow" | "deep")
10370
11488
 
10371
11489
  pattern: string
10372
11490
 
@@ -10374,11 +11492,13 @@ type PerfectionistSortObjectTypes = {
10374
11492
  } | string))
10375
11493
 
10376
11494
  declarationMatchesPattern?: (({
11495
+ scope?: ("shallow" | "deep")
10377
11496
 
10378
11497
  pattern: string
10379
11498
 
10380
11499
  flags?: string
10381
11500
  } | string)[] | ({
11501
+ scope?: ("shallow" | "deep")
10382
11502
 
10383
11503
  pattern: string
10384
11504
 
@@ -10424,37 +11544,20 @@ type PerfectionistSortObjectTypes = {
10424
11544
  })
10425
11545
 
10426
11546
  partitionByNewLine?: boolean
10427
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10428
-
10429
- ignorePattern?: (({
10430
-
10431
- pattern: string
10432
-
10433
- flags?: string
10434
- } | string)[] | ({
10435
-
10436
- pattern: string
10437
-
10438
- flags?: string
10439
- } | string))
10440
- sortBy?: ("name" | "value")
10441
-
10442
- groups?: (string | string[] | {
10443
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10444
-
10445
- commentAbove?: string
10446
- })[]
10447
11547
  }[]
10448
11548
  // ----- perfectionist/sort-objects -----
10449
11549
  type PerfectionistSortObjects = {
10450
11550
 
10451
11551
  fallbackSort?: {
10452
11552
 
10453
- order?: ("asc" | "desc")
11553
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10454
11554
 
10455
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11555
+ order?: ("asc" | "desc")
11556
+ sortBy?: ("name" | "value")
10456
11557
  }
10457
11558
 
11559
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11560
+
10458
11561
  specialCharacters?: ("remove" | "trim" | "keep")
10459
11562
 
10460
11563
  ignoreCase?: boolean
@@ -10464,35 +11567,43 @@ type PerfectionistSortObjects = {
10464
11567
  locales?: (string | string[])
10465
11568
 
10466
11569
  order?: ("asc" | "desc")
11570
+ sortBy?: ("name" | "value")
10467
11571
 
10468
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10469
-
10470
- destructuredObjects?: (boolean | {
10471
-
10472
- groups?: boolean
10473
- })
10474
11572
  customGroups?: ({
10475
- [k: string]: (string | string[]) | undefined
10476
- } | ({
10477
- newlinesInside?: (("always" | "never") | number)
10478
11573
 
10479
11574
  fallbackSort?: {
10480
11575
 
10481
- order?: ("asc" | "desc")
11576
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10482
11577
 
10483
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11578
+ order?: ("asc" | "desc")
11579
+ sortBy?: ("name" | "value")
10484
11580
  }
10485
11581
 
11582
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11583
+
10486
11584
  groupName: string
11585
+ newlinesInside?: ("ignore" | number)
10487
11586
 
10488
11587
  order?: ("asc" | "desc")
11588
+ sortBy?: ("name" | "value")
10489
11589
 
10490
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10491
- anyOf?: {
11590
+ anyOf: [{
11591
+
11592
+ elementNamePattern?: (({
11593
+
11594
+ pattern: string
11595
+
11596
+ flags?: string
11597
+ } | string)[] | ({
11598
+
11599
+ pattern: string
11600
+
11601
+ flags?: string
11602
+ } | string))
10492
11603
 
10493
- modifiers?: ("optional" | "required" | "multiline")[]
11604
+ modifiers?: ("multiline")[]
10494
11605
 
10495
- selector?: ("member" | "method" | "multiline" | "property")
11606
+ selector?: ("member" | "method" | "property")
10496
11607
 
10497
11608
  elementValuePattern?: (({
10498
11609
 
@@ -10505,6 +11616,7 @@ type PerfectionistSortObjects = {
10505
11616
 
10506
11617
  flags?: string
10507
11618
  } | string))
11619
+ }, ...({
10508
11620
 
10509
11621
  elementNamePattern?: (({
10510
11622
 
@@ -10517,26 +11629,56 @@ type PerfectionistSortObjects = {
10517
11629
 
10518
11630
  flags?: string
10519
11631
  } | string))
10520
- }[]
11632
+
11633
+ modifiers?: ("multiline")[]
11634
+
11635
+ selector?: ("member" | "method" | "property")
11636
+
11637
+ elementValuePattern?: (({
11638
+
11639
+ pattern: string
11640
+
11641
+ flags?: string
11642
+ } | string)[] | ({
11643
+
11644
+ pattern: string
11645
+
11646
+ flags?: string
11647
+ } | string))
11648
+ })[]]
10521
11649
  } | {
10522
- newlinesInside?: (("always" | "never") | number)
10523
11650
 
10524
11651
  fallbackSort?: {
10525
11652
 
10526
- order?: ("asc" | "desc")
11653
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10527
11654
 
10528
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11655
+ order?: ("asc" | "desc")
11656
+ sortBy?: ("name" | "value")
10529
11657
  }
10530
11658
 
11659
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11660
+
10531
11661
  groupName: string
11662
+ newlinesInside?: ("ignore" | number)
10532
11663
 
10533
11664
  order?: ("asc" | "desc")
11665
+ sortBy?: ("name" | "value")
10534
11666
 
10535
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11667
+ elementNamePattern?: (({
11668
+
11669
+ pattern: string
11670
+
11671
+ flags?: string
11672
+ } | string)[] | ({
11673
+
11674
+ pattern: string
11675
+
11676
+ flags?: string
11677
+ } | string))
10536
11678
 
10537
- modifiers?: ("optional" | "required" | "multiline")[]
11679
+ modifiers?: ("multiline")[]
10538
11680
 
10539
- selector?: ("member" | "method" | "multiline" | "property")
11681
+ selector?: ("member" | "method" | "property")
10540
11682
 
10541
11683
  elementValuePattern?: (({
10542
11684
 
@@ -10549,8 +11691,35 @@ type PerfectionistSortObjects = {
10549
11691
 
10550
11692
  flags?: string
10551
11693
  } | string))
11694
+ })[]
11695
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
11696
+
11697
+ groups?: (string | [string, ...(string)[]] | {
11698
+ newlinesBetween: ("ignore" | number)
11699
+ } | {
11700
+ group: (string | [string, ...(string)[]])
10552
11701
 
10553
- elementNamePattern?: (({
11702
+ fallbackSort?: {
11703
+
11704
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11705
+
11706
+ order?: ("asc" | "desc")
11707
+ sortBy?: ("name" | "value")
11708
+ }
11709
+
11710
+ commentAbove?: string
11711
+
11712
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11713
+ newlinesInside?: ("ignore" | number)
11714
+
11715
+ order?: ("asc" | "desc")
11716
+ sortBy?: ("name" | "value")
11717
+ })[]
11718
+ newlinesBetween?: ("ignore" | number)
11719
+
11720
+ useConfigurationIf?: {
11721
+
11722
+ allNamesMatchPattern?: (({
10554
11723
 
10555
11724
  pattern: string
10556
11725
 
@@ -10561,16 +11730,19 @@ type PerfectionistSortObjects = {
10561
11730
 
10562
11731
  flags?: string
10563
11732
  } | string))
10564
- })[])
10565
-
10566
- useConfigurationIf?: {
10567
11733
 
10568
- allNamesMatchPattern?: (({
11734
+ objectType?: ("destructured" | "non-destructured")
11735
+
11736
+ hasNumericKeysOnly?: boolean
11737
+
11738
+ declarationCommentMatchesPattern?: (({
11739
+ scope?: ("shallow" | "deep")
10569
11740
 
10570
11741
  pattern: string
10571
11742
 
10572
11743
  flags?: string
10573
11744
  } | string)[] | ({
11745
+ scope?: ("shallow" | "deep")
10574
11746
 
10575
11747
  pattern: string
10576
11748
 
@@ -10578,11 +11750,27 @@ type PerfectionistSortObjects = {
10578
11750
  } | string))
10579
11751
 
10580
11752
  callingFunctionNamePattern?: (({
11753
+ scope?: ("shallow" | "deep")
11754
+
11755
+ pattern: string
11756
+
11757
+ flags?: string
11758
+ } | string)[] | ({
11759
+ scope?: ("shallow" | "deep")
11760
+
11761
+ pattern: string
11762
+
11763
+ flags?: string
11764
+ } | string))
11765
+
11766
+ declarationMatchesPattern?: (({
11767
+ scope?: ("shallow" | "deep")
10581
11768
 
10582
11769
  pattern: string
10583
11770
 
10584
11771
  flags?: string
10585
11772
  } | string)[] | ({
11773
+ scope?: ("shallow" | "deep")
10586
11774
 
10587
11775
  pattern: string
10588
11776
 
@@ -10590,12 +11778,10 @@ type PerfectionistSortObjects = {
10590
11778
  } | string))
10591
11779
  }
10592
11780
 
10593
- destructureOnly?: boolean
10594
-
10595
- objectDeclarations?: boolean
10596
-
10597
11781
  styledComponents?: boolean
10598
11782
 
11783
+ useExperimentalDependencyDetection?: boolean
11784
+
10599
11785
  partitionByComment?: (boolean | (({
10600
11786
 
10601
11787
  pattern: string
@@ -10634,36 +11820,19 @@ type PerfectionistSortObjects = {
10634
11820
  })
10635
11821
 
10636
11822
  partitionByNewLine?: boolean
10637
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10638
-
10639
- ignorePattern?: (({
10640
-
10641
- pattern: string
10642
-
10643
- flags?: string
10644
- } | string)[] | ({
10645
-
10646
- pattern: string
10647
-
10648
- flags?: string
10649
- } | string))
10650
-
10651
- groups?: (string | string[] | {
10652
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10653
-
10654
- commentAbove?: string
10655
- })[]
10656
11823
  }[]
10657
11824
  // ----- perfectionist/sort-sets -----
10658
11825
  type PerfectionistSortSets = {
10659
11826
 
10660
11827
  fallbackSort?: {
10661
11828
 
10662
- order?: ("asc" | "desc")
11829
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10663
11830
 
10664
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11831
+ order?: ("asc" | "desc")
10665
11832
  }
10666
11833
 
11834
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11835
+
10667
11836
  specialCharacters?: ("remove" | "trim" | "keep")
10668
11837
 
10669
11838
  ignoreCase?: boolean
@@ -10674,28 +11843,38 @@ type PerfectionistSortSets = {
10674
11843
 
10675
11844
  order?: ("asc" | "desc")
10676
11845
 
10677
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10678
-
10679
- groupKind?: ("mixed" | "literals-first" | "spreads-first")
10680
-
10681
11846
  customGroups?: ({
10682
- newlinesInside?: (("always" | "never") | number)
10683
11847
 
10684
11848
  fallbackSort?: {
10685
11849
 
10686
- order?: ("asc" | "desc")
11850
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10687
11851
 
10688
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11852
+ order?: ("asc" | "desc")
10689
11853
  }
10690
11854
 
11855
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11856
+
10691
11857
  groupName: string
11858
+ newlinesInside?: ("ignore" | number)
10692
11859
 
10693
11860
  order?: ("asc" | "desc")
10694
11861
 
10695
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10696
- anyOf?: {
11862
+ anyOf: [{
11863
+
11864
+ elementNamePattern?: (({
11865
+
11866
+ pattern: string
11867
+
11868
+ flags?: string
11869
+ } | string)[] | ({
11870
+
11871
+ pattern: string
11872
+
11873
+ flags?: string
11874
+ } | string))
10697
11875
 
10698
11876
  selector?: ("literal" | "spread")
11877
+ }, ...({
10699
11878
 
10700
11879
  elementNamePattern?: (({
10701
11880
 
@@ -10708,25 +11887,25 @@ type PerfectionistSortSets = {
10708
11887
 
10709
11888
  flags?: string
10710
11889
  } | string))
10711
- }[]
11890
+
11891
+ selector?: ("literal" | "spread")
11892
+ })[]]
10712
11893
  } | {
10713
- newlinesInside?: (("always" | "never") | number)
10714
11894
 
10715
11895
  fallbackSort?: {
10716
11896
 
10717
- order?: ("asc" | "desc")
11897
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10718
11898
 
10719
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11899
+ order?: ("asc" | "desc")
10720
11900
  }
10721
11901
 
11902
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11903
+
10722
11904
  groupName: string
11905
+ newlinesInside?: ("ignore" | number)
10723
11906
 
10724
11907
  order?: ("asc" | "desc")
10725
11908
 
10726
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10727
-
10728
- selector?: ("literal" | "spread")
10729
-
10730
11909
  elementNamePattern?: (({
10731
11910
 
10732
11911
  pattern: string
@@ -10738,7 +11917,31 @@ type PerfectionistSortSets = {
10738
11917
 
10739
11918
  flags?: string
10740
11919
  } | string))
11920
+
11921
+ selector?: ("literal" | "spread")
11922
+ })[]
11923
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
11924
+
11925
+ groups?: (string | [string, ...(string)[]] | {
11926
+ newlinesBetween: ("ignore" | number)
11927
+ } | {
11928
+ group: (string | [string, ...(string)[]])
11929
+
11930
+ fallbackSort?: {
11931
+
11932
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11933
+
11934
+ order?: ("asc" | "desc")
11935
+ }
11936
+
11937
+ commentAbove?: string
11938
+
11939
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11940
+ newlinesInside?: ("ignore" | number)
11941
+
11942
+ order?: ("asc" | "desc")
10741
11943
  })[]
11944
+ newlinesBetween?: ("ignore" | number)
10742
11945
 
10743
11946
  useConfigurationIf?: {
10744
11947
 
@@ -10793,24 +11996,19 @@ type PerfectionistSortSets = {
10793
11996
  })
10794
11997
 
10795
11998
  partitionByNewLine?: boolean
10796
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10797
-
10798
- groups?: (string | string[] | {
10799
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10800
-
10801
- commentAbove?: string
10802
- })[]
10803
11999
  }[]
10804
12000
  // ----- perfectionist/sort-switch-case -----
10805
12001
  type PerfectionistSortSwitchCase = []|[{
10806
12002
 
10807
12003
  fallbackSort?: {
10808
12004
 
10809
- order?: ("asc" | "desc")
12005
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10810
12006
 
10811
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12007
+ order?: ("asc" | "desc")
10812
12008
  }
10813
12009
 
12010
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12011
+
10814
12012
  specialCharacters?: ("remove" | "trim" | "keep")
10815
12013
 
10816
12014
  ignoreCase?: boolean
@@ -10820,19 +12018,19 @@ type PerfectionistSortSwitchCase = []|[{
10820
12018
  locales?: (string | string[])
10821
12019
 
10822
12020
  order?: ("asc" | "desc")
10823
-
10824
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10825
12021
  }]
10826
12022
  // ----- perfectionist/sort-union-types -----
10827
12023
  type PerfectionistSortUnionTypes = {
10828
12024
 
10829
12025
  fallbackSort?: {
10830
12026
 
10831
- order?: ("asc" | "desc")
12027
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10832
12028
 
10833
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12029
+ order?: ("asc" | "desc")
10834
12030
  }
10835
12031
 
12032
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12033
+
10836
12034
  specialCharacters?: ("remove" | "trim" | "keep")
10837
12035
 
10838
12036
  ignoreCase?: boolean
@@ -10843,26 +12041,38 @@ type PerfectionistSortUnionTypes = {
10843
12041
 
10844
12042
  order?: ("asc" | "desc")
10845
12043
 
10846
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10847
-
10848
12044
  customGroups?: ({
10849
- newlinesInside?: (("always" | "never") | number)
10850
12045
 
10851
12046
  fallbackSort?: {
10852
12047
 
10853
- order?: ("asc" | "desc")
12048
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10854
12049
 
10855
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12050
+ order?: ("asc" | "desc")
10856
12051
  }
10857
12052
 
12053
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12054
+
10858
12055
  groupName: string
12056
+ newlinesInside?: ("ignore" | number)
10859
12057
 
10860
12058
  order?: ("asc" | "desc")
10861
12059
 
10862
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10863
- anyOf?: {
12060
+ anyOf: [{
12061
+
12062
+ elementNamePattern?: (({
12063
+
12064
+ pattern: string
12065
+
12066
+ flags?: string
12067
+ } | string)[] | ({
12068
+
12069
+ pattern: string
12070
+
12071
+ flags?: string
12072
+ } | string))
10864
12073
 
10865
12074
  selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union")
12075
+ }, ...({
10866
12076
 
10867
12077
  elementNamePattern?: (({
10868
12078
 
@@ -10875,25 +12085,25 @@ type PerfectionistSortUnionTypes = {
10875
12085
 
10876
12086
  flags?: string
10877
12087
  } | string))
10878
- }[]
12088
+
12089
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union")
12090
+ })[]]
10879
12091
  } | {
10880
- newlinesInside?: (("always" | "never") | number)
10881
12092
 
10882
12093
  fallbackSort?: {
10883
12094
 
10884
- order?: ("asc" | "desc")
12095
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10885
12096
 
10886
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12097
+ order?: ("asc" | "desc")
10887
12098
  }
10888
12099
 
12100
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12101
+
10889
12102
  groupName: string
12103
+ newlinesInside?: ("ignore" | number)
10890
12104
 
10891
12105
  order?: ("asc" | "desc")
10892
12106
 
10893
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10894
-
10895
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union")
10896
-
10897
12107
  elementNamePattern?: (({
10898
12108
 
10899
12109
  pattern: string
@@ -10905,7 +12115,31 @@ type PerfectionistSortUnionTypes = {
10905
12115
 
10906
12116
  flags?: string
10907
12117
  } | string))
12118
+
12119
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union")
12120
+ })[]
12121
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
12122
+
12123
+ groups?: (string | [string, ...(string)[]] | {
12124
+ newlinesBetween: ("ignore" | number)
12125
+ } | {
12126
+ group: (string | [string, ...(string)[]])
12127
+
12128
+ fallbackSort?: {
12129
+
12130
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12131
+
12132
+ order?: ("asc" | "desc")
12133
+ }
12134
+
12135
+ commentAbove?: string
12136
+
12137
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12138
+ newlinesInside?: ("ignore" | number)
12139
+
12140
+ order?: ("asc" | "desc")
10908
12141
  })[]
12142
+ newlinesBetween?: ("ignore" | number)
10909
12143
 
10910
12144
  partitionByComment?: (boolean | (({
10911
12145
 
@@ -10945,24 +12179,19 @@ type PerfectionistSortUnionTypes = {
10945
12179
  })
10946
12180
 
10947
12181
  partitionByNewLine?: boolean
10948
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10949
-
10950
- groups?: (string | string[] | {
10951
- newlinesBetween?: (("ignore" | "always" | "never") | number)
10952
-
10953
- commentAbove?: string
10954
- })[]
10955
12182
  }[]
10956
12183
  // ----- perfectionist/sort-variable-declarations -----
10957
12184
  type PerfectionistSortVariableDeclarations = []|[{
10958
12185
 
10959
12186
  fallbackSort?: {
10960
12187
 
10961
- order?: ("asc" | "desc")
12188
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10962
12189
 
10963
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12190
+ order?: ("asc" | "desc")
10964
12191
  }
10965
12192
 
12193
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12194
+
10966
12195
  specialCharacters?: ("remove" | "trim" | "keep")
10967
12196
 
10968
12197
  ignoreCase?: boolean
@@ -10973,26 +12202,38 @@ type PerfectionistSortVariableDeclarations = []|[{
10973
12202
 
10974
12203
  order?: ("asc" | "desc")
10975
12204
 
10976
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10977
-
10978
12205
  customGroups?: ({
10979
- newlinesInside?: (("always" | "never") | number)
10980
12206
 
10981
12207
  fallbackSort?: {
10982
12208
 
10983
- order?: ("asc" | "desc")
12209
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
10984
12210
 
10985
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12211
+ order?: ("asc" | "desc")
10986
12212
  }
10987
12213
 
12214
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12215
+
10988
12216
  groupName: string
12217
+ newlinesInside?: ("ignore" | number)
10989
12218
 
10990
12219
  order?: ("asc" | "desc")
10991
12220
 
10992
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
10993
- anyOf?: {
12221
+ anyOf: [{
12222
+
12223
+ elementNamePattern?: (({
12224
+
12225
+ pattern: string
12226
+
12227
+ flags?: string
12228
+ } | string)[] | ({
12229
+
12230
+ pattern: string
12231
+
12232
+ flags?: string
12233
+ } | string))
10994
12234
 
10995
12235
  selector?: ("initialized" | "uninitialized")
12236
+ }, ...({
10996
12237
 
10997
12238
  elementNamePattern?: (({
10998
12239
 
@@ -11005,25 +12246,25 @@ type PerfectionistSortVariableDeclarations = []|[{
11005
12246
 
11006
12247
  flags?: string
11007
12248
  } | string))
11008
- }[]
12249
+
12250
+ selector?: ("initialized" | "uninitialized")
12251
+ })[]]
11009
12252
  } | {
11010
- newlinesInside?: (("always" | "never") | number)
11011
12253
 
11012
12254
  fallbackSort?: {
11013
12255
 
11014
- order?: ("asc" | "desc")
12256
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
11015
12257
 
11016
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
12258
+ order?: ("asc" | "desc")
11017
12259
  }
11018
12260
 
12261
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12262
+
11019
12263
  groupName: string
12264
+ newlinesInside?: ("ignore" | number)
11020
12265
 
11021
12266
  order?: ("asc" | "desc")
11022
12267
 
11023
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted")
11024
-
11025
- selector?: ("initialized" | "uninitialized")
11026
-
11027
12268
  elementNamePattern?: (({
11028
12269
 
11029
12270
  pattern: string
@@ -11035,7 +12276,33 @@ type PerfectionistSortVariableDeclarations = []|[{
11035
12276
 
11036
12277
  flags?: string
11037
12278
  } | string))
12279
+
12280
+ selector?: ("initialized" | "uninitialized")
12281
+ })[]
12282
+ newlinesInside?: (("ignore" | number) | "newlinesBetween")
12283
+
12284
+ groups?: (string | [string, ...(string)[]] | {
12285
+ newlinesBetween: ("ignore" | number)
12286
+ } | {
12287
+ group: (string | [string, ...(string)[]])
12288
+
12289
+ fallbackSort?: {
12290
+
12291
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12292
+
12293
+ order?: ("asc" | "desc")
12294
+ }
12295
+
12296
+ commentAbove?: string
12297
+
12298
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "subgroup-order")
12299
+ newlinesInside?: ("ignore" | number)
12300
+
12301
+ order?: ("asc" | "desc")
11038
12302
  })[]
12303
+ newlinesBetween?: ("ignore" | number)
12304
+
12305
+ useExperimentalDependencyDetection?: boolean
11039
12306
 
11040
12307
  partitionByComment?: (boolean | (({
11041
12308
 
@@ -11075,13 +12342,6 @@ type PerfectionistSortVariableDeclarations = []|[{
11075
12342
  })
11076
12343
 
11077
12344
  partitionByNewLine?: boolean
11078
- newlinesBetween?: (("ignore" | "always" | "never") | number)
11079
-
11080
- groups?: (string | string[] | {
11081
- newlinesBetween?: (("ignore" | "always" | "never") | number)
11082
-
11083
- commentAbove?: string
11084
- })[]
11085
12345
  }]
11086
12346
  // ----- prefer-arrow-callback -----
11087
12347
  type PreferArrowCallback = []|[{
@@ -11272,9 +12532,9 @@ type ReactHooksVoidUseMemo = []|[{
11272
12532
  }]
11273
12533
  // ----- react-refresh/only-export-components -----
11274
12534
  type ReactRefreshOnlyExportComponents = []|[{
12535
+ extraHOCs?: string[]
11275
12536
  allowExportNames?: string[]
11276
12537
  allowConstantExport?: boolean
11277
- customHOCs?: string[]
11278
12538
  checkJS?: boolean
11279
12539
  }]
11280
12540
  // ----- require-atomic-updates -----
@@ -11613,6 +12873,11 @@ type UnusedImportsNoUnusedImports = []|[(("all" | "local") | {
11613
12873
 
11614
12874
  destructuredArrayIgnorePattern?: string
11615
12875
 
12876
+ enableAutofixRemoval?: {
12877
+
12878
+ imports?: boolean
12879
+ }
12880
+
11616
12881
  ignoreClassWithStaticInitBlock?: boolean
11617
12882
 
11618
12883
  ignoreRestSiblings?: boolean
@@ -11638,6 +12903,11 @@ type UnusedImportsNoUnusedVars = []|[(("all" | "local") | {
11638
12903
 
11639
12904
  destructuredArrayIgnorePattern?: string
11640
12905
 
12906
+ enableAutofixRemoval?: {
12907
+
12908
+ imports?: boolean
12909
+ }
12910
+
11641
12911
  ignoreClassWithStaticInitBlock?: boolean
11642
12912
 
11643
12913
  ignoreRestSiblings?: boolean
@@ -11659,6 +12929,13 @@ type UseIsnan = []|[{
11659
12929
  type ValidTypeof = []|[{
11660
12930
  requireStringLiterals?: boolean
11661
12931
  }]
12932
+ // ----- vitest/consistent-each-for -----
12933
+ type VitestConsistentEachFor = []|[{
12934
+ test?: ("each" | "for")
12935
+ it?: ("each" | "for")
12936
+ describe?: ("each" | "for")
12937
+ suite?: ("each" | "for")
12938
+ }]
11662
12939
  // ----- vitest/consistent-test-filename -----
11663
12940
  type VitestConsistentTestFilename = []|[{
11664
12941
  pattern?: string
@@ -11686,6 +12963,11 @@ type VitestMaxExpects = []|[{
11686
12963
  type VitestMaxNestedDescribe = []|[{
11687
12964
  max?: number
11688
12965
  }]
12966
+ // ----- vitest/no-conditional-expect -----
12967
+ type VitestNoConditionalExpect = []|[{
12968
+
12969
+ expectAssertions?: boolean
12970
+ }]
11689
12971
  // ----- vitest/no-focused-tests -----
11690
12972
  type VitestNoFocusedTests = []|[{
11691
12973
  fixable?: boolean
@@ -11721,6 +13003,10 @@ type VitestPreferExpectAssertions = []|[{
11721
13003
  onlyFunctionsWithExpectInLoop?: boolean
11722
13004
  onlyFunctionsWithExpectInCallback?: boolean
11723
13005
  }]
13006
+ // ----- vitest/prefer-import-in-mock -----
13007
+ type VitestPreferImportInMock = []|[{
13008
+ fixable?: boolean
13009
+ }]
11724
13010
  // ----- vitest/prefer-lowercase-title -----
11725
13011
  type VitestPreferLowercaseTitle = []|[{
11726
13012
  ignore?: ("describe" | "test" | "it")[]
@@ -11867,6 +13153,7 @@ interface OptionsConfig {
11867
13153
  unicorn?: boolean;
11868
13154
  /**
11869
13155
  * Enable react rules.
13156
+ * If `true`, it will enable react eslint plugins with recommended and strict rules, otherwise you can specify options.
11870
13157
  *
11871
13158
  * @default false
11872
13159
  */
@@ -11874,12 +13161,13 @@ interface OptionsConfig {
11874
13161
  /**
11875
13162
  * Enable React strict rules.
11876
13163
  *
11877
- * @default true
13164
+ * @default false
11878
13165
  */
11879
13166
  enableStrictRules?: boolean;
11880
13167
  };
11881
13168
  /**
11882
13169
  * Enable vitest (`@vitest/eslint-plugin`) support rules.
13170
+ * If `true`, it will enable vitest eslint plugin with recommended rules and type testing, otherwise you can specify options.
11883
13171
  *
11884
13172
  * @default false
11885
13173
  */
@@ -11894,7 +13182,7 @@ interface OptionsConfig {
11894
13182
  };
11895
13183
  /**
11896
13184
  * Enable tanstack plugins rules.
11897
- * If `true`, it will enable all tanstack eslint plugins, otherwise you can specify which ones to enable.
13185
+ * If `true`, it will enable tanstack eslint plugins, otherwise you can specify options.
11898
13186
  *
11899
13187
  * @default false
11900
13188
  */