@jimmy.codes/eslint-config 6.25.0 → 6.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -1132,6 +1132,11 @@ interface RuleOptions {
1132
1132
  * @see https://typescript-eslint.io/rules/no-useless-constructor
1133
1133
  */
1134
1134
  '@typescript-eslint/no-useless-constructor'?: Linter.RuleEntry<[]>;
1135
+ /**
1136
+ * Disallow default values that will never be used
1137
+ * @see https://typescript-eslint.io/rules/no-useless-default-assignment
1138
+ */
1139
+ '@typescript-eslint/no-useless-default-assignment'?: Linter.RuleEntry<[]>;
1135
1140
  /**
1136
1141
  * Disallow empty exports that don't change anything in a module file
1137
1142
  * @see https://typescript-eslint.io/rules/no-useless-empty-export
@@ -2213,322 +2218,337 @@ interface RuleOptions {
2213
2218
  'jest-dom/prefer-to-have-value'?: Linter.RuleEntry<[]>;
2214
2219
  /**
2215
2220
  * Enforce `test` and `it` usage conventions
2216
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/consistent-test-it.md
2221
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/consistent-test-it.md
2217
2222
  */
2218
2223
  'jest/consistent-test-it'?: Linter.RuleEntry<JestConsistentTestIt>;
2219
2224
  /**
2220
2225
  * Enforce assertion to be made in a test body
2221
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/expect-expect.md
2226
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/expect-expect.md
2222
2227
  */
2223
2228
  'jest/expect-expect'?: Linter.RuleEntry<JestExpectExpect>;
2224
2229
  /**
2225
2230
  * Enforces a maximum number assertion calls in a test body
2226
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/max-expects.md
2231
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/max-expects.md
2227
2232
  */
2228
2233
  'jest/max-expects'?: Linter.RuleEntry<JestMaxExpects>;
2229
2234
  /**
2230
2235
  * Enforces a maximum depth to nested describe calls
2231
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/max-nested-describe.md
2236
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/max-nested-describe.md
2232
2237
  */
2233
2238
  'jest/max-nested-describe'?: Linter.RuleEntry<JestMaxNestedDescribe>;
2234
2239
  /**
2235
2240
  * Disallow alias methods
2236
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-alias-methods.md
2241
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-alias-methods.md
2237
2242
  */
2238
2243
  'jest/no-alias-methods'?: Linter.RuleEntry<[]>;
2239
2244
  /**
2240
2245
  * Disallow commented out tests
2241
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-commented-out-tests.md
2246
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-commented-out-tests.md
2242
2247
  */
2243
2248
  'jest/no-commented-out-tests'?: Linter.RuleEntry<[]>;
2244
2249
  /**
2245
2250
  * Disallow calling `expect` conditionally
2246
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-conditional-expect.md
2251
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-conditional-expect.md
2247
2252
  */
2248
2253
  'jest/no-conditional-expect'?: Linter.RuleEntry<[]>;
2249
2254
  /**
2250
2255
  * Disallow conditional logic in tests
2251
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-conditional-in-test.md
2256
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-conditional-in-test.md
2252
2257
  */
2253
2258
  'jest/no-conditional-in-test'?: Linter.RuleEntry<[]>;
2254
2259
  /**
2255
2260
  * Disallow confusing usages of jest.setTimeout
2256
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-confusing-set-timeout.md
2261
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-confusing-set-timeout.md
2257
2262
  */
2258
2263
  'jest/no-confusing-set-timeout'?: Linter.RuleEntry<[]>;
2259
2264
  /**
2260
2265
  * Disallow use of deprecated functions
2261
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-deprecated-functions.md
2266
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-deprecated-functions.md
2262
2267
  */
2263
2268
  'jest/no-deprecated-functions'?: Linter.RuleEntry<[]>;
2264
2269
  /**
2265
2270
  * Disallow disabled tests
2266
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-disabled-tests.md
2271
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-disabled-tests.md
2267
2272
  */
2268
2273
  'jest/no-disabled-tests'?: Linter.RuleEntry<[]>;
2269
2274
  /**
2270
2275
  * Disallow using a callback in asynchronous tests and hooks
2271
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-done-callback.md
2276
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-done-callback.md
2272
2277
  */
2273
2278
  'jest/no-done-callback'?: Linter.RuleEntry<[]>;
2274
2279
  /**
2275
2280
  * Disallow duplicate setup and teardown hooks
2276
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-duplicate-hooks.md
2281
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-duplicate-hooks.md
2277
2282
  */
2278
2283
  'jest/no-duplicate-hooks'?: Linter.RuleEntry<[]>;
2279
2284
  /**
2280
2285
  * Disallow using `exports` in files containing tests
2281
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-export.md
2286
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-export.md
2282
2287
  */
2283
2288
  'jest/no-export'?: Linter.RuleEntry<[]>;
2284
2289
  /**
2285
2290
  * Disallow focused tests
2286
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-focused-tests.md
2291
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-focused-tests.md
2287
2292
  */
2288
2293
  'jest/no-focused-tests'?: Linter.RuleEntry<[]>;
2289
2294
  /**
2290
2295
  * Disallow setup and teardown hooks
2291
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-hooks.md
2296
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-hooks.md
2292
2297
  */
2293
2298
  'jest/no-hooks'?: Linter.RuleEntry<JestNoHooks>;
2294
2299
  /**
2295
2300
  * Disallow identical titles
2296
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-identical-title.md
2301
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-identical-title.md
2297
2302
  */
2298
2303
  'jest/no-identical-title'?: Linter.RuleEntry<[]>;
2299
2304
  /**
2300
2305
  * Disallow string interpolation inside snapshots
2301
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-interpolation-in-snapshots.md
2306
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-interpolation-in-snapshots.md
2302
2307
  */
2303
2308
  'jest/no-interpolation-in-snapshots'?: Linter.RuleEntry<[]>;
2304
2309
  /**
2305
2310
  * Disallow Jasmine globals
2306
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-jasmine-globals.md
2311
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-jasmine-globals.md
2307
2312
  */
2308
2313
  'jest/no-jasmine-globals'?: Linter.RuleEntry<[]>;
2309
2314
  /**
2310
2315
  * Disallow large snapshots
2311
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-large-snapshots.md
2316
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-large-snapshots.md
2312
2317
  */
2313
2318
  'jest/no-large-snapshots'?: Linter.RuleEntry<JestNoLargeSnapshots>;
2314
2319
  /**
2315
2320
  * Disallow manually importing from `__mocks__`
2316
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-mocks-import.md
2321
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-mocks-import.md
2317
2322
  */
2318
2323
  'jest/no-mocks-import'?: Linter.RuleEntry<[]>;
2319
2324
  /**
2320
2325
  * Disallow specific `jest.` methods
2321
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-restricted-jest-methods.md
2326
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-restricted-jest-methods.md
2322
2327
  */
2323
2328
  'jest/no-restricted-jest-methods'?: Linter.RuleEntry<JestNoRestrictedJestMethods>;
2324
2329
  /**
2325
2330
  * Disallow specific matchers & modifiers
2326
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-restricted-matchers.md
2331
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-restricted-matchers.md
2327
2332
  */
2328
2333
  'jest/no-restricted-matchers'?: Linter.RuleEntry<JestNoRestrictedMatchers>;
2329
2334
  /**
2330
2335
  * Disallow using `expect` outside of `it` or `test` blocks
2331
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-standalone-expect.md
2336
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-standalone-expect.md
2332
2337
  */
2333
2338
  'jest/no-standalone-expect'?: Linter.RuleEntry<JestNoStandaloneExpect>;
2334
2339
  /**
2335
2340
  * Require using `.only` and `.skip` over `f` and `x`
2336
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-test-prefixes.md
2341
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-test-prefixes.md
2337
2342
  */
2338
2343
  'jest/no-test-prefixes'?: Linter.RuleEntry<[]>;
2339
2344
  /**
2340
2345
  * Disallow explicitly returning from tests
2341
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-test-return-statement.md
2346
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-test-return-statement.md
2342
2347
  */
2343
2348
  'jest/no-test-return-statement'?: Linter.RuleEntry<[]>;
2349
+ /**
2350
+ * Disallow unnecessary async function wrapper for expected promises
2351
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-unneeded-async-expect-function.md
2352
+ */
2353
+ 'jest/no-unneeded-async-expect-function'?: Linter.RuleEntry<[]>;
2344
2354
  /**
2345
2355
  * Disallow using `jest.mock()` factories without an explicit type parameter
2346
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/no-untyped-mock-factory.md
2356
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/no-untyped-mock-factory.md
2347
2357
  */
2348
2358
  'jest/no-untyped-mock-factory'?: Linter.RuleEntry<[]>;
2349
2359
  /**
2350
2360
  * Enforce padding around `afterAll` blocks
2351
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/padding-around-after-all-blocks.md
2361
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-after-all-blocks.md
2352
2362
  */
2353
2363
  'jest/padding-around-after-all-blocks'?: Linter.RuleEntry<[]>;
2354
2364
  /**
2355
2365
  * Enforce padding around `afterEach` blocks
2356
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/padding-around-after-each-blocks.md
2366
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-after-each-blocks.md
2357
2367
  */
2358
2368
  'jest/padding-around-after-each-blocks'?: Linter.RuleEntry<[]>;
2359
2369
  /**
2360
2370
  * Enforce padding around Jest functions
2361
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/padding-around-all.md
2371
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-all.md
2362
2372
  */
2363
2373
  'jest/padding-around-all'?: Linter.RuleEntry<[]>;
2364
2374
  /**
2365
2375
  * Enforce padding around `beforeAll` blocks
2366
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/padding-around-before-all-blocks.md
2376
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-before-all-blocks.md
2367
2377
  */
2368
2378
  'jest/padding-around-before-all-blocks'?: Linter.RuleEntry<[]>;
2369
2379
  /**
2370
2380
  * Enforce padding around `beforeEach` blocks
2371
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/padding-around-before-each-blocks.md
2381
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-before-each-blocks.md
2372
2382
  */
2373
2383
  'jest/padding-around-before-each-blocks'?: Linter.RuleEntry<[]>;
2374
2384
  /**
2375
2385
  * Enforce padding around `describe` blocks
2376
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/padding-around-describe-blocks.md
2386
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-describe-blocks.md
2377
2387
  */
2378
2388
  'jest/padding-around-describe-blocks'?: Linter.RuleEntry<[]>;
2379
2389
  /**
2380
2390
  * Enforce padding around `expect` groups
2381
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/padding-around-expect-groups.md
2391
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-expect-groups.md
2382
2392
  */
2383
2393
  'jest/padding-around-expect-groups'?: Linter.RuleEntry<[]>;
2384
2394
  /**
2385
2395
  * Enforce padding around `test` and `it` blocks
2386
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/padding-around-test-blocks.md
2396
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/padding-around-test-blocks.md
2387
2397
  */
2388
2398
  'jest/padding-around-test-blocks'?: Linter.RuleEntry<[]>;
2389
2399
  /**
2390
- * Suggest using `toBeCalledWith()` or `toHaveBeenCalledWith()`
2391
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-called-with.md
2400
+ * Suggest using `toHaveBeenCalledWith()`
2401
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-called-with.md
2392
2402
  */
2393
2403
  'jest/prefer-called-with'?: Linter.RuleEntry<[]>;
2394
2404
  /**
2395
2405
  * Suggest using the built-in comparison matchers
2396
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-comparison-matcher.md
2406
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-comparison-matcher.md
2397
2407
  */
2398
2408
  'jest/prefer-comparison-matcher'?: Linter.RuleEntry<[]>;
2399
2409
  /**
2400
2410
  * Prefer using `.each` rather than manual loops
2401
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-each.md
2411
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-each.md
2402
2412
  */
2403
2413
  'jest/prefer-each'?: Linter.RuleEntry<[]>;
2404
2414
  /**
2405
2415
  * Prefer having the last statement in a test be an assertion
2406
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-ending-with-an-expect.md
2416
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-ending-with-an-expect.md
2407
2417
  */
2408
2418
  'jest/prefer-ending-with-an-expect'?: Linter.RuleEntry<JestPreferEndingWithAnExpect>;
2409
2419
  /**
2410
2420
  * Suggest using the built-in equality matchers
2411
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-equality-matcher.md
2421
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-equality-matcher.md
2412
2422
  */
2413
2423
  'jest/prefer-equality-matcher'?: Linter.RuleEntry<[]>;
2414
2424
  /**
2415
2425
  * Suggest using `expect.assertions()` OR `expect.hasAssertions()`
2416
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-expect-assertions.md
2426
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-expect-assertions.md
2417
2427
  */
2418
2428
  'jest/prefer-expect-assertions'?: Linter.RuleEntry<JestPreferExpectAssertions>;
2419
2429
  /**
2420
2430
  * Prefer `await expect(...).resolves` over `expect(await ...)` syntax
2421
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-expect-resolves.md
2431
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-expect-resolves.md
2422
2432
  */
2423
2433
  'jest/prefer-expect-resolves'?: Linter.RuleEntry<[]>;
2424
2434
  /**
2425
2435
  * Prefer having hooks in a consistent order
2426
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-hooks-in-order.md
2436
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-hooks-in-order.md
2427
2437
  */
2428
2438
  'jest/prefer-hooks-in-order'?: Linter.RuleEntry<[]>;
2429
2439
  /**
2430
2440
  * Suggest having hooks before any test cases
2431
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-hooks-on-top.md
2441
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-hooks-on-top.md
2432
2442
  */
2433
2443
  'jest/prefer-hooks-on-top'?: Linter.RuleEntry<[]>;
2434
2444
  /**
2435
2445
  * Prefer importing Jest globals
2436
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-importing-jest-globals.md
2446
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-importing-jest-globals.md
2437
2447
  */
2438
2448
  'jest/prefer-importing-jest-globals'?: Linter.RuleEntry<JestPreferImportingJestGlobals>;
2439
2449
  /**
2440
2450
  * Prefer `jest.mocked()` over `fn as jest.Mock`
2441
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-jest-mocked.md
2451
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-jest-mocked.md
2442
2452
  */
2443
2453
  'jest/prefer-jest-mocked'?: Linter.RuleEntry<[]>;
2444
2454
  /**
2445
2455
  * Enforce lowercase test names
2446
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-lowercase-title.md
2456
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-lowercase-title.md
2447
2457
  */
2448
2458
  'jest/prefer-lowercase-title'?: Linter.RuleEntry<JestPreferLowercaseTitle>;
2449
2459
  /**
2450
2460
  * Prefer mock resolved/rejected shorthands for promises
2451
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-mock-promise-shorthand.md
2461
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-mock-promise-shorthand.md
2452
2462
  */
2453
2463
  'jest/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>;
2454
2464
  /**
2455
2465
  * Prefer including a hint with external snapshots
2456
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-snapshot-hint.md
2466
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-snapshot-hint.md
2457
2467
  */
2458
2468
  'jest/prefer-snapshot-hint'?: Linter.RuleEntry<JestPreferSnapshotHint>;
2459
2469
  /**
2460
2470
  * Suggest using `jest.spyOn()`
2461
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-spy-on.md
2471
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-spy-on.md
2462
2472
  */
2463
2473
  'jest/prefer-spy-on'?: Linter.RuleEntry<[]>;
2464
2474
  /**
2465
2475
  * Suggest using `toStrictEqual()`
2466
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-strict-equal.md
2476
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-strict-equal.md
2467
2477
  */
2468
2478
  'jest/prefer-strict-equal'?: Linter.RuleEntry<[]>;
2469
2479
  /**
2470
2480
  * Suggest using `toBe()` for primitive literals
2471
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-to-be.md
2481
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-be.md
2472
2482
  */
2473
2483
  'jest/prefer-to-be'?: Linter.RuleEntry<[]>;
2474
2484
  /**
2475
2485
  * Suggest using `toContain()`
2476
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-to-contain.md
2486
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-contain.md
2477
2487
  */
2478
2488
  'jest/prefer-to-contain'?: Linter.RuleEntry<[]>;
2489
+ /**
2490
+ * Suggest using `toHaveBeenCalled`
2491
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-have-been-called.md
2492
+ */
2493
+ 'jest/prefer-to-have-been-called'?: Linter.RuleEntry<[]>;
2494
+ /**
2495
+ * Suggest using `toHaveBeenCalledTimes()`
2496
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-have-been-called-times.md
2497
+ */
2498
+ 'jest/prefer-to-have-been-called-times'?: Linter.RuleEntry<[]>;
2479
2499
  /**
2480
2500
  * Suggest using `toHaveLength()`
2481
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-to-have-length.md
2501
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-to-have-length.md
2482
2502
  */
2483
2503
  'jest/prefer-to-have-length'?: Linter.RuleEntry<[]>;
2484
2504
  /**
2485
2505
  * Suggest using `test.todo`
2486
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/prefer-todo.md
2506
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/prefer-todo.md
2487
2507
  */
2488
2508
  'jest/prefer-todo'?: Linter.RuleEntry<[]>;
2489
2509
  /**
2490
2510
  * Require setup and teardown code to be within a hook
2491
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/require-hook.md
2511
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/require-hook.md
2492
2512
  */
2493
2513
  'jest/require-hook'?: Linter.RuleEntry<JestRequireHook>;
2494
2514
  /**
2495
2515
  * Require a message for `toThrow()`
2496
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/require-to-throw-message.md
2516
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/require-to-throw-message.md
2497
2517
  */
2498
2518
  'jest/require-to-throw-message'?: Linter.RuleEntry<[]>;
2499
2519
  /**
2500
2520
  * Require test cases and hooks to be inside a `describe` block
2501
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/require-top-level-describe.md
2521
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/require-top-level-describe.md
2502
2522
  */
2503
2523
  'jest/require-top-level-describe'?: Linter.RuleEntry<JestRequireTopLevelDescribe>;
2504
2524
  /**
2505
2525
  * Enforce unbound methods are called with their expected scope
2506
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/unbound-method.md
2526
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/unbound-method.md
2507
2527
  */
2508
2528
  'jest/unbound-method'?: Linter.RuleEntry<JestUnboundMethod>;
2509
2529
  /**
2510
2530
  * Enforce valid `describe()` callback
2511
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/valid-describe-callback.md
2531
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-describe-callback.md
2512
2532
  */
2513
2533
  'jest/valid-describe-callback'?: Linter.RuleEntry<[]>;
2514
2534
  /**
2515
2535
  * Enforce valid `expect()` usage
2516
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/valid-expect.md
2536
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-expect.md
2517
2537
  */
2518
2538
  'jest/valid-expect'?: Linter.RuleEntry<JestValidExpect>;
2519
2539
  /**
2520
2540
  * Require promises that have expectations in their chain to be valid
2521
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/valid-expect-in-promise.md
2541
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-expect-in-promise.md
2522
2542
  */
2523
2543
  'jest/valid-expect-in-promise'?: Linter.RuleEntry<[]>;
2524
2544
  /**
2525
2545
  * Disallow mocking of non-existing module paths
2526
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/valid-mock-module-path.md
2546
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-mock-module-path.md
2527
2547
  */
2528
2548
  'jest/valid-mock-module-path'?: Linter.RuleEntry<JestValidMockModulePath>;
2529
2549
  /**
2530
2550
  * Enforce valid titles
2531
- * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.2.1/docs/rules/valid-title.md
2551
+ * @see https://github.com/jest-community/eslint-plugin-jest/blob/v29.5.0/docs/rules/valid-title.md
2532
2552
  */
2533
2553
  'jest/valid-title'?: Linter.RuleEntry<JestValidTitle>;
2534
2554
  /**
@@ -4341,6 +4361,11 @@ interface RuleOptions {
4341
4361
  * @see https://perfectionist.dev/rules/sort-enums
4342
4362
  */
4343
4363
  'perfectionist/sort-enums'?: Linter.RuleEntry<PerfectionistSortEnums>;
4364
+ /**
4365
+ * Enforce sorted export attributes.
4366
+ * @see https://perfectionist.dev/rules/sort-export-attributes
4367
+ */
4368
+ 'perfectionist/sort-export-attributes'?: Linter.RuleEntry<PerfectionistSortExportAttributes>;
4344
4369
  /**
4345
4370
  * Enforce sorted exports.
4346
4371
  * @see https://perfectionist.dev/rules/sort-exports
@@ -4351,6 +4376,11 @@ interface RuleOptions {
4351
4376
  * @see https://perfectionist.dev/rules/sort-heritage-clauses
4352
4377
  */
4353
4378
  'perfectionist/sort-heritage-clauses'?: Linter.RuleEntry<PerfectionistSortHeritageClauses>;
4379
+ /**
4380
+ * Enforce sorted import attributes.
4381
+ * @see https://perfectionist.dev/rules/sort-import-attributes
4382
+ */
4383
+ 'perfectionist/sort-import-attributes'?: Linter.RuleEntry<PerfectionistSortImportAttributes>;
4354
4384
  /**
4355
4385
  * Enforce sorted imports.
4356
4386
  * @see https://perfectionist.dev/rules/sort-imports
@@ -6095,6 +6125,11 @@ interface RuleOptions {
6095
6125
  * @see https://github.com/testing-library/eslint-plugin-testing-library/tree/main/docs/rules/prefer-user-event.md
6096
6126
  */
6097
6127
  'testing-library/prefer-user-event'?: Linter.RuleEntry<TestingLibraryPreferUserEvent>;
6128
+ /**
6129
+ * Suggest using userEvent with setup() instead of direct methods
6130
+ * @see https://github.com/testing-library/eslint-plugin-testing-library/tree/main/docs/rules/prefer-user-event-setup.md
6131
+ */
6132
+ 'testing-library/prefer-user-event-setup'?: Linter.RuleEntry<[]>;
6098
6133
  /**
6099
6134
  * Enforce a valid naming for return value from `render`
6100
6135
  * @see https://github.com/testing-library/eslint-plugin-testing-library/tree/main/docs/rules/render-result-naming-convention.md
@@ -12340,27 +12375,25 @@ type PaddingLineBetweenStatements = {
12340
12375
  // ----- perfectionist/sort-array-includes -----
12341
12376
  type PerfectionistSortArrayIncludes = {
12342
12377
  fallbackSort?: {
12378
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12343
12379
  order?: ("asc" | "desc");
12344
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12345
12380
  };
12381
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12346
12382
  specialCharacters?: ("remove" | "trim" | "keep");
12347
12383
  ignoreCase?: boolean;
12348
12384
  alphabet?: string;
12349
12385
  locales?: (string | string[]);
12350
12386
  order?: ("asc" | "desc");
12351
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12352
- groupKind?: ("mixed" | "literals-first" | "spreads-first");
12353
12387
  customGroups?: ({
12354
- newlinesInside?: (("always" | "never") | number);
12355
12388
  fallbackSort?: {
12389
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12356
12390
  order?: ("asc" | "desc");
12357
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12358
12391
  };
12392
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12359
12393
  groupName: string;
12394
+ newlinesInside?: number;
12360
12395
  order?: ("asc" | "desc");
12361
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12362
- anyOf?: {
12363
- selector?: ("literal" | "spread");
12396
+ anyOf: {
12364
12397
  elementNamePattern?: (({
12365
12398
  pattern: string;
12366
12399
  flags?: string;
@@ -12368,17 +12401,17 @@ type PerfectionistSortArrayIncludes = {
12368
12401
  pattern: string;
12369
12402
  flags?: string;
12370
12403
  } | string));
12404
+ selector?: ("literal" | "spread");
12371
12405
  }[];
12372
12406
  } | {
12373
- newlinesInside?: (("always" | "never") | number);
12374
12407
  fallbackSort?: {
12408
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12375
12409
  order?: ("asc" | "desc");
12376
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12377
12410
  };
12411
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12378
12412
  groupName: string;
12413
+ newlinesInside?: number;
12379
12414
  order?: ("asc" | "desc");
12380
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12381
- selector?: ("literal" | "spread");
12382
12415
  elementNamePattern?: (({
12383
12416
  pattern: string;
12384
12417
  flags?: string;
@@ -12386,7 +12419,18 @@ type PerfectionistSortArrayIncludes = {
12386
12419
  pattern: string;
12387
12420
  flags?: string;
12388
12421
  } | string));
12422
+ selector?: ("literal" | "spread");
12423
+ })[];
12424
+ groups?: (string | [string, ...(string)[]] | {
12425
+ newlinesBetween: ("ignore" | number);
12426
+ } | {
12427
+ group: (string | [string, ...(string)[]]);
12428
+ commentAbove?: string;
12429
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12430
+ newlinesInside?: number;
12431
+ order?: ("asc" | "desc");
12389
12432
  })[];
12433
+ newlinesBetween?: ("ignore" | number);
12390
12434
  useConfigurationIf?: {
12391
12435
  allNamesMatchPattern?: (({
12392
12436
  pattern: string;
@@ -12419,51 +12463,46 @@ type PerfectionistSortArrayIncludes = {
12419
12463
  } | string)));
12420
12464
  });
12421
12465
  partitionByNewLine?: boolean;
12422
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12423
- groups?: (string | string[] | {
12424
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12425
- commentAbove?: string;
12426
- })[];
12427
12466
  }[];
12428
12467
  // ----- perfectionist/sort-classes -----
12429
12468
  type PerfectionistSortClasses = [] | [{
12430
12469
  fallbackSort?: {
12470
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12431
12471
  order?: ("asc" | "desc");
12432
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12433
12472
  };
12473
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12434
12474
  specialCharacters?: ("remove" | "trim" | "keep");
12435
12475
  ignoreCase?: boolean;
12436
12476
  alphabet?: string;
12437
12477
  locales?: (string | string[]);
12438
12478
  order?: ("asc" | "desc");
12439
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12440
12479
  customGroups?: ({
12441
- newlinesInside?: (("always" | "never") | number);
12442
12480
  fallbackSort?: {
12481
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12443
12482
  order?: ("asc" | "desc");
12444
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12445
12483
  };
12484
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12446
12485
  groupName: string;
12486
+ newlinesInside?: number;
12447
12487
  order?: ("asc" | "desc");
12448
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12449
- anyOf?: {
12450
- modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
12451
- selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
12452
- decoratorNamePattern?: (({
12488
+ anyOf: {
12489
+ elementNamePattern?: (({
12453
12490
  pattern: string;
12454
12491
  flags?: string;
12455
12492
  } | string)[] | ({
12456
12493
  pattern: string;
12457
12494
  flags?: string;
12458
12495
  } | string));
12459
- elementValuePattern?: (({
12496
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
12497
+ selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
12498
+ decoratorNamePattern?: (({
12460
12499
  pattern: string;
12461
12500
  flags?: string;
12462
12501
  } | string)[] | ({
12463
12502
  pattern: string;
12464
12503
  flags?: string;
12465
12504
  } | string));
12466
- elementNamePattern?: (({
12505
+ elementValuePattern?: (({
12467
12506
  pattern: string;
12468
12507
  flags?: string;
12469
12508
  } | string)[] | ({
@@ -12472,31 +12511,31 @@ type PerfectionistSortClasses = [] | [{
12472
12511
  } | string));
12473
12512
  }[];
12474
12513
  } | {
12475
- newlinesInside?: (("always" | "never") | number);
12476
12514
  fallbackSort?: {
12515
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12477
12516
  order?: ("asc" | "desc");
12478
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12479
12517
  };
12518
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12480
12519
  groupName: string;
12520
+ newlinesInside?: number;
12481
12521
  order?: ("asc" | "desc");
12482
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12483
- modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
12484
- selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
12485
- decoratorNamePattern?: (({
12522
+ elementNamePattern?: (({
12486
12523
  pattern: string;
12487
12524
  flags?: string;
12488
12525
  } | string)[] | ({
12489
12526
  pattern: string;
12490
12527
  flags?: string;
12491
12528
  } | string));
12492
- elementValuePattern?: (({
12529
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[];
12530
+ selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method");
12531
+ decoratorNamePattern?: (({
12493
12532
  pattern: string;
12494
12533
  flags?: string;
12495
12534
  } | string)[] | ({
12496
12535
  pattern: string;
12497
12536
  flags?: string;
12498
12537
  } | string));
12499
- elementNamePattern?: (({
12538
+ elementValuePattern?: (({
12500
12539
  pattern: string;
12501
12540
  flags?: string;
12502
12541
  } | string)[] | ({
@@ -12504,6 +12543,16 @@ type PerfectionistSortClasses = [] | [{
12504
12543
  flags?: string;
12505
12544
  } | string));
12506
12545
  })[];
12546
+ groups?: (string | [string, ...(string)[]] | {
12547
+ newlinesBetween: ("ignore" | number);
12548
+ } | {
12549
+ group: (string | [string, ...(string)[]]);
12550
+ commentAbove?: string;
12551
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12552
+ newlinesInside?: number;
12553
+ order?: ("asc" | "desc");
12554
+ })[];
12555
+ newlinesBetween?: ("ignore" | number);
12507
12556
  ignoreCallbackDependenciesPatterns?: (({
12508
12557
  pattern: string;
12509
12558
  flags?: string;
@@ -12534,24 +12583,64 @@ type PerfectionistSortClasses = [] | [{
12534
12583
  } | string)));
12535
12584
  });
12536
12585
  partitionByNewLine?: boolean;
12537
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12538
- groups?: (string | string[] | {
12539
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12540
- commentAbove?: string;
12541
- })[];
12542
12586
  }];
12543
12587
  // ----- perfectionist/sort-decorators -----
12544
- type PerfectionistSortDecorators = [] | [{
12588
+ type PerfectionistSortDecorators = {
12545
12589
  fallbackSort?: {
12590
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12546
12591
  order?: ("asc" | "desc");
12547
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12548
12592
  };
12593
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12549
12594
  specialCharacters?: ("remove" | "trim" | "keep");
12550
12595
  ignoreCase?: boolean;
12551
12596
  alphabet?: string;
12552
12597
  locales?: (string | string[]);
12553
12598
  order?: ("asc" | "desc");
12554
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12599
+ customGroups?: ({
12600
+ fallbackSort?: {
12601
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12602
+ order?: ("asc" | "desc");
12603
+ };
12604
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12605
+ groupName: string;
12606
+ newlinesInside?: number;
12607
+ order?: ("asc" | "desc");
12608
+ anyOf: {
12609
+ elementNamePattern?: (({
12610
+ pattern: string;
12611
+ flags?: string;
12612
+ } | string)[] | ({
12613
+ pattern: string;
12614
+ flags?: string;
12615
+ } | string));
12616
+ }[];
12617
+ } | {
12618
+ fallbackSort?: {
12619
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12620
+ order?: ("asc" | "desc");
12621
+ };
12622
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12623
+ groupName: string;
12624
+ newlinesInside?: number;
12625
+ order?: ("asc" | "desc");
12626
+ elementNamePattern?: (({
12627
+ pattern: string;
12628
+ flags?: string;
12629
+ } | string)[] | ({
12630
+ pattern: string;
12631
+ flags?: string;
12632
+ } | string));
12633
+ })[];
12634
+ groups?: (string | [string, ...(string)[]] | {
12635
+ newlinesBetween: ("ignore" | number);
12636
+ } | {
12637
+ group: (string | [string, ...(string)[]]);
12638
+ commentAbove?: string;
12639
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12640
+ newlinesInside?: number;
12641
+ order?: ("asc" | "desc");
12642
+ })[];
12643
+ newlinesBetween?: ("ignore" | number);
12555
12644
  sortOnParameters?: boolean;
12556
12645
  sortOnProperties?: boolean;
12557
12646
  sortOnAccessors?: boolean;
@@ -12579,46 +12668,38 @@ type PerfectionistSortDecorators = [] | [{
12579
12668
  flags?: string;
12580
12669
  } | string)));
12581
12670
  });
12582
- customGroups?: {
12583
- [k: string]: (string | string[]) | undefined;
12584
- };
12585
- groups?: (string | string[] | {
12586
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12587
- commentAbove?: string;
12588
- })[];
12589
- }];
12671
+ partitionByNewLine?: boolean;
12672
+ }[];
12590
12673
  // ----- perfectionist/sort-enums -----
12591
12674
  type PerfectionistSortEnums = [] | [{
12592
12675
  fallbackSort?: {
12676
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12593
12677
  order?: ("asc" | "desc");
12594
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12595
12678
  };
12679
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12596
12680
  specialCharacters?: ("remove" | "trim" | "keep");
12597
12681
  ignoreCase?: boolean;
12598
12682
  alphabet?: string;
12599
12683
  locales?: (string | string[]);
12600
12684
  order?: ("asc" | "desc");
12601
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12602
12685
  customGroups?: ({
12603
- [k: string]: (string | string[]) | undefined;
12604
- } | ({
12605
- newlinesInside?: (("always" | "never") | number);
12606
12686
  fallbackSort?: {
12687
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12607
12688
  order?: ("asc" | "desc");
12608
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12609
12689
  };
12690
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12610
12691
  groupName: string;
12692
+ newlinesInside?: number;
12611
12693
  order?: ("asc" | "desc");
12612
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12613
- anyOf?: {
12614
- elementValuePattern?: (({
12694
+ anyOf: {
12695
+ elementNamePattern?: (({
12615
12696
  pattern: string;
12616
12697
  flags?: string;
12617
12698
  } | string)[] | ({
12618
12699
  pattern: string;
12619
12700
  flags?: string;
12620
12701
  } | string));
12621
- elementNamePattern?: (({
12702
+ elementValuePattern?: (({
12622
12703
  pattern: string;
12623
12704
  flags?: string;
12624
12705
  } | string)[] | ({
@@ -12627,31 +12708,40 @@ type PerfectionistSortEnums = [] | [{
12627
12708
  } | string));
12628
12709
  }[];
12629
12710
  } | {
12630
- newlinesInside?: (("always" | "never") | number);
12631
12711
  fallbackSort?: {
12712
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12632
12713
  order?: ("asc" | "desc");
12633
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12634
12714
  };
12715
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12635
12716
  groupName: string;
12717
+ newlinesInside?: number;
12636
12718
  order?: ("asc" | "desc");
12637
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12638
- elementValuePattern?: (({
12719
+ elementNamePattern?: (({
12639
12720
  pattern: string;
12640
12721
  flags?: string;
12641
12722
  } | string)[] | ({
12642
12723
  pattern: string;
12643
12724
  flags?: string;
12644
12725
  } | string));
12645
- elementNamePattern?: (({
12726
+ elementValuePattern?: (({
12646
12727
  pattern: string;
12647
12728
  flags?: string;
12648
12729
  } | string)[] | ({
12649
12730
  pattern: string;
12650
12731
  flags?: string;
12651
12732
  } | string));
12652
- })[]);
12653
- forceNumericSort?: boolean;
12654
- sortByValue?: boolean;
12733
+ })[];
12734
+ groups?: (string | [string, ...(string)[]] | {
12735
+ newlinesBetween: ("ignore" | number);
12736
+ } | {
12737
+ group: (string | [string, ...(string)[]]);
12738
+ commentAbove?: string;
12739
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12740
+ newlinesInside?: number;
12741
+ order?: ("asc" | "desc");
12742
+ })[];
12743
+ newlinesBetween?: ("ignore" | number);
12744
+ sortByValue?: ("always" | "ifNumericEnum" | "never");
12655
12745
  partitionByComment?: (boolean | (({
12656
12746
  pattern: string;
12657
12747
  flags?: string;
@@ -12675,37 +12765,29 @@ type PerfectionistSortEnums = [] | [{
12675
12765
  } | string)));
12676
12766
  });
12677
12767
  partitionByNewLine?: boolean;
12678
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12679
- groups?: (string | string[] | {
12680
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12681
- commentAbove?: string;
12682
- })[];
12683
12768
  }];
12684
- // ----- perfectionist/sort-exports -----
12685
- type PerfectionistSortExports = {
12769
+ // ----- perfectionist/sort-export-attributes -----
12770
+ type PerfectionistSortExportAttributes = {
12686
12771
  fallbackSort?: {
12772
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12687
12773
  order?: ("asc" | "desc");
12688
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12689
12774
  };
12775
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12690
12776
  specialCharacters?: ("remove" | "trim" | "keep");
12691
12777
  ignoreCase?: boolean;
12692
12778
  alphabet?: string;
12693
12779
  locales?: (string | string[]);
12694
12780
  order?: ("asc" | "desc");
12695
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12696
- groupKind?: ("mixed" | "values-first" | "types-first");
12697
12781
  customGroups?: ({
12698
- newlinesInside?: (("always" | "never") | number);
12699
12782
  fallbackSort?: {
12783
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12700
12784
  order?: ("asc" | "desc");
12701
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12702
12785
  };
12786
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12703
12787
  groupName: string;
12788
+ newlinesInside?: number;
12704
12789
  order?: ("asc" | "desc");
12705
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12706
- anyOf?: {
12707
- modifiers?: ("value" | "type")[];
12708
- selector?: "export";
12790
+ anyOf: {
12709
12791
  elementNamePattern?: (({
12710
12792
  pattern: string;
12711
12793
  flags?: string;
@@ -12715,16 +12797,14 @@ type PerfectionistSortExports = {
12715
12797
  } | string));
12716
12798
  }[];
12717
12799
  } | {
12718
- newlinesInside?: (("always" | "never") | number);
12719
12800
  fallbackSort?: {
12801
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12720
12802
  order?: ("asc" | "desc");
12721
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12722
12803
  };
12804
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12723
12805
  groupName: string;
12806
+ newlinesInside?: number;
12724
12807
  order?: ("asc" | "desc");
12725
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12726
- modifiers?: ("value" | "type")[];
12727
- selector?: "export";
12728
12808
  elementNamePattern?: (({
12729
12809
  pattern: string;
12730
12810
  flags?: string;
@@ -12733,6 +12813,16 @@ type PerfectionistSortExports = {
12733
12813
  flags?: string;
12734
12814
  } | string));
12735
12815
  })[];
12816
+ groups?: (string | [string, ...(string)[]] | {
12817
+ newlinesBetween: ("ignore" | number);
12818
+ } | {
12819
+ group: (string | [string, ...(string)[]]);
12820
+ commentAbove?: string;
12821
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12822
+ newlinesInside?: number;
12823
+ order?: ("asc" | "desc");
12824
+ })[];
12825
+ newlinesBetween?: ("ignore" | number);
12736
12826
  partitionByComment?: (boolean | (({
12737
12827
  pattern: string;
12738
12828
  flags?: string;
@@ -12756,70 +12846,29 @@ type PerfectionistSortExports = {
12756
12846
  } | string)));
12757
12847
  });
12758
12848
  partitionByNewLine?: boolean;
12759
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12760
- groups?: (string | string[] | {
12761
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12762
- commentAbove?: string;
12763
- })[];
12764
12849
  }[];
12765
- // ----- perfectionist/sort-heritage-clauses -----
12766
- type PerfectionistSortHeritageClauses = [] | [{
12850
+ // ----- perfectionist/sort-exports -----
12851
+ type PerfectionistSortExports = {
12767
12852
  fallbackSort?: {
12853
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12768
12854
  order?: ("asc" | "desc");
12769
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12770
12855
  };
12771
- specialCharacters?: ("remove" | "trim" | "keep");
12772
- ignoreCase?: boolean;
12773
- alphabet?: string;
12774
- locales?: (string | string[]);
12775
- order?: ("asc" | "desc");
12776
12856
  type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12777
- customGroups?: {
12778
- [k: string]: (string | string[]) | undefined;
12779
- };
12780
- groups?: (string | string[] | {
12781
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12782
- commentAbove?: string;
12783
- })[];
12784
- }];
12785
- // ----- perfectionist/sort-imports -----
12786
- type PerfectionistSortImports = {
12787
- fallbackSort?: {
12788
- order?: ("asc" | "desc");
12789
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12790
- };
12791
12857
  specialCharacters?: ("remove" | "trim" | "keep");
12792
12858
  ignoreCase?: boolean;
12793
12859
  alphabet?: string;
12794
12860
  locales?: (string | string[]);
12795
12861
  order?: ("asc" | "desc");
12796
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12797
12862
  customGroups?: ({
12798
- value?: {
12799
- [k: string]: (string | string[]) | undefined;
12800
- };
12801
- type?: {
12802
- [k: string]: (string | string[]) | undefined;
12803
- };
12804
- } | ({
12805
- newlinesInside?: (("always" | "never") | number);
12806
12863
  fallbackSort?: {
12864
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12807
12865
  order?: ("asc" | "desc");
12808
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12809
12866
  };
12867
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12810
12868
  groupName: string;
12869
+ newlinesInside?: number;
12811
12870
  order?: ("asc" | "desc");
12812
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12813
- anyOf?: {
12814
- modifiers?: ("default" | "named" | "require" | "side-effect" | "ts-equals" | "type" | "value" | "wildcard")[];
12815
- selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
12816
- elementValuePattern?: (({
12817
- pattern: string;
12818
- flags?: string;
12819
- } | string)[] | ({
12820
- pattern: string;
12821
- flags?: string;
12822
- } | string));
12871
+ anyOf: {
12823
12872
  elementNamePattern?: (({
12824
12873
  pattern: string;
12825
12874
  flags?: string;
@@ -12827,25 +12876,18 @@ type PerfectionistSortImports = {
12827
12876
  pattern: string;
12828
12877
  flags?: string;
12829
12878
  } | string));
12879
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[];
12880
+ selector?: "export";
12830
12881
  }[];
12831
12882
  } | {
12832
- newlinesInside?: (("always" | "never") | number);
12833
12883
  fallbackSort?: {
12884
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12834
12885
  order?: ("asc" | "desc");
12835
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12836
12886
  };
12887
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12837
12888
  groupName: string;
12889
+ newlinesInside?: number;
12838
12890
  order?: ("asc" | "desc");
12839
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12840
- modifiers?: ("default" | "named" | "require" | "side-effect" | "ts-equals" | "type" | "value" | "wildcard")[];
12841
- selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
12842
- elementValuePattern?: (({
12843
- pattern: string;
12844
- flags?: string;
12845
- } | string)[] | ({
12846
- pattern: string;
12847
- flags?: string;
12848
- } | string));
12849
12891
  elementNamePattern?: (({
12850
12892
  pattern: string;
12851
12893
  flags?: string;
@@ -12853,15 +12895,19 @@ type PerfectionistSortImports = {
12853
12895
  pattern: string;
12854
12896
  flags?: string;
12855
12897
  } | string));
12856
- })[]);
12857
- tsconfig?: {
12858
- rootDir: string;
12859
- filename?: string;
12860
- };
12861
- maxLineLength?: number;
12862
- sortSideEffects?: boolean;
12863
- environment?: ("node" | "bun");
12864
- tsconfigRootDir?: string;
12898
+ modifiers?: ("value" | "type" | "named" | "wildcard" | "multiline" | "singleline")[];
12899
+ selector?: "export";
12900
+ })[];
12901
+ groups?: (string | [string, ...(string)[]] | {
12902
+ newlinesBetween: ("ignore" | number);
12903
+ } | {
12904
+ group: (string | [string, ...(string)[]]);
12905
+ commentAbove?: string;
12906
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12907
+ newlinesInside?: number;
12908
+ order?: ("asc" | "desc");
12909
+ })[];
12910
+ newlinesBetween?: ("ignore" | number);
12865
12911
  partitionByComment?: (boolean | (({
12866
12912
  pattern: string;
12867
12913
  flags?: string;
@@ -12885,54 +12931,29 @@ type PerfectionistSortImports = {
12885
12931
  } | string)));
12886
12932
  });
12887
12933
  partitionByNewLine?: boolean;
12888
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12889
- internalPattern?: (({
12890
- pattern: string;
12891
- flags?: string;
12892
- } | string)[] | ({
12893
- pattern: string;
12894
- flags?: string;
12895
- } | string));
12896
- groups?: (string | string[] | {
12897
- newlinesBetween?: (("ignore" | "always" | "never") | number);
12898
- commentAbove?: string;
12899
- })[];
12900
12934
  }[];
12901
- // ----- perfectionist/sort-interfaces -----
12902
- type PerfectionistSortInterfaces = {
12935
+ // ----- perfectionist/sort-heritage-clauses -----
12936
+ type PerfectionistSortHeritageClauses = {
12903
12937
  fallbackSort?: {
12938
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12904
12939
  order?: ("asc" | "desc");
12905
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12906
- sortBy?: ("name" | "value");
12907
12940
  };
12941
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12908
12942
  specialCharacters?: ("remove" | "trim" | "keep");
12909
12943
  ignoreCase?: boolean;
12910
12944
  alphabet?: string;
12911
12945
  locales?: (string | string[]);
12912
12946
  order?: ("asc" | "desc");
12913
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12914
12947
  customGroups?: ({
12915
- [k: string]: (string | string[]) | undefined;
12916
- } | ({
12917
- newlinesInside?: (("always" | "never") | number);
12918
12948
  fallbackSort?: {
12949
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12919
12950
  order?: ("asc" | "desc");
12920
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12921
- sortBy?: ("name" | "value");
12922
12951
  };
12952
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12923
12953
  groupName: string;
12954
+ newlinesInside?: number;
12924
12955
  order?: ("asc" | "desc");
12925
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12926
- anyOf?: {
12927
- modifiers?: ("optional" | "required" | "multiline")[];
12928
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
12929
- elementValuePattern?: (({
12930
- pattern: string;
12931
- flags?: string;
12932
- } | string)[] | ({
12933
- pattern: string;
12934
- flags?: string;
12935
- } | string));
12956
+ anyOf: {
12936
12957
  elementNamePattern?: (({
12937
12958
  pattern: string;
12938
12959
  flags?: string;
@@ -12940,27 +12961,16 @@ type PerfectionistSortInterfaces = {
12940
12961
  pattern: string;
12941
12962
  flags?: string;
12942
12963
  } | string));
12943
- sortBy?: ("name" | "value");
12944
12964
  }[];
12945
12965
  } | {
12946
- newlinesInside?: (("always" | "never") | number);
12947
12966
  fallbackSort?: {
12967
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12948
12968
  order?: ("asc" | "desc");
12949
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12950
- sortBy?: ("name" | "value");
12951
12969
  };
12970
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12952
12971
  groupName: string;
12972
+ newlinesInside?: number;
12953
12973
  order?: ("asc" | "desc");
12954
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12955
- modifiers?: ("optional" | "required" | "multiline")[];
12956
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
12957
- elementValuePattern?: (({
12958
- pattern: string;
12959
- flags?: string;
12960
- } | string)[] | ({
12961
- pattern: string;
12962
- flags?: string;
12963
- } | string));
12964
12974
  elementNamePattern?: (({
12965
12975
  pattern: string;
12966
12976
  flags?: string;
@@ -12968,25 +12978,190 @@ type PerfectionistSortInterfaces = {
12968
12978
  pattern: string;
12969
12979
  flags?: string;
12970
12980
  } | string));
12971
- sortBy?: ("name" | "value");
12972
- })[]);
12973
- groupKind?: ("mixed" | "required-first" | "optional-first");
12974
- useConfigurationIf?: {
12975
- allNamesMatchPattern?: (({
12981
+ })[];
12982
+ groups?: (string | [string, ...(string)[]] | {
12983
+ newlinesBetween: ("ignore" | number);
12984
+ } | {
12985
+ group: (string | [string, ...(string)[]]);
12986
+ commentAbove?: string;
12987
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
12988
+ newlinesInside?: number;
12989
+ order?: ("asc" | "desc");
12990
+ })[];
12991
+ newlinesBetween?: ("ignore" | number);
12992
+ partitionByNewLine?: boolean;
12993
+ partitionByComment?: (boolean | (({
12994
+ pattern: string;
12995
+ flags?: string;
12996
+ } | string)[] | ({
12997
+ pattern: string;
12998
+ flags?: string;
12999
+ } | string)) | {
13000
+ block?: (boolean | (({
13001
+ pattern: string;
13002
+ flags?: string;
13003
+ } | string)[] | ({
13004
+ pattern: string;
13005
+ flags?: string;
13006
+ } | string)));
13007
+ line?: (boolean | (({
13008
+ pattern: string;
13009
+ flags?: string;
13010
+ } | string)[] | ({
13011
+ pattern: string;
13012
+ flags?: string;
13013
+ } | string)));
13014
+ });
13015
+ }[];
13016
+ // ----- perfectionist/sort-import-attributes -----
13017
+ type PerfectionistSortImportAttributes = {
13018
+ fallbackSort?: {
13019
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13020
+ order?: ("asc" | "desc");
13021
+ };
13022
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13023
+ specialCharacters?: ("remove" | "trim" | "keep");
13024
+ ignoreCase?: boolean;
13025
+ alphabet?: string;
13026
+ locales?: (string | string[]);
13027
+ order?: ("asc" | "desc");
13028
+ customGroups?: ({
13029
+ fallbackSort?: {
13030
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13031
+ order?: ("asc" | "desc");
13032
+ };
13033
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13034
+ groupName: string;
13035
+ newlinesInside?: number;
13036
+ order?: ("asc" | "desc");
13037
+ anyOf: {
13038
+ elementNamePattern?: (({
13039
+ pattern: string;
13040
+ flags?: string;
13041
+ } | string)[] | ({
13042
+ pattern: string;
13043
+ flags?: string;
13044
+ } | string));
13045
+ }[];
13046
+ } | {
13047
+ fallbackSort?: {
13048
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13049
+ order?: ("asc" | "desc");
13050
+ };
13051
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13052
+ groupName: string;
13053
+ newlinesInside?: number;
13054
+ order?: ("asc" | "desc");
13055
+ elementNamePattern?: (({
12976
13056
  pattern: string;
12977
13057
  flags?: string;
12978
13058
  } | string)[] | ({
12979
13059
  pattern: string;
12980
13060
  flags?: string;
12981
13061
  } | string));
12982
- declarationMatchesPattern?: (({
13062
+ })[];
13063
+ groups?: (string | [string, ...(string)[]] | {
13064
+ newlinesBetween: ("ignore" | number);
13065
+ } | {
13066
+ group: (string | [string, ...(string)[]]);
13067
+ commentAbove?: string;
13068
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13069
+ newlinesInside?: number;
13070
+ order?: ("asc" | "desc");
13071
+ })[];
13072
+ newlinesBetween?: ("ignore" | number);
13073
+ partitionByComment?: (boolean | (({
13074
+ pattern: string;
13075
+ flags?: string;
13076
+ } | string)[] | ({
13077
+ pattern: string;
13078
+ flags?: string;
13079
+ } | string)) | {
13080
+ block?: (boolean | (({
13081
+ pattern: string;
13082
+ flags?: string;
13083
+ } | string)[] | ({
13084
+ pattern: string;
13085
+ flags?: string;
13086
+ } | string)));
13087
+ line?: (boolean | (({
13088
+ pattern: string;
13089
+ flags?: string;
13090
+ } | string)[] | ({
13091
+ pattern: string;
13092
+ flags?: string;
13093
+ } | string)));
13094
+ });
13095
+ partitionByNewLine?: boolean;
13096
+ }[];
13097
+ // ----- perfectionist/sort-imports -----
13098
+ type PerfectionistSortImports = {
13099
+ fallbackSort?: {
13100
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "type-import-first");
13101
+ order?: ("asc" | "desc");
13102
+ };
13103
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "type-import-first");
13104
+ specialCharacters?: ("remove" | "trim" | "keep");
13105
+ ignoreCase?: boolean;
13106
+ alphabet?: string;
13107
+ locales?: (string | string[]);
13108
+ order?: ("asc" | "desc");
13109
+ customGroups?: ({
13110
+ fallbackSort?: {
13111
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "type-import-first");
13112
+ order?: ("asc" | "desc");
13113
+ };
13114
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "type-import-first");
13115
+ groupName: string;
13116
+ newlinesInside?: number;
13117
+ order?: ("asc" | "desc");
13118
+ anyOf: {
13119
+ elementNamePattern?: (({
13120
+ pattern: string;
13121
+ flags?: string;
13122
+ } | string)[] | ({
13123
+ pattern: string;
13124
+ flags?: string;
13125
+ } | string));
13126
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[];
13127
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
13128
+ }[];
13129
+ } | {
13130
+ fallbackSort?: {
13131
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "type-import-first");
13132
+ order?: ("asc" | "desc");
13133
+ };
13134
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "type-import-first");
13135
+ groupName: string;
13136
+ newlinesInside?: number;
13137
+ order?: ("asc" | "desc");
13138
+ elementNamePattern?: (({
12983
13139
  pattern: string;
12984
13140
  flags?: string;
12985
13141
  } | string)[] | ({
12986
13142
  pattern: string;
12987
13143
  flags?: string;
12988
13144
  } | string));
13145
+ modifiers?: ("default" | "multiline" | "named" | "require" | "side-effect" | "singleline" | "ts-equals" | "type" | "value" | "wildcard")[];
13146
+ selector?: ("side-effect-style" | "tsconfig-path" | "side-effect" | "external" | "internal" | "builtin" | "sibling" | "subpath" | "import" | "parent" | "index" | "style" | "type");
13147
+ })[];
13148
+ groups?: (string | [string, ...(string)[]] | {
13149
+ newlinesBetween: ("ignore" | number);
13150
+ } | {
13151
+ group: (string | [string, ...(string)[]]);
13152
+ commentAbove?: string;
13153
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted" | "type-import-first");
13154
+ newlinesInside?: number;
13155
+ order?: ("asc" | "desc");
13156
+ })[];
13157
+ newlinesBetween?: ("ignore" | number);
13158
+ tsconfig?: {
13159
+ rootDir: string;
13160
+ filename?: string;
12989
13161
  };
13162
+ maxLineLength?: number;
13163
+ sortSideEffects?: boolean;
13164
+ environment?: ("node" | "bun");
12990
13165
  partitionByComment?: (boolean | (({
12991
13166
  pattern: string;
12992
13167
  flags?: string;
@@ -13010,43 +13185,169 @@ type PerfectionistSortInterfaces = {
13010
13185
  } | string)));
13011
13186
  });
13012
13187
  partitionByNewLine?: boolean;
13013
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13014
- ignorePattern?: (({
13188
+ internalPattern?: (({
13015
13189
  pattern: string;
13016
13190
  flags?: string;
13017
13191
  } | string)[] | ({
13018
13192
  pattern: string;
13019
13193
  flags?: string;
13020
13194
  } | string));
13021
- sortBy?: ("name" | "value");
13022
- groups?: (string | string[] | {
13023
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13195
+ }[];
13196
+ // ----- perfectionist/sort-interfaces -----
13197
+ type PerfectionistSortInterfaces = {
13198
+ fallbackSort?: {
13199
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13200
+ order?: ("asc" | "desc");
13201
+ sortBy?: ("name" | "value");
13202
+ };
13203
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13204
+ specialCharacters?: ("remove" | "trim" | "keep");
13205
+ ignoreCase?: boolean;
13206
+ alphabet?: string;
13207
+ locales?: (string | string[]);
13208
+ order?: ("asc" | "desc");
13209
+ customGroups?: ({
13210
+ fallbackSort?: {
13211
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13212
+ order?: ("asc" | "desc");
13213
+ sortBy?: ("name" | "value");
13214
+ };
13215
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13216
+ groupName: string;
13217
+ newlinesInside?: number;
13218
+ order?: ("asc" | "desc");
13219
+ anyOf: {
13220
+ elementNamePattern?: (({
13221
+ pattern: string;
13222
+ flags?: string;
13223
+ } | string)[] | ({
13224
+ pattern: string;
13225
+ flags?: string;
13226
+ } | string));
13227
+ modifiers?: ("optional" | "required" | "multiline")[];
13228
+ selector?: ("index-signature" | "member" | "method" | "property");
13229
+ elementValuePattern?: (({
13230
+ pattern: string;
13231
+ flags?: string;
13232
+ } | string)[] | ({
13233
+ pattern: string;
13234
+ flags?: string;
13235
+ } | string));
13236
+ sortBy?: ("name" | "value");
13237
+ }[];
13238
+ } | {
13239
+ fallbackSort?: {
13240
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13241
+ order?: ("asc" | "desc");
13242
+ sortBy?: ("name" | "value");
13243
+ };
13244
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13245
+ groupName: string;
13246
+ newlinesInside?: number;
13247
+ order?: ("asc" | "desc");
13248
+ elementNamePattern?: (({
13249
+ pattern: string;
13250
+ flags?: string;
13251
+ } | string)[] | ({
13252
+ pattern: string;
13253
+ flags?: string;
13254
+ } | string));
13255
+ modifiers?: ("optional" | "required" | "multiline")[];
13256
+ selector?: ("index-signature" | "member" | "method" | "property");
13257
+ elementValuePattern?: (({
13258
+ pattern: string;
13259
+ flags?: string;
13260
+ } | string)[] | ({
13261
+ pattern: string;
13262
+ flags?: string;
13263
+ } | string));
13264
+ sortBy?: ("name" | "value");
13265
+ })[];
13266
+ groups?: (string | [string, ...(string)[]] | {
13267
+ newlinesBetween: ("ignore" | number);
13268
+ } | {
13269
+ group: (string | [string, ...(string)[]]);
13024
13270
  commentAbove?: string;
13271
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13272
+ newlinesInside?: number;
13273
+ order?: ("asc" | "desc");
13025
13274
  })[];
13275
+ newlinesBetween?: ("ignore" | number);
13276
+ useConfigurationIf?: {
13277
+ allNamesMatchPattern?: (({
13278
+ pattern: string;
13279
+ flags?: string;
13280
+ } | string)[] | ({
13281
+ pattern: string;
13282
+ flags?: string;
13283
+ } | string));
13284
+ hasNumericKeysOnly?: boolean;
13285
+ declarationCommentMatchesPattern?: (({
13286
+ scope?: ("shallow" | "deep");
13287
+ pattern: string;
13288
+ flags?: string;
13289
+ } | string)[] | ({
13290
+ scope?: ("shallow" | "deep");
13291
+ pattern: string;
13292
+ flags?: string;
13293
+ } | string));
13294
+ declarationMatchesPattern?: (({
13295
+ scope?: ("shallow" | "deep");
13296
+ pattern: string;
13297
+ flags?: string;
13298
+ } | string)[] | ({
13299
+ scope?: ("shallow" | "deep");
13300
+ pattern: string;
13301
+ flags?: string;
13302
+ } | string));
13303
+ };
13304
+ partitionByComment?: (boolean | (({
13305
+ pattern: string;
13306
+ flags?: string;
13307
+ } | string)[] | ({
13308
+ pattern: string;
13309
+ flags?: string;
13310
+ } | string)) | {
13311
+ block?: (boolean | (({
13312
+ pattern: string;
13313
+ flags?: string;
13314
+ } | string)[] | ({
13315
+ pattern: string;
13316
+ flags?: string;
13317
+ } | string)));
13318
+ line?: (boolean | (({
13319
+ pattern: string;
13320
+ flags?: string;
13321
+ } | string)[] | ({
13322
+ pattern: string;
13323
+ flags?: string;
13324
+ } | string)));
13325
+ });
13326
+ partitionByNewLine?: boolean;
13327
+ sortBy?: ("name" | "value");
13026
13328
  }[];
13027
13329
  // ----- perfectionist/sort-intersection-types -----
13028
13330
  type PerfectionistSortIntersectionTypes = {
13029
13331
  fallbackSort?: {
13332
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13030
13333
  order?: ("asc" | "desc");
13031
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13032
13334
  };
13335
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13033
13336
  specialCharacters?: ("remove" | "trim" | "keep");
13034
13337
  ignoreCase?: boolean;
13035
13338
  alphabet?: string;
13036
13339
  locales?: (string | string[]);
13037
13340
  order?: ("asc" | "desc");
13038
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13039
13341
  customGroups?: ({
13040
- newlinesInside?: (("always" | "never") | number);
13041
13342
  fallbackSort?: {
13343
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13042
13344
  order?: ("asc" | "desc");
13043
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13044
13345
  };
13346
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13045
13347
  groupName: string;
13348
+ newlinesInside?: number;
13046
13349
  order?: ("asc" | "desc");
13047
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13048
- anyOf?: {
13049
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
13350
+ anyOf: {
13050
13351
  elementNamePattern?: (({
13051
13352
  pattern: string;
13052
13353
  flags?: string;
@@ -13054,17 +13355,17 @@ type PerfectionistSortIntersectionTypes = {
13054
13355
  pattern: string;
13055
13356
  flags?: string;
13056
13357
  } | string));
13358
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
13057
13359
  }[];
13058
13360
  } | {
13059
- newlinesInside?: (("always" | "never") | number);
13060
13361
  fallbackSort?: {
13362
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13061
13363
  order?: ("asc" | "desc");
13062
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13063
13364
  };
13365
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13064
13366
  groupName: string;
13367
+ newlinesInside?: number;
13065
13368
  order?: ("asc" | "desc");
13066
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13067
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
13068
13369
  elementNamePattern?: (({
13069
13370
  pattern: string;
13070
13371
  flags?: string;
@@ -13072,7 +13373,18 @@ type PerfectionistSortIntersectionTypes = {
13072
13373
  pattern: string;
13073
13374
  flags?: string;
13074
13375
  } | string));
13376
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
13377
+ })[];
13378
+ groups?: (string | [string, ...(string)[]] | {
13379
+ newlinesBetween: ("ignore" | number);
13380
+ } | {
13381
+ group: (string | [string, ...(string)[]]);
13382
+ commentAbove?: string;
13383
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13384
+ newlinesInside?: number;
13385
+ order?: ("asc" | "desc");
13075
13386
  })[];
13387
+ newlinesBetween?: ("ignore" | number);
13076
13388
  partitionByComment?: (boolean | (({
13077
13389
  pattern: string;
13078
13390
  flags?: string;
@@ -13096,46 +13408,39 @@ type PerfectionistSortIntersectionTypes = {
13096
13408
  } | string)));
13097
13409
  });
13098
13410
  partitionByNewLine?: boolean;
13099
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13100
- groups?: (string | string[] | {
13101
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13102
- commentAbove?: string;
13103
- })[];
13104
13411
  }[];
13105
13412
  // ----- perfectionist/sort-jsx-props -----
13106
13413
  type PerfectionistSortJsxProps = {
13107
13414
  fallbackSort?: {
13415
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13108
13416
  order?: ("asc" | "desc");
13109
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13110
13417
  };
13418
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13111
13419
  specialCharacters?: ("remove" | "trim" | "keep");
13112
13420
  ignoreCase?: boolean;
13113
13421
  alphabet?: string;
13114
13422
  locales?: (string | string[]);
13115
13423
  order?: ("asc" | "desc");
13116
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13117
13424
  customGroups?: ({
13118
- [k: string]: (string | string[]) | undefined;
13119
- } | ({
13120
- newlinesInside?: (("always" | "never") | number);
13121
13425
  fallbackSort?: {
13426
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13122
13427
  order?: ("asc" | "desc");
13123
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13124
13428
  };
13429
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13125
13430
  groupName: string;
13431
+ newlinesInside?: number;
13126
13432
  order?: ("asc" | "desc");
13127
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13128
- anyOf?: {
13129
- modifiers?: ("shorthand" | "multiline")[];
13130
- selector?: ("multiline" | "prop" | "shorthand");
13131
- elementValuePattern?: (({
13433
+ anyOf: {
13434
+ elementNamePattern?: (({
13132
13435
  pattern: string;
13133
13436
  flags?: string;
13134
13437
  } | string)[] | ({
13135
13438
  pattern: string;
13136
13439
  flags?: string;
13137
13440
  } | string));
13138
- elementNamePattern?: (({
13441
+ modifiers?: ("shorthand" | "multiline")[];
13442
+ selector?: "prop";
13443
+ elementValuePattern?: (({
13139
13444
  pattern: string;
13140
13445
  flags?: string;
13141
13446
  } | string)[] | ({
@@ -13144,31 +13449,41 @@ type PerfectionistSortJsxProps = {
13144
13449
  } | string));
13145
13450
  }[];
13146
13451
  } | {
13147
- newlinesInside?: (("always" | "never") | number);
13148
13452
  fallbackSort?: {
13453
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13149
13454
  order?: ("asc" | "desc");
13150
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13151
13455
  };
13456
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13152
13457
  groupName: string;
13458
+ newlinesInside?: number;
13153
13459
  order?: ("asc" | "desc");
13154
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13155
- modifiers?: ("shorthand" | "multiline")[];
13156
- selector?: ("multiline" | "prop" | "shorthand");
13157
- elementValuePattern?: (({
13460
+ elementNamePattern?: (({
13158
13461
  pattern: string;
13159
13462
  flags?: string;
13160
13463
  } | string)[] | ({
13161
13464
  pattern: string;
13162
13465
  flags?: string;
13163
13466
  } | string));
13164
- elementNamePattern?: (({
13467
+ modifiers?: ("shorthand" | "multiline")[];
13468
+ selector?: "prop";
13469
+ elementValuePattern?: (({
13165
13470
  pattern: string;
13166
13471
  flags?: string;
13167
13472
  } | string)[] | ({
13168
13473
  pattern: string;
13169
13474
  flags?: string;
13170
13475
  } | string));
13171
- })[]);
13476
+ })[];
13477
+ groups?: (string | [string, ...(string)[]] | {
13478
+ newlinesBetween: ("ignore" | number);
13479
+ } | {
13480
+ group: (string | [string, ...(string)[]]);
13481
+ commentAbove?: string;
13482
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13483
+ newlinesInside?: number;
13484
+ order?: ("asc" | "desc");
13485
+ })[];
13486
+ newlinesBetween?: ("ignore" | number);
13172
13487
  useConfigurationIf?: {
13173
13488
  allNamesMatchPattern?: (({
13174
13489
  pattern: string;
@@ -13186,41 +13501,29 @@ type PerfectionistSortJsxProps = {
13186
13501
  } | string));
13187
13502
  };
13188
13503
  partitionByNewLine?: boolean;
13189
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13190
- ignorePattern?: (({
13191
- pattern: string;
13192
- flags?: string;
13193
- } | string)[] | ({
13194
- pattern: string;
13195
- flags?: string;
13196
- } | string));
13197
- groups?: (string | string[] | {
13198
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13199
- commentAbove?: string;
13200
- })[];
13201
13504
  }[];
13202
13505
  // ----- perfectionist/sort-maps -----
13203
13506
  type PerfectionistSortMaps = {
13204
13507
  fallbackSort?: {
13508
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13205
13509
  order?: ("asc" | "desc");
13206
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13207
13510
  };
13511
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13208
13512
  specialCharacters?: ("remove" | "trim" | "keep");
13209
13513
  ignoreCase?: boolean;
13210
13514
  alphabet?: string;
13211
13515
  locales?: (string | string[]);
13212
13516
  order?: ("asc" | "desc");
13213
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13214
13517
  customGroups?: ({
13215
- newlinesInside?: (("always" | "never") | number);
13216
13518
  fallbackSort?: {
13519
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13217
13520
  order?: ("asc" | "desc");
13218
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13219
13521
  };
13522
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13220
13523
  groupName: string;
13524
+ newlinesInside?: number;
13221
13525
  order?: ("asc" | "desc");
13222
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13223
- anyOf?: {
13526
+ anyOf: {
13224
13527
  elementNamePattern?: (({
13225
13528
  pattern: string;
13226
13529
  flags?: string;
@@ -13230,14 +13533,14 @@ type PerfectionistSortMaps = {
13230
13533
  } | string));
13231
13534
  }[];
13232
13535
  } | {
13233
- newlinesInside?: (("always" | "never") | number);
13234
13536
  fallbackSort?: {
13537
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13235
13538
  order?: ("asc" | "desc");
13236
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13237
13539
  };
13540
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13238
13541
  groupName: string;
13542
+ newlinesInside?: number;
13239
13543
  order?: ("asc" | "desc");
13240
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13241
13544
  elementNamePattern?: (({
13242
13545
  pattern: string;
13243
13546
  flags?: string;
@@ -13246,6 +13549,16 @@ type PerfectionistSortMaps = {
13246
13549
  flags?: string;
13247
13550
  } | string));
13248
13551
  })[];
13552
+ groups?: (string | [string, ...(string)[]] | {
13553
+ newlinesBetween: ("ignore" | number);
13554
+ } | {
13555
+ group: (string | [string, ...(string)[]]);
13556
+ commentAbove?: string;
13557
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13558
+ newlinesInside?: number;
13559
+ order?: ("asc" | "desc");
13560
+ })[];
13561
+ newlinesBetween?: ("ignore" | number);
13249
13562
  useConfigurationIf?: {
13250
13563
  allNamesMatchPattern?: (({
13251
13564
  pattern: string;
@@ -13278,44 +13591,39 @@ type PerfectionistSortMaps = {
13278
13591
  } | string)));
13279
13592
  });
13280
13593
  partitionByNewLine?: boolean;
13281
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13282
- groups?: (string | string[] | {
13283
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13284
- commentAbove?: string;
13285
- })[];
13286
13594
  }[];
13287
13595
  // ----- perfectionist/sort-modules -----
13288
13596
  type PerfectionistSortModules = [] | [{
13289
13597
  fallbackSort?: {
13598
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13290
13599
  order?: ("asc" | "desc");
13291
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13292
13600
  };
13601
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13293
13602
  specialCharacters?: ("remove" | "trim" | "keep");
13294
13603
  ignoreCase?: boolean;
13295
13604
  alphabet?: string;
13296
13605
  locales?: (string | string[]);
13297
13606
  order?: ("asc" | "desc");
13298
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13299
13607
  customGroups?: ({
13300
- newlinesInside?: (("always" | "never") | number);
13301
13608
  fallbackSort?: {
13609
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13302
13610
  order?: ("asc" | "desc");
13303
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13304
13611
  };
13612
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13305
13613
  groupName: string;
13614
+ newlinesInside?: number;
13306
13615
  order?: ("asc" | "desc");
13307
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13308
- anyOf?: {
13309
- modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
13310
- selector?: ("enum" | "function" | "interface" | "type" | "class");
13311
- decoratorNamePattern?: (({
13616
+ anyOf: {
13617
+ elementNamePattern?: (({
13312
13618
  pattern: string;
13313
13619
  flags?: string;
13314
13620
  } | string)[] | ({
13315
13621
  pattern: string;
13316
13622
  flags?: string;
13317
13623
  } | string));
13318
- elementNamePattern?: (({
13624
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
13625
+ selector?: ("enum" | "function" | "interface" | "type" | "class");
13626
+ decoratorNamePattern?: (({
13319
13627
  pattern: string;
13320
13628
  flags?: string;
13321
13629
  } | string)[] | ({
@@ -13324,24 +13632,24 @@ type PerfectionistSortModules = [] | [{
13324
13632
  } | string));
13325
13633
  }[];
13326
13634
  } | {
13327
- newlinesInside?: (("always" | "never") | number);
13328
13635
  fallbackSort?: {
13636
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13329
13637
  order?: ("asc" | "desc");
13330
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13331
13638
  };
13639
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13332
13640
  groupName: string;
13641
+ newlinesInside?: number;
13333
13642
  order?: ("asc" | "desc");
13334
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13335
- modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
13336
- selector?: ("enum" | "function" | "interface" | "type" | "class");
13337
- decoratorNamePattern?: (({
13643
+ elementNamePattern?: (({
13338
13644
  pattern: string;
13339
13645
  flags?: string;
13340
13646
  } | string)[] | ({
13341
13647
  pattern: string;
13342
13648
  flags?: string;
13343
13649
  } | string));
13344
- elementNamePattern?: (({
13650
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[];
13651
+ selector?: ("enum" | "function" | "interface" | "type" | "class");
13652
+ decoratorNamePattern?: (({
13345
13653
  pattern: string;
13346
13654
  flags?: string;
13347
13655
  } | string)[] | ({
@@ -13349,6 +13657,16 @@ type PerfectionistSortModules = [] | [{
13349
13657
  flags?: string;
13350
13658
  } | string));
13351
13659
  })[];
13660
+ groups?: (string | [string, ...(string)[]] | {
13661
+ newlinesBetween: ("ignore" | number);
13662
+ } | {
13663
+ group: (string | [string, ...(string)[]]);
13664
+ commentAbove?: string;
13665
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13666
+ newlinesInside?: number;
13667
+ order?: ("asc" | "desc");
13668
+ })[];
13669
+ newlinesBetween?: ("ignore" | number);
13352
13670
  partitionByComment?: (boolean | (({
13353
13671
  pattern: string;
13354
13672
  flags?: string;
@@ -13372,38 +13690,29 @@ type PerfectionistSortModules = [] | [{
13372
13690
  } | string)));
13373
13691
  });
13374
13692
  partitionByNewLine?: boolean;
13375
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13376
- groups?: (string | string[] | {
13377
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13378
- commentAbove?: string;
13379
- })[];
13380
13693
  }];
13381
13694
  // ----- perfectionist/sort-named-exports -----
13382
13695
  type PerfectionistSortNamedExports = {
13383
13696
  fallbackSort?: {
13697
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13384
13698
  order?: ("asc" | "desc");
13385
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13386
13699
  };
13700
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13387
13701
  specialCharacters?: ("remove" | "trim" | "keep");
13388
13702
  ignoreCase?: boolean;
13389
13703
  alphabet?: string;
13390
13704
  locales?: (string | string[]);
13391
13705
  order?: ("asc" | "desc");
13392
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13393
- groupKind?: ("mixed" | "values-first" | "types-first");
13394
- ignoreAlias?: boolean;
13395
13706
  customGroups?: ({
13396
- newlinesInside?: (("always" | "never") | number);
13397
13707
  fallbackSort?: {
13708
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13398
13709
  order?: ("asc" | "desc");
13399
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13400
13710
  };
13711
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13401
13712
  groupName: string;
13713
+ newlinesInside?: number;
13402
13714
  order?: ("asc" | "desc");
13403
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13404
- anyOf?: {
13405
- modifiers?: ("value" | "type")[];
13406
- selector?: "export";
13715
+ anyOf: {
13407
13716
  elementNamePattern?: (({
13408
13717
  pattern: string;
13409
13718
  flags?: string;
@@ -13411,18 +13720,18 @@ type PerfectionistSortNamedExports = {
13411
13720
  pattern: string;
13412
13721
  flags?: string;
13413
13722
  } | string));
13723
+ modifiers?: ("value" | "type")[];
13724
+ selector?: "export";
13414
13725
  }[];
13415
13726
  } | {
13416
- newlinesInside?: (("always" | "never") | number);
13417
13727
  fallbackSort?: {
13728
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13418
13729
  order?: ("asc" | "desc");
13419
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13420
13730
  };
13731
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13421
13732
  groupName: string;
13733
+ newlinesInside?: number;
13422
13734
  order?: ("asc" | "desc");
13423
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13424
- modifiers?: ("value" | "type")[];
13425
- selector?: "export";
13426
13735
  elementNamePattern?: (({
13427
13736
  pattern: string;
13428
13737
  flags?: string;
@@ -13430,7 +13739,20 @@ type PerfectionistSortNamedExports = {
13430
13739
  pattern: string;
13431
13740
  flags?: string;
13432
13741
  } | string));
13742
+ modifiers?: ("value" | "type")[];
13743
+ selector?: "export";
13744
+ })[];
13745
+ groups?: (string | [string, ...(string)[]] | {
13746
+ newlinesBetween: ("ignore" | number);
13747
+ } | {
13748
+ group: (string | [string, ...(string)[]]);
13749
+ commentAbove?: string;
13750
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13751
+ newlinesInside?: number;
13752
+ order?: ("asc" | "desc");
13433
13753
  })[];
13754
+ newlinesBetween?: ("ignore" | number);
13755
+ ignoreAlias?: boolean;
13434
13756
  partitionByComment?: (boolean | (({
13435
13757
  pattern: string;
13436
13758
  flags?: string;
@@ -13454,38 +13776,29 @@ type PerfectionistSortNamedExports = {
13454
13776
  } | string)));
13455
13777
  });
13456
13778
  partitionByNewLine?: boolean;
13457
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13458
- groups?: (string | string[] | {
13459
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13460
- commentAbove?: string;
13461
- })[];
13462
13779
  }[];
13463
13780
  // ----- perfectionist/sort-named-imports -----
13464
13781
  type PerfectionistSortNamedImports = {
13465
13782
  fallbackSort?: {
13783
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13466
13784
  order?: ("asc" | "desc");
13467
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13468
13785
  };
13786
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13469
13787
  specialCharacters?: ("remove" | "trim" | "keep");
13470
13788
  ignoreCase?: boolean;
13471
13789
  alphabet?: string;
13472
13790
  locales?: (string | string[]);
13473
13791
  order?: ("asc" | "desc");
13474
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13475
- groupKind?: ("mixed" | "values-first" | "types-first");
13476
- ignoreAlias?: boolean;
13477
13792
  customGroups?: ({
13478
- newlinesInside?: (("always" | "never") | number);
13479
13793
  fallbackSort?: {
13794
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13480
13795
  order?: ("asc" | "desc");
13481
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13482
13796
  };
13797
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13483
13798
  groupName: string;
13799
+ newlinesInside?: number;
13484
13800
  order?: ("asc" | "desc");
13485
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13486
- anyOf?: {
13487
- modifiers?: ("value" | "type")[];
13488
- selector?: "import";
13801
+ anyOf: {
13489
13802
  elementNamePattern?: (({
13490
13803
  pattern: string;
13491
13804
  flags?: string;
@@ -13493,18 +13806,18 @@ type PerfectionistSortNamedImports = {
13493
13806
  pattern: string;
13494
13807
  flags?: string;
13495
13808
  } | string));
13809
+ modifiers?: ("value" | "type")[];
13810
+ selector?: "import";
13496
13811
  }[];
13497
13812
  } | {
13498
- newlinesInside?: (("always" | "never") | number);
13499
13813
  fallbackSort?: {
13814
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13500
13815
  order?: ("asc" | "desc");
13501
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13502
13816
  };
13817
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13503
13818
  groupName: string;
13819
+ newlinesInside?: number;
13504
13820
  order?: ("asc" | "desc");
13505
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13506
- modifiers?: ("value" | "type")[];
13507
- selector?: "import";
13508
13821
  elementNamePattern?: (({
13509
13822
  pattern: string;
13510
13823
  flags?: string;
@@ -13512,7 +13825,20 @@ type PerfectionistSortNamedImports = {
13512
13825
  pattern: string;
13513
13826
  flags?: string;
13514
13827
  } | string));
13828
+ modifiers?: ("value" | "type")[];
13829
+ selector?: "import";
13830
+ })[];
13831
+ groups?: (string | [string, ...(string)[]] | {
13832
+ newlinesBetween: ("ignore" | number);
13833
+ } | {
13834
+ group: (string | [string, ...(string)[]]);
13835
+ commentAbove?: string;
13836
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13837
+ newlinesInside?: number;
13838
+ order?: ("asc" | "desc");
13515
13839
  })[];
13840
+ newlinesBetween?: ("ignore" | number);
13841
+ ignoreAlias?: boolean;
13516
13842
  partitionByComment?: (boolean | (({
13517
13843
  pattern: string;
13518
13844
  flags?: string;
@@ -13536,48 +13862,41 @@ type PerfectionistSortNamedImports = {
13536
13862
  } | string)));
13537
13863
  });
13538
13864
  partitionByNewLine?: boolean;
13539
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13540
- groups?: (string | string[] | {
13541
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13542
- commentAbove?: string;
13543
- })[];
13544
13865
  }[];
13545
13866
  // ----- perfectionist/sort-object-types -----
13546
13867
  type PerfectionistSortObjectTypes = {
13547
13868
  fallbackSort?: {
13869
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13548
13870
  order?: ("asc" | "desc");
13549
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13550
13871
  sortBy?: ("name" | "value");
13551
13872
  };
13873
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13552
13874
  specialCharacters?: ("remove" | "trim" | "keep");
13553
13875
  ignoreCase?: boolean;
13554
13876
  alphabet?: string;
13555
13877
  locales?: (string | string[]);
13556
13878
  order?: ("asc" | "desc");
13557
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13558
13879
  customGroups?: ({
13559
- [k: string]: (string | string[]) | undefined;
13560
- } | ({
13561
- newlinesInside?: (("always" | "never") | number);
13562
13880
  fallbackSort?: {
13881
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13563
13882
  order?: ("asc" | "desc");
13564
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13565
13883
  sortBy?: ("name" | "value");
13566
13884
  };
13885
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13567
13886
  groupName: string;
13887
+ newlinesInside?: number;
13568
13888
  order?: ("asc" | "desc");
13569
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13570
- anyOf?: {
13571
- modifiers?: ("optional" | "required" | "multiline")[];
13572
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
13573
- elementValuePattern?: (({
13889
+ anyOf: {
13890
+ elementNamePattern?: (({
13574
13891
  pattern: string;
13575
13892
  flags?: string;
13576
13893
  } | string)[] | ({
13577
13894
  pattern: string;
13578
13895
  flags?: string;
13579
13896
  } | string));
13580
- elementNamePattern?: (({
13897
+ modifiers?: ("optional" | "required" | "multiline")[];
13898
+ selector?: ("index-signature" | "member" | "method" | "property");
13899
+ elementValuePattern?: (({
13581
13900
  pattern: string;
13582
13901
  flags?: string;
13583
13902
  } | string)[] | ({
@@ -13587,25 +13906,25 @@ type PerfectionistSortObjectTypes = {
13587
13906
  sortBy?: ("name" | "value");
13588
13907
  }[];
13589
13908
  } | {
13590
- newlinesInside?: (("always" | "never") | number);
13591
13909
  fallbackSort?: {
13910
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13592
13911
  order?: ("asc" | "desc");
13593
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13594
13912
  sortBy?: ("name" | "value");
13595
13913
  };
13914
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13596
13915
  groupName: string;
13916
+ newlinesInside?: number;
13597
13917
  order?: ("asc" | "desc");
13598
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13599
- modifiers?: ("optional" | "required" | "multiline")[];
13600
- selector?: ("index-signature" | "member" | "method" | "multiline" | "property");
13601
- elementValuePattern?: (({
13918
+ elementNamePattern?: (({
13602
13919
  pattern: string;
13603
13920
  flags?: string;
13604
13921
  } | string)[] | ({
13605
13922
  pattern: string;
13606
13923
  flags?: string;
13607
13924
  } | string));
13608
- elementNamePattern?: (({
13925
+ modifiers?: ("optional" | "required" | "multiline")[];
13926
+ selector?: ("index-signature" | "member" | "method" | "property");
13927
+ elementValuePattern?: (({
13609
13928
  pattern: string;
13610
13929
  flags?: string;
13611
13930
  } | string)[] | ({
@@ -13613,8 +13932,17 @@ type PerfectionistSortObjectTypes = {
13613
13932
  flags?: string;
13614
13933
  } | string));
13615
13934
  sortBy?: ("name" | "value");
13616
- })[]);
13617
- groupKind?: ("mixed" | "required-first" | "optional-first");
13935
+ })[];
13936
+ groups?: (string | [string, ...(string)[]] | {
13937
+ newlinesBetween: ("ignore" | number);
13938
+ } | {
13939
+ group: (string | [string, ...(string)[]]);
13940
+ commentAbove?: string;
13941
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13942
+ newlinesInside?: number;
13943
+ order?: ("asc" | "desc");
13944
+ })[];
13945
+ newlinesBetween?: ("ignore" | number);
13618
13946
  useConfigurationIf?: {
13619
13947
  allNamesMatchPattern?: (({
13620
13948
  pattern: string;
@@ -13623,10 +13951,22 @@ type PerfectionistSortObjectTypes = {
13623
13951
  pattern: string;
13624
13952
  flags?: string;
13625
13953
  } | string));
13954
+ hasNumericKeysOnly?: boolean;
13955
+ declarationCommentMatchesPattern?: (({
13956
+ scope?: ("shallow" | "deep");
13957
+ pattern: string;
13958
+ flags?: string;
13959
+ } | string)[] | ({
13960
+ scope?: ("shallow" | "deep");
13961
+ pattern: string;
13962
+ flags?: string;
13963
+ } | string));
13626
13964
  declarationMatchesPattern?: (({
13965
+ scope?: ("shallow" | "deep");
13627
13966
  pattern: string;
13628
13967
  flags?: string;
13629
13968
  } | string)[] | ({
13969
+ scope?: ("shallow" | "deep");
13630
13970
  pattern: string;
13631
13971
  flags?: string;
13632
13972
  } | string));
@@ -13654,57 +13994,40 @@ type PerfectionistSortObjectTypes = {
13654
13994
  } | string)));
13655
13995
  });
13656
13996
  partitionByNewLine?: boolean;
13657
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13658
- ignorePattern?: (({
13659
- pattern: string;
13660
- flags?: string;
13661
- } | string)[] | ({
13662
- pattern: string;
13663
- flags?: string;
13664
- } | string));
13665
13997
  sortBy?: ("name" | "value");
13666
- groups?: (string | string[] | {
13667
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13668
- commentAbove?: string;
13669
- })[];
13670
13998
  }[];
13671
13999
  // ----- perfectionist/sort-objects -----
13672
14000
  type PerfectionistSortObjects = {
13673
14001
  fallbackSort?: {
14002
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13674
14003
  order?: ("asc" | "desc");
13675
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13676
14004
  };
14005
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13677
14006
  specialCharacters?: ("remove" | "trim" | "keep");
13678
14007
  ignoreCase?: boolean;
13679
14008
  alphabet?: string;
13680
14009
  locales?: (string | string[]);
13681
14010
  order?: ("asc" | "desc");
13682
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13683
- destructuredObjects?: (boolean | {
13684
- groups?: boolean;
13685
- });
13686
14011
  customGroups?: ({
13687
- [k: string]: (string | string[]) | undefined;
13688
- } | ({
13689
- newlinesInside?: (("always" | "never") | number);
13690
14012
  fallbackSort?: {
14013
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13691
14014
  order?: ("asc" | "desc");
13692
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13693
14015
  };
14016
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13694
14017
  groupName: string;
14018
+ newlinesInside?: number;
13695
14019
  order?: ("asc" | "desc");
13696
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13697
- anyOf?: {
13698
- modifiers?: ("optional" | "required" | "multiline")[];
13699
- selector?: ("member" | "method" | "multiline" | "property");
13700
- elementValuePattern?: (({
14020
+ anyOf: {
14021
+ elementNamePattern?: (({
13701
14022
  pattern: string;
13702
14023
  flags?: string;
13703
14024
  } | string)[] | ({
13704
14025
  pattern: string;
13705
14026
  flags?: string;
13706
14027
  } | string));
13707
- elementNamePattern?: (({
14028
+ modifiers?: ("optional" | "required" | "multiline")[];
14029
+ selector?: ("member" | "method" | "property");
14030
+ elementValuePattern?: (({
13708
14031
  pattern: string;
13709
14032
  flags?: string;
13710
14033
  } | string)[] | ({
@@ -13713,31 +14036,41 @@ type PerfectionistSortObjects = {
13713
14036
  } | string));
13714
14037
  }[];
13715
14038
  } | {
13716
- newlinesInside?: (("always" | "never") | number);
13717
14039
  fallbackSort?: {
14040
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13718
14041
  order?: ("asc" | "desc");
13719
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13720
14042
  };
14043
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13721
14044
  groupName: string;
14045
+ newlinesInside?: number;
13722
14046
  order?: ("asc" | "desc");
13723
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13724
- modifiers?: ("optional" | "required" | "multiline")[];
13725
- selector?: ("member" | "method" | "multiline" | "property");
13726
- elementValuePattern?: (({
14047
+ elementNamePattern?: (({
13727
14048
  pattern: string;
13728
14049
  flags?: string;
13729
14050
  } | string)[] | ({
13730
14051
  pattern: string;
13731
14052
  flags?: string;
13732
14053
  } | string));
13733
- elementNamePattern?: (({
14054
+ modifiers?: ("optional" | "required" | "multiline")[];
14055
+ selector?: ("member" | "method" | "property");
14056
+ elementValuePattern?: (({
13734
14057
  pattern: string;
13735
14058
  flags?: string;
13736
14059
  } | string)[] | ({
13737
14060
  pattern: string;
13738
14061
  flags?: string;
13739
14062
  } | string));
13740
- })[]);
14063
+ })[];
14064
+ groups?: (string | [string, ...(string)[]] | {
14065
+ newlinesBetween: ("ignore" | number);
14066
+ } | {
14067
+ group: (string | [string, ...(string)[]]);
14068
+ commentAbove?: string;
14069
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
14070
+ newlinesInside?: number;
14071
+ order?: ("asc" | "desc");
14072
+ })[];
14073
+ newlinesBetween?: ("ignore" | number);
13741
14074
  useConfigurationIf?: {
13742
14075
  allNamesMatchPattern?: (({
13743
14076
  pattern: string;
@@ -13746,16 +14079,36 @@ type PerfectionistSortObjects = {
13746
14079
  pattern: string;
13747
14080
  flags?: string;
13748
14081
  } | string));
14082
+ objectType?: ("destructured" | "non-destructured");
14083
+ hasNumericKeysOnly?: boolean;
14084
+ declarationCommentMatchesPattern?: (({
14085
+ scope?: ("shallow" | "deep");
14086
+ pattern: string;
14087
+ flags?: string;
14088
+ } | string)[] | ({
14089
+ scope?: ("shallow" | "deep");
14090
+ pattern: string;
14091
+ flags?: string;
14092
+ } | string));
13749
14093
  callingFunctionNamePattern?: (({
14094
+ scope?: ("shallow" | "deep");
14095
+ pattern: string;
14096
+ flags?: string;
14097
+ } | string)[] | ({
14098
+ scope?: ("shallow" | "deep");
14099
+ pattern: string;
14100
+ flags?: string;
14101
+ } | string));
14102
+ declarationMatchesPattern?: (({
14103
+ scope?: ("shallow" | "deep");
13750
14104
  pattern: string;
13751
14105
  flags?: string;
13752
14106
  } | string)[] | ({
14107
+ scope?: ("shallow" | "deep");
13753
14108
  pattern: string;
13754
14109
  flags?: string;
13755
14110
  } | string));
13756
14111
  };
13757
- destructureOnly?: boolean;
13758
- objectDeclarations?: boolean;
13759
14112
  styledComponents?: boolean;
13760
14113
  partitionByComment?: (boolean | (({
13761
14114
  pattern: string;
@@ -13780,43 +14133,29 @@ type PerfectionistSortObjects = {
13780
14133
  } | string)));
13781
14134
  });
13782
14135
  partitionByNewLine?: boolean;
13783
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13784
- ignorePattern?: (({
13785
- pattern: string;
13786
- flags?: string;
13787
- } | string)[] | ({
13788
- pattern: string;
13789
- flags?: string;
13790
- } | string));
13791
- groups?: (string | string[] | {
13792
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13793
- commentAbove?: string;
13794
- })[];
13795
14136
  }[];
13796
14137
  // ----- perfectionist/sort-sets -----
13797
14138
  type PerfectionistSortSets = {
13798
14139
  fallbackSort?: {
14140
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13799
14141
  order?: ("asc" | "desc");
13800
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13801
14142
  };
14143
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13802
14144
  specialCharacters?: ("remove" | "trim" | "keep");
13803
14145
  ignoreCase?: boolean;
13804
14146
  alphabet?: string;
13805
14147
  locales?: (string | string[]);
13806
14148
  order?: ("asc" | "desc");
13807
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13808
- groupKind?: ("mixed" | "literals-first" | "spreads-first");
13809
14149
  customGroups?: ({
13810
- newlinesInside?: (("always" | "never") | number);
13811
14150
  fallbackSort?: {
14151
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13812
14152
  order?: ("asc" | "desc");
13813
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13814
14153
  };
14154
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13815
14155
  groupName: string;
14156
+ newlinesInside?: number;
13816
14157
  order?: ("asc" | "desc");
13817
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13818
- anyOf?: {
13819
- selector?: ("literal" | "spread");
14158
+ anyOf: {
13820
14159
  elementNamePattern?: (({
13821
14160
  pattern: string;
13822
14161
  flags?: string;
@@ -13824,17 +14163,17 @@ type PerfectionistSortSets = {
13824
14163
  pattern: string;
13825
14164
  flags?: string;
13826
14165
  } | string));
14166
+ selector?: ("literal" | "spread");
13827
14167
  }[];
13828
14168
  } | {
13829
- newlinesInside?: (("always" | "never") | number);
13830
14169
  fallbackSort?: {
14170
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13831
14171
  order?: ("asc" | "desc");
13832
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13833
14172
  };
14173
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13834
14174
  groupName: string;
14175
+ newlinesInside?: number;
13835
14176
  order?: ("asc" | "desc");
13836
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13837
- selector?: ("literal" | "spread");
13838
14177
  elementNamePattern?: (({
13839
14178
  pattern: string;
13840
14179
  flags?: string;
@@ -13842,7 +14181,18 @@ type PerfectionistSortSets = {
13842
14181
  pattern: string;
13843
14182
  flags?: string;
13844
14183
  } | string));
14184
+ selector?: ("literal" | "spread");
14185
+ })[];
14186
+ groups?: (string | [string, ...(string)[]] | {
14187
+ newlinesBetween: ("ignore" | number);
14188
+ } | {
14189
+ group: (string | [string, ...(string)[]]);
14190
+ commentAbove?: string;
14191
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
14192
+ newlinesInside?: number;
14193
+ order?: ("asc" | "desc");
13845
14194
  })[];
14195
+ newlinesBetween?: ("ignore" | number);
13846
14196
  useConfigurationIf?: {
13847
14197
  allNamesMatchPattern?: (({
13848
14198
  pattern: string;
@@ -13875,48 +14225,42 @@ type PerfectionistSortSets = {
13875
14225
  } | string)));
13876
14226
  });
13877
14227
  partitionByNewLine?: boolean;
13878
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13879
- groups?: (string | string[] | {
13880
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13881
- commentAbove?: string;
13882
- })[];
13883
14228
  }[];
13884
14229
  // ----- perfectionist/sort-switch-case -----
13885
14230
  type PerfectionistSortSwitchCase = [] | [{
13886
14231
  fallbackSort?: {
14232
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13887
14233
  order?: ("asc" | "desc");
13888
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13889
14234
  };
14235
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13890
14236
  specialCharacters?: ("remove" | "trim" | "keep");
13891
14237
  ignoreCase?: boolean;
13892
14238
  alphabet?: string;
13893
14239
  locales?: (string | string[]);
13894
14240
  order?: ("asc" | "desc");
13895
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13896
14241
  }];
13897
14242
  // ----- perfectionist/sort-union-types -----
13898
14243
  type PerfectionistSortUnionTypes = {
13899
14244
  fallbackSort?: {
14245
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13900
14246
  order?: ("asc" | "desc");
13901
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13902
14247
  };
14248
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13903
14249
  specialCharacters?: ("remove" | "trim" | "keep");
13904
14250
  ignoreCase?: boolean;
13905
14251
  alphabet?: string;
13906
14252
  locales?: (string | string[]);
13907
14253
  order?: ("asc" | "desc");
13908
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13909
14254
  customGroups?: ({
13910
- newlinesInside?: (("always" | "never") | number);
13911
14255
  fallbackSort?: {
14256
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13912
14257
  order?: ("asc" | "desc");
13913
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13914
14258
  };
14259
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13915
14260
  groupName: string;
14261
+ newlinesInside?: number;
13916
14262
  order?: ("asc" | "desc");
13917
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13918
- anyOf?: {
13919
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
14263
+ anyOf: {
13920
14264
  elementNamePattern?: (({
13921
14265
  pattern: string;
13922
14266
  flags?: string;
@@ -13924,17 +14268,17 @@ type PerfectionistSortUnionTypes = {
13924
14268
  pattern: string;
13925
14269
  flags?: string;
13926
14270
  } | string));
14271
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
13927
14272
  }[];
13928
14273
  } | {
13929
- newlinesInside?: (("always" | "never") | number);
13930
14274
  fallbackSort?: {
14275
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13931
14276
  order?: ("asc" | "desc");
13932
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13933
14277
  };
14278
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13934
14279
  groupName: string;
14280
+ newlinesInside?: number;
13935
14281
  order?: ("asc" | "desc");
13936
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13937
- selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
13938
14282
  elementNamePattern?: (({
13939
14283
  pattern: string;
13940
14284
  flags?: string;
@@ -13942,7 +14286,18 @@ type PerfectionistSortUnionTypes = {
13942
14286
  pattern: string;
13943
14287
  flags?: string;
13944
14288
  } | string));
14289
+ selector?: ("intersection" | "conditional" | "function" | "operator" | "keyword" | "literal" | "nullish" | "import" | "object" | "named" | "tuple" | "union");
14290
+ })[];
14291
+ groups?: (string | [string, ...(string)[]] | {
14292
+ newlinesBetween: ("ignore" | number);
14293
+ } | {
14294
+ group: (string | [string, ...(string)[]]);
14295
+ commentAbove?: string;
14296
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
14297
+ newlinesInside?: number;
14298
+ order?: ("asc" | "desc");
13945
14299
  })[];
14300
+ newlinesBetween?: ("ignore" | number);
13946
14301
  partitionByComment?: (boolean | (({
13947
14302
  pattern: string;
13948
14303
  flags?: string;
@@ -13966,35 +14321,29 @@ type PerfectionistSortUnionTypes = {
13966
14321
  } | string)));
13967
14322
  });
13968
14323
  partitionByNewLine?: boolean;
13969
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13970
- groups?: (string | string[] | {
13971
- newlinesBetween?: (("ignore" | "always" | "never") | number);
13972
- commentAbove?: string;
13973
- })[];
13974
14324
  }[];
13975
14325
  // ----- perfectionist/sort-variable-declarations -----
13976
14326
  type PerfectionistSortVariableDeclarations = [] | [{
13977
14327
  fallbackSort?: {
14328
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13978
14329
  order?: ("asc" | "desc");
13979
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13980
14330
  };
14331
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13981
14332
  specialCharacters?: ("remove" | "trim" | "keep");
13982
14333
  ignoreCase?: boolean;
13983
14334
  alphabet?: string;
13984
14335
  locales?: (string | string[]);
13985
14336
  order?: ("asc" | "desc");
13986
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13987
14337
  customGroups?: ({
13988
- newlinesInside?: (("always" | "never") | number);
13989
14338
  fallbackSort?: {
14339
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13990
14340
  order?: ("asc" | "desc");
13991
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13992
14341
  };
14342
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13993
14343
  groupName: string;
14344
+ newlinesInside?: number;
13994
14345
  order?: ("asc" | "desc");
13995
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
13996
- anyOf?: {
13997
- selector?: ("initialized" | "uninitialized");
14346
+ anyOf: {
13998
14347
  elementNamePattern?: (({
13999
14348
  pattern: string;
14000
14349
  flags?: string;
@@ -14002,17 +14351,17 @@ type PerfectionistSortVariableDeclarations = [] | [{
14002
14351
  pattern: string;
14003
14352
  flags?: string;
14004
14353
  } | string));
14354
+ selector?: ("initialized" | "uninitialized");
14005
14355
  }[];
14006
14356
  } | {
14007
- newlinesInside?: (("always" | "never") | number);
14008
14357
  fallbackSort?: {
14358
+ type: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
14009
14359
  order?: ("asc" | "desc");
14010
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
14011
14360
  };
14361
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
14012
14362
  groupName: string;
14363
+ newlinesInside?: number;
14013
14364
  order?: ("asc" | "desc");
14014
- type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
14015
- selector?: ("initialized" | "uninitialized");
14016
14365
  elementNamePattern?: (({
14017
14366
  pattern: string;
14018
14367
  flags?: string;
@@ -14020,7 +14369,18 @@ type PerfectionistSortVariableDeclarations = [] | [{
14020
14369
  pattern: string;
14021
14370
  flags?: string;
14022
14371
  } | string));
14372
+ selector?: ("initialized" | "uninitialized");
14373
+ })[];
14374
+ groups?: (string | [string, ...(string)[]] | {
14375
+ newlinesBetween: ("ignore" | number);
14376
+ } | {
14377
+ group: (string | [string, ...(string)[]]);
14378
+ commentAbove?: string;
14379
+ type?: ("alphabetical" | "natural" | "line-length" | "custom" | "unsorted");
14380
+ newlinesInside?: number;
14381
+ order?: ("asc" | "desc");
14023
14382
  })[];
14383
+ newlinesBetween?: ("ignore" | number);
14024
14384
  partitionByComment?: (boolean | (({
14025
14385
  pattern: string;
14026
14386
  flags?: string;
@@ -14044,11 +14404,6 @@ type PerfectionistSortVariableDeclarations = [] | [{
14044
14404
  } | string)));
14045
14405
  });
14046
14406
  partitionByNewLine?: boolean;
14047
- newlinesBetween?: (("ignore" | "always" | "never") | number);
14048
- groups?: (string | string[] | {
14049
- newlinesBetween?: (("ignore" | "always" | "never") | number);
14050
- commentAbove?: string;
14051
- })[];
14052
14407
  }];
14053
14408
  // ----- playwright/expect-expect -----
14054
14409
  type PlaywrightExpectExpect = [] | [{
@@ -14370,6 +14725,7 @@ type ReactXNoUnstableDefaultProps = [] | [{
14370
14725
  }];
14371
14726
  // ----- react-x/no-useless-fragment -----
14372
14727
  type ReactXNoUselessFragment = [] | [{
14728
+ allowEmptyFragment?: boolean;
14373
14729
  allowExpressions?: boolean;
14374
14730
  }];
14375
14731
  // ----- regexp/hexadecimal-escape -----
@@ -15014,19 +15370,19 @@ type Yoda = [] | [("always" | "never")] | [("always" | "never"), {
15014
15370
  }];
15015
15371
  //#endregion
15016
15372
  //#region src/types.d.ts
15017
- type Rules = RuleOptions;
15018
15373
  type Base = Linter.Config<Linter.RulesRecord & Rules>;
15374
+ type ExtractPrefix<T> = T extends `${infer Prefix}/${infer Rest}` ? Rest extends `${string}/${string}` ? `${Prefix}/${ExtractPrefix<Rest>}` : Prefix : never;
15019
15375
  type MaybeReadonly<T> = Readonly<T> | T;
15020
15376
  type Override<T, R> = Omit<T, keyof R> & R;
15021
15377
  type Prettify<T> = { [K in keyof T]: T[K] } & {};
15022
- type ExtractPrefix<T> = T extends `${infer Prefix}/${infer Rest}` ? Rest extends `${string}/${string}` ? `${Prefix}/${ExtractPrefix<Rest>}` : Prefix : never;
15023
- type ValidPrefixes<T> = ExtractPrefix<keyof T>;
15024
15378
  type RulesWithPrefix<T, Prefix$1 extends ValidPrefixes<T>> = { [K in keyof T as K extends `${Prefix$1}${string}` ? K : never]: T[K] };
15379
+ type ValidPrefixes<T> = ExtractPrefix<keyof T>;
15025
15380
  interface LinterConfigOverrides {
15026
15381
  files?: MaybeReadonly<Base["files"]>;
15027
15382
  ignores?: MaybeReadonly<Base["ignores"]>;
15028
15383
  plugins?: Record<string, unknown>;
15029
15384
  }
15385
+ type Rules = RuleOptions;
15030
15386
  type TypedConfigItem = Prettify<Override<Base, LinterConfigOverrides>>;
15031
15387
  interface VitestOptions {
15032
15388
  /**