@bfra.me/eslint-config 0.20.10 → 0.21.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/lib/index.d.ts CHANGED
@@ -997,233 +997,233 @@ interface Rules {
997
997
  'implicit-arrow-linebreak'?: Linter.RuleEntry<ImplicitArrowLinebreak>
998
998
  /**
999
999
  * Enforce or ban the use of inline type-only markers for named imports.
1000
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/consistent-type-specifier-style.md
1000
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/consistent-type-specifier-style.md
1001
1001
  */
1002
1002
  'import-x/consistent-type-specifier-style'?: Linter.RuleEntry<ImportXConsistentTypeSpecifierStyle>
1003
1003
  /**
1004
1004
  * Ensure a default export is present, given a default import.
1005
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/default.md
1005
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/default.md
1006
1006
  */
1007
1007
  'import-x/default'?: Linter.RuleEntry<[]>
1008
1008
  /**
1009
1009
  * Enforce a leading comment with the webpackChunkName for dynamic imports.
1010
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/dynamic-import-chunkname.md
1010
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/dynamic-import-chunkname.md
1011
1011
  */
1012
1012
  'import-x/dynamic-import-chunkname'?: Linter.RuleEntry<ImportXDynamicImportChunkname>
1013
1013
  /**
1014
1014
  * Forbid any invalid exports, i.e. re-export of the same name.
1015
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/export.md
1015
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/export.md
1016
1016
  */
1017
1017
  'import-x/export'?: Linter.RuleEntry<[]>
1018
1018
  /**
1019
1019
  * Ensure all exports appear after other statements.
1020
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/exports-last.md
1020
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/exports-last.md
1021
1021
  */
1022
1022
  'import-x/exports-last'?: Linter.RuleEntry<[]>
1023
1023
  /**
1024
1024
  * Ensure consistent use of file extension within the import path.
1025
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/extensions.md
1025
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/extensions.md
1026
1026
  */
1027
1027
  'import-x/extensions'?: Linter.RuleEntry<ImportXExtensions>
1028
1028
  /**
1029
1029
  * Ensure all imports appear before other statements.
1030
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/first.md
1030
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/first.md
1031
1031
  */
1032
1032
  'import-x/first'?: Linter.RuleEntry<ImportXFirst>
1033
1033
  /**
1034
1034
  * Prefer named exports to be grouped together in a single export declaration.
1035
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/group-exports.md
1035
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/group-exports.md
1036
1036
  */
1037
1037
  'import-x/group-exports'?: Linter.RuleEntry<[]>
1038
1038
  /**
1039
1039
  * Replaced by `import-x/first`.
1040
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/imports-first.md
1040
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/imports-first.md
1041
1041
  * @deprecated
1042
1042
  */
1043
1043
  'import-x/imports-first'?: Linter.RuleEntry<ImportXImportsFirst>
1044
1044
  /**
1045
1045
  * Enforce the maximum number of dependencies a module can have.
1046
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/max-dependencies.md
1046
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/max-dependencies.md
1047
1047
  */
1048
1048
  'import-x/max-dependencies'?: Linter.RuleEntry<ImportXMaxDependencies>
1049
1049
  /**
1050
1050
  * Ensure named imports correspond to a named export in the remote file.
1051
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/named.md
1051
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/named.md
1052
1052
  */
1053
1053
  'import-x/named'?: Linter.RuleEntry<ImportXNamed>
1054
1054
  /**
1055
1055
  * Ensure imported namespaces contain dereferenced properties as they are dereferenced.
1056
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/namespace.md
1056
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/namespace.md
1057
1057
  */
1058
1058
  'import-x/namespace'?: Linter.RuleEntry<ImportXNamespace>
1059
1059
  /**
1060
1060
  * Enforce a newline after import statements.
1061
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/newline-after-import.md
1061
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/newline-after-import.md
1062
1062
  */
1063
1063
  'import-x/newline-after-import'?: Linter.RuleEntry<ImportXNewlineAfterImport>
1064
1064
  /**
1065
1065
  * Forbid import of modules using absolute paths.
1066
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-absolute-path.md
1066
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-absolute-path.md
1067
1067
  */
1068
1068
  'import-x/no-absolute-path'?: Linter.RuleEntry<ImportXNoAbsolutePath>
1069
1069
  /**
1070
1070
  * Forbid AMD `require` and `define` calls.
1071
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-amd.md
1071
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-amd.md
1072
1072
  */
1073
1073
  'import-x/no-amd'?: Linter.RuleEntry<[]>
1074
1074
  /**
1075
1075
  * Forbid anonymous values as default exports.
1076
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-anonymous-default-export.md
1076
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-anonymous-default-export.md
1077
1077
  */
1078
1078
  'import-x/no-anonymous-default-export'?: Linter.RuleEntry<ImportXNoAnonymousDefaultExport>
1079
1079
  /**
1080
1080
  * Forbid CommonJS `require` calls and `module.exports` or `exports.*`.
1081
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-commonjs.md
1081
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-commonjs.md
1082
1082
  */
1083
1083
  'import-x/no-commonjs'?: Linter.RuleEntry<ImportXNoCommonjs>
1084
1084
  /**
1085
1085
  * Forbid a module from importing a module with a dependency path back to itself.
1086
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-cycle.md
1086
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-cycle.md
1087
1087
  */
1088
1088
  'import-x/no-cycle'?: Linter.RuleEntry<ImportXNoCycle>
1089
1089
  /**
1090
1090
  * Forbid default exports.
1091
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-default-export.md
1091
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-default-export.md
1092
1092
  */
1093
1093
  'import-x/no-default-export'?: Linter.RuleEntry<[]>
1094
1094
  /**
1095
1095
  * Forbid imported names marked with `@deprecated` documentation tag.
1096
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-deprecated.md
1096
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-deprecated.md
1097
1097
  */
1098
1098
  'import-x/no-deprecated'?: Linter.RuleEntry<[]>
1099
1099
  /**
1100
1100
  * Forbid repeated import of the same module in multiple places.
1101
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-duplicates.md
1101
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-duplicates.md
1102
1102
  */
1103
1103
  'import-x/no-duplicates'?: Linter.RuleEntry<ImportXNoDuplicates>
1104
1104
  /**
1105
1105
  * Forbid `require()` calls with expressions.
1106
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-dynamic-require.md
1106
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-dynamic-require.md
1107
1107
  */
1108
1108
  'import-x/no-dynamic-require'?: Linter.RuleEntry<ImportXNoDynamicRequire>
1109
1109
  /**
1110
1110
  * Forbid empty named import blocks.
1111
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-empty-named-blocks.md
1111
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-empty-named-blocks.md
1112
1112
  */
1113
1113
  'import-x/no-empty-named-blocks'?: Linter.RuleEntry<[]>
1114
1114
  /**
1115
1115
  * Forbid the use of extraneous packages.
1116
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-extraneous-dependencies.md
1116
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-extraneous-dependencies.md
1117
1117
  */
1118
1118
  'import-x/no-extraneous-dependencies'?: Linter.RuleEntry<ImportXNoExtraneousDependencies>
1119
1119
  /**
1120
1120
  * Forbid import statements with CommonJS module.exports.
1121
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-import-module-exports.md
1121
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-import-module-exports.md
1122
1122
  */
1123
1123
  'import-x/no-import-module-exports'?: Linter.RuleEntry<ImportXNoImportModuleExports>
1124
1124
  /**
1125
1125
  * Forbid importing the submodules of other modules.
1126
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-internal-modules.md
1126
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-internal-modules.md
1127
1127
  */
1128
1128
  'import-x/no-internal-modules'?: Linter.RuleEntry<ImportXNoInternalModules>
1129
1129
  /**
1130
1130
  * Forbid the use of mutable exports with `var` or `let`.
1131
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-mutable-exports.md
1131
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-mutable-exports.md
1132
1132
  */
1133
1133
  'import-x/no-mutable-exports'?: Linter.RuleEntry<[]>
1134
1134
  /**
1135
1135
  * Forbid use of exported name as identifier of default export.
1136
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-named-as-default.md
1136
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-named-as-default.md
1137
1137
  */
1138
1138
  'import-x/no-named-as-default'?: Linter.RuleEntry<[]>
1139
1139
  /**
1140
1140
  * Forbid use of exported name as property of default export.
1141
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-named-as-default-member.md
1141
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-named-as-default-member.md
1142
1142
  */
1143
1143
  'import-x/no-named-as-default-member'?: Linter.RuleEntry<[]>
1144
1144
  /**
1145
1145
  * Forbid named default exports.
1146
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-named-default.md
1146
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-named-default.md
1147
1147
  */
1148
1148
  'import-x/no-named-default'?: Linter.RuleEntry<[]>
1149
1149
  /**
1150
1150
  * Forbid named exports.
1151
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-named-export.md
1151
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-named-export.md
1152
1152
  */
1153
1153
  'import-x/no-named-export'?: Linter.RuleEntry<[]>
1154
1154
  /**
1155
1155
  * Forbid namespace (a.k.a. "wildcard" `*`) imports.
1156
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-namespace.md
1156
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-namespace.md
1157
1157
  */
1158
1158
  'import-x/no-namespace'?: Linter.RuleEntry<ImportXNoNamespace>
1159
1159
  /**
1160
1160
  * Forbid Node.js builtin modules.
1161
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-nodejs-modules.md
1161
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-nodejs-modules.md
1162
1162
  */
1163
1163
  'import-x/no-nodejs-modules'?: Linter.RuleEntry<ImportXNoNodejsModules>
1164
1164
  /**
1165
1165
  * Forbid importing packages through relative paths.
1166
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-relative-packages.md
1166
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-relative-packages.md
1167
1167
  */
1168
1168
  'import-x/no-relative-packages'?: Linter.RuleEntry<ImportXNoRelativePackages>
1169
1169
  /**
1170
1170
  * Forbid importing modules from parent directories.
1171
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-relative-parent-imports.md
1171
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-relative-parent-imports.md
1172
1172
  */
1173
1173
  'import-x/no-relative-parent-imports'?: Linter.RuleEntry<ImportXNoRelativeParentImports>
1174
1174
  /**
1175
1175
  * Forbid importing a default export by a different name.
1176
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-rename-default.md
1176
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-rename-default.md
1177
1177
  */
1178
1178
  'import-x/no-rename-default'?: Linter.RuleEntry<ImportXNoRenameDefault>
1179
1179
  /**
1180
1180
  * Enforce which files can be imported in a given folder.
1181
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-restricted-paths.md
1181
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-restricted-paths.md
1182
1182
  */
1183
1183
  'import-x/no-restricted-paths'?: Linter.RuleEntry<ImportXNoRestrictedPaths>
1184
1184
  /**
1185
1185
  * Forbid a module from importing itself.
1186
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-self-import.md
1186
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-self-import.md
1187
1187
  */
1188
1188
  'import-x/no-self-import'?: Linter.RuleEntry<[]>
1189
1189
  /**
1190
1190
  * Forbid unassigned imports.
1191
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-unassigned-import.md
1191
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-unassigned-import.md
1192
1192
  */
1193
1193
  'import-x/no-unassigned-import'?: Linter.RuleEntry<ImportXNoUnassignedImport>
1194
1194
  /**
1195
1195
  * Ensure imports point to a file/module that can be resolved.
1196
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-unresolved.md
1196
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-unresolved.md
1197
1197
  */
1198
1198
  'import-x/no-unresolved'?: Linter.RuleEntry<ImportXNoUnresolved>
1199
1199
  /**
1200
1200
  * Forbid modules without exports, or exports without matching import in another module.
1201
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-unused-modules.md
1201
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-unused-modules.md
1202
1202
  */
1203
1203
  'import-x/no-unused-modules'?: Linter.RuleEntry<ImportXNoUnusedModules>
1204
1204
  /**
1205
1205
  * Forbid unnecessary path segments in import and require statements.
1206
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-useless-path-segments.md
1206
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-useless-path-segments.md
1207
1207
  */
1208
1208
  'import-x/no-useless-path-segments'?: Linter.RuleEntry<ImportXNoUselessPathSegments>
1209
1209
  /**
1210
1210
  * Forbid webpack loader syntax in imports.
1211
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/no-webpack-loader-syntax.md
1211
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/no-webpack-loader-syntax.md
1212
1212
  */
1213
1213
  'import-x/no-webpack-loader-syntax'?: Linter.RuleEntry<[]>
1214
1214
  /**
1215
1215
  * Enforce a convention in module import order.
1216
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/order.md
1216
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/order.md
1217
1217
  */
1218
1218
  'import-x/order'?: Linter.RuleEntry<ImportXOrder>
1219
1219
  /**
1220
1220
  * Prefer a default export if module exports a single name or multiple names.
1221
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/prefer-default-export.md
1221
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/prefer-default-export.md
1222
1222
  */
1223
1223
  'import-x/prefer-default-export'?: Linter.RuleEntry<ImportXPreferDefaultExport>
1224
1224
  /**
1225
1225
  * Forbid potentially ambiguous parse goal (`script` vs. `module`).
1226
- * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.13.3/docs/rules/unambiguous.md
1226
+ * @see https://github.com/un-ts/eslint-plugin-import-x/blob/v4.15.1/docs/rules/unambiguous.md
1227
1227
  */
1228
1228
  'import-x/unambiguous'?: Linter.RuleEntry<[]>
1229
1229
  /**
@@ -1816,11 +1816,26 @@ interface Rules {
1816
1816
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/heading-increment.md
1817
1817
  */
1818
1818
  'markdown/heading-increment'?: Linter.RuleEntry<[]>
1819
+ /**
1820
+ * Disallow duplicate definitions
1821
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-definitions.md
1822
+ */
1823
+ 'markdown/no-duplicate-definitions'?: Linter.RuleEntry<MarkdownNoDuplicateDefinitions>
1819
1824
  /**
1820
1825
  * Disallow duplicate headings in the same document
1821
1826
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-headings.md
1822
1827
  */
1823
1828
  'markdown/no-duplicate-headings'?: Linter.RuleEntry<[]>
1829
+ /**
1830
+ * Disallow empty definitions
1831
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-definitions.md
1832
+ */
1833
+ 'markdown/no-empty-definitions'?: Linter.RuleEntry<[]>
1834
+ /**
1835
+ * Disallow empty images
1836
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-images.md
1837
+ */
1838
+ 'markdown/no-empty-images'?: Linter.RuleEntry<[]>
1824
1839
  /**
1825
1840
  * Disallow empty links
1826
1841
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-links.md
@@ -1836,11 +1851,31 @@ interface Rules {
1836
1851
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-invalid-label-refs.md
1837
1852
  */
1838
1853
  'markdown/no-invalid-label-refs'?: Linter.RuleEntry<[]>
1854
+ /**
1855
+ * Disallow headings without a space after the hash characters
1856
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-atx-heading-space.md
1857
+ */
1858
+ 'markdown/no-missing-atx-heading-space'?: Linter.RuleEntry<[]>
1839
1859
  /**
1840
1860
  * Disallow missing label references
1841
1861
  * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-label-refs.md
1842
1862
  */
1843
1863
  'markdown/no-missing-label-refs'?: Linter.RuleEntry<[]>
1864
+ /**
1865
+ * Disallow multiple H1 headings in the same document
1866
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/no-multiple-h1.md
1867
+ */
1868
+ 'markdown/no-multiple-h1'?: Linter.RuleEntry<MarkdownNoMultipleH1>
1869
+ /**
1870
+ * Require alternative text for images
1871
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/require-alt-text.md
1872
+ */
1873
+ 'markdown/require-alt-text'?: Linter.RuleEntry<[]>
1874
+ /**
1875
+ * Disallow data rows in a GitHub Flavored Markdown table from having more cells than the header row
1876
+ * @see https://github.com/eslint/markdown/blob/main/docs/rules/table-column-count.md
1877
+ */
1878
+ 'markdown/table-column-count'?: Linter.RuleEntry<[]>
1844
1879
  /**
1845
1880
  * Enforce a maximum number of classes per file
1846
1881
  * @see https://eslint.org/docs/latest/rules/max-classes-per-file
@@ -2892,6 +2927,11 @@ interface Rules {
2892
2927
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-sync.md
2893
2928
  */
2894
2929
  'node/no-sync'?: Linter.RuleEntry<NodeNoSync>
2930
+ /**
2931
+ * disallow top-level `await` in published modules
2932
+ * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-top-level-await.md
2933
+ */
2934
+ 'node/no-top-level-await'?: Linter.RuleEntry<NodeNoTopLevelAwait>
2895
2935
  /**
2896
2936
  * disallow `bin` files that npm ignores
2897
2937
  * @see https://github.com/eslint-community/eslint-plugin-n/blob/HEAD/docs/rules/no-unpublished-bin.md
@@ -3552,7 +3592,7 @@ interface Rules {
3552
3592
  * enforce using quantifier
3553
3593
  * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-quantifier.html
3554
3594
  */
3555
- 'regexp/prefer-quantifier'?: Linter.RuleEntry<[]>
3595
+ 'regexp/prefer-quantifier'?: Linter.RuleEntry<RegexpPreferQuantifier>
3556
3596
  /**
3557
3597
  * enforce using `?` quantifier
3558
3598
  * @see https://ota-meshi.github.io/eslint-plugin-regexp/rules/prefer-question-quantifier.html
@@ -6429,6 +6469,7 @@ type _FuncNamesValue = ("always" | "as-needed" | "never")
6429
6469
  // ----- func-style -----
6430
6470
  type FuncStyle = []|[("declaration" | "expression")]|[("declaration" | "expression"), {
6431
6471
  allowArrowFunctions?: boolean
6472
+ allowTypeAnnotation?: boolean
6432
6473
  overrides?: {
6433
6474
  namedExports?: ("declaration" | "expression" | "ignore")
6434
6475
  }
@@ -6843,10 +6884,10 @@ type JsdocCheckLineAlignment = []|[("always" | "never" | "any")]|[("always" | "n
6843
6884
  postTag?: number
6844
6885
  postType?: number
6845
6886
  }
6887
+ disableWrapIndent?: boolean
6846
6888
  preserveMainDescriptionPostDelimiter?: boolean
6847
6889
  tags?: string[]
6848
6890
  wrapIndent?: string
6849
- disableWrapIndent?: boolean
6850
6891
  }]
6851
6892
  // ----- jsdoc/check-param-names -----
6852
6893
  type JsdocCheckParamNames = []|[{
@@ -7941,10 +7982,19 @@ type LogicalAssignmentOperators = (([]|["always"]|["always", {
7941
7982
  type MarkdownFencedCodeLanguage = []|[{
7942
7983
  required?: string[]
7943
7984
  }]
7985
+ // ----- markdown/no-duplicate-definitions -----
7986
+ type MarkdownNoDuplicateDefinitions = []|[{
7987
+ allowDefinitions?: string[]
7988
+ allowFootnoteDefinitions?: string[]
7989
+ }]
7944
7990
  // ----- markdown/no-html -----
7945
7991
  type MarkdownNoHtml = []|[{
7946
7992
  allowed?: string[]
7947
7993
  }]
7994
+ // ----- markdown/no-multiple-h1 -----
7995
+ type MarkdownNoMultipleH1 = []|[{
7996
+ frontmatterTitle?: string
7997
+ }]
7948
7998
  // ----- max-classes-per-file -----
7949
7999
  type MaxClassesPerFile = []|[(number | {
7950
8000
  ignoreExpressions?: boolean
@@ -8213,6 +8263,10 @@ type NoMagicNumbers = []|[{
8213
8263
  ignoreArrayIndexes?: boolean
8214
8264
  ignoreDefaultValues?: boolean
8215
8265
  ignoreClassFieldInitialValues?: boolean
8266
+ ignoreEnums?: boolean
8267
+ ignoreNumericLiteralTypes?: boolean
8268
+ ignoreReadonlyClassProperties?: boolean
8269
+ ignoreTypeIndexes?: boolean
8216
8270
  }]
8217
8271
  // ----- no-misleading-character-class -----
8218
8272
  type NoMisleadingCharacterClass = []|[{
@@ -8345,9 +8399,11 @@ type NoSequences = []|[{
8345
8399
  // ----- no-shadow -----
8346
8400
  type NoShadow = []|[{
8347
8401
  builtinGlobals?: boolean
8348
- hoist?: ("all" | "functions" | "never")
8402
+ hoist?: ("all" | "functions" | "never" | "types" | "functions-and-types")
8349
8403
  allow?: string[]
8350
8404
  ignoreOnInitialization?: boolean
8405
+ ignoreTypeValueShadow?: boolean
8406
+ ignoreFunctionTypeParameterNameValueShadow?: boolean
8351
8407
  }]
8352
8408
  // ----- no-shadow-restricted-names -----
8353
8409
  type NoShadowRestrictedNames = []|[{
@@ -8425,6 +8481,9 @@ type NoUseBeforeDefine = []|[("nofunc" | {
8425
8481
  classes?: boolean
8426
8482
  variables?: boolean
8427
8483
  allowNamedExports?: boolean
8484
+ enums?: boolean
8485
+ typedefs?: boolean
8486
+ ignoreTypeReferences?: boolean
8428
8487
  })]
8429
8488
  // ----- no-useless-computed-key -----
8430
8489
  type NoUselessComputedKey = []|[{
@@ -8631,7 +8690,38 @@ type NodeNoRestrictedRequire = []|[(string | {
8631
8690
  // ----- node/no-sync -----
8632
8691
  type NodeNoSync = []|[{
8633
8692
  allowAtRootLevel?: boolean
8634
- ignores?: string[]
8693
+ ignores?: (string | {
8694
+ from?: "file"
8695
+ path?: string
8696
+ name?: string[]
8697
+ } | {
8698
+ from?: "lib"
8699
+ name?: string[]
8700
+ } | {
8701
+ from?: "package"
8702
+ package?: string
8703
+ name?: string[]
8704
+ })[]
8705
+ }]
8706
+ // ----- node/no-top-level-await -----
8707
+ type NodeNoTopLevelAwait = []|[{
8708
+ ignoreBin?: boolean
8709
+ convertPath?: ({
8710
+
8711
+ [k: string]: [string, string]
8712
+ } | [{
8713
+
8714
+ include: [string, ...(string)[]]
8715
+ exclude?: string[]
8716
+
8717
+ replace: [string, string]
8718
+ }, ...({
8719
+
8720
+ include: [string, ...(string)[]]
8721
+ exclude?: string[]
8722
+
8723
+ replace: [string, string]
8724
+ })[]])
8635
8725
  }]
8636
8726
  // ----- node/no-unpublished-bin -----
8637
8727
  type NodeNoUnpublishedBin = []|[{
@@ -9006,7 +9096,9 @@ type PerfectionistSortArrayIncludes = {
9006
9096
 
9007
9097
  groups?: (string | string[] | {
9008
9098
 
9009
- newlinesBetween: ("ignore" | "always" | "never")
9099
+ newlinesBetween?: ("ignore" | "always" | "never")
9100
+
9101
+ commentAbove?: string
9010
9102
  })[]
9011
9103
  }[]
9012
9104
  // ----- perfectionist/sort-classes -----
@@ -9202,7 +9294,9 @@ type PerfectionistSortClasses = []|[{
9202
9294
 
9203
9295
  groups?: (string | string[] | {
9204
9296
 
9205
- newlinesBetween: ("ignore" | "always" | "never")
9297
+ newlinesBetween?: ("ignore" | "always" | "never")
9298
+
9299
+ commentAbove?: string
9206
9300
  })[]
9207
9301
  }]
9208
9302
  // ----- perfectionist/sort-decorators -----
@@ -9280,7 +9374,9 @@ type PerfectionistSortDecorators = []|[{
9280
9374
 
9281
9375
  groups?: (string | string[] | {
9282
9376
 
9283
- newlinesBetween: ("ignore" | "always" | "never")
9377
+ newlinesBetween?: ("ignore" | "always" | "never")
9378
+
9379
+ commentAbove?: string
9284
9380
  })[]
9285
9381
  }]
9286
9382
  // ----- perfectionist/sort-enums -----
@@ -9437,7 +9533,9 @@ type PerfectionistSortEnums = []|[{
9437
9533
 
9438
9534
  groups?: (string | string[] | {
9439
9535
 
9440
- newlinesBetween: ("ignore" | "always" | "never")
9536
+ newlinesBetween?: ("ignore" | "always" | "never")
9537
+
9538
+ commentAbove?: string
9441
9539
  })[]
9442
9540
  }]
9443
9541
  // ----- perfectionist/sort-exports -----
@@ -9575,7 +9673,9 @@ type PerfectionistSortExports = {
9575
9673
 
9576
9674
  groups?: (string | string[] | {
9577
9675
 
9578
- newlinesBetween: ("ignore" | "always" | "never")
9676
+ newlinesBetween?: ("ignore" | "always" | "never")
9677
+
9678
+ commentAbove?: string
9579
9679
  })[]
9580
9680
  }[]
9581
9681
  // ----- perfectionist/sort-heritage-clauses -----
@@ -9606,7 +9706,9 @@ type PerfectionistSortHeritageClauses = []|[{
9606
9706
 
9607
9707
  groups?: (string | string[] | {
9608
9708
 
9609
- newlinesBetween: ("ignore" | "always" | "never")
9709
+ newlinesBetween?: ("ignore" | "always" | "never")
9710
+
9711
+ commentAbove?: string
9610
9712
  })[]
9611
9713
  }]
9612
9714
  // ----- perfectionist/sort-imports -----
@@ -9730,6 +9832,12 @@ type PerfectionistSortImports = {
9730
9832
  flags?: string
9731
9833
  } | string))
9732
9834
  })[])
9835
+ tsconfig?: {
9836
+
9837
+ rootDir: string
9838
+
9839
+ filename?: string
9840
+ }
9733
9841
 
9734
9842
  maxLineLength?: number
9735
9843
 
@@ -9794,7 +9902,9 @@ type PerfectionistSortImports = {
9794
9902
 
9795
9903
  groups?: (string | string[] | {
9796
9904
 
9797
- newlinesBetween: ("ignore" | "always" | "never")
9905
+ newlinesBetween?: ("ignore" | "always" | "never")
9906
+
9907
+ commentAbove?: string
9798
9908
  })[]
9799
9909
  }[]
9800
9910
  // ----- perfectionist/sort-interfaces -----
@@ -10002,7 +10112,9 @@ type PerfectionistSortInterfaces = {
10002
10112
 
10003
10113
  groups?: (string | string[] | {
10004
10114
 
10005
- newlinesBetween: ("ignore" | "always" | "never")
10115
+ newlinesBetween?: ("ignore" | "always" | "never")
10116
+
10117
+ commentAbove?: string
10006
10118
  })[]
10007
10119
  }[]
10008
10120
  // ----- perfectionist/sort-intersection-types -----
@@ -10134,7 +10246,9 @@ type PerfectionistSortIntersectionTypes = {
10134
10246
 
10135
10247
  groups?: (string | string[] | {
10136
10248
 
10137
- newlinesBetween: ("ignore" | "always" | "never")
10249
+ newlinesBetween?: ("ignore" | "always" | "never")
10250
+
10251
+ commentAbove?: string
10138
10252
  })[]
10139
10253
  }[]
10140
10254
  // ----- perfectionist/sort-jsx-props -----
@@ -10297,7 +10411,9 @@ type PerfectionistSortJsxProps = {
10297
10411
 
10298
10412
  groups?: (string | string[] | {
10299
10413
 
10300
- newlinesBetween: ("ignore" | "always" | "never")
10414
+ newlinesBetween?: ("ignore" | "always" | "never")
10415
+
10416
+ commentAbove?: string
10301
10417
  })[]
10302
10418
  }[]
10303
10419
  // ----- perfectionist/sort-maps -----
@@ -10440,7 +10556,9 @@ type PerfectionistSortMaps = {
10440
10556
 
10441
10557
  groups?: (string | string[] | {
10442
10558
 
10443
- newlinesBetween: ("ignore" | "always" | "never")
10559
+ newlinesBetween?: ("ignore" | "always" | "never")
10560
+
10561
+ commentAbove?: string
10444
10562
  })[]
10445
10563
  }[]
10446
10564
  // ----- perfectionist/sort-modules -----
@@ -10600,7 +10718,9 @@ type PerfectionistSortModules = []|[{
10600
10718
 
10601
10719
  groups?: (string | string[] | {
10602
10720
 
10603
- newlinesBetween: ("ignore" | "always" | "never")
10721
+ newlinesBetween?: ("ignore" | "always" | "never")
10722
+
10723
+ commentAbove?: string
10604
10724
  })[]
10605
10725
  }]
10606
10726
  // ----- perfectionist/sort-named-exports -----
@@ -10740,7 +10860,9 @@ type PerfectionistSortNamedExports = {
10740
10860
 
10741
10861
  groups?: (string | string[] | {
10742
10862
 
10743
- newlinesBetween: ("ignore" | "always" | "never")
10863
+ newlinesBetween?: ("ignore" | "always" | "never")
10864
+
10865
+ commentAbove?: string
10744
10866
  })[]
10745
10867
  }[]
10746
10868
  // ----- perfectionist/sort-named-imports -----
@@ -10880,7 +11002,9 @@ type PerfectionistSortNamedImports = {
10880
11002
 
10881
11003
  groups?: (string | string[] | {
10882
11004
 
10883
- newlinesBetween: ("ignore" | "always" | "never")
11005
+ newlinesBetween?: ("ignore" | "always" | "never")
11006
+
11007
+ commentAbove?: string
10884
11008
  })[]
10885
11009
  }[]
10886
11010
  // ----- perfectionist/sort-object-types -----
@@ -11088,7 +11212,9 @@ type PerfectionistSortObjectTypes = {
11088
11212
 
11089
11213
  groups?: (string | string[] | {
11090
11214
 
11091
- newlinesBetween: ("ignore" | "always" | "never")
11215
+ newlinesBetween?: ("ignore" | "always" | "never")
11216
+
11217
+ commentAbove?: string
11092
11218
  })[]
11093
11219
  }[]
11094
11220
  // ----- perfectionist/sort-objects -----
@@ -11299,7 +11425,9 @@ type PerfectionistSortObjects = {
11299
11425
 
11300
11426
  groups?: (string | string[] | {
11301
11427
 
11302
- newlinesBetween: ("ignore" | "always" | "never")
11428
+ newlinesBetween?: ("ignore" | "always" | "never")
11429
+
11430
+ commentAbove?: string
11303
11431
  })[]
11304
11432
  }[]
11305
11433
  // ----- perfectionist/sort-sets -----
@@ -11448,7 +11576,9 @@ type PerfectionistSortSets = {
11448
11576
 
11449
11577
  groups?: (string | string[] | {
11450
11578
 
11451
- newlinesBetween: ("ignore" | "always" | "never")
11579
+ newlinesBetween?: ("ignore" | "always" | "never")
11580
+
11581
+ commentAbove?: string
11452
11582
  })[]
11453
11583
  }[]
11454
11584
  // ----- perfectionist/sort-switch-case -----
@@ -11602,7 +11732,9 @@ type PerfectionistSortUnionTypes = {
11602
11732
 
11603
11733
  groups?: (string | string[] | {
11604
11734
 
11605
- newlinesBetween: ("ignore" | "always" | "never")
11735
+ newlinesBetween?: ("ignore" | "always" | "never")
11736
+
11737
+ commentAbove?: string
11606
11738
  })[]
11607
11739
  }[]
11608
11740
  // ----- perfectionist/sort-variable-declarations -----
@@ -11734,7 +11866,9 @@ type PerfectionistSortVariableDeclarations = []|[{
11734
11866
 
11735
11867
  groups?: (string | string[] | {
11736
11868
 
11737
- newlinesBetween: ("ignore" | "always" | "never")
11869
+ newlinesBetween?: ("ignore" | "always" | "never")
11870
+
11871
+ commentAbove?: string
11738
11872
  })[]
11739
11873
  }]
11740
11874
  // ----- prefer-arrow-callback -----
@@ -11906,6 +12040,10 @@ type RegexpPreferLookaround = []|[{
11906
12040
  type RegexpPreferNamedReplacement = []|[{
11907
12041
  strictTypes?: boolean
11908
12042
  }]
12043
+ // ----- regexp/prefer-quantifier -----
12044
+ type RegexpPreferQuantifier = []|[{
12045
+ allows?: string[]
12046
+ }]
11909
12047
  // ----- regexp/prefer-range -----
11910
12048
  type RegexpPreferRange = []|[{
11911
12049
  target?: (("all" | "alphanumeric") | [("all" | "alphanumeric")] | [("alphanumeric" | string), ...(("alphanumeric" | string))[]])