@jimmy.codes/eslint-config 3.25.0 → 3.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
@@ -1,6 +1,7 @@
1
1
  import * as eslint_plugin_regexp from 'eslint-plugin-regexp';
2
2
  import * as eslint_plugin_react from 'eslint-plugin-react';
3
3
  import * as eslint_plugin_n from 'eslint-plugin-n';
4
+ import * as eslint_plugin_import_x_utils_resolve_js from 'eslint-plugin-import-x/utils/resolve.js';
4
5
  import * as eslint_plugin_import_x_utils_module_visitor_js from 'eslint-plugin-import-x/utils/module-visitor.js';
5
6
  import * as eslint_plugin_import_x_types_js from 'eslint-plugin-import-x/types.js';
6
7
  import * as eslint_plugin_astro from 'eslint-plugin-astro';
@@ -1373,233 +1374,233 @@ interface RuleOptions {
1373
1374
  'implicit-arrow-linebreak'?: Linter.RuleEntry<ImplicitArrowLinebreak>
1374
1375
  /**
1375
1376
  * Enforce or ban the use of inline type-only markers for named imports.
1376
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/consistent-type-specifier-style.md
1377
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/consistent-type-specifier-style.md
1377
1378
  */
1378
1379
  'import-x/consistent-type-specifier-style'?: Linter.RuleEntry<ImportXConsistentTypeSpecifierStyle>
1379
1380
  /**
1380
1381
  * Ensure a default export is present, given a default import.
1381
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/default.md
1382
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/default.md
1382
1383
  */
1383
1384
  'import-x/default'?: Linter.RuleEntry<[]>
1384
1385
  /**
1385
1386
  * Enforce a leading comment with the webpackChunkName for dynamic imports.
1386
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/dynamic-import-chunkname.md
1387
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/dynamic-import-chunkname.md
1387
1388
  */
1388
1389
  'import-x/dynamic-import-chunkname'?: Linter.RuleEntry<ImportXDynamicImportChunkname>
1389
1390
  /**
1390
1391
  * Forbid any invalid exports, i.e. re-export of the same name.
1391
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/export.md
1392
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/export.md
1392
1393
  */
1393
1394
  'import-x/export'?: Linter.RuleEntry<[]>
1394
1395
  /**
1395
1396
  * Ensure all exports appear after other statements.
1396
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/exports-last.md
1397
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/exports-last.md
1397
1398
  */
1398
1399
  'import-x/exports-last'?: Linter.RuleEntry<[]>
1399
1400
  /**
1400
1401
  * Ensure consistent use of file extension within the import path.
1401
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/extensions.md
1402
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/extensions.md
1402
1403
  */
1403
1404
  'import-x/extensions'?: Linter.RuleEntry<ImportXExtensions>
1404
1405
  /**
1405
1406
  * Ensure all imports appear before other statements.
1406
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/first.md
1407
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/first.md
1407
1408
  */
1408
1409
  'import-x/first'?: Linter.RuleEntry<ImportXFirst>
1409
1410
  /**
1410
1411
  * Prefer named exports to be grouped together in a single export declaration.
1411
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/group-exports.md
1412
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/group-exports.md
1412
1413
  */
1413
1414
  'import-x/group-exports'?: Linter.RuleEntry<[]>
1414
1415
  /**
1415
1416
  * Replaced by `import-x/first`.
1416
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/imports-first.md
1417
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/imports-first.md
1417
1418
  * @deprecated
1418
1419
  */
1419
1420
  'import-x/imports-first'?: Linter.RuleEntry<ImportXImportsFirst>
1420
1421
  /**
1421
1422
  * Enforce the maximum number of dependencies a module can have.
1422
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/max-dependencies.md
1423
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/max-dependencies.md
1423
1424
  */
1424
1425
  'import-x/max-dependencies'?: Linter.RuleEntry<ImportXMaxDependencies>
1425
1426
  /**
1426
1427
  * Ensure named imports correspond to a named export in the remote file.
1427
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/named.md
1428
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/named.md
1428
1429
  */
1429
1430
  'import-x/named'?: Linter.RuleEntry<ImportXNamed>
1430
1431
  /**
1431
1432
  * Ensure imported namespaces contain dereferenced properties as they are dereferenced.
1432
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/namespace.md
1433
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/namespace.md
1433
1434
  */
1434
1435
  'import-x/namespace'?: Linter.RuleEntry<ImportXNamespace>
1435
1436
  /**
1436
1437
  * Enforce a newline after import statements.
1437
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/newline-after-import.md
1438
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/newline-after-import.md
1438
1439
  */
1439
1440
  'import-x/newline-after-import'?: Linter.RuleEntry<ImportXNewlineAfterImport>
1440
1441
  /**
1441
1442
  * Forbid import of modules using absolute paths.
1442
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-absolute-path.md
1443
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-absolute-path.md
1443
1444
  */
1444
1445
  'import-x/no-absolute-path'?: Linter.RuleEntry<ImportXNoAbsolutePath>
1445
1446
  /**
1446
1447
  * Forbid AMD `require` and `define` calls.
1447
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-amd.md
1448
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-amd.md
1448
1449
  */
1449
1450
  'import-x/no-amd'?: Linter.RuleEntry<[]>
1450
1451
  /**
1451
1452
  * Forbid anonymous values as default exports.
1452
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-anonymous-default-export.md
1453
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-anonymous-default-export.md
1453
1454
  */
1454
1455
  'import-x/no-anonymous-default-export'?: Linter.RuleEntry<ImportXNoAnonymousDefaultExport>
1455
1456
  /**
1456
1457
  * Forbid CommonJS `require` calls and `module.exports` or `exports.*`.
1457
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-commonjs.md
1458
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-commonjs.md
1458
1459
  */
1459
1460
  'import-x/no-commonjs'?: Linter.RuleEntry<ImportXNoCommonjs>
1460
1461
  /**
1461
1462
  * Forbid a module from importing a module with a dependency path back to itself.
1462
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-cycle.md
1463
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-cycle.md
1463
1464
  */
1464
1465
  'import-x/no-cycle'?: Linter.RuleEntry<ImportXNoCycle>
1465
1466
  /**
1466
1467
  * Forbid default exports.
1467
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-default-export.md
1468
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-default-export.md
1468
1469
  */
1469
1470
  'import-x/no-default-export'?: Linter.RuleEntry<[]>
1470
1471
  /**
1471
1472
  * Forbid imported names marked with `@deprecated` documentation tag.
1472
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-deprecated.md
1473
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-deprecated.md
1473
1474
  */
1474
1475
  'import-x/no-deprecated'?: Linter.RuleEntry<[]>
1475
1476
  /**
1476
1477
  * Forbid repeated import of the same module in multiple places.
1477
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-duplicates.md
1478
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-duplicates.md
1478
1479
  */
1479
1480
  'import-x/no-duplicates'?: Linter.RuleEntry<ImportXNoDuplicates>
1480
1481
  /**
1481
1482
  * Forbid `require()` calls with expressions.
1482
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-dynamic-require.md
1483
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-dynamic-require.md
1483
1484
  */
1484
1485
  'import-x/no-dynamic-require'?: Linter.RuleEntry<ImportXNoDynamicRequire>
1485
1486
  /**
1486
1487
  * Forbid empty named import blocks.
1487
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-empty-named-blocks.md
1488
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-empty-named-blocks.md
1488
1489
  */
1489
1490
  'import-x/no-empty-named-blocks'?: Linter.RuleEntry<[]>
1490
1491
  /**
1491
1492
  * Forbid the use of extraneous packages.
1492
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-extraneous-dependencies.md
1493
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-extraneous-dependencies.md
1493
1494
  */
1494
1495
  'import-x/no-extraneous-dependencies'?: Linter.RuleEntry<ImportXNoExtraneousDependencies>
1495
1496
  /**
1496
1497
  * Forbid import statements with CommonJS module.exports.
1497
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-import-module-exports.md
1498
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-import-module-exports.md
1498
1499
  */
1499
1500
  'import-x/no-import-module-exports'?: Linter.RuleEntry<ImportXNoImportModuleExports>
1500
1501
  /**
1501
1502
  * Forbid importing the submodules of other modules.
1502
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-internal-modules.md
1503
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-internal-modules.md
1503
1504
  */
1504
1505
  'import-x/no-internal-modules'?: Linter.RuleEntry<ImportXNoInternalModules>
1505
1506
  /**
1506
1507
  * Forbid the use of mutable exports with `var` or `let`.
1507
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-mutable-exports.md
1508
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-mutable-exports.md
1508
1509
  */
1509
1510
  'import-x/no-mutable-exports'?: Linter.RuleEntry<[]>
1510
1511
  /**
1511
1512
  * Forbid use of exported name as identifier of default export.
1512
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-named-as-default.md
1513
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-named-as-default.md
1513
1514
  */
1514
1515
  'import-x/no-named-as-default'?: Linter.RuleEntry<[]>
1515
1516
  /**
1516
1517
  * Forbid use of exported name as property of default export.
1517
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-named-as-default-member.md
1518
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-named-as-default-member.md
1518
1519
  */
1519
1520
  'import-x/no-named-as-default-member'?: Linter.RuleEntry<[]>
1520
1521
  /**
1521
1522
  * Forbid named default exports.
1522
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-named-default.md
1523
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-named-default.md
1523
1524
  */
1524
1525
  'import-x/no-named-default'?: Linter.RuleEntry<[]>
1525
1526
  /**
1526
1527
  * Forbid named exports.
1527
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-named-export.md
1528
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-named-export.md
1528
1529
  */
1529
1530
  'import-x/no-named-export'?: Linter.RuleEntry<[]>
1530
1531
  /**
1531
1532
  * Forbid namespace (a.k.a. "wildcard" `*`) imports.
1532
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-namespace.md
1533
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-namespace.md
1533
1534
  */
1534
1535
  'import-x/no-namespace'?: Linter.RuleEntry<ImportXNoNamespace>
1535
1536
  /**
1536
1537
  * Forbid Node.js builtin modules.
1537
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-nodejs-modules.md
1538
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-nodejs-modules.md
1538
1539
  */
1539
1540
  'import-x/no-nodejs-modules'?: Linter.RuleEntry<ImportXNoNodejsModules>
1540
1541
  /**
1541
1542
  * Forbid importing packages through relative paths.
1542
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-relative-packages.md
1543
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-relative-packages.md
1543
1544
  */
1544
1545
  'import-x/no-relative-packages'?: Linter.RuleEntry<ImportXNoRelativePackages>
1545
1546
  /**
1546
1547
  * Forbid importing modules from parent directories.
1547
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-relative-parent-imports.md
1548
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-relative-parent-imports.md
1548
1549
  */
1549
1550
  'import-x/no-relative-parent-imports'?: Linter.RuleEntry<ImportXNoRelativeParentImports>
1550
1551
  /**
1551
1552
  * Forbid importing a default export by a different name.
1552
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-rename-default.md
1553
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-rename-default.md
1553
1554
  */
1554
1555
  'import-x/no-rename-default'?: Linter.RuleEntry<ImportXNoRenameDefault>
1555
1556
  /**
1556
1557
  * Enforce which files can be imported in a given folder.
1557
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-restricted-paths.md
1558
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-restricted-paths.md
1558
1559
  */
1559
1560
  'import-x/no-restricted-paths'?: Linter.RuleEntry<ImportXNoRestrictedPaths>
1560
1561
  /**
1561
1562
  * Forbid a module from importing itself.
1562
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-self-import.md
1563
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-self-import.md
1563
1564
  */
1564
1565
  'import-x/no-self-import'?: Linter.RuleEntry<[]>
1565
1566
  /**
1566
1567
  * Forbid unassigned imports.
1567
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-unassigned-import.md
1568
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-unassigned-import.md
1568
1569
  */
1569
1570
  'import-x/no-unassigned-import'?: Linter.RuleEntry<ImportXNoUnassignedImport>
1570
1571
  /**
1571
1572
  * Ensure imports point to a file/module that can be resolved.
1572
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-unresolved.md
1573
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-unresolved.md
1573
1574
  */
1574
1575
  'import-x/no-unresolved'?: Linter.RuleEntry<ImportXNoUnresolved>
1575
1576
  /**
1576
1577
  * Forbid modules without exports, or exports without matching import in another module.
1577
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-unused-modules.md
1578
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-unused-modules.md
1578
1579
  */
1579
1580
  'import-x/no-unused-modules'?: Linter.RuleEntry<ImportXNoUnusedModules>
1580
1581
  /**
1581
1582
  * Forbid unnecessary path segments in import and require statements.
1582
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-useless-path-segments.md
1583
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-useless-path-segments.md
1583
1584
  */
1584
1585
  'import-x/no-useless-path-segments'?: Linter.RuleEntry<ImportXNoUselessPathSegments>
1585
1586
  /**
1586
1587
  * Forbid webpack loader syntax in imports.
1587
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/no-webpack-loader-syntax.md
1588
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/no-webpack-loader-syntax.md
1588
1589
  */
1589
1590
  'import-x/no-webpack-loader-syntax'?: Linter.RuleEntry<[]>
1590
1591
  /**
1591
1592
  * Enforce a convention in module import order.
1592
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/order.md
1593
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/order.md
1593
1594
  */
1594
1595
  'import-x/order'?: Linter.RuleEntry<ImportXOrder>
1595
1596
  /**
1596
1597
  * Prefer a default export if module exports a single name or multiple names.
1597
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/prefer-default-export.md
1598
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/prefer-default-export.md
1598
1599
  */
1599
1600
  'import-x/prefer-default-export'?: Linter.RuleEntry<ImportXPreferDefaultExport>
1600
1601
  /**
1601
1602
  * Forbid potentially ambiguous parse goal (`script` vs. `module`).
1602
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.4.3/docs/rules/unambiguous.md
1603
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.5.0/docs/rules/unambiguous.md
1603
1604
  */
1604
1605
  'import-x/unambiguous'?: Linter.RuleEntry<[]>
1605
1606
  /**
@@ -5807,6 +5808,317 @@ interface RuleOptions {
5807
5808
  * @see https://eslint.org/docs/latest/rules/vars-on-top
5808
5809
  */
5809
5810
  'vars-on-top'?: Linter.RuleEntry<[]>
5811
+ /**
5812
+ * require .spec test file pattern
5813
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-filename.md
5814
+ */
5815
+ 'vitest/consistent-test-filename'?: Linter.RuleEntry<VitestConsistentTestFilename>
5816
+ /**
5817
+ * enforce using test or it but not both
5818
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/consistent-test-it.md
5819
+ */
5820
+ 'vitest/consistent-test-it'?: Linter.RuleEntry<VitestConsistentTestIt>
5821
+ /**
5822
+ * enforce having expectation in test body
5823
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/expect-expect.md
5824
+ */
5825
+ 'vitest/expect-expect'?: Linter.RuleEntry<VitestExpectExpect>
5826
+ /**
5827
+ * enforce a maximum number of expect per test
5828
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/max-expects.md
5829
+ */
5830
+ 'vitest/max-expects'?: Linter.RuleEntry<VitestMaxExpects>
5831
+ /**
5832
+ * require describe block to be less than set max value or default value
5833
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/max-nested-describe.md
5834
+ */
5835
+ 'vitest/max-nested-describe'?: Linter.RuleEntry<VitestMaxNestedDescribe>
5836
+ /**
5837
+ * disallow alias methods
5838
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-alias-methods.md
5839
+ */
5840
+ 'vitest/no-alias-methods'?: Linter.RuleEntry<[]>
5841
+ /**
5842
+ * disallow commented out tests
5843
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-commented-out-tests.md
5844
+ */
5845
+ 'vitest/no-commented-out-tests'?: Linter.RuleEntry<[]>
5846
+ /**
5847
+ * disallow conditional expects
5848
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-expect.md
5849
+ */
5850
+ 'vitest/no-conditional-expect'?: Linter.RuleEntry<[]>
5851
+ /**
5852
+ * disallow conditional tests
5853
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-in-test.md
5854
+ */
5855
+ 'vitest/no-conditional-in-test'?: Linter.RuleEntry<[]>
5856
+ /**
5857
+ * disallow conditional tests
5858
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-conditional-tests.md
5859
+ */
5860
+ 'vitest/no-conditional-tests'?: Linter.RuleEntry<[]>
5861
+ /**
5862
+ * disallow disabled tests
5863
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-disabled-tests.md
5864
+ */
5865
+ 'vitest/no-disabled-tests'?: Linter.RuleEntry<[]>
5866
+ /**
5867
+ * disallow using a callback in asynchronous tests and hooks
5868
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-done-callback.md
5869
+ * @deprecated
5870
+ */
5871
+ 'vitest/no-done-callback'?: Linter.RuleEntry<[]>
5872
+ /**
5873
+ * disallow duplicate hooks and teardown hooks
5874
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-duplicate-hooks.md
5875
+ */
5876
+ 'vitest/no-duplicate-hooks'?: Linter.RuleEntry<[]>
5877
+ /**
5878
+ * disallow focused tests
5879
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-focused-tests.md
5880
+ */
5881
+ 'vitest/no-focused-tests'?: Linter.RuleEntry<VitestNoFocusedTests>
5882
+ /**
5883
+ * disallow setup and teardown hooks
5884
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-hooks.md
5885
+ */
5886
+ 'vitest/no-hooks'?: Linter.RuleEntry<VitestNoHooks>
5887
+ /**
5888
+ * disallow identical titles
5889
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-identical-title.md
5890
+ */
5891
+ 'vitest/no-identical-title'?: Linter.RuleEntry<[]>
5892
+ /**
5893
+ * disallow importing `node:test`
5894
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-import-node-test.md
5895
+ */
5896
+ 'vitest/no-import-node-test'?: Linter.RuleEntry<[]>
5897
+ /**
5898
+ * disallow string interpolation in snapshots
5899
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-interpolation-in-snapshots.md
5900
+ */
5901
+ 'vitest/no-interpolation-in-snapshots'?: Linter.RuleEntry<[]>
5902
+ /**
5903
+ * disallow large snapshots
5904
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-large-snapshots.md
5905
+ */
5906
+ 'vitest/no-large-snapshots'?: Linter.RuleEntry<VitestNoLargeSnapshots>
5907
+ /**
5908
+ * disallow importing from __mocks__ directory
5909
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-mocks-import.md
5910
+ */
5911
+ 'vitest/no-mocks-import'?: Linter.RuleEntry<[]>
5912
+ /**
5913
+ * disallow the use of certain matchers
5914
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-restricted-matchers.md
5915
+ */
5916
+ 'vitest/no-restricted-matchers'?: Linter.RuleEntry<VitestNoRestrictedMatchers>
5917
+ /**
5918
+ * disallow specific `vi.` methods
5919
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-restricted-vi-methods.md
5920
+ */
5921
+ 'vitest/no-restricted-vi-methods'?: Linter.RuleEntry<VitestNoRestrictedViMethods>
5922
+ /**
5923
+ * disallow using `expect` outside of `it` or `test` blocks
5924
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-standalone-expect.md
5925
+ */
5926
+ 'vitest/no-standalone-expect'?: Linter.RuleEntry<VitestNoStandaloneExpect>
5927
+ /**
5928
+ * disallow using `test` as a prefix
5929
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-prefixes.md
5930
+ */
5931
+ 'vitest/no-test-prefixes'?: Linter.RuleEntry<[]>
5932
+ /**
5933
+ * disallow return statements in tests
5934
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-return-statement.md
5935
+ */
5936
+ 'vitest/no-test-return-statement'?: Linter.RuleEntry<[]>
5937
+ /**
5938
+ * Enforce padding around `afterAll` blocks
5939
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-all-blocks.md
5940
+ */
5941
+ 'vitest/padding-around-after-all-blocks'?: Linter.RuleEntry<[]>
5942
+ /**
5943
+ * Enforce padding around `afterEach` blocks
5944
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-each-blocks.md
5945
+ */
5946
+ 'vitest/padding-around-after-each-blocks'?: Linter.RuleEntry<[]>
5947
+ /**
5948
+ * Enforce padding around vitest functions
5949
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-all.md
5950
+ */
5951
+ 'vitest/padding-around-all'?: Linter.RuleEntry<[]>
5952
+ /**
5953
+ * Enforce padding around `beforeAll` blocks
5954
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-before-all-blocks.md
5955
+ */
5956
+ 'vitest/padding-around-before-all-blocks'?: Linter.RuleEntry<[]>
5957
+ /**
5958
+ * Enforce padding around `beforeEach` blocks
5959
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-before-each-blocks.md
5960
+ */
5961
+ 'vitest/padding-around-before-each-blocks'?: Linter.RuleEntry<[]>
5962
+ /**
5963
+ * Enforce padding around `describe` blocks
5964
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-describe-blocks.md
5965
+ */
5966
+ 'vitest/padding-around-describe-blocks'?: Linter.RuleEntry<[]>
5967
+ /**
5968
+ * Enforce padding around `expect` groups
5969
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-expect-groups.md
5970
+ */
5971
+ 'vitest/padding-around-expect-groups'?: Linter.RuleEntry<[]>
5972
+ /**
5973
+ * Enforce padding around afterAll blocks
5974
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/padding-around-test-blocks.md
5975
+ */
5976
+ 'vitest/padding-around-test-blocks'?: Linter.RuleEntry<[]>
5977
+ /**
5978
+ * enforce using `toBeCalledWith()` or `toHaveBeenCalledWith()`
5979
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-with.md
5980
+ */
5981
+ 'vitest/prefer-called-with'?: Linter.RuleEntry<[]>
5982
+ /**
5983
+ * enforce using the built-in comparison matchers
5984
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-comparison-matcher.md
5985
+ */
5986
+ 'vitest/prefer-comparison-matcher'?: Linter.RuleEntry<[]>
5987
+ /**
5988
+ * enforce using `each` rather than manual loops
5989
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-each.md
5990
+ */
5991
+ 'vitest/prefer-each'?: Linter.RuleEntry<[]>
5992
+ /**
5993
+ * enforce using the built-in quality matchers
5994
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-equality-matcher.md
5995
+ */
5996
+ 'vitest/prefer-equality-matcher'?: Linter.RuleEntry<[]>
5997
+ /**
5998
+ * enforce using expect assertions instead of callbacks
5999
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-assertions.md
6000
+ */
6001
+ 'vitest/prefer-expect-assertions'?: Linter.RuleEntry<VitestPreferExpectAssertions>
6002
+ /**
6003
+ * enforce using `expect().resolves` over `expect(await ...)` syntax
6004
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-expect-resolves.md
6005
+ */
6006
+ 'vitest/prefer-expect-resolves'?: Linter.RuleEntry<[]>
6007
+ /**
6008
+ * enforce having hooks in consistent order
6009
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-in-order.md
6010
+ */
6011
+ 'vitest/prefer-hooks-in-order'?: Linter.RuleEntry<[]>
6012
+ /**
6013
+ * enforce having hooks before any test cases
6014
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-hooks-on-top.md
6015
+ */
6016
+ 'vitest/prefer-hooks-on-top'?: Linter.RuleEntry<[]>
6017
+ /**
6018
+ * enforce lowercase titles
6019
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-lowercase-title.md
6020
+ */
6021
+ 'vitest/prefer-lowercase-title'?: Linter.RuleEntry<VitestPreferLowercaseTitle>
6022
+ /**
6023
+ * enforce mock resolved/rejected shorthands for promises
6024
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-mock-promise-shorthand.md
6025
+ */
6026
+ 'vitest/prefer-mock-promise-shorthand'?: Linter.RuleEntry<[]>
6027
+ /**
6028
+ * enforce including a hint with external snapshots
6029
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-snapshot-hint.md
6030
+ */
6031
+ 'vitest/prefer-snapshot-hint'?: Linter.RuleEntry<VitestPreferSnapshotHint>
6032
+ /**
6033
+ * enforce using `vi.spyOn`
6034
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-spy-on.md
6035
+ */
6036
+ 'vitest/prefer-spy-on'?: Linter.RuleEntry<[]>
6037
+ /**
6038
+ * enforce strict equal over equal
6039
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-strict-equal.md
6040
+ */
6041
+ 'vitest/prefer-strict-equal'?: Linter.RuleEntry<[]>
6042
+ /**
6043
+ * enforce using toBe()
6044
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be.md
6045
+ */
6046
+ 'vitest/prefer-to-be'?: Linter.RuleEntry<[]>
6047
+ /**
6048
+ * enforce using toBeFalsy()
6049
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-falsy.md
6050
+ */
6051
+ 'vitest/prefer-to-be-falsy'?: Linter.RuleEntry<[]>
6052
+ /**
6053
+ * enforce using toBeObject()
6054
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-object.md
6055
+ */
6056
+ 'vitest/prefer-to-be-object'?: Linter.RuleEntry<[]>
6057
+ /**
6058
+ * enforce using `toBeTruthy`
6059
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-be-truthy.md
6060
+ */
6061
+ 'vitest/prefer-to-be-truthy'?: Linter.RuleEntry<[]>
6062
+ /**
6063
+ * enforce using toContain()
6064
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-contain.md
6065
+ */
6066
+ 'vitest/prefer-to-contain'?: Linter.RuleEntry<[]>
6067
+ /**
6068
+ * enforce using toHaveLength()
6069
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-to-have-length.md
6070
+ */
6071
+ 'vitest/prefer-to-have-length'?: Linter.RuleEntry<[]>
6072
+ /**
6073
+ * enforce using `test.todo`
6074
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-todo.md
6075
+ */
6076
+ 'vitest/prefer-todo'?: Linter.RuleEntry<[]>
6077
+ /**
6078
+ * Prefer `vi.mocked()` over `fn as Mock`
6079
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/prefer-vi-mocked.md
6080
+ */
6081
+ 'vitest/prefer-vi-mocked'?: Linter.RuleEntry<[]>
6082
+ /**
6083
+ * require setup and teardown to be within a hook
6084
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-hook.md
6085
+ */
6086
+ 'vitest/require-hook'?: Linter.RuleEntry<VitestRequireHook>
6087
+ /**
6088
+ * require local Test Context for concurrent snapshot tests
6089
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-local-test-context-for-concurrent-snapshots.md
6090
+ */
6091
+ 'vitest/require-local-test-context-for-concurrent-snapshots'?: Linter.RuleEntry<[]>
6092
+ /**
6093
+ * require toThrow() to be called with an error message
6094
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-to-throw-message.md
6095
+ */
6096
+ 'vitest/require-to-throw-message'?: Linter.RuleEntry<[]>
6097
+ /**
6098
+ * enforce that all tests are in a top-level describe
6099
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/require-top-level-describe.md
6100
+ */
6101
+ 'vitest/require-top-level-describe'?: Linter.RuleEntry<VitestRequireTopLevelDescribe>
6102
+ /**
6103
+ * enforce valid describe callback
6104
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-describe-callback.md
6105
+ */
6106
+ 'vitest/valid-describe-callback'?: Linter.RuleEntry<[]>
6107
+ /**
6108
+ * enforce valid `expect()` usage
6109
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-expect.md
6110
+ */
6111
+ 'vitest/valid-expect'?: Linter.RuleEntry<VitestValidExpect>
6112
+ /**
6113
+ * Require promises that have expectations in their chain to be valid
6114
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-expect-in-promise.md
6115
+ */
6116
+ 'vitest/valid-expect-in-promise'?: Linter.RuleEntry<[]>
6117
+ /**
6118
+ * enforce valid titles
6119
+ * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/valid-title.md
6120
+ */
6121
+ 'vitest/valid-title'?: Linter.RuleEntry<VitestValidTitle>
5810
6122
  /**
5811
6123
  * Require parentheses around immediate `function` invocations
5812
6124
  * @see https://eslint.org/docs/latest/rules/wrap-iife
@@ -9263,6 +9575,10 @@ type PerfectionistSortArrayIncludes = []|[{
9263
9575
  // ----- perfectionist/sort-classes -----
9264
9576
  type PerfectionistSortClasses = []|[{
9265
9577
 
9578
+ ignoreCallbackDependenciesPatterns?: string[]
9579
+
9580
+ partitionByComment?: (string[] | boolean | string)
9581
+
9266
9582
  customGroups?: ({
9267
9583
 
9268
9584
  groupName?: string
@@ -9272,12 +9588,12 @@ type PerfectionistSortClasses = []|[{
9272
9588
  order?: ("desc" | "asc")
9273
9589
  anyOf?: {
9274
9590
 
9275
- modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
9276
-
9277
9591
  elementValuePattern?: string
9278
9592
 
9279
9593
  decoratorNamePattern?: string
9280
9594
 
9595
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
9596
+
9281
9597
  selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method")
9282
9598
 
9283
9599
  elementNamePattern?: string
@@ -9290,21 +9606,17 @@ type PerfectionistSortClasses = []|[{
9290
9606
 
9291
9607
  order?: ("desc" | "asc")
9292
9608
 
9293
- modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
9294
-
9295
9609
  elementValuePattern?: string
9296
9610
 
9297
9611
  decoratorNamePattern?: string
9298
9612
 
9613
+ modifiers?: ("async" | "protected" | "private" | "public" | "static" | "abstract" | "override" | "readonly" | "decorated" | "declare" | "optional")[]
9614
+
9299
9615
  selector?: ("accessor-property" | "index-signature" | "constructor" | "static-block" | "get-method" | "set-method" | "function-property" | "property" | "method")
9300
9616
 
9301
9617
  elementNamePattern?: string
9302
9618
  })[]
9303
9619
 
9304
- ignoreCallbackDependenciesPatterns?: string[]
9305
-
9306
- partitionByComment?: (string[] | boolean | string)
9307
-
9308
9620
  partitionByNewLine?: boolean
9309
9621
 
9310
9622
  specialCharacters?: ("remove" | "trim" | "keep")
@@ -9467,8 +9779,39 @@ type PerfectionistSortInterfaces = []|[{
9467
9779
  ignorePattern?: string[]
9468
9780
 
9469
9781
  partitionByComment?: (string[] | boolean | string)
9782
+ customGroups?: ({
9783
+ [k: string]: (string | string[]) | undefined
9784
+ } | ({
9785
+
9786
+ groupName?: string
9787
+
9788
+ type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9789
+
9790
+ order?: ("desc" | "asc")
9791
+ anyOf?: {
9792
+
9793
+ modifiers?: ("optional" | "required" | "multiline")[]
9794
+
9795
+ selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
9796
+
9797
+ elementNamePattern?: string
9798
+ }[]
9799
+ } | {
9800
+
9801
+ groupName?: string
9802
+
9803
+ type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9804
+
9805
+ order?: ("desc" | "asc")
9806
+
9807
+ modifiers?: ("optional" | "required" | "multiline")[]
9808
+
9809
+ selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
9810
+
9811
+ elementNamePattern?: string
9812
+ })[])
9470
9813
 
9471
- groupKind?: ("mixed" | "optional-first" | "required-first")
9814
+ groupKind?: ("mixed" | "required-first" | "optional-first")
9472
9815
 
9473
9816
  partitionByNewLine?: boolean
9474
9817
 
@@ -9476,10 +9819,6 @@ type PerfectionistSortInterfaces = []|[{
9476
9819
 
9477
9820
  newlinesBetween?: ("ignore" | "always" | "never")
9478
9821
 
9479
- customGroups?: {
9480
- [k: string]: (string | string[]) | undefined
9481
- }
9482
-
9483
9822
  ignoreCase?: boolean
9484
9823
 
9485
9824
  locales?: (string | string[])
@@ -9552,6 +9891,8 @@ type PerfectionistSortMaps = []|[{
9552
9891
  // ----- perfectionist/sort-modules -----
9553
9892
  type PerfectionistSortModules = []|[{
9554
9893
 
9894
+ partitionByComment?: (string[] | boolean | string)
9895
+
9555
9896
  customGroups?: ({
9556
9897
 
9557
9898
  groupName?: string
@@ -9561,12 +9902,10 @@ type PerfectionistSortModules = []|[{
9561
9902
  order?: ("desc" | "asc")
9562
9903
  anyOf?: {
9563
9904
 
9564
- modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
9565
-
9566
- elementValuePattern?: string
9567
-
9568
9905
  decoratorNamePattern?: string
9569
9906
 
9907
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
9908
+
9570
9909
  selector?: ("enum" | "function" | "interface" | "type" | "class")
9571
9910
 
9572
9911
  elementNamePattern?: string
@@ -9579,19 +9918,15 @@ type PerfectionistSortModules = []|[{
9579
9918
 
9580
9919
  order?: ("desc" | "asc")
9581
9920
 
9582
- modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
9583
-
9584
- elementValuePattern?: string
9585
-
9586
9921
  decoratorNamePattern?: string
9587
9922
 
9923
+ modifiers?: ("async" | "declare" | "decorated" | "default" | "export")[]
9924
+
9588
9925
  selector?: ("enum" | "function" | "interface" | "type" | "class")
9589
9926
 
9590
9927
  elementNamePattern?: string
9591
9928
  })[]
9592
9929
 
9593
- partitionByComment?: (string[] | boolean | string)
9594
-
9595
9930
  partitionByNewLine?: boolean
9596
9931
 
9597
9932
  specialCharacters?: ("remove" | "trim" | "keep")
@@ -9651,7 +9986,40 @@ type PerfectionistSortNamedImports = []|[{
9651
9986
  // ----- perfectionist/sort-object-types -----
9652
9987
  type PerfectionistSortObjectTypes = []|[{
9653
9988
 
9989
+ ignorePattern?: string[]
9990
+
9654
9991
  partitionByComment?: (string[] | boolean | string)
9992
+ customGroups?: ({
9993
+ [k: string]: (string | string[]) | undefined
9994
+ } | ({
9995
+
9996
+ groupName?: string
9997
+
9998
+ type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
9999
+
10000
+ order?: ("desc" | "asc")
10001
+ anyOf?: {
10002
+
10003
+ modifiers?: ("optional" | "required" | "multiline")[]
10004
+
10005
+ selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
10006
+
10007
+ elementNamePattern?: string
10008
+ }[]
10009
+ } | {
10010
+
10011
+ groupName?: string
10012
+
10013
+ type?: ("alphabetical" | "line-length" | "natural" | "unsorted")
10014
+
10015
+ order?: ("desc" | "asc")
10016
+
10017
+ modifiers?: ("optional" | "required" | "multiline")[]
10018
+
10019
+ selector?: ("index-signature" | "member" | "method" | "multiline" | "property")
10020
+
10021
+ elementNamePattern?: string
10022
+ })[])
9655
10023
 
9656
10024
  groupKind?: ("mixed" | "required-first" | "optional-first")
9657
10025
 
@@ -9661,10 +10029,6 @@ type PerfectionistSortObjectTypes = []|[{
9661
10029
 
9662
10030
  newlinesBetween?: ("ignore" | "always" | "never")
9663
10031
 
9664
- customGroups?: {
9665
- [k: string]: (string | string[]) | undefined
9666
- }
9667
-
9668
10032
  ignoreCase?: boolean
9669
10033
 
9670
10034
  locales?: (string | string[])
@@ -10893,6 +11257,97 @@ type UseIsnan = []|[{
10893
11257
  type ValidTypeof = []|[{
10894
11258
  requireStringLiterals?: boolean
10895
11259
  }]
11260
+ // ----- vitest/consistent-test-filename -----
11261
+ type VitestConsistentTestFilename = []|[{
11262
+ pattern?: string
11263
+ allTestPattern?: string
11264
+ }]
11265
+ // ----- vitest/consistent-test-it -----
11266
+ type VitestConsistentTestIt = []|[{
11267
+ fn?: ("test" | "it")
11268
+ withinDescribe?: ("test" | "it")
11269
+ }]
11270
+ // ----- vitest/expect-expect -----
11271
+ type VitestExpectExpect = []|[{
11272
+ assertFunctionNames?: string[]
11273
+ additionalTestBlockFunctions?: string[]
11274
+ }]
11275
+ // ----- vitest/max-expects -----
11276
+ type VitestMaxExpects = []|[{
11277
+ max?: number
11278
+ }]
11279
+ // ----- vitest/max-nested-describe -----
11280
+ type VitestMaxNestedDescribe = []|[{
11281
+ max?: number
11282
+ }]
11283
+ // ----- vitest/no-focused-tests -----
11284
+ type VitestNoFocusedTests = []|[{
11285
+ fixable?: boolean
11286
+ }]
11287
+ // ----- vitest/no-hooks -----
11288
+ type VitestNoHooks = []|[{
11289
+ allow?: unknown[]
11290
+ }]
11291
+ // ----- vitest/no-large-snapshots -----
11292
+ type VitestNoLargeSnapshots = []|[{
11293
+ maxSize?: number
11294
+ inlineMaxSize?: number
11295
+ allowedSnapshots?: {
11296
+ [k: string]: unknown[] | undefined
11297
+ }
11298
+ }]
11299
+ // ----- vitest/no-restricted-matchers -----
11300
+ type VitestNoRestrictedMatchers = []|[{
11301
+ [k: string]: (string | null) | undefined
11302
+ }]
11303
+ // ----- vitest/no-restricted-vi-methods -----
11304
+ type VitestNoRestrictedViMethods = []|[{
11305
+ [k: string]: (string | null) | undefined
11306
+ }]
11307
+ // ----- vitest/no-standalone-expect -----
11308
+ type VitestNoStandaloneExpect = []|[{
11309
+ additionaltestblockfunctions?: string[]
11310
+ [k: string]: unknown | undefined
11311
+ }]
11312
+ // ----- vitest/prefer-expect-assertions -----
11313
+ type VitestPreferExpectAssertions = []|[{
11314
+ onlyFunctionsWithAsyncKeyword?: boolean
11315
+ onlyFunctionsWithExpectInLoop?: boolean
11316
+ onlyFunctionsWithExpectInCallback?: boolean
11317
+ }]
11318
+ // ----- vitest/prefer-lowercase-title -----
11319
+ type VitestPreferLowercaseTitle = []|[{
11320
+ ignore?: ("describe" | "test" | "it")[]
11321
+ allowedPrefixes?: string[]
11322
+ ignoreTopLevelDescribe?: boolean
11323
+ lowercaseFirstCharacterOnly?: boolean
11324
+ }]
11325
+ // ----- vitest/prefer-snapshot-hint -----
11326
+ type VitestPreferSnapshotHint = []|[("always" | "multi")]
11327
+ // ----- vitest/require-hook -----
11328
+ type VitestRequireHook = []|[{
11329
+ allowedFunctionCalls?: string[]
11330
+ }]
11331
+ // ----- vitest/require-top-level-describe -----
11332
+ type VitestRequireTopLevelDescribe = []|[{
11333
+ maxNumberOfTopLevelDescribes?: number
11334
+ }]
11335
+ // ----- vitest/valid-expect -----
11336
+ type VitestValidExpect = []|[{
11337
+ alwaysAwait?: boolean
11338
+ asyncMatchers?: string[]
11339
+ minArgs?: number
11340
+ maxArgs?: number
11341
+ }]
11342
+ // ----- vitest/valid-title -----
11343
+ type VitestValidTitle = []|[{
11344
+ ignoreTypeOfDescribeName?: boolean
11345
+ allowArguments?: boolean
11346
+ disallowedWords?: string[]
11347
+ [k: string]: (string | [string]|[string, string] | {
11348
+ [k: string]: (string | [string]|[string, string]) | undefined
11349
+ })
11350
+ }]
10896
11351
  // ----- wrap-iife -----
10897
11352
  type WrapIife = []|[("outside" | "inside" | "any")]|[("outside" | "inside" | "any"), {
10898
11353
  functionPrototypeMethods?: boolean
@@ -11211,19 +11666,24 @@ declare const eslintConfig: ({ astro, autoDetect, configs, ignores, jest, nextjs
11211
11666
  'import-x/named': "off";
11212
11667
  };
11213
11668
  settings: {
11214
- "import-x/resolver": {
11215
- typescript: boolean;
11216
- };
11217
- 'import-x/extensions': readonly [".ts", ".tsx", ".cts", ".mts", ".js", ".jsx", ".cjs", ".mjs"];
11218
- 'import-x/external-module-folders': string[];
11219
- 'import-x/parsers': {
11220
- "@typescript-eslint/parser": (".ts" | ".tsx" | ".cts" | ".mts")[];
11669
+ "import-x/extensions": readonly [".ts", ".tsx", ".cts", ".mts", ".js", ".jsx", ".cjs", ".mjs"];
11670
+ "import-x/external-module-folders": string[];
11671
+ "import-x/parsers": {
11672
+ '@typescript-eslint/parser': (".ts" | ".tsx" | ".cts" | ".mts")[];
11221
11673
  };
11674
+ "import-x/resolver-next": {
11675
+ interfaceVersion: number;
11676
+ name: string;
11677
+ resolve(source: string, file: string): {
11678
+ found: boolean;
11679
+ path?: string | null | undefined;
11680
+ };
11681
+ }[];
11222
11682
  };
11223
11683
  } | {
11224
- name: string;
11225
- plugins: {
11226
- "import-x": {
11684
+ readonly name: "jimmy.codes/imports";
11685
+ readonly plugins: {
11686
+ readonly "import-x": {
11227
11687
  configs: {
11228
11688
  recommended: {
11229
11689
  plugins: ["import-x"];
@@ -11367,7 +11827,7 @@ declare const eslintConfig: ({ astro, autoDetect, configs, ignores, jest, nextjs
11367
11827
  category?: string;
11368
11828
  recommended?: true;
11369
11829
  }, _typescript_eslint_utils_ts_eslint.RuleListener>;
11370
- namespace: _typescript_eslint_utils_ts_eslint.RuleModule<"noNamesFound" | "computedReference" | "namespaceMember" | "topLevelNames" | "notFoundInNamespace", [{
11830
+ namespace: _typescript_eslint_utils_ts_eslint.RuleModule<"noNamesFound" | "computedReference" | "namespaceMember" | "topLevelNames" | "notFoundInNamespace" | "notFoundInNamespaceDeep", [{
11371
11831
  allowComputed?: boolean;
11372
11832
  }], {
11373
11833
  category?: string;
@@ -11437,10 +11897,10 @@ declare const eslintConfig: ({ astro, autoDetect, configs, ignores, jest, nextjs
11437
11897
  category?: string;
11438
11898
  recommended?: true;
11439
11899
  }, _typescript_eslint_utils_ts_eslint.RuleListener>;
11440
- "no-cycle": _typescript_eslint_utils_ts_eslint.RuleModule<"cycle", [(({
11900
+ "no-cycle": _typescript_eslint_utils_ts_eslint.RuleModule<"cycle" | "cycleSource", [(({
11441
11901
  allowUnsafeDynamicCyclicDependency?: boolean;
11442
11902
  ignoreExternal?: boolean;
11443
- maxDepth?: number;
11903
+ maxDepth?: number | "\u221E";
11444
11904
  } & eslint_plugin_import_x_utils_module_visitor_js.ModuleOptions) | undefined)?], {
11445
11905
  category?: string;
11446
11906
  recommended?: true;
@@ -11479,7 +11939,7 @@ declare const eslintConfig: ({ astro, autoDetect, configs, ignores, jest, nextjs
11479
11939
  "no-unused-modules": _typescript_eslint_utils_ts_eslint.RuleModule<"notFound" | "unused", {
11480
11940
  src?: string[];
11481
11941
  ignoreExports?: string[];
11482
- missingExports?: string[];
11942
+ missingExports?: true;
11483
11943
  unusedExports?: boolean;
11484
11944
  ignoreUnusedTypeExports?: boolean;
11485
11945
  }[], {
@@ -11505,7 +11965,7 @@ declare const eslintConfig: ({ astro, autoDetect, configs, ignores, jest, nextjs
11505
11965
  category?: string;
11506
11966
  recommended?: true;
11507
11967
  }, _typescript_eslint_utils_ts_eslint.RuleListener>;
11508
- first: _typescript_eslint_utils_ts_eslint.RuleModule<"absolute" | "order", [("absolute-first" | undefined)?], {
11968
+ first: _typescript_eslint_utils_ts_eslint.RuleModule<"absolute" | "order", [(("absolute-first" | "disable-absolute-first") | undefined)?], {
11509
11969
  category?: string;
11510
11970
  recommended?: true;
11511
11971
  }, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -11621,21 +12081,22 @@ declare const eslintConfig: ({ astro, autoDetect, configs, ignores, jest, nextjs
11621
12081
  category?: string;
11622
12082
  recommended?: true;
11623
12083
  }, _typescript_eslint_utils_ts_eslint.RuleListener>;
11624
- "no-deprecated": _typescript_eslint_utils_ts_eslint.RuleModule<"deprecated", [], {
12084
+ "no-deprecated": _typescript_eslint_utils_ts_eslint.RuleModule<"deprecated" | "deprecatedDesc", [], {
11625
12085
  category?: string;
11626
12086
  recommended?: true;
11627
12087
  }, _typescript_eslint_utils_ts_eslint.RuleListener>;
11628
- "imports-first": _typescript_eslint_utils_ts_eslint.RuleModule<"absolute" | "order", [("absolute-first" | undefined)?], {
12088
+ "imports-first": _typescript_eslint_utils_ts_eslint.RuleModule<"absolute" | "order", [(("absolute-first" | "disable-absolute-first") | undefined)?], {
11629
12089
  category?: string;
11630
12090
  recommended?: true;
11631
12091
  }, _typescript_eslint_utils_ts_eslint.RuleListener>;
11632
12092
  };
12093
+ importXResolverCompat: typeof eslint_plugin_import_x_utils_resolve_js.importXResolverCompat;
11633
12094
  };
11634
- n: eslint.ESLint.Plugin & {
12095
+ readonly n: eslint.ESLint.Plugin & {
11635
12096
  configs: eslint_plugin_n.Configs;
11636
12097
  };
11637
12098
  };
11638
- rules: {
12099
+ readonly rules: {
11639
12100
  "import-x/consistent-type-specifier-style": ["error", "prefer-top-level"];
11640
12101
  "import-x/extensions": ["error", "never", {
11641
12102
  checkTypedImports: boolean;