@jimmy.codes/eslint-config 5.12.0 → 5.13.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.ts CHANGED
@@ -325,6 +325,7 @@ declare function astroConfig(): Promise<({
325
325
  __filename: false;
326
326
  AbortController: false;
327
327
  AbortSignal: false;
328
+ AsyncDisposableStack: false;
328
329
  atob: false;
329
330
  Blob: false;
330
331
  BroadcastChannel: false;
@@ -343,6 +344,7 @@ declare function astroConfig(): Promise<({
343
344
  CryptoKey: false;
344
345
  CustomEvent: false;
345
346
  DecompressionStream: false;
347
+ DisposableStack: false;
346
348
  DOMException: false;
347
349
  Event: false;
348
350
  EventTarget: false;
@@ -382,6 +384,7 @@ declare function astroConfig(): Promise<({
382
384
  setTimeout: false;
383
385
  structuredClone: false;
384
386
  SubtleCrypto: false;
387
+ SuppressedError: false;
385
388
  TextDecoder: false;
386
389
  TextDecoderStream: false;
387
390
  TextEncoder: false;
@@ -389,6 +392,7 @@ declare function astroConfig(): Promise<({
389
392
  TransformStream: false;
390
393
  TransformStreamDefaultController: false;
391
394
  URL: false;
395
+ URLPattern: false;
392
396
  URLSearchParams: false;
393
397
  WebAssembly: false;
394
398
  WebSocket: false;
@@ -495,6 +499,7 @@ declare function reactConfig(): Promise<{
495
499
  addEventListener: false;
496
500
  ai: false;
497
501
  AI: false;
502
+ AICreateMonitor: false;
498
503
  AITextSession: false;
499
504
  alert: false;
500
505
  AnalyserNode: false;
@@ -503,6 +508,7 @@ declare function reactConfig(): Promise<{
503
508
  AnimationEvent: false;
504
509
  AnimationPlaybackEvent: false;
505
510
  AnimationTimeline: false;
511
+ AsyncDisposableStack: false;
506
512
  atob: false;
507
513
  Attr: false;
508
514
  Audio: false;
@@ -579,6 +585,7 @@ declare function reactConfig(): Promise<{
579
585
  closed: false;
580
586
  CloseEvent: false;
581
587
  CloseWatcher: false;
588
+ CommandEvent: false;
582
589
  Comment: false;
583
590
  CompositionEvent: false;
584
591
  CompressionStream: false;
@@ -602,6 +609,7 @@ declare function reactConfig(): Promise<{
602
609
  crypto: false;
603
610
  Crypto: false;
604
611
  CryptoKey: false;
612
+ CSPViolationReportBody: false;
605
613
  CSS: false;
606
614
  CSSAnimation: false;
607
615
  CSSConditionRule: false;
@@ -679,7 +687,9 @@ declare function reactConfig(): Promise<{
679
687
  DeviceMotionEventRotationRate: false;
680
688
  DeviceOrientationEvent: false;
681
689
  devicePixelRatio: false;
690
+ DevicePosture: false;
682
691
  dispatchEvent: false;
692
+ DisposableStack: false;
683
693
  document: false;
684
694
  Document: false;
685
695
  DocumentFragment: false;
@@ -738,9 +748,9 @@ declare function reactConfig(): Promise<{
738
748
  FileSystemFileEntry: false;
739
749
  FileSystemFileHandle: false;
740
750
  FileSystemHandle: false;
751
+ FileSystemObserver: false;
741
752
  FileSystemWritableFileStream: false;
742
753
  find: false;
743
- Float16Array: false;
744
754
  focus: false;
745
755
  FocusEvent: false;
746
756
  FontData: false;
@@ -877,6 +887,7 @@ declare function reactConfig(): Promise<{
877
887
  HTMLProgressElement: false;
878
888
  HTMLQuoteElement: false;
879
889
  HTMLScriptElement: false;
890
+ HTMLSelectedContentElement: false;
880
891
  HTMLSelectElement: false;
881
892
  HTMLSlotElement: false;
882
893
  HTMLSourceElement: false;
@@ -935,6 +946,7 @@ declare function reactConfig(): Promise<{
935
946
  KeyboardEvent: false;
936
947
  KeyboardLayoutMap: false;
937
948
  KeyframeEffect: false;
949
+ LanguageDetector: false;
938
950
  LargestContentfulPaint: false;
939
951
  LaunchParams: false;
940
952
  launchQueue: false;
@@ -1032,6 +1044,7 @@ declare function reactConfig(): Promise<{
1032
1044
  NotifyPaintEvent: false;
1033
1045
  NotRestoredReasonDetails: false;
1034
1046
  NotRestoredReasons: false;
1047
+ Observable: false;
1035
1048
  OfflineAudioCompletionEvent: false;
1036
1049
  OfflineAudioContext: false;
1037
1050
  offscreenBuffering: false;
@@ -1059,6 +1072,7 @@ declare function reactConfig(): Promise<{
1059
1072
  onchange: true;
1060
1073
  onclick: true;
1061
1074
  onclose: true;
1075
+ oncommand: true;
1062
1076
  oncontentvisibilityautostatechange: true;
1063
1077
  oncontextlost: true;
1064
1078
  oncontextmenu: true;
@@ -1252,6 +1266,7 @@ declare function reactConfig(): Promise<{
1252
1266
  RelativeOrientationSensor: false;
1253
1267
  RemotePlayback: false;
1254
1268
  removeEventListener: false;
1269
+ ReportBody: false;
1255
1270
  reportError: false;
1256
1271
  ReportingObserver: false;
1257
1272
  Request: false;
@@ -1263,6 +1278,7 @@ declare function reactConfig(): Promise<{
1263
1278
  ResizeObserverSize: false;
1264
1279
  resizeTo: false;
1265
1280
  Response: false;
1281
+ RestrictionTarget: false;
1266
1282
  RTCCertificate: false;
1267
1283
  RTCDataChannel: false;
1268
1284
  RTCDataChannelEvent: false;
@@ -1323,6 +1339,11 @@ declare function reactConfig(): Promise<{
1323
1339
  ShadowRoot: false;
1324
1340
  sharedStorage: false;
1325
1341
  SharedStorage: false;
1342
+ SharedStorageAppendMethod: false;
1343
+ SharedStorageClearMethod: false;
1344
+ SharedStorageDeleteMethod: false;
1345
+ SharedStorageModifierMethod: false;
1346
+ SharedStorageSetMethod: false;
1326
1347
  SharedStorageWorklet: false;
1327
1348
  SharedWorker: false;
1328
1349
  showDirectoryPicker: false;
@@ -1354,7 +1375,9 @@ declare function reactConfig(): Promise<{
1354
1375
  StyleSheet: false;
1355
1376
  StyleSheetList: false;
1356
1377
  SubmitEvent: false;
1378
+ Subscriber: false;
1357
1379
  SubtleCrypto: false;
1380
+ SuppressedError: false;
1358
1381
  SVGAElement: false;
1359
1382
  SVGAngle: false;
1360
1383
  SVGAnimatedAngle: false;
@@ -1558,6 +1581,7 @@ declare function reactConfig(): Promise<{
1558
1581
  WebTransportSendStream: false;
1559
1582
  WGSLLanguageFeatures: false;
1560
1583
  WheelEvent: false;
1584
+ when: false;
1561
1585
  window: false;
1562
1586
  Window: false;
1563
1587
  WindowControlsOverlay: false;
@@ -1689,6 +1713,7 @@ declare function reactConfig(): Promise<{
1689
1713
  readonly "prefer-read-only-props": _typescript_eslint_utils_ts_eslint.RuleModule<"preferReadOnlyProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1690
1714
  readonly "prefer-shorthand-boolean": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandBoolean", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1691
1715
  readonly "prefer-shorthand-fragment": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandFragment", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1716
+ readonly "jsx-key-before-spread": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxKeyBeforeSpread", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1692
1717
  readonly "jsx-no-duplicate-props": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoDuplicateProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1693
1718
  readonly "jsx-no-undef": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoUndef", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1694
1719
  readonly "jsx-uses-react": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxUsesReact", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -1770,6 +1795,7 @@ declare function reactConfig(): Promise<{
1770
1795
  readonly "prefer-read-only-props": _typescript_eslint_utils_ts_eslint.RuleModule<"preferReadOnlyProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1771
1796
  readonly "prefer-shorthand-boolean": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandBoolean", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1772
1797
  readonly "prefer-shorthand-fragment": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandFragment", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1798
+ readonly "jsx-key-before-spread": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxKeyBeforeSpread", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1773
1799
  readonly "jsx-no-duplicate-props": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoDuplicateProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1774
1800
  readonly "jsx-no-undef": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoUndef", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1775
1801
  readonly "jsx-uses-react": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxUsesReact", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -1851,6 +1877,7 @@ declare function reactConfig(): Promise<{
1851
1877
  readonly "prefer-read-only-props": _typescript_eslint_utils_ts_eslint.RuleModule<"preferReadOnlyProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1852
1878
  readonly "prefer-shorthand-boolean": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandBoolean", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1853
1879
  readonly "prefer-shorthand-fragment": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandFragment", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1880
+ readonly "jsx-key-before-spread": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxKeyBeforeSpread", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1854
1881
  readonly "jsx-no-duplicate-props": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoDuplicateProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1855
1882
  readonly "jsx-no-undef": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoUndef", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1856
1883
  readonly "jsx-uses-react": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxUsesReact", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -1930,6 +1957,7 @@ declare function reactConfig(): Promise<{
1930
1957
  readonly "prefer-read-only-props": _typescript_eslint_utils_ts_eslint.RuleModule<"preferReadOnlyProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1931
1958
  readonly "prefer-shorthand-boolean": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandBoolean", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1932
1959
  readonly "prefer-shorthand-fragment": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandFragment", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1960
+ readonly "jsx-key-before-spread": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxKeyBeforeSpread", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1933
1961
  readonly "jsx-no-duplicate-props": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoDuplicateProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1934
1962
  readonly "jsx-no-undef": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoUndef", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
1935
1963
  readonly "jsx-uses-react": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxUsesReact", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -2341,6 +2369,7 @@ declare function typescriptConfig(): Promise<(_typescript_eslint_utils_ts_eslint
2341
2369
  attributes: false;
2342
2370
  };
2343
2371
  }];
2372
+ "@typescript-eslint/no-unnecessary-type-conversion": "error";
2344
2373
  "@typescript-eslint/no-unused-vars": ["error", {
2345
2374
  args: "all";
2346
2375
  argsIgnorePattern: string;
@@ -2581,6 +2610,11 @@ interface RuleOptions {
2581
2610
  * @see https://eslint-react.xyz/docs/rules/hooks-extra-prefer-use-state-lazy-initialization
2582
2611
  */
2583
2612
  '@eslint-react/hooks-extra/prefer-use-state-lazy-initialization'?: Linter.RuleEntry<[]>
2613
+ /**
2614
+ * Enforces that the 'key' attribute is placed before the spread attribute in JSX elements.
2615
+ * @see https://eslint-react.xyz/docs/rules/jsx-key-before-spread
2616
+ */
2617
+ '@eslint-react/jsx-key-before-spread'?: Linter.RuleEntry<[]>
2584
2618
  /**
2585
2619
  * Disallow duplicate props in JSX elements.
2586
2620
  * @see https://eslint-react.xyz/docs/rules/jsx-no-duplicate-props
@@ -3909,6 +3943,11 @@ interface RuleOptions {
3909
3943
  * @see https://typescript-eslint.io/rules/no-unnecessary-type-constraint
3910
3944
  */
3911
3945
  '@typescript-eslint/no-unnecessary-type-constraint'?: Linter.RuleEntry<[]>
3946
+ /**
3947
+ * Disallow conversion idioms when they do not change the type or value of the expression
3948
+ * @see https://typescript-eslint.io/rules/no-unnecessary-type-conversion
3949
+ */
3950
+ '@typescript-eslint/no-unnecessary-type-conversion'?: Linter.RuleEntry<[]>
3912
3951
  /**
3913
3952
  * Disallow type parameters that aren't used multiple times
3914
3953
  * @see https://typescript-eslint.io/rules/no-unnecessary-type-parameters
@@ -4721,233 +4760,233 @@ interface RuleOptions {
4721
4760
  'implicit-arrow-linebreak'?: Linter.RuleEntry<ImplicitArrowLinebreak>
4722
4761
  /**
4723
4762
  * Enforce or ban the use of inline type-only markers for named imports.
4724
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/consistent-type-specifier-style.md
4763
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/consistent-type-specifier-style.md
4725
4764
  */
4726
4765
  'import-x/consistent-type-specifier-style'?: Linter.RuleEntry<ImportXConsistentTypeSpecifierStyle>
4727
4766
  /**
4728
4767
  * Ensure a default export is present, given a default import.
4729
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/default.md
4768
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/default.md
4730
4769
  */
4731
4770
  'import-x/default'?: Linter.RuleEntry<[]>
4732
4771
  /**
4733
4772
  * Enforce a leading comment with the webpackChunkName for dynamic imports.
4734
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/dynamic-import-chunkname.md
4773
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/dynamic-import-chunkname.md
4735
4774
  */
4736
4775
  'import-x/dynamic-import-chunkname'?: Linter.RuleEntry<ImportXDynamicImportChunkname>
4737
4776
  /**
4738
4777
  * Forbid any invalid exports, i.e. re-export of the same name.
4739
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/export.md
4778
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/export.md
4740
4779
  */
4741
4780
  'import-x/export'?: Linter.RuleEntry<[]>
4742
4781
  /**
4743
4782
  * Ensure all exports appear after other statements.
4744
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/exports-last.md
4783
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/exports-last.md
4745
4784
  */
4746
4785
  'import-x/exports-last'?: Linter.RuleEntry<[]>
4747
4786
  /**
4748
4787
  * Ensure consistent use of file extension within the import path.
4749
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/extensions.md
4788
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/extensions.md
4750
4789
  */
4751
4790
  'import-x/extensions'?: Linter.RuleEntry<ImportXExtensions>
4752
4791
  /**
4753
4792
  * Ensure all imports appear before other statements.
4754
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/first.md
4793
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/first.md
4755
4794
  */
4756
4795
  'import-x/first'?: Linter.RuleEntry<ImportXFirst>
4757
4796
  /**
4758
4797
  * Prefer named exports to be grouped together in a single export declaration.
4759
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/group-exports.md
4798
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/group-exports.md
4760
4799
  */
4761
4800
  'import-x/group-exports'?: Linter.RuleEntry<[]>
4762
4801
  /**
4763
4802
  * Replaced by `import-x/first`.
4764
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/imports-first.md
4803
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/imports-first.md
4765
4804
  * @deprecated
4766
4805
  */
4767
4806
  'import-x/imports-first'?: Linter.RuleEntry<ImportXImportsFirst>
4768
4807
  /**
4769
4808
  * Enforce the maximum number of dependencies a module can have.
4770
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/max-dependencies.md
4809
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/max-dependencies.md
4771
4810
  */
4772
4811
  'import-x/max-dependencies'?: Linter.RuleEntry<ImportXMaxDependencies>
4773
4812
  /**
4774
4813
  * Ensure named imports correspond to a named export in the remote file.
4775
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/named.md
4814
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/named.md
4776
4815
  */
4777
4816
  'import-x/named'?: Linter.RuleEntry<ImportXNamed>
4778
4817
  /**
4779
4818
  * Ensure imported namespaces contain dereferenced properties as they are dereferenced.
4780
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/namespace.md
4819
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/namespace.md
4781
4820
  */
4782
4821
  'import-x/namespace'?: Linter.RuleEntry<ImportXNamespace>
4783
4822
  /**
4784
4823
  * Enforce a newline after import statements.
4785
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/newline-after-import.md
4824
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/newline-after-import.md
4786
4825
  */
4787
4826
  'import-x/newline-after-import'?: Linter.RuleEntry<ImportXNewlineAfterImport>
4788
4827
  /**
4789
4828
  * Forbid import of modules using absolute paths.
4790
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-absolute-path.md
4829
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-absolute-path.md
4791
4830
  */
4792
4831
  'import-x/no-absolute-path'?: Linter.RuleEntry<ImportXNoAbsolutePath>
4793
4832
  /**
4794
4833
  * Forbid AMD `require` and `define` calls.
4795
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-amd.md
4834
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-amd.md
4796
4835
  */
4797
4836
  'import-x/no-amd'?: Linter.RuleEntry<[]>
4798
4837
  /**
4799
4838
  * Forbid anonymous values as default exports.
4800
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-anonymous-default-export.md
4839
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-anonymous-default-export.md
4801
4840
  */
4802
4841
  'import-x/no-anonymous-default-export'?: Linter.RuleEntry<ImportXNoAnonymousDefaultExport>
4803
4842
  /**
4804
4843
  * Forbid CommonJS `require` calls and `module.exports` or `exports.*`.
4805
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-commonjs.md
4844
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-commonjs.md
4806
4845
  */
4807
4846
  'import-x/no-commonjs'?: Linter.RuleEntry<ImportXNoCommonjs>
4808
4847
  /**
4809
4848
  * Forbid a module from importing a module with a dependency path back to itself.
4810
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-cycle.md
4849
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-cycle.md
4811
4850
  */
4812
4851
  'import-x/no-cycle'?: Linter.RuleEntry<ImportXNoCycle>
4813
4852
  /**
4814
4853
  * Forbid default exports.
4815
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-default-export.md
4854
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-default-export.md
4816
4855
  */
4817
4856
  'import-x/no-default-export'?: Linter.RuleEntry<[]>
4818
4857
  /**
4819
4858
  * Forbid imported names marked with `@deprecated` documentation tag.
4820
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-deprecated.md
4859
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-deprecated.md
4821
4860
  */
4822
4861
  'import-x/no-deprecated'?: Linter.RuleEntry<[]>
4823
4862
  /**
4824
4863
  * Forbid repeated import of the same module in multiple places.
4825
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-duplicates.md
4864
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-duplicates.md
4826
4865
  */
4827
4866
  'import-x/no-duplicates'?: Linter.RuleEntry<ImportXNoDuplicates>
4828
4867
  /**
4829
4868
  * Forbid `require()` calls with expressions.
4830
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-dynamic-require.md
4869
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-dynamic-require.md
4831
4870
  */
4832
4871
  'import-x/no-dynamic-require'?: Linter.RuleEntry<ImportXNoDynamicRequire>
4833
4872
  /**
4834
4873
  * Forbid empty named import blocks.
4835
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-empty-named-blocks.md
4874
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-empty-named-blocks.md
4836
4875
  */
4837
4876
  'import-x/no-empty-named-blocks'?: Linter.RuleEntry<[]>
4838
4877
  /**
4839
4878
  * Forbid the use of extraneous packages.
4840
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-extraneous-dependencies.md
4879
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-extraneous-dependencies.md
4841
4880
  */
4842
4881
  'import-x/no-extraneous-dependencies'?: Linter.RuleEntry<ImportXNoExtraneousDependencies>
4843
4882
  /**
4844
4883
  * Forbid import statements with CommonJS module.exports.
4845
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-import-module-exports.md
4884
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-import-module-exports.md
4846
4885
  */
4847
4886
  'import-x/no-import-module-exports'?: Linter.RuleEntry<ImportXNoImportModuleExports>
4848
4887
  /**
4849
4888
  * Forbid importing the submodules of other modules.
4850
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-internal-modules.md
4889
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-internal-modules.md
4851
4890
  */
4852
4891
  'import-x/no-internal-modules'?: Linter.RuleEntry<ImportXNoInternalModules>
4853
4892
  /**
4854
4893
  * Forbid the use of mutable exports with `var` or `let`.
4855
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-mutable-exports.md
4894
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-mutable-exports.md
4856
4895
  */
4857
4896
  'import-x/no-mutable-exports'?: Linter.RuleEntry<[]>
4858
4897
  /**
4859
4898
  * Forbid use of exported name as identifier of default export.
4860
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-named-as-default.md
4899
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-named-as-default.md
4861
4900
  */
4862
4901
  'import-x/no-named-as-default'?: Linter.RuleEntry<[]>
4863
4902
  /**
4864
4903
  * Forbid use of exported name as property of default export.
4865
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-named-as-default-member.md
4904
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-named-as-default-member.md
4866
4905
  */
4867
4906
  'import-x/no-named-as-default-member'?: Linter.RuleEntry<[]>
4868
4907
  /**
4869
4908
  * Forbid named default exports.
4870
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-named-default.md
4909
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-named-default.md
4871
4910
  */
4872
4911
  'import-x/no-named-default'?: Linter.RuleEntry<[]>
4873
4912
  /**
4874
4913
  * Forbid named exports.
4875
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-named-export.md
4914
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-named-export.md
4876
4915
  */
4877
4916
  'import-x/no-named-export'?: Linter.RuleEntry<[]>
4878
4917
  /**
4879
4918
  * Forbid namespace (a.k.a. "wildcard" `*`) imports.
4880
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-namespace.md
4919
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-namespace.md
4881
4920
  */
4882
4921
  'import-x/no-namespace'?: Linter.RuleEntry<ImportXNoNamespace>
4883
4922
  /**
4884
4923
  * Forbid Node.js builtin modules.
4885
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-nodejs-modules.md
4924
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-nodejs-modules.md
4886
4925
  */
4887
4926
  'import-x/no-nodejs-modules'?: Linter.RuleEntry<ImportXNoNodejsModules>
4888
4927
  /**
4889
4928
  * Forbid importing packages through relative paths.
4890
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-relative-packages.md
4929
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-relative-packages.md
4891
4930
  */
4892
4931
  'import-x/no-relative-packages'?: Linter.RuleEntry<ImportXNoRelativePackages>
4893
4932
  /**
4894
4933
  * Forbid importing modules from parent directories.
4895
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-relative-parent-imports.md
4934
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-relative-parent-imports.md
4896
4935
  */
4897
4936
  'import-x/no-relative-parent-imports'?: Linter.RuleEntry<ImportXNoRelativeParentImports>
4898
4937
  /**
4899
4938
  * Forbid importing a default export by a different name.
4900
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-rename-default.md
4939
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-rename-default.md
4901
4940
  */
4902
4941
  'import-x/no-rename-default'?: Linter.RuleEntry<ImportXNoRenameDefault>
4903
4942
  /**
4904
4943
  * Enforce which files can be imported in a given folder.
4905
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-restricted-paths.md
4944
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-restricted-paths.md
4906
4945
  */
4907
4946
  'import-x/no-restricted-paths'?: Linter.RuleEntry<ImportXNoRestrictedPaths>
4908
4947
  /**
4909
4948
  * Forbid a module from importing itself.
4910
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-self-import.md
4949
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-self-import.md
4911
4950
  */
4912
4951
  'import-x/no-self-import'?: Linter.RuleEntry<[]>
4913
4952
  /**
4914
4953
  * Forbid unassigned imports.
4915
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-unassigned-import.md
4954
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-unassigned-import.md
4916
4955
  */
4917
4956
  'import-x/no-unassigned-import'?: Linter.RuleEntry<ImportXNoUnassignedImport>
4918
4957
  /**
4919
4958
  * Ensure imports point to a file/module that can be resolved.
4920
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-unresolved.md
4959
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-unresolved.md
4921
4960
  */
4922
4961
  'import-x/no-unresolved'?: Linter.RuleEntry<ImportXNoUnresolved>
4923
4962
  /**
4924
4963
  * Forbid modules without exports, or exports without matching import in another module.
4925
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-unused-modules.md
4964
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-unused-modules.md
4926
4965
  */
4927
4966
  'import-x/no-unused-modules'?: Linter.RuleEntry<ImportXNoUnusedModules>
4928
4967
  /**
4929
4968
  * Forbid unnecessary path segments in import and require statements.
4930
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-useless-path-segments.md
4969
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-useless-path-segments.md
4931
4970
  */
4932
4971
  'import-x/no-useless-path-segments'?: Linter.RuleEntry<ImportXNoUselessPathSegments>
4933
4972
  /**
4934
4973
  * Forbid webpack loader syntax in imports.
4935
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/no-webpack-loader-syntax.md
4974
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/no-webpack-loader-syntax.md
4936
4975
  */
4937
4976
  'import-x/no-webpack-loader-syntax'?: Linter.RuleEntry<[]>
4938
4977
  /**
4939
4978
  * Enforce a convention in module import order.
4940
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/order.md
4979
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/order.md
4941
4980
  */
4942
4981
  'import-x/order'?: Linter.RuleEntry<ImportXOrder>
4943
4982
  /**
4944
4983
  * Prefer a default export if module exports a single name or multiple names.
4945
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/prefer-default-export.md
4984
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/prefer-default-export.md
4946
4985
  */
4947
4986
  'import-x/prefer-default-export'?: Linter.RuleEntry<ImportXPreferDefaultExport>
4948
4987
  /**
4949
4988
  * Forbid potentially ambiguous parse goal (`script` vs. `module`).
4950
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.10.6/docs/rules/unambiguous.md
4989
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.11.0/docs/rules/unambiguous.md
4951
4990
  */
4952
4991
  'import-x/unambiguous'?: Linter.RuleEntry<[]>
4953
4992
  /**
@@ -6748,7 +6787,7 @@ interface RuleOptions {
6748
6787
  * Disallow identifiers from shadowing restricted names
6749
6788
  * @see https://eslint.org/docs/latest/rules/no-shadow-restricted-names
6750
6789
  */
6751
- 'no-shadow-restricted-names'?: Linter.RuleEntry<[]>
6790
+ 'no-shadow-restricted-names'?: Linter.RuleEntry<NoShadowRestrictedNames>
6752
6791
  /**
6753
6792
  * Disallow spacing between function identifiers and their applications (deprecated)
6754
6793
  * @see https://eslint.org/docs/latest/rules/no-spaced-func
@@ -8991,7 +9030,7 @@ interface RuleOptions {
8991
9030
  */
8992
9031
  'vitest/no-standalone-expect'?: Linter.RuleEntry<VitestNoStandaloneExpect>
8993
9032
  /**
8994
- * disallow using `test` as a prefix
9033
+ * Disallow using the `f` and `x` prefixes in favour of `.only` and `.skip`
8995
9034
  * @see https://github.com/vitest-dev/eslint-plugin-vitest/blob/main/docs/rules/no-test-prefixes.md
8996
9035
  */
8997
9036
  'vitest/no-test-prefixes'?: Linter.RuleEntry<[]>
@@ -11240,6 +11279,7 @@ type TypescriptEslintNoUnusedExpressions = []|[{
11240
11279
  allowTernary?: boolean
11241
11280
  allowTaggedTemplates?: boolean
11242
11281
  enforceForJSX?: boolean
11282
+ ignoreDirectives?: boolean
11243
11283
  }]
11244
11284
  // ----- @typescript-eslint/no-unused-vars -----
11245
11285
  type TypescriptEslintNoUnusedVars = []|[(("all" | "local") | {
@@ -11302,6 +11342,8 @@ type TypescriptEslintOnlyThrowError = []|[{
11302
11342
  package: string
11303
11343
  })[]
11304
11344
 
11345
+ allowRethrowing?: boolean
11346
+
11305
11347
  allowThrowingAny?: boolean
11306
11348
 
11307
11349
  allowThrowingUnknown?: boolean
@@ -14152,6 +14194,10 @@ type NoShadow = []|[{
14152
14194
  allow?: string[]
14153
14195
  ignoreOnInitialization?: boolean
14154
14196
  }]
14197
+ // ----- no-shadow-restricted-names -----
14198
+ type NoShadowRestrictedNames = []|[{
14199
+ reportGlobalThis?: boolean
14200
+ }]
14155
14201
  // ----- no-sync -----
14156
14202
  type NoSync = []|[{
14157
14203
  allowAtRootLevel?: boolean
@@ -14203,6 +14249,7 @@ type NoUnusedExpressions = []|[{
14203
14249
  allowTernary?: boolean
14204
14250
  allowTaggedTemplates?: boolean
14205
14251
  enforceForJSX?: boolean
14252
+ ignoreDirectives?: boolean
14206
14253
  }]
14207
14254
  // ----- no-unused-vars -----
14208
14255
  type NoUnusedVars = []|[(("all" | "local") | {
@@ -17475,6 +17522,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
17475
17522
  "no-deprecated": _typescript_eslint_utils_ts_eslint.RuleModule<"deprecated" | "deprecatedDesc", [], eslint_plugin_import_x_utils.ImportXPluginDocs, _typescript_eslint_utils_ts_eslint.RuleListener>;
17476
17523
  "imports-first": _typescript_eslint_utils_ts_eslint.RuleModule<eslint_plugin_import_x_rules_first.MessageId, [(eslint_plugin_import_x_rules_first.Options | undefined)?], eslint_plugin_import_x_utils.ImportXPluginDocs, _typescript_eslint_utils_ts_eslint.RuleListener>;
17477
17524
  };
17525
+ cjsRequire: eslint_plugin_import_x.CjsRequire;
17478
17526
  importXResolverCompat: typeof eslint_plugin_import_x.importXResolverCompat;
17479
17527
  createNodeResolver: typeof eslint_plugin_import_x.createNodeResolver;
17480
17528
  };
@@ -17736,6 +17784,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
17736
17784
  attributes: false;
17737
17785
  };
17738
17786
  }];
17787
+ "@typescript-eslint/no-unnecessary-type-conversion": "error";
17739
17788
  "@typescript-eslint/no-unused-vars": ["error", {
17740
17789
  args: "all";
17741
17790
  argsIgnorePattern: string;
@@ -17777,6 +17826,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
17777
17826
  addEventListener: false;
17778
17827
  ai: false;
17779
17828
  AI: false;
17829
+ AICreateMonitor: false;
17780
17830
  AITextSession: false;
17781
17831
  alert: false;
17782
17832
  AnalyserNode: false;
@@ -17785,6 +17835,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
17785
17835
  AnimationEvent: false;
17786
17836
  AnimationPlaybackEvent: false;
17787
17837
  AnimationTimeline: false;
17838
+ AsyncDisposableStack: false;
17788
17839
  atob: false;
17789
17840
  Attr: false;
17790
17841
  Audio: false;
@@ -17861,6 +17912,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
17861
17912
  closed: false;
17862
17913
  CloseEvent: false;
17863
17914
  CloseWatcher: false;
17915
+ CommandEvent: false;
17864
17916
  Comment: false;
17865
17917
  CompositionEvent: false;
17866
17918
  CompressionStream: false;
@@ -17884,6 +17936,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
17884
17936
  crypto: false;
17885
17937
  Crypto: false;
17886
17938
  CryptoKey: false;
17939
+ CSPViolationReportBody: false;
17887
17940
  CSS: false;
17888
17941
  CSSAnimation: false;
17889
17942
  CSSConditionRule: false;
@@ -17961,7 +18014,9 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
17961
18014
  DeviceMotionEventRotationRate: false;
17962
18015
  DeviceOrientationEvent: false;
17963
18016
  devicePixelRatio: false;
18017
+ DevicePosture: false;
17964
18018
  dispatchEvent: false;
18019
+ DisposableStack: false;
17965
18020
  document: false;
17966
18021
  Document: false;
17967
18022
  DocumentFragment: false;
@@ -18020,9 +18075,9 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18020
18075
  FileSystemFileEntry: false;
18021
18076
  FileSystemFileHandle: false;
18022
18077
  FileSystemHandle: false;
18078
+ FileSystemObserver: false;
18023
18079
  FileSystemWritableFileStream: false;
18024
18080
  find: false;
18025
- Float16Array: false;
18026
18081
  focus: false;
18027
18082
  FocusEvent: false;
18028
18083
  FontData: false;
@@ -18159,6 +18214,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18159
18214
  HTMLProgressElement: false;
18160
18215
  HTMLQuoteElement: false;
18161
18216
  HTMLScriptElement: false;
18217
+ HTMLSelectedContentElement: false;
18162
18218
  HTMLSelectElement: false;
18163
18219
  HTMLSlotElement: false;
18164
18220
  HTMLSourceElement: false;
@@ -18217,6 +18273,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18217
18273
  KeyboardEvent: false;
18218
18274
  KeyboardLayoutMap: false;
18219
18275
  KeyframeEffect: false;
18276
+ LanguageDetector: false;
18220
18277
  LargestContentfulPaint: false;
18221
18278
  LaunchParams: false;
18222
18279
  launchQueue: false;
@@ -18314,6 +18371,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18314
18371
  NotifyPaintEvent: false;
18315
18372
  NotRestoredReasonDetails: false;
18316
18373
  NotRestoredReasons: false;
18374
+ Observable: false;
18317
18375
  OfflineAudioCompletionEvent: false;
18318
18376
  OfflineAudioContext: false;
18319
18377
  offscreenBuffering: false;
@@ -18341,6 +18399,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18341
18399
  onchange: true;
18342
18400
  onclick: true;
18343
18401
  onclose: true;
18402
+ oncommand: true;
18344
18403
  oncontentvisibilityautostatechange: true;
18345
18404
  oncontextlost: true;
18346
18405
  oncontextmenu: true;
@@ -18534,6 +18593,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18534
18593
  RelativeOrientationSensor: false;
18535
18594
  RemotePlayback: false;
18536
18595
  removeEventListener: false;
18596
+ ReportBody: false;
18537
18597
  reportError: false;
18538
18598
  ReportingObserver: false;
18539
18599
  Request: false;
@@ -18545,6 +18605,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18545
18605
  ResizeObserverSize: false;
18546
18606
  resizeTo: false;
18547
18607
  Response: false;
18608
+ RestrictionTarget: false;
18548
18609
  RTCCertificate: false;
18549
18610
  RTCDataChannel: false;
18550
18611
  RTCDataChannelEvent: false;
@@ -18605,6 +18666,11 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18605
18666
  ShadowRoot: false;
18606
18667
  sharedStorage: false;
18607
18668
  SharedStorage: false;
18669
+ SharedStorageAppendMethod: false;
18670
+ SharedStorageClearMethod: false;
18671
+ SharedStorageDeleteMethod: false;
18672
+ SharedStorageModifierMethod: false;
18673
+ SharedStorageSetMethod: false;
18608
18674
  SharedStorageWorklet: false;
18609
18675
  SharedWorker: false;
18610
18676
  showDirectoryPicker: false;
@@ -18636,7 +18702,9 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18636
18702
  StyleSheet: false;
18637
18703
  StyleSheetList: false;
18638
18704
  SubmitEvent: false;
18705
+ Subscriber: false;
18639
18706
  SubtleCrypto: false;
18707
+ SuppressedError: false;
18640
18708
  SVGAElement: false;
18641
18709
  SVGAngle: false;
18642
18710
  SVGAnimatedAngle: false;
@@ -18840,6 +18908,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18840
18908
  WebTransportSendStream: false;
18841
18909
  WGSLLanguageFeatures: false;
18842
18910
  WheelEvent: false;
18911
+ when: false;
18843
18912
  window: false;
18844
18913
  Window: false;
18845
18914
  WindowControlsOverlay: false;
@@ -18971,6 +19040,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
18971
19040
  readonly "prefer-read-only-props": _typescript_eslint_utils_ts_eslint.RuleModule<"preferReadOnlyProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
18972
19041
  readonly "prefer-shorthand-boolean": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandBoolean", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
18973
19042
  readonly "prefer-shorthand-fragment": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandFragment", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19043
+ readonly "jsx-key-before-spread": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxKeyBeforeSpread", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
18974
19044
  readonly "jsx-no-duplicate-props": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoDuplicateProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
18975
19045
  readonly "jsx-no-undef": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoUndef", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
18976
19046
  readonly "jsx-uses-react": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxUsesReact", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -19052,6 +19122,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
19052
19122
  readonly "prefer-read-only-props": _typescript_eslint_utils_ts_eslint.RuleModule<"preferReadOnlyProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19053
19123
  readonly "prefer-shorthand-boolean": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandBoolean", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19054
19124
  readonly "prefer-shorthand-fragment": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandFragment", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19125
+ readonly "jsx-key-before-spread": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxKeyBeforeSpread", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19055
19126
  readonly "jsx-no-duplicate-props": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoDuplicateProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19056
19127
  readonly "jsx-no-undef": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoUndef", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19057
19128
  readonly "jsx-uses-react": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxUsesReact", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -19133,6 +19204,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
19133
19204
  readonly "prefer-read-only-props": _typescript_eslint_utils_ts_eslint.RuleModule<"preferReadOnlyProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19134
19205
  readonly "prefer-shorthand-boolean": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandBoolean", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19135
19206
  readonly "prefer-shorthand-fragment": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandFragment", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19207
+ readonly "jsx-key-before-spread": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxKeyBeforeSpread", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19136
19208
  readonly "jsx-no-duplicate-props": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoDuplicateProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19137
19209
  readonly "jsx-no-undef": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoUndef", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19138
19210
  readonly "jsx-uses-react": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxUsesReact", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -19212,6 +19284,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
19212
19284
  readonly "prefer-read-only-props": _typescript_eslint_utils_ts_eslint.RuleModule<"preferReadOnlyProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19213
19285
  readonly "prefer-shorthand-boolean": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandBoolean", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19214
19286
  readonly "prefer-shorthand-fragment": _typescript_eslint_utils_ts_eslint.RuleModule<"preferShorthandFragment", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19287
+ readonly "jsx-key-before-spread": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxKeyBeforeSpread", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19215
19288
  readonly "jsx-no-duplicate-props": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoDuplicateProps", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19216
19289
  readonly "jsx-no-undef": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxNoUndef", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
19217
19290
  readonly "jsx-uses-react": _typescript_eslint_utils_ts_eslint.RuleModule<"jsxUsesReact", [], unknown, _typescript_eslint_utils_ts_eslint.RuleListener>;
@@ -19620,6 +19693,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
19620
19693
  __filename: false;
19621
19694
  AbortController: false;
19622
19695
  AbortSignal: false;
19696
+ AsyncDisposableStack: false;
19623
19697
  atob: false;
19624
19698
  Blob: false;
19625
19699
  BroadcastChannel: false;
@@ -19638,6 +19712,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
19638
19712
  CryptoKey: false;
19639
19713
  CustomEvent: false;
19640
19714
  DecompressionStream: false;
19715
+ DisposableStack: false;
19641
19716
  DOMException: false;
19642
19717
  Event: false;
19643
19718
  EventTarget: false;
@@ -19677,6 +19752,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
19677
19752
  setTimeout: false;
19678
19753
  structuredClone: false;
19679
19754
  SubtleCrypto: false;
19755
+ SuppressedError: false;
19680
19756
  TextDecoder: false;
19681
19757
  TextDecoderStream: false;
19682
19758
  TextEncoder: false;
@@ -19684,6 +19760,7 @@ declare const defineConfig: ({ astro, autoDetect, ignores, jest, nextjs, overrid
19684
19760
  TransformStream: false;
19685
19761
  TransformStreamDefaultController: false;
19686
19762
  URL: false;
19763
+ URLPattern: false;
19687
19764
  URLSearchParams: false;
19688
19765
  WebAssembly: false;
19689
19766
  WebSocket: false;
package/dist/index.js CHANGED
@@ -578,7 +578,7 @@ var defineConfig = async ({
578
578
  stylisticConfig()
579
579
  ];
580
580
  const featureConfigs = await Promise.all([
581
- isTypescriptEnabled && unwrap(import("./typescript-IBCLQD7Q.js")),
581
+ isTypescriptEnabled && unwrap(import("./typescript-M6XXI2FU.js")),
582
582
  isReactEnabled && unwrap(import("./react-6ERTZG2I.js")),
583
583
  isTanstackQueryEnabled && unwrap(import("./tanstack-query-QBZ3MKQ7.js")),
584
584
  isAstroEnabled && unwrap(import("./astro-Z5RFF624.js")),
@@ -19,6 +19,7 @@ var typescriptRules = {
19
19
  "error",
20
20
  { checksVoidReturn: { attributes: false } }
21
21
  ],
22
+ "@typescript-eslint/no-unnecessary-type-conversion": "error",
22
23
  "@typescript-eslint/no-unused-vars": [
23
24
  "error",
24
25
  // https://typescript-eslint.io/rules/no-unused-vars/#benefits-over-typescript
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jimmy.codes/eslint-config",
3
- "version": "5.12.0",
3
+ "version": "5.13.0",
4
4
  "description": "A pragmatic and opinionated ESLint config for modern development.",
5
5
  "keywords": [
6
6
  "eslint",
@@ -24,25 +24,25 @@
24
24
  ],
25
25
  "dependencies": {
26
26
  "@eslint-community/eslint-plugin-eslint-comments": "^4.5.0",
27
- "@eslint-react/eslint-plugin": "^1.48.4",
28
- "@eslint-react/kit": "^1.48.4",
29
- "@eslint-react/shared": "^1.48.4",
30
- "@eslint/js": "^9.25.1",
31
- "@next/eslint-plugin-next": "^15.3.1",
27
+ "@eslint-react/eslint-plugin": "^1.49.0",
28
+ "@eslint-react/kit": "^1.49.0",
29
+ "@eslint-react/shared": "^1.49.0",
30
+ "@eslint/js": "^9.26.0",
31
+ "@next/eslint-plugin-next": "^15.3.2",
32
32
  "@stylistic/eslint-plugin": "^4.2.0",
33
- "@tanstack/eslint-plugin-query": "^5.73.3",
33
+ "@tanstack/eslint-plugin-query": "^5.74.7",
34
34
  "@types/eslint": "9.6.1",
35
- "@typescript-eslint/parser": "^8.31.0",
36
- "@typescript-eslint/utils": "^8.31.0",
37
- "@vitest/eslint-plugin": "^1.1.43",
35
+ "@typescript-eslint/parser": "^8.32.0",
36
+ "@typescript-eslint/utils": "^8.32.0",
37
+ "@vitest/eslint-plugin": "^1.1.44",
38
38
  "astro-eslint-parser": "^1.2.2",
39
- "eslint-config-prettier": "^10.1.2",
39
+ "eslint-config-prettier": "^10.1.3",
40
40
  "eslint-import-resolver-typescript": "^4.3.4",
41
41
  "eslint-plugin-astro": "^1.3.1",
42
- "eslint-plugin-import-x": "^4.10.6",
42
+ "eslint-plugin-import-x": "^4.11.0",
43
43
  "eslint-plugin-jest": "^28.11.0",
44
44
  "eslint-plugin-jest-dom": "^5.5.0",
45
- "eslint-plugin-jsdoc": "^50.6.10",
45
+ "eslint-plugin-jsdoc": "^50.6.11",
46
46
  "eslint-plugin-jsx-a11y": "^6.10.2",
47
47
  "eslint-plugin-n": "^17.17.0",
48
48
  "eslint-plugin-perfectionist": "^4.12.3",
@@ -54,9 +54,9 @@
54
54
  "eslint-plugin-storybook": "0.12.0",
55
55
  "eslint-plugin-testing-library": "^7.1.1",
56
56
  "eslint-plugin-unicorn": "^58.0.0",
57
- "globals": "^16.0.0",
57
+ "globals": "^16.1.0",
58
58
  "local-pkg": "^1.1.1",
59
- "typescript-eslint": "^8.31.0"
59
+ "typescript-eslint": "^8.32.0"
60
60
  },
61
61
  "peerDependencies": {
62
62
  "eslint": "^9.10.0"