@cany748/eslint-config 3.0.1 → 3.0.3

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.cts CHANGED
@@ -8,6 +8,51 @@ import { FlatConfigComposer } from 'eslint-flat-config-utils';
8
8
 
9
9
 
10
10
  interface RuleOptions {
11
+ /**
12
+ * require a `eslint-enable` comment for every `eslint-disable` comment
13
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/disable-enable-pair.html
14
+ */
15
+ '@eslint-community/eslint-comments/disable-enable-pair'?: Linter.RuleEntry<EslintCommunityEslintCommentsDisableEnablePair>
16
+ /**
17
+ * disallow a `eslint-enable` comment for multiple `eslint-disable` comments
18
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-aggregating-enable.html
19
+ */
20
+ '@eslint-community/eslint-comments/no-aggregating-enable'?: Linter.RuleEntry<[]>
21
+ /**
22
+ * disallow duplicate `eslint-disable` comments
23
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-duplicate-disable.html
24
+ */
25
+ '@eslint-community/eslint-comments/no-duplicate-disable'?: Linter.RuleEntry<[]>
26
+ /**
27
+ * disallow `eslint-disable` comments about specific rules
28
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-restricted-disable.html
29
+ */
30
+ '@eslint-community/eslint-comments/no-restricted-disable'?: Linter.RuleEntry<EslintCommunityEslintCommentsNoRestrictedDisable>
31
+ /**
32
+ * disallow `eslint-disable` comments without rule names
33
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-unlimited-disable.html
34
+ */
35
+ '@eslint-community/eslint-comments/no-unlimited-disable'?: Linter.RuleEntry<[]>
36
+ /**
37
+ * disallow unused `eslint-disable` comments
38
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-unused-disable.html
39
+ */
40
+ '@eslint-community/eslint-comments/no-unused-disable'?: Linter.RuleEntry<[]>
41
+ /**
42
+ * disallow unused `eslint-enable` comments
43
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-unused-enable.html
44
+ */
45
+ '@eslint-community/eslint-comments/no-unused-enable'?: Linter.RuleEntry<[]>
46
+ /**
47
+ * disallow ESLint directive-comments
48
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/no-use.html
49
+ */
50
+ '@eslint-community/eslint-comments/no-use'?: Linter.RuleEntry<EslintCommunityEslintCommentsNoUse>
51
+ /**
52
+ * require include descriptions in ESLint directive-comments
53
+ * @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/require-description.html
54
+ */
55
+ '@eslint-community/eslint-comments/require-description'?: Linter.RuleEntry<EslintCommunityEslintCommentsRequireDescription>
11
56
  /**
12
57
  * Require that function overload signatures be consecutive
13
58
  * @see https://typescript-eslint.io/rules/adjacent-overload-signatures
@@ -153,6 +198,11 @@ interface RuleOptions {
153
198
  * @see https://typescript-eslint.io/rules/no-confusing-void-expression
154
199
  */
155
200
  '@typescript-eslint/no-confusing-void-expression'?: Linter.RuleEntry<TypescriptEslintNoConfusingVoidExpression>
201
+ /**
202
+ * Disallow using code marked as `@deprecated`
203
+ * @see https://typescript-eslint.io/rules/no-deprecated
204
+ */
205
+ '@typescript-eslint/no-deprecated'?: Linter.RuleEntry<[]>
156
206
  /**
157
207
  * Disallow duplicate class members
158
208
  * @see https://typescript-eslint.io/rules/no-dupe-class-members
@@ -640,7 +690,7 @@ interface RuleOptions {
640
690
  */
641
691
  '@typescript-eslint/unified-signatures'?: Linter.RuleEntry<TypescriptEslintUnifiedSignatures>
642
692
  /**
643
- * Enforce typing arguments in `.catch()` callbacks as `unknown`
693
+ * Enforce typing arguments in Promise rejection callbacks as `unknown`
644
694
  * @see https://typescript-eslint.io/rules/use-unknown-in-catch-callback-variable
645
695
  */
646
696
  '@typescript-eslint/use-unknown-in-catch-callback-variable'?: Linter.RuleEntry<[]>
@@ -813,51 +863,6 @@ interface RuleOptions {
813
863
  * @see https://eslint.org/docs/latest/rules/eqeqeq
814
864
  */
815
865
  'eqeqeq'?: Linter.RuleEntry<Eqeqeq>
816
- /**
817
- * require a `eslint-enable` comment for every `eslint-disable` comment
818
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/disable-enable-pair.html
819
- */
820
- 'eslint-comments/disable-enable-pair'?: Linter.RuleEntry<EslintCommentsDisableEnablePair>
821
- /**
822
- * disallow a `eslint-enable` comment for multiple `eslint-disable` comments
823
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/no-aggregating-enable.html
824
- */
825
- 'eslint-comments/no-aggregating-enable'?: Linter.RuleEntry<[]>
826
- /**
827
- * disallow duplicate `eslint-disable` comments
828
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/no-duplicate-disable.html
829
- */
830
- 'eslint-comments/no-duplicate-disable'?: Linter.RuleEntry<[]>
831
- /**
832
- * disallow `eslint-disable` comments about specific rules
833
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/no-restricted-disable.html
834
- */
835
- 'eslint-comments/no-restricted-disable'?: Linter.RuleEntry<EslintCommentsNoRestrictedDisable>
836
- /**
837
- * disallow `eslint-disable` comments without rule names
838
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/no-unlimited-disable.html
839
- */
840
- 'eslint-comments/no-unlimited-disable'?: Linter.RuleEntry<[]>
841
- /**
842
- * disallow unused `eslint-disable` comments
843
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/no-unused-disable.html
844
- */
845
- 'eslint-comments/no-unused-disable'?: Linter.RuleEntry<[]>
846
- /**
847
- * disallow unused `eslint-enable` comments
848
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/no-unused-enable.html
849
- */
850
- 'eslint-comments/no-unused-enable'?: Linter.RuleEntry<[]>
851
- /**
852
- * disallow ESLint directive-comments
853
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/no-use.html
854
- */
855
- 'eslint-comments/no-use'?: Linter.RuleEntry<EslintCommentsNoUse>
856
- /**
857
- * require include descriptions in ESLint directive-comments
858
- * @see https://mysticatea.github.io/eslint-plugin-eslint-comments/rules/require-description.html
859
- */
860
- 'eslint-comments/require-description'?: Linter.RuleEntry<EslintCommentsRequireDescription>
861
866
  /**
862
867
  * Enforce "for" loop update clause moving the counter in the right direction
863
868
  * @see https://eslint.org/docs/latest/rules/for-direction
@@ -958,228 +963,233 @@ interface RuleOptions {
958
963
  'implicit-arrow-linebreak'?: Linter.RuleEntry<ImplicitArrowLinebreak>
959
964
  /**
960
965
  * Enforce or ban the use of inline type-only markers for named imports.
961
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/consistent-type-specifier-style.md
966
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/consistent-type-specifier-style.md
962
967
  */
963
968
  'import/consistent-type-specifier-style'?: Linter.RuleEntry<ImportConsistentTypeSpecifierStyle>
964
969
  /**
965
970
  * Ensure a default export is present, given a default import.
966
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/default.md
971
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/default.md
967
972
  */
968
973
  'import/default'?: Linter.RuleEntry<[]>
969
974
  /**
970
975
  * Enforce a leading comment with the webpackChunkName for dynamic imports.
971
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/dynamic-import-chunkname.md
976
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/dynamic-import-chunkname.md
972
977
  */
973
978
  'import/dynamic-import-chunkname'?: Linter.RuleEntry<ImportDynamicImportChunkname>
974
979
  /**
975
980
  * Forbid any invalid exports, i.e. re-export of the same name.
976
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/export.md
981
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/export.md
977
982
  */
978
983
  'import/export'?: Linter.RuleEntry<[]>
979
984
  /**
980
985
  * Ensure all exports appear after other statements.
981
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/exports-last.md
986
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/exports-last.md
982
987
  */
983
988
  'import/exports-last'?: Linter.RuleEntry<[]>
984
989
  /**
985
990
  * Ensure consistent use of file extension within the import path.
986
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/extensions.md
991
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/extensions.md
987
992
  */
988
993
  'import/extensions'?: Linter.RuleEntry<ImportExtensions>
989
994
  /**
990
995
  * Ensure all imports appear before other statements.
991
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/first.md
996
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/first.md
992
997
  */
993
998
  'import/first'?: Linter.RuleEntry<ImportFirst>
994
999
  /**
995
1000
  * Prefer named exports to be grouped together in a single export declaration.
996
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/group-exports.md
1001
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/group-exports.md
997
1002
  */
998
1003
  'import/group-exports'?: Linter.RuleEntry<[]>
999
1004
  /**
1000
1005
  * Replaced by `import-x/first`.
1001
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/7b25c1cb95ee18acc1531002fd343e1e6031f9ed/docs/rules/imports-first.md
1006
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/imports-first.md
1002
1007
  * @deprecated
1003
1008
  */
1004
1009
  'import/imports-first'?: Linter.RuleEntry<ImportImportsFirst>
1005
1010
  /**
1006
1011
  * Enforce the maximum number of dependencies a module can have.
1007
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/max-dependencies.md
1012
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/max-dependencies.md
1008
1013
  */
1009
1014
  'import/max-dependencies'?: Linter.RuleEntry<ImportMaxDependencies>
1010
1015
  /**
1011
1016
  * Ensure named imports correspond to a named export in the remote file.
1012
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/named.md
1017
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/named.md
1013
1018
  */
1014
1019
  'import/named'?: Linter.RuleEntry<ImportNamed>
1015
1020
  /**
1016
1021
  * Ensure imported namespaces contain dereferenced properties as they are dereferenced.
1017
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/namespace.md
1022
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/namespace.md
1018
1023
  */
1019
1024
  'import/namespace'?: Linter.RuleEntry<ImportNamespace>
1020
1025
  /**
1021
1026
  * Enforce a newline after import statements.
1022
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/newline-after-import.md
1027
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/newline-after-import.md
1023
1028
  */
1024
1029
  'import/newline-after-import'?: Linter.RuleEntry<ImportNewlineAfterImport>
1025
1030
  /**
1026
1031
  * Forbid import of modules using absolute paths.
1027
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-absolute-path.md
1032
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-absolute-path.md
1028
1033
  */
1029
1034
  'import/no-absolute-path'?: Linter.RuleEntry<ImportNoAbsolutePath>
1030
1035
  /**
1031
1036
  * Forbid AMD `require` and `define` calls.
1032
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-amd.md
1037
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-amd.md
1033
1038
  */
1034
1039
  'import/no-amd'?: Linter.RuleEntry<[]>
1035
1040
  /**
1036
1041
  * Forbid anonymous values as default exports.
1037
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-anonymous-default-export.md
1042
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-anonymous-default-export.md
1038
1043
  */
1039
1044
  'import/no-anonymous-default-export'?: Linter.RuleEntry<ImportNoAnonymousDefaultExport>
1040
1045
  /**
1041
1046
  * Forbid CommonJS `require` calls and `module.exports` or `exports.*`.
1042
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-commonjs.md
1047
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-commonjs.md
1043
1048
  */
1044
1049
  'import/no-commonjs'?: Linter.RuleEntry<ImportNoCommonjs>
1045
1050
  /**
1046
1051
  * Forbid a module from importing a module with a dependency path back to itself.
1047
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-cycle.md
1052
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-cycle.md
1048
1053
  */
1049
1054
  'import/no-cycle'?: Linter.RuleEntry<ImportNoCycle>
1050
1055
  /**
1051
1056
  * Forbid default exports.
1052
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-default-export.md
1057
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-default-export.md
1053
1058
  */
1054
1059
  'import/no-default-export'?: Linter.RuleEntry<[]>
1055
1060
  /**
1056
1061
  * Forbid imported names marked with `@deprecated` documentation tag.
1057
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-deprecated.md
1062
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-deprecated.md
1058
1063
  */
1059
1064
  'import/no-deprecated'?: Linter.RuleEntry<[]>
1060
1065
  /**
1061
1066
  * Forbid repeated import of the same module in multiple places.
1062
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-duplicates.md
1067
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-duplicates.md
1063
1068
  */
1064
1069
  'import/no-duplicates'?: Linter.RuleEntry<ImportNoDuplicates>
1065
1070
  /**
1066
1071
  * Forbid `require()` calls with expressions.
1067
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-dynamic-require.md
1072
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-dynamic-require.md
1068
1073
  */
1069
1074
  'import/no-dynamic-require'?: Linter.RuleEntry<ImportNoDynamicRequire>
1070
1075
  /**
1071
1076
  * Forbid empty named import blocks.
1072
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-empty-named-blocks.md
1077
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-empty-named-blocks.md
1073
1078
  */
1074
1079
  'import/no-empty-named-blocks'?: Linter.RuleEntry<[]>
1075
1080
  /**
1076
1081
  * Forbid the use of extraneous packages.
1077
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-extraneous-dependencies.md
1082
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-extraneous-dependencies.md
1078
1083
  */
1079
1084
  'import/no-extraneous-dependencies'?: Linter.RuleEntry<ImportNoExtraneousDependencies>
1080
1085
  /**
1081
1086
  * Forbid import statements with CommonJS module.exports.
1082
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-import-module-exports.md
1087
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-import-module-exports.md
1083
1088
  */
1084
1089
  'import/no-import-module-exports'?: Linter.RuleEntry<ImportNoImportModuleExports>
1085
1090
  /**
1086
1091
  * Forbid importing the submodules of other modules.
1087
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-internal-modules.md
1092
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-internal-modules.md
1088
1093
  */
1089
1094
  'import/no-internal-modules'?: Linter.RuleEntry<ImportNoInternalModules>
1090
1095
  /**
1091
1096
  * Forbid the use of mutable exports with `var` or `let`.
1092
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-mutable-exports.md
1097
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-mutable-exports.md
1093
1098
  */
1094
1099
  'import/no-mutable-exports'?: Linter.RuleEntry<[]>
1095
1100
  /**
1096
1101
  * Forbid use of exported name as identifier of default export.
1097
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-named-as-default.md
1102
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-named-as-default.md
1098
1103
  */
1099
1104
  'import/no-named-as-default'?: Linter.RuleEntry<[]>
1100
1105
  /**
1101
1106
  * Forbid use of exported name as property of default export.
1102
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-named-as-default-member.md
1107
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-named-as-default-member.md
1103
1108
  */
1104
1109
  'import/no-named-as-default-member'?: Linter.RuleEntry<[]>
1105
1110
  /**
1106
1111
  * Forbid named default exports.
1107
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-named-default.md
1112
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-named-default.md
1108
1113
  */
1109
1114
  'import/no-named-default'?: Linter.RuleEntry<[]>
1110
1115
  /**
1111
1116
  * Forbid named exports.
1112
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-named-export.md
1117
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-named-export.md
1113
1118
  */
1114
1119
  'import/no-named-export'?: Linter.RuleEntry<[]>
1115
1120
  /**
1116
1121
  * Forbid namespace (a.k.a. "wildcard" `*`) imports.
1117
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-namespace.md
1122
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-namespace.md
1118
1123
  */
1119
1124
  'import/no-namespace'?: Linter.RuleEntry<ImportNoNamespace>
1120
1125
  /**
1121
1126
  * Forbid Node.js builtin modules.
1122
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-nodejs-modules.md
1127
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-nodejs-modules.md
1123
1128
  */
1124
1129
  'import/no-nodejs-modules'?: Linter.RuleEntry<ImportNoNodejsModules>
1125
1130
  /**
1126
1131
  * Forbid importing packages through relative paths.
1127
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-relative-packages.md
1132
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-relative-packages.md
1128
1133
  */
1129
1134
  'import/no-relative-packages'?: Linter.RuleEntry<ImportNoRelativePackages>
1130
1135
  /**
1131
1136
  * Forbid importing modules from parent directories.
1132
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-relative-parent-imports.md
1137
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-relative-parent-imports.md
1133
1138
  */
1134
1139
  'import/no-relative-parent-imports'?: Linter.RuleEntry<ImportNoRelativeParentImports>
1140
+ /**
1141
+ * Forbid importing a default export by a different name.
1142
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-rename-default.md
1143
+ */
1144
+ 'import/no-rename-default'?: Linter.RuleEntry<ImportNoRenameDefault>
1135
1145
  /**
1136
1146
  * Enforce which files can be imported in a given folder.
1137
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-restricted-paths.md
1147
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-restricted-paths.md
1138
1148
  */
1139
1149
  'import/no-restricted-paths'?: Linter.RuleEntry<ImportNoRestrictedPaths>
1140
1150
  /**
1141
1151
  * Forbid a module from importing itself.
1142
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-self-import.md
1152
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-self-import.md
1143
1153
  */
1144
1154
  'import/no-self-import'?: Linter.RuleEntry<[]>
1145
1155
  /**
1146
1156
  * Forbid unassigned imports.
1147
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-unassigned-import.md
1157
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-unassigned-import.md
1148
1158
  */
1149
1159
  'import/no-unassigned-import'?: Linter.RuleEntry<ImportNoUnassignedImport>
1150
1160
  /**
1151
1161
  * Ensure imports point to a file/module that can be resolved.
1152
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-unresolved.md
1162
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-unresolved.md
1153
1163
  */
1154
1164
  'import/no-unresolved'?: Linter.RuleEntry<ImportNoUnresolved>
1155
1165
  /**
1156
1166
  * Forbid modules without exports, or exports without matching import in another module.
1157
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-unused-modules.md
1167
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-unused-modules.md
1158
1168
  */
1159
1169
  'import/no-unused-modules'?: Linter.RuleEntry<ImportNoUnusedModules>
1160
1170
  /**
1161
1171
  * Forbid unnecessary path segments in import and require statements.
1162
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-useless-path-segments.md
1172
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-useless-path-segments.md
1163
1173
  */
1164
1174
  'import/no-useless-path-segments'?: Linter.RuleEntry<ImportNoUselessPathSegments>
1165
1175
  /**
1166
1176
  * Forbid webpack loader syntax in imports.
1167
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/no-webpack-loader-syntax.md
1177
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/no-webpack-loader-syntax.md
1168
1178
  */
1169
1179
  'import/no-webpack-loader-syntax'?: Linter.RuleEntry<[]>
1170
1180
  /**
1171
1181
  * Enforce a convention in module import order.
1172
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/order.md
1182
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/order.md
1173
1183
  */
1174
1184
  'import/order'?: Linter.RuleEntry<ImportOrder>
1175
1185
  /**
1176
1186
  * Prefer a default export if module exports a single name or multiple names.
1177
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/prefer-default-export.md
1187
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/prefer-default-export.md
1178
1188
  */
1179
1189
  'import/prefer-default-export'?: Linter.RuleEntry<ImportPreferDefaultExport>
1180
1190
  /**
1181
1191
  * Forbid potentially ambiguous parse goal (`script` vs. `module`).
1182
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v3.1.0/docs/rules/unambiguous.md
1192
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.2.1/docs/rules/unambiguous.md
1183
1193
  */
1184
1194
  'import/unambiguous'?: Linter.RuleEntry<[]>
1185
1195
  /**
@@ -3142,7 +3152,7 @@ interface RuleOptions {
3142
3152
  * Enforce the use of `u` or `v` flag on RegExp
3143
3153
  * @see https://eslint.org/docs/latest/rules/require-unicode-regexp
3144
3154
  */
3145
- 'require-unicode-regexp'?: Linter.RuleEntry<[]>
3155
+ 'require-unicode-regexp'?: Linter.RuleEntry<RequireUnicodeRegexp>
3146
3156
  /**
3147
3157
  * Require generator functions to contain `yield`
3148
3158
  * @see https://eslint.org/docs/latest/rules/require-yield
@@ -3382,6 +3392,46 @@ interface RuleOptions {
3382
3392
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/no-test-return-statement.md
3383
3393
  */
3384
3394
  'test/no-test-return-statement'?: Linter.RuleEntry<[]>
3395
+ /**
3396
+ * Enforce padding around `afterAll` blocks
3397
+ * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-all-blocks.md
3398
+ */
3399
+ 'test/padding-around-after-all-blocks'?: Linter.RuleEntry<[]>
3400
+ /**
3401
+ * Enforce padding around `afterEach` blocks
3402
+ * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/padding-around-after-each-blocks.md
3403
+ */
3404
+ 'test/padding-around-after-each-blocks'?: Linter.RuleEntry<[]>
3405
+ /**
3406
+ * Enforce padding around vitest functions
3407
+ * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/padding-around-all.md
3408
+ */
3409
+ 'test/padding-around-all'?: Linter.RuleEntry<[]>
3410
+ /**
3411
+ * Enforce padding around `beforeAll` blocks
3412
+ * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/padding-around-before-all-blocks.md
3413
+ */
3414
+ 'test/padding-around-before-all-blocks'?: Linter.RuleEntry<[]>
3415
+ /**
3416
+ * Enforce padding around `beforeEach` blocks
3417
+ * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/padding-around-before-each-blocks.md
3418
+ */
3419
+ 'test/padding-around-before-each-blocks'?: Linter.RuleEntry<[]>
3420
+ /**
3421
+ * Enforce padding around `describe` blocks
3422
+ * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/padding-around-describe-blocks.md
3423
+ */
3424
+ 'test/padding-around-describe-blocks'?: Linter.RuleEntry<[]>
3425
+ /**
3426
+ * Enforce padding around `expect` groups
3427
+ * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/padding-around-expect-groups.md
3428
+ */
3429
+ 'test/padding-around-expect-groups'?: Linter.RuleEntry<[]>
3430
+ /**
3431
+ * Enforce padding around afterAll blocks
3432
+ * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/padding-around-test-blocks.md
3433
+ */
3434
+ 'test/padding-around-test-blocks'?: Linter.RuleEntry<[]>
3385
3435
  /**
3386
3436
  * enforce using `toBeCalledWith()` or `toHaveBeenCalledWith()`
3387
3437
  * @see https://github.com/veritem/eslint-plugin-vitest/blob/main/docs/rules/prefer-called-with.md
@@ -4369,7 +4419,7 @@ interface RuleOptions {
4369
4419
  */
4370
4420
  'vue/define-emits-declaration'?: Linter.RuleEntry<VueDefineEmitsDeclaration>
4371
4421
  /**
4372
- * enforce order of `defineEmits` and `defineProps` compiler macros
4422
+ * enforce order of compiler macros (`defineProps`, `defineEmits`, etc.)
4373
4423
  * @see https://eslint.vuejs.org/rules/define-macros-order.html
4374
4424
  */
4375
4425
  'vue/define-macros-order'?: Linter.RuleEntry<VueDefineMacrosOrder>
@@ -4498,6 +4548,16 @@ interface RuleOptions {
4498
4548
  * @see https://eslint.vuejs.org/rules/max-lines-per-block.html
4499
4549
  */
4500
4550
  'vue/max-lines-per-block'?: Linter.RuleEntry<VueMaxLinesPerBlock>
4551
+ /**
4552
+ * enforce maximum number of props in Vue component
4553
+ * @see https://eslint.vuejs.org/rules/max-props.html
4554
+ */
4555
+ 'vue/max-props'?: Linter.RuleEntry<VueMaxProps>
4556
+ /**
4557
+ * enforce maximum depth of template
4558
+ * @see https://eslint.vuejs.org/rules/max-template-depth.html
4559
+ */
4560
+ 'vue/max-template-depth'?: Linter.RuleEntry<VueMaxTemplateDepth>
4501
4561
  /**
4502
4562
  * require component names to be always multi-word
4503
4563
  * @see https://eslint.vuejs.org/rules/multi-word-component-names.html
@@ -4554,7 +4614,7 @@ interface RuleOptions {
4554
4614
  */
4555
4615
  'vue/no-child-content'?: Linter.RuleEntry<VueNoChildContent>
4556
4616
  /**
4557
- * disallow accessing computed properties in `data`.
4617
+ * disallow accessing computed properties in `data`
4558
4618
  * @see https://eslint.vuejs.org/rules/no-computed-properties-in-data.html
4559
4619
  */
4560
4620
  'vue/no-computed-properties-in-data'?: Linter.RuleEntry<[]>
@@ -5102,7 +5162,7 @@ interface RuleOptions {
5102
5162
  */
5103
5163
  'vue/padding-lines-in-component-definition'?: Linter.RuleEntry<VuePaddingLinesInComponentDefinition>
5104
5164
  /**
5105
- * enforce use of `defineOptions` instead of default export.
5165
+ * enforce use of `defineOptions` instead of default export
5106
5166
  * @see https://eslint.vuejs.org/rules/prefer-define-options.html
5107
5167
  */
5108
5168
  'vue/prefer-define-options'?: Linter.RuleEntry<[]>
@@ -5146,6 +5206,11 @@ interface RuleOptions {
5146
5206
  * @see https://eslint.vuejs.org/rules/require-component-is.html
5147
5207
  */
5148
5208
  'vue/require-component-is'?: Linter.RuleEntry<[]>
5209
+ /**
5210
+ * require components to be the default export
5211
+ * @see https://eslint.vuejs.org/rules/require-default-export.html
5212
+ */
5213
+ 'vue/require-default-export'?: Linter.RuleEntry<[]>
5149
5214
  /**
5150
5215
  * require default value for props
5151
5216
  * @see https://eslint.vuejs.org/rules/require-default-prop.html
@@ -5215,7 +5280,7 @@ interface RuleOptions {
5215
5280
  * require control the display of the content inside `<transition>`
5216
5281
  * @see https://eslint.vuejs.org/rules/require-toggle-inside-transition.html
5217
5282
  */
5218
- 'vue/require-toggle-inside-transition'?: Linter.RuleEntry<[]>
5283
+ 'vue/require-toggle-inside-transition'?: Linter.RuleEntry<VueRequireToggleInsideTransition>
5219
5284
  /**
5220
5285
  * enforce adding type declarations to object props
5221
5286
  * @see https://eslint.vuejs.org/rules/require-typed-object-prop.html
@@ -5489,6 +5554,20 @@ interface RuleOptions {
5489
5554
  }
5490
5555
 
5491
5556
  /* ======= Declarations ======= */
5557
+ // ----- @eslint-community/eslint-comments/disable-enable-pair -----
5558
+ type EslintCommunityEslintCommentsDisableEnablePair = []|[{
5559
+ allowWholeFile?: boolean
5560
+ }]
5561
+ // ----- @eslint-community/eslint-comments/no-restricted-disable -----
5562
+ type EslintCommunityEslintCommentsNoRestrictedDisable = string[]
5563
+ // ----- @eslint-community/eslint-comments/no-use -----
5564
+ type EslintCommunityEslintCommentsNoUse = []|[{
5565
+ allow?: ("eslint" | "eslint-disable" | "eslint-disable-line" | "eslint-disable-next-line" | "eslint-enable" | "eslint-env" | "exported" | "global" | "globals")[]
5566
+ }]
5567
+ // ----- @eslint-community/eslint-comments/require-description -----
5568
+ type EslintCommunityEslintCommentsRequireDescription = []|[{
5569
+ ignore?: ("eslint" | "eslint-disable" | "eslint-disable-line" | "eslint-disable-next-line" | "eslint-enable" | "eslint-env" | "exported" | "global" | "globals")[]
5570
+ }]
5492
5571
  // ----- @typescript-eslint/array-type -----
5493
5572
  type TypescriptEslintArrayType = []|[{
5494
5573
 
@@ -5510,6 +5589,7 @@ type TypescriptEslintBanTsComment = []|[{
5510
5589
  "ts-check"?: (boolean | "allow-with-description" | {
5511
5590
  descriptionFormat?: string
5512
5591
  })
5592
+
5513
5593
  minimumDescriptionLength?: number
5514
5594
  }]
5515
5595
  // ----- @typescript-eslint/class-literal-property-style -----
@@ -5535,29 +5615,41 @@ type TypescriptEslintConsistentReturn = []|[{
5535
5615
  }]
5536
5616
  // ----- @typescript-eslint/consistent-type-assertions -----
5537
5617
  type TypescriptEslintConsistentTypeAssertions = []|[({
5618
+
5538
5619
  assertionStyle: "never"
5539
5620
  } | {
5621
+
5540
5622
  assertionStyle: ("as" | "angle-bracket")
5623
+
5541
5624
  objectLiteralTypeAssertions?: ("allow" | "allow-as-parameter" | "never")
5542
5625
  })]
5543
5626
  // ----- @typescript-eslint/consistent-type-definitions -----
5544
5627
  type TypescriptEslintConsistentTypeDefinitions = []|[("interface" | "type")]
5545
5628
  // ----- @typescript-eslint/consistent-type-exports -----
5546
5629
  type TypescriptEslintConsistentTypeExports = []|[{
5630
+
5547
5631
  fixMixedExportsWithInlineTypeSpecifier?: boolean
5548
5632
  }]
5549
5633
  // ----- @typescript-eslint/consistent-type-imports -----
5550
5634
  type TypescriptEslintConsistentTypeImports = []|[{
5635
+
5551
5636
  disallowTypeAnnotations?: boolean
5637
+
5552
5638
  fixStyle?: ("separate-type-imports" | "inline-type-imports")
5639
+
5553
5640
  prefer?: ("type-imports" | "no-type-imports")
5554
5641
  }]
5555
5642
  // ----- @typescript-eslint/dot-notation -----
5556
5643
  type TypescriptEslintDotNotation = []|[{
5644
+
5557
5645
  allowKeywords?: boolean
5646
+
5558
5647
  allowPattern?: string
5648
+
5559
5649
  allowPrivateClassPropertyAccess?: boolean
5650
+
5560
5651
  allowProtectedClassPropertyAccess?: boolean
5652
+
5561
5653
  allowIndexSignaturePropertyAccess?: boolean
5562
5654
  }]
5563
5655
  // ----- @typescript-eslint/explicit-function-return-type -----
@@ -5589,6 +5681,7 @@ type TypescriptEslintExplicitMemberAccessibility = []|[{
5589
5681
  properties?: ("explicit" | "no-public" | "off")
5590
5682
  parameterProperties?: ("explicit" | "no-public" | "off")
5591
5683
  }
5684
+
5592
5685
  ignoredMethodNames?: string[]
5593
5686
  }]
5594
5687
  // ----- @typescript-eslint/explicit-module-boundary-types -----
@@ -5610,8 +5703,11 @@ type TypescriptEslintInitDeclarations = ([]|["always"] | []|["never"]|["never",
5610
5703
  }])
5611
5704
  // ----- @typescript-eslint/max-params -----
5612
5705
  type TypescriptEslintMaxParams = []|[{
5613
- maximum?: number
5706
+
5614
5707
  max?: number
5708
+
5709
+ maximum?: number
5710
+
5615
5711
  countVoidThis?: boolean
5616
5712
  }]
5617
5713
  // ----- @typescript-eslint/member-ordering -----
@@ -5965,30 +6061,40 @@ interface _TypescriptEslintNamingConvention_MatchRegexConfig {
5965
6061
  }
5966
6062
  // ----- @typescript-eslint/no-base-to-string -----
5967
6063
  type TypescriptEslintNoBaseToString = []|[{
6064
+
5968
6065
  ignoredTypeNames?: string[]
5969
6066
  }]
5970
6067
  // ----- @typescript-eslint/no-confusing-void-expression -----
5971
6068
  type TypescriptEslintNoConfusingVoidExpression = []|[{
6069
+
5972
6070
  ignoreArrowShorthand?: boolean
6071
+
5973
6072
  ignoreVoidOperator?: boolean
5974
6073
  }]
5975
6074
  // ----- @typescript-eslint/no-duplicate-type-constituents -----
5976
6075
  type TypescriptEslintNoDuplicateTypeConstituents = []|[{
6076
+
5977
6077
  ignoreIntersections?: boolean
6078
+
5978
6079
  ignoreUnions?: boolean
5979
6080
  }]
5980
6081
  // ----- @typescript-eslint/no-empty-function -----
5981
6082
  type TypescriptEslintNoEmptyFunction = []|[{
6083
+
5982
6084
  allow?: ("functions" | "arrowFunctions" | "generatorFunctions" | "methods" | "generatorMethods" | "getters" | "setters" | "constructors" | "private-constructors" | "protected-constructors" | "asyncFunctions" | "asyncMethods" | "decoratedFunctions" | "overrideMethods")[]
5983
6085
  }]
5984
6086
  // ----- @typescript-eslint/no-empty-interface -----
5985
6087
  type TypescriptEslintNoEmptyInterface = []|[{
6088
+
5986
6089
  allowSingleExtends?: boolean
5987
6090
  }]
5988
6091
  // ----- @typescript-eslint/no-empty-object-type -----
5989
6092
  type TypescriptEslintNoEmptyObjectType = []|[{
6093
+
5990
6094
  allowInterfaces?: ("always" | "never" | "with-single-extends")
6095
+
5991
6096
  allowObjectTypes?: ("always" | "never")
6097
+
5992
6098
  allowWithName?: string
5993
6099
  }]
5994
6100
  // ----- @typescript-eslint/no-explicit-any -----
@@ -6011,6 +6117,7 @@ type TypescriptEslintNoExtraneousClass = []|[{
6011
6117
  }]
6012
6118
  // ----- @typescript-eslint/no-floating-promises -----
6013
6119
  type TypescriptEslintNoFloatingPromises = []|[{
6120
+
6014
6121
  allowForKnownSafePromises?: (string | {
6015
6122
  from: "file"
6016
6123
  name: (string | [string, ...(string)[]])
@@ -6023,6 +6130,7 @@ type TypescriptEslintNoFloatingPromises = []|[{
6023
6130
  name: (string | [string, ...(string)[]])
6024
6131
  package: string
6025
6132
  })[]
6133
+
6026
6134
  allowForKnownSafeCalls?: (string | {
6027
6135
  from: "file"
6028
6136
  name: (string | [string, ...(string)[]])
@@ -6044,7 +6152,9 @@ type TypescriptEslintNoFloatingPromises = []|[{
6044
6152
  }]
6045
6153
  // ----- @typescript-eslint/no-inferrable-types -----
6046
6154
  type TypescriptEslintNoInferrableTypes = []|[{
6155
+
6047
6156
  ignoreParameters?: boolean
6157
+
6048
6158
  ignoreProperties?: boolean
6049
6159
  }]
6050
6160
  // ----- @typescript-eslint/no-invalid-this -----
@@ -6053,7 +6163,9 @@ type TypescriptEslintNoInvalidThis = []|[{
6053
6163
  }]
6054
6164
  // ----- @typescript-eslint/no-invalid-void-type -----
6055
6165
  type TypescriptEslintNoInvalidVoidType = []|[{
6166
+
6056
6167
  allowInGenericTypeArguments?: (boolean | [string, ...(string)[]])
6168
+
6057
6169
  allowAsThisParameter?: boolean
6058
6170
  }]
6059
6171
  // ----- @typescript-eslint/no-magic-numbers -----
@@ -6064,26 +6176,38 @@ type TypescriptEslintNoMagicNumbers = []|[{
6064
6176
  ignoreArrayIndexes?: boolean
6065
6177
  ignoreDefaultValues?: boolean
6066
6178
  ignoreClassFieldInitialValues?: boolean
6179
+
6067
6180
  ignoreNumericLiteralTypes?: boolean
6181
+
6068
6182
  ignoreEnums?: boolean
6183
+
6069
6184
  ignoreReadonlyClassProperties?: boolean
6185
+
6070
6186
  ignoreTypeIndexes?: boolean
6071
6187
  }]
6072
6188
  // ----- @typescript-eslint/no-meaningless-void-operator -----
6073
6189
  type TypescriptEslintNoMeaninglessVoidOperator = []|[{
6190
+
6074
6191
  checkNever?: boolean
6075
6192
  }]
6076
6193
  // ----- @typescript-eslint/no-misused-promises -----
6077
6194
  type TypescriptEslintNoMisusedPromises = []|[{
6078
6195
  checksConditionals?: boolean
6079
6196
  checksVoidReturn?: (boolean | {
6197
+
6080
6198
  arguments?: boolean
6199
+
6081
6200
  attributes?: boolean
6201
+
6082
6202
  inheritedMethods?: boolean
6203
+
6083
6204
  properties?: boolean
6205
+
6084
6206
  returns?: boolean
6207
+
6085
6208
  variables?: boolean
6086
6209
  })
6210
+
6087
6211
  checksSpreads?: boolean
6088
6212
  }]
6089
6213
  // ----- @typescript-eslint/no-namespace -----
@@ -6095,7 +6219,9 @@ type TypescriptEslintNoNamespace = []|[{
6095
6219
  }]
6096
6220
  // ----- @typescript-eslint/no-redeclare -----
6097
6221
  type TypescriptEslintNoRedeclare = []|[{
6222
+
6098
6223
  builtinGlobals?: boolean
6224
+
6099
6225
  ignoreDeclarationMerge?: boolean
6100
6226
  }]
6101
6227
  // ----- @typescript-eslint/no-require-imports -----
@@ -6153,11 +6279,17 @@ type TypescriptEslintNoRestrictedTypes = []|[{
6153
6279
  }]
6154
6280
  // ----- @typescript-eslint/no-shadow -----
6155
6281
  type TypescriptEslintNoShadow = []|[{
6282
+
6156
6283
  builtinGlobals?: boolean
6284
+
6157
6285
  hoist?: ("all" | "functions" | "never")
6286
+
6158
6287
  allow?: string[]
6288
+
6159
6289
  ignoreOnInitialization?: boolean
6290
+
6160
6291
  ignoreTypeValueShadow?: boolean
6292
+
6161
6293
  ignoreFunctionTypeParameterNameValueShadow?: boolean
6162
6294
  }]
6163
6295
  // ----- @typescript-eslint/no-this-alias -----
@@ -6214,24 +6346,40 @@ type TypescriptEslintNoUnusedExpressions = []|[{
6214
6346
  }]
6215
6347
  // ----- @typescript-eslint/no-unused-vars -----
6216
6348
  type TypescriptEslintNoUnusedVars = []|[(("all" | "local") | {
6349
+
6217
6350
  vars?: ("all" | "local")
6351
+
6218
6352
  varsIgnorePattern?: string
6353
+
6219
6354
  args?: ("all" | "after-used" | "none")
6220
- ignoreRestSiblings?: boolean
6355
+
6221
6356
  argsIgnorePattern?: string
6357
+
6222
6358
  caughtErrors?: ("all" | "none")
6359
+
6223
6360
  caughtErrorsIgnorePattern?: string
6361
+
6224
6362
  destructuredArrayIgnorePattern?: string
6363
+
6225
6364
  ignoreClassWithStaticInitBlock?: boolean
6365
+
6366
+ ignoreRestSiblings?: boolean
6367
+
6226
6368
  reportUsedIgnorePattern?: boolean
6227
6369
  })]
6228
6370
  // ----- @typescript-eslint/no-use-before-define -----
6229
6371
  type TypescriptEslintNoUseBeforeDefine = []|[("nofunc" | {
6372
+
6230
6373
  functions?: boolean
6374
+
6231
6375
  classes?: boolean
6376
+
6232
6377
  enums?: boolean
6378
+
6233
6379
  variables?: boolean
6380
+
6234
6381
  typedefs?: boolean
6382
+
6235
6383
  ignoreTypeReferences?: boolean
6236
6384
  allowNamedExports?: boolean
6237
6385
  })]
@@ -6242,12 +6390,16 @@ type TypescriptEslintNoVarRequires = []|[{
6242
6390
  }]
6243
6391
  // ----- @typescript-eslint/only-throw-error -----
6244
6392
  type TypescriptEslintOnlyThrowError = []|[{
6393
+
6245
6394
  allowThrowingAny?: boolean
6395
+
6246
6396
  allowThrowingUnknown?: boolean
6247
6397
  }]
6248
6398
  // ----- @typescript-eslint/parameter-properties -----
6249
6399
  type TypescriptEslintParameterProperties = []|[{
6400
+
6250
6401
  allow?: ("readonly" | "private" | "protected" | "public" | "private readonly" | "protected readonly" | "public readonly")[]
6402
+
6251
6403
  prefer?: ("class-property" | "parameter-property")
6252
6404
  }]
6253
6405
  // ----- @typescript-eslint/prefer-destructuring -----
@@ -6282,13 +6434,18 @@ type TypescriptEslintPreferDestructuring = []|[({
6282
6434
  }]
6283
6435
  // ----- @typescript-eslint/prefer-literal-enum-member -----
6284
6436
  type TypescriptEslintPreferLiteralEnumMember = []|[{
6437
+
6285
6438
  allowBitwiseExpressions?: boolean
6286
6439
  }]
6287
6440
  // ----- @typescript-eslint/prefer-nullish-coalescing -----
6288
6441
  type TypescriptEslintPreferNullishCoalescing = []|[{
6442
+
6289
6443
  allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean
6444
+
6290
6445
  ignoreConditionalTests?: boolean
6446
+
6291
6447
  ignoreMixedLogicalExpressions?: boolean
6448
+
6292
6449
  ignorePrimitives?: ({
6293
6450
  bigint?: boolean
6294
6451
  boolean?: boolean
@@ -6296,6 +6453,7 @@ type TypescriptEslintPreferNullishCoalescing = []|[{
6296
6453
  string?: boolean
6297
6454
  [k: string]: unknown | undefined
6298
6455
  } | true)
6456
+
6299
6457
  ignoreTernaryTests?: boolean
6300
6458
  }]
6301
6459
  // ----- @typescript-eslint/prefer-optional-chain -----
@@ -6319,14 +6477,17 @@ type TypescriptEslintPreferOptionalChain = []|[{
6319
6477
  }]
6320
6478
  // ----- @typescript-eslint/prefer-promise-reject-errors -----
6321
6479
  type TypescriptEslintPreferPromiseRejectErrors = []|[{
6480
+
6322
6481
  allowEmptyReject?: boolean
6323
6482
  }]
6324
6483
  // ----- @typescript-eslint/prefer-readonly -----
6325
6484
  type TypescriptEslintPreferReadonly = []|[{
6485
+
6326
6486
  onlyInlineLambdas?: boolean
6327
6487
  }]
6328
6488
  // ----- @typescript-eslint/prefer-readonly-parameter-types -----
6329
6489
  type TypescriptEslintPreferReadonlyParameterTypes = []|[{
6490
+
6330
6491
  allow?: (string | {
6331
6492
  from: "file"
6332
6493
  name: (string | [string, ...(string)[]])
@@ -6339,8 +6500,11 @@ type TypescriptEslintPreferReadonlyParameterTypes = []|[{
6339
6500
  name: (string | [string, ...(string)[]])
6340
6501
  package: string
6341
6502
  })[]
6503
+
6342
6504
  checkParameterProperties?: boolean
6505
+
6343
6506
  ignoreInferredTypes?: boolean
6507
+
6344
6508
  treatMethodsAsReadonly?: boolean
6345
6509
  }]
6346
6510
  // ----- @typescript-eslint/prefer-string-starts-ends-with -----
@@ -6354,9 +6518,13 @@ type TypescriptEslintPromiseFunctionAsync = []|[{
6354
6518
  allowAny?: boolean
6355
6519
 
6356
6520
  allowedPromiseNames?: string[]
6521
+
6357
6522
  checkArrowFunctions?: boolean
6523
+
6358
6524
  checkFunctionDeclarations?: boolean
6525
+
6359
6526
  checkFunctionExpressions?: boolean
6527
+
6360
6528
  checkMethodDeclarations?: boolean
6361
6529
  }]
6362
6530
  // ----- @typescript-eslint/require-array-sort-compare -----
@@ -6397,7 +6565,7 @@ type TypescriptEslintRestrictTemplateExpressions = []|[{
6397
6565
  allowNever?: boolean
6398
6566
  }]
6399
6567
  // ----- @typescript-eslint/return-await -----
6400
- type TypescriptEslintReturnAwait = []|[("in-try-catch" | "always" | "never" | "error-handling-correctness-only")]
6568
+ type TypescriptEslintReturnAwait = []|[(("always" | "error-handling-correctness-only" | "in-try-catch" | "never") & string)]
6401
6569
  // ----- @typescript-eslint/sort-type-constituents -----
6402
6570
  type TypescriptEslintSortTypeConstituents = []|[{
6403
6571
 
@@ -6411,13 +6579,21 @@ type TypescriptEslintSortTypeConstituents = []|[{
6411
6579
  }]
6412
6580
  // ----- @typescript-eslint/strict-boolean-expressions -----
6413
6581
  type TypescriptEslintStrictBooleanExpressions = []|[{
6582
+
6414
6583
  allowString?: boolean
6584
+
6415
6585
  allowNumber?: boolean
6586
+
6416
6587
  allowNullableObject?: boolean
6588
+
6417
6589
  allowNullableBoolean?: boolean
6590
+
6418
6591
  allowNullableString?: boolean
6592
+
6419
6593
  allowNullableNumber?: boolean
6594
+
6420
6595
  allowNullableEnum?: boolean
6596
+
6421
6597
  allowAny?: boolean
6422
6598
  allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing?: boolean
6423
6599
  }]
@@ -6430,19 +6606,30 @@ type TypescriptEslintSwitchExhaustivenessCheck = []|[{
6430
6606
  }]
6431
6607
  // ----- @typescript-eslint/triple-slash-reference -----
6432
6608
  type TypescriptEslintTripleSlashReference = []|[{
6609
+
6433
6610
  lib?: ("always" | "never")
6611
+
6434
6612
  path?: ("always" | "never")
6613
+
6435
6614
  types?: ("always" | "never" | "prefer-import")
6436
6615
  }]
6437
6616
  // ----- @typescript-eslint/typedef -----
6438
6617
  type TypescriptEslintTypedef = []|[{
6618
+
6439
6619
  arrayDestructuring?: boolean
6620
+
6440
6621
  arrowParameter?: boolean
6622
+
6441
6623
  memberVariableDeclaration?: boolean
6624
+
6442
6625
  objectDestructuring?: boolean
6626
+
6443
6627
  parameter?: boolean
6628
+
6444
6629
  propertyDeclaration?: boolean
6630
+
6445
6631
  variableDeclaration?: boolean
6632
+
6446
6633
  variableDeclarationIgnoreFunction?: boolean
6447
6634
  }]
6448
6635
  // ----- @typescript-eslint/unbound-method -----
@@ -6594,20 +6781,6 @@ type EolLast = []|[("always" | "never" | "unix" | "windows")]
6594
6781
  type Eqeqeq = ([]|["always"]|["always", {
6595
6782
  null?: ("always" | "never" | "ignore")
6596
6783
  }] | []|[("smart" | "allow-null")])
6597
- // ----- eslint-comments/disable-enable-pair -----
6598
- type EslintCommentsDisableEnablePair = []|[{
6599
- allowWholeFile?: boolean
6600
- }]
6601
- // ----- eslint-comments/no-restricted-disable -----
6602
- type EslintCommentsNoRestrictedDisable = string[]
6603
- // ----- eslint-comments/no-use -----
6604
- type EslintCommentsNoUse = []|[{
6605
- allow?: ("eslint" | "eslint-disable" | "eslint-disable-line" | "eslint-disable-next-line" | "eslint-enable" | "eslint-env" | "exported" | "global" | "globals")[]
6606
- }]
6607
- // ----- eslint-comments/require-description -----
6608
- type EslintCommentsRequireDescription = []|[{
6609
- ignore?: ("eslint" | "eslint-disable" | "eslint-disable-line" | "eslint-disable-next-line" | "eslint-enable" | "eslint-env" | "exported" | "global" | "globals")[]
6610
- }]
6611
6784
  // ----- func-call-spacing -----
6612
6785
  type FuncCallSpacing = ([]|["never"] | []|["always"]|["always", {
6613
6786
  allowNewlines?: boolean
@@ -6799,6 +6972,7 @@ type ImportNoExtraneousDependencies = []|[{
6799
6972
  packageDir?: (string | unknown[])
6800
6973
  includeInternal?: boolean
6801
6974
  includeTypes?: boolean
6975
+ whitelist?: unknown[]
6802
6976
  }]
6803
6977
  // ----- import/no-import-module-exports -----
6804
6978
  type ImportNoImportModuleExports = []|[{
@@ -6835,6 +7009,11 @@ type ImportNoRelativeParentImports = []|[{
6835
7009
 
6836
7010
  ignore?: [string, ...(string)[]]
6837
7011
  }]
7012
+ // ----- import/no-rename-default -----
7013
+ type ImportNoRenameDefault = []|[{
7014
+ commonjs?: boolean
7015
+ preventRenamingBindings?: boolean
7016
+ }]
6838
7017
  // ----- import/no-restricted-paths -----
6839
7018
  type ImportNoRestrictedPaths = []|[{
6840
7019
 
@@ -8665,6 +8844,10 @@ type RegexpUnicodeProperty = []|[{
8665
8844
  type RequireAtomicUpdates = []|[{
8666
8845
  allowProperties?: boolean
8667
8846
  }]
8847
+ // ----- require-unicode-regexp -----
8848
+ type RequireUnicodeRegexp = []|[{
8849
+ requireFlag?: ("u" | "v")
8850
+ }]
8668
8851
  // ----- rest-spread-spacing -----
8669
8852
  type RestSpreadSpacing = []|[("always" | "never")]
8670
8853
  // ----- semi -----
@@ -8797,6 +8980,7 @@ type TestNoLargeSnapshots = []|[{
8797
8980
  type TestNoOnlyTests = []|[{
8798
8981
  block?: string[]
8799
8982
  focus?: string[]
8983
+ functions?: string[]
8800
8984
  fix?: boolean
8801
8985
  }]
8802
8986
  // ----- test/no-restricted-matchers -----
@@ -8809,7 +8993,8 @@ type TestNoRestrictedViMethods = []|[{
8809
8993
  }]
8810
8994
  // ----- test/no-standalone-expect -----
8811
8995
  type TestNoStandaloneExpect = []|[{
8812
- additionalTestBlockFunctions?: string[]
8996
+ additionaltestblockfunctions?: string[]
8997
+ [k: string]: unknown | undefined
8813
8998
  }]
8814
8999
  // ----- test/prefer-expect-assertions -----
8815
9000
  type TestPreferExpectAssertions = []|[{
@@ -9057,28 +9242,48 @@ type UnocssEnforceClassCompile = []|[{
9057
9242
  }]
9058
9243
  // ----- unused-imports/no-unused-imports -----
9059
9244
  type UnusedImportsNoUnusedImports = []|[(("all" | "local") | {
9245
+
9060
9246
  vars?: ("all" | "local")
9247
+
9061
9248
  varsIgnorePattern?: string
9249
+
9062
9250
  args?: ("all" | "after-used" | "none")
9063
- ignoreRestSiblings?: boolean
9251
+
9064
9252
  argsIgnorePattern?: string
9253
+
9065
9254
  caughtErrors?: ("all" | "none")
9255
+
9066
9256
  caughtErrorsIgnorePattern?: string
9257
+
9067
9258
  destructuredArrayIgnorePattern?: string
9259
+
9068
9260
  ignoreClassWithStaticInitBlock?: boolean
9261
+
9262
+ ignoreRestSiblings?: boolean
9263
+
9069
9264
  reportUsedIgnorePattern?: boolean
9070
9265
  })]
9071
9266
  // ----- unused-imports/no-unused-vars -----
9072
9267
  type UnusedImportsNoUnusedVars = []|[(("all" | "local") | {
9268
+
9073
9269
  vars?: ("all" | "local")
9270
+
9074
9271
  varsIgnorePattern?: string
9272
+
9075
9273
  args?: ("all" | "after-used" | "none")
9076
- ignoreRestSiblings?: boolean
9274
+
9077
9275
  argsIgnorePattern?: string
9276
+
9078
9277
  caughtErrors?: ("all" | "none")
9278
+
9079
9279
  caughtErrorsIgnorePattern?: string
9280
+
9080
9281
  destructuredArrayIgnorePattern?: string
9282
+
9081
9283
  ignoreClassWithStaticInitBlock?: boolean
9284
+
9285
+ ignoreRestSiblings?: boolean
9286
+
9082
9287
  reportUsedIgnorePattern?: boolean
9083
9288
  })]
9084
9289
  // ----- use-isnan -----
@@ -9218,7 +9423,7 @@ type VueCustomEventNameCasing = ([]|[("kebab-case" | "camelCase")]|[("kebab-case
9218
9423
  type VueDefineEmitsDeclaration = []|[("type-based" | "type-literal" | "runtime")]
9219
9424
  // ----- vue/define-macros-order -----
9220
9425
  type VueDefineMacrosOrder = []|[{
9221
- order?: ("defineEmits" | "defineProps" | "defineOptions" | "defineSlots" | "defineModel")[]
9426
+ order?: string[]
9222
9427
  defineExposeLast?: boolean
9223
9428
  }]
9224
9429
  // ----- vue/define-props-declaration -----
@@ -9749,6 +9954,14 @@ type VueMaxLinesPerBlock = []|[{
9749
9954
  script?: number
9750
9955
  skipBlankLines?: boolean
9751
9956
  }]
9957
+ // ----- vue/max-props -----
9958
+ type VueMaxProps = []|[{
9959
+ maxProps?: number
9960
+ }]
9961
+ // ----- vue/max-template-depth -----
9962
+ type VueMaxTemplateDepth = []|[{
9963
+ maxDepth?: number
9964
+ }]
9752
9965
  // ----- vue/multi-word-component-names -----
9753
9966
  type VueMultiWordComponentNames = []|[{
9754
9967
  ignores?: string[]
@@ -10150,6 +10363,10 @@ type VueRequireMacroVariableName = []|[{
10150
10363
  type VueRequirePropComment = []|[{
10151
10364
  type?: ("JSDoc" | "line" | "block" | "any")
10152
10365
  }]
10366
+ // ----- vue/require-toggle-inside-transition -----
10367
+ type VueRequireToggleInsideTransition = []|[{
10368
+ additionalDirectives?: string[]
10369
+ }]
10153
10370
  // ----- vue/return-in-computed-property -----
10154
10371
  type VueReturnInComputedProperty = []|[{
10155
10372
  treatUndefinedAsUnspecified?: boolean
@@ -10254,7 +10471,7 @@ type Yoda = []|[("always" | "never")]|[("always" | "never"), {
10254
10471
  onlyEquality?: boolean
10255
10472
  }]
10256
10473
  // Names of all the configs
10257
- type ConfigNames = 'eslint-comments' | 'formatter/setup' | 'formatter/css' | 'formatter/scss' | 'formatter/less' | 'formatter/graphql' | 'formatter/html' | 'formatter/markdown' | 'imports' | 'javascript/rules' | 'javascript/disables/cli' | 'javascript/disables/test' | 'jsonc' | 'node' | 'regexp' | 'sort/package-json' | 'test' | 'typescript/setup' | 'typescript/parser' | 'typescript/rules' | 'typescript/disables/dts' | 'typescript/disables/test' | 'typescript/disables/cjs' | 'unicorn' | 'unocss' | 'vue'
10474
+ type ConfigNames = '@eslint-community/eslint-comments' | 'formatter/setup' | 'formatter/css' | 'formatter/scss' | 'formatter/less' | 'formatter/graphql' | 'formatter/html' | 'formatter/markdown' | 'imports' | 'javascript/rules' | 'javascript/disables/cli' | 'javascript/disables/test' | 'jsonc' | 'node' | 'regexp' | 'sort/package-json' | 'test' | 'typescript/setup' | 'typescript/parser' | 'typescript/rules' | 'typescript/disables/dts' | 'typescript/disables/test' | 'typescript/disables/cjs' | 'unicorn' | 'unocss' | 'vue'
10258
10475
 
10259
10476
  type Awaitable<T> = T | Promise<T>;
10260
10477
  type Rules = RuleOptions;
@@ -10330,6 +10547,10 @@ interface OptionsTypeScriptWithTypes {
10330
10547
  * @see https://typescript-eslint.io/linting/typed-linting/
10331
10548
  */
10332
10549
  tsconfigPath?: string;
10550
+ /**
10551
+ * Override type aware rules.
10552
+ */
10553
+ overridesTypeAware?: TypedFlatConfigItem["rules"];
10333
10554
  }
10334
10555
  interface OptionsHasTypeScript {
10335
10556
  typescript?: boolean;