@depup/eslint-plugin-jsdoc 62.8.0-depup.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.
Files changed (430) hide show
  1. package/LICENSE +24 -0
  2. package/README.md +33 -0
  3. package/changes.json +18 -0
  4. package/dist/WarnSettings.cjs +38 -0
  5. package/dist/WarnSettings.cjs.map +1 -0
  6. package/dist/WarnSettings.d.ts +17 -0
  7. package/dist/alignTransform.cjs +402 -0
  8. package/dist/alignTransform.cjs.map +1 -0
  9. package/dist/alignTransform.d.ts +34 -0
  10. package/dist/buildForbidRuleDefinition.cjs +101 -0
  11. package/dist/buildForbidRuleDefinition.cjs.map +1 -0
  12. package/dist/buildForbidRuleDefinition.d.ts +15 -0
  13. package/dist/buildRejectOrPreferRuleDefinition.cjs +352 -0
  14. package/dist/buildRejectOrPreferRuleDefinition.cjs.map +1 -0
  15. package/dist/buildRejectOrPreferRuleDefinition.d.ts +9 -0
  16. package/dist/cjs/WarnSettings.d.ts +16 -0
  17. package/dist/cjs/alignTransform.d.ts +33 -0
  18. package/dist/cjs/buildForbidRuleDefinition.d.ts +14 -0
  19. package/dist/cjs/buildRejectOrPreferRuleDefinition.d.ts +8 -0
  20. package/dist/cjs/defaultTagOrder.d.ts +4 -0
  21. package/dist/cjs/exportParser.d.ts +40 -0
  22. package/dist/cjs/getDefaultTagStructureForMode.d.ts +10 -0
  23. package/dist/cjs/getJsdocProcessorPlugin.d.cts +5 -0
  24. package/dist/cjs/getJsdocProcessorPlugin.d.ts +66 -0
  25. package/dist/cjs/index-cjs.d.ts +23 -0
  26. package/dist/cjs/index.cjs.d.cts +2 -0
  27. package/dist/cjs/iterateJsdoc.d.cts +7 -0
  28. package/dist/cjs/iterateJsdoc.d.ts +495 -0
  29. package/dist/cjs/jsdocUtils.d.ts +493 -0
  30. package/dist/cjs/rules/checkAccess.d.ts +2 -0
  31. package/dist/cjs/rules/checkAlignment.d.ts +2 -0
  32. package/dist/cjs/rules/checkExamples.d.ts +3 -0
  33. package/dist/cjs/rules/checkIndentation.d.ts +2 -0
  34. package/dist/cjs/rules/checkLineAlignment.d.ts +9 -0
  35. package/dist/cjs/rules/checkParamNames.d.ts +2 -0
  36. package/dist/cjs/rules/checkPropertyNames.d.ts +2 -0
  37. package/dist/cjs/rules/checkSyntax.d.ts +2 -0
  38. package/dist/cjs/rules/checkTagNames.d.ts +2 -0
  39. package/dist/cjs/rules/checkTemplateNames.d.ts +2 -0
  40. package/dist/cjs/rules/checkTypes.d.ts +7 -0
  41. package/dist/cjs/rules/checkValues.d.ts +2 -0
  42. package/dist/cjs/rules/convertToJsdocComments.d.ts +266 -0
  43. package/dist/cjs/rules/emptyTags.d.ts +2 -0
  44. package/dist/cjs/rules/escapeInlineTags.d.ts +2 -0
  45. package/dist/cjs/rules/implementsOnClasses.d.ts +2 -0
  46. package/dist/cjs/rules/importsAsDependencies.d.ts +2 -0
  47. package/dist/cjs/rules/informativeDocs.d.ts +2 -0
  48. package/dist/cjs/rules/linesBeforeBlock.d.ts +2 -0
  49. package/dist/cjs/rules/matchDescription.d.ts +2 -0
  50. package/dist/cjs/rules/matchName.d.ts +2 -0
  51. package/dist/cjs/rules/multilineBlocks.d.ts +2 -0
  52. package/dist/cjs/rules/noBadBlocks.d.ts +2 -0
  53. package/dist/cjs/rules/noBlankBlockDescriptions.d.ts +2 -0
  54. package/dist/cjs/rules/noBlankBlocks.d.ts +2 -0
  55. package/dist/cjs/rules/noDefaults.d.ts +2 -0
  56. package/dist/cjs/rules/noMissingSyntax.d.ts +9 -0
  57. package/dist/cjs/rules/noMultiAsterisks.d.ts +2 -0
  58. package/dist/cjs/rules/noRestrictedSyntax.d.ts +2 -0
  59. package/dist/cjs/rules/noTypes.d.ts +2 -0
  60. package/dist/cjs/rules/noUndefinedTypes.d.ts +2 -0
  61. package/dist/cjs/rules/preferImportTag.d.ts +2 -0
  62. package/dist/cjs/rules/requireAsteriskPrefix.d.ts +2 -0
  63. package/dist/cjs/rules/requireDescription.d.ts +2 -0
  64. package/dist/cjs/rules/requireDescriptionCompleteSentence.d.ts +2 -0
  65. package/dist/cjs/rules/requireExample.d.ts +2 -0
  66. package/dist/cjs/rules/requireFileOverview.d.ts +2 -0
  67. package/dist/cjs/rules/requireHyphenBeforeParamDescription.d.ts +2 -0
  68. package/dist/cjs/rules/requireJsdoc.d.ts +24 -0
  69. package/dist/cjs/rules/requireParam.d.ts +3 -0
  70. package/dist/cjs/rules/requireParamDescription.d.ts +2 -0
  71. package/dist/cjs/rules/requireParamName.d.ts +2 -0
  72. package/dist/cjs/rules/requireParamType.d.ts +2 -0
  73. package/dist/cjs/rules/requireProperty.d.ts +2 -0
  74. package/dist/cjs/rules/requirePropertyDescription.d.ts +2 -0
  75. package/dist/cjs/rules/requirePropertyName.d.ts +2 -0
  76. package/dist/cjs/rules/requirePropertyType.d.ts +2 -0
  77. package/dist/cjs/rules/requireRejects.d.ts +2 -0
  78. package/dist/cjs/rules/requireReturns.d.ts +2 -0
  79. package/dist/cjs/rules/requireReturnsCheck.d.ts +2 -0
  80. package/dist/cjs/rules/requireReturnsDescription.d.ts +2 -0
  81. package/dist/cjs/rules/requireReturnsType.d.ts +2 -0
  82. package/dist/cjs/rules/requireTags.d.ts +2 -0
  83. package/dist/cjs/rules/requireTemplate.d.ts +2 -0
  84. package/dist/cjs/rules/requireThrows.d.ts +2 -0
  85. package/dist/cjs/rules/requireYields.d.ts +2 -0
  86. package/dist/cjs/rules/requireYieldsCheck.d.ts +2 -0
  87. package/dist/cjs/rules/sortTags.d.ts +2 -0
  88. package/dist/cjs/rules/tagLines.d.ts +2 -0
  89. package/dist/cjs/rules/textEscaping.d.ts +2 -0
  90. package/dist/cjs/rules/tsMethodSignatureStyle.d.ts +2 -0
  91. package/dist/cjs/rules/tsNoEmptyObjectType.d.ts +2 -0
  92. package/dist/cjs/rules/tsNoUnnecessaryTemplateExpression.d.ts +2 -0
  93. package/dist/cjs/rules/tsPreferFunctionType.d.ts +2 -0
  94. package/dist/cjs/rules/typeFormatting.d.ts +2 -0
  95. package/dist/cjs/rules/validTypes.d.ts +2 -0
  96. package/dist/cjs/tagNames.d.ts +15 -0
  97. package/dist/cjs/utils/hasReturnValue.d.ts +19 -0
  98. package/dist/defaultTagOrder.cjs +46 -0
  99. package/dist/defaultTagOrder.cjs.map +1 -0
  100. package/dist/defaultTagOrder.d.ts +5 -0
  101. package/dist/exportParser.cjs +732 -0
  102. package/dist/exportParser.cjs.map +1 -0
  103. package/dist/exportParser.d.ts +41 -0
  104. package/dist/generateDocs.cjs +342 -0
  105. package/dist/generateDocs.cjs.map +1 -0
  106. package/dist/generateOptions.cjs +62 -0
  107. package/dist/generateOptions.cjs.map +1 -0
  108. package/dist/generateRule.cjs +248 -0
  109. package/dist/generateRule.cjs.map +1 -0
  110. package/dist/generateRuleTypes.cjs +24 -0
  111. package/dist/generateRuleTypes.cjs.map +1 -0
  112. package/dist/getDefaultTagStructureForMode.cjs +289 -0
  113. package/dist/getDefaultTagStructureForMode.cjs.map +1 -0
  114. package/dist/getDefaultTagStructureForMode.d.ts +11 -0
  115. package/dist/getJsdocProcessorPlugin.cjs +587 -0
  116. package/dist/getJsdocProcessorPlugin.cjs.map +1 -0
  117. package/dist/getJsdocProcessorPlugin.cts +5 -0
  118. package/dist/getJsdocProcessorPlugin.d.ts +67 -0
  119. package/dist/index-cjs.cjs +595 -0
  120. package/dist/index-cjs.cjs.map +1 -0
  121. package/dist/index-cjs.d.ts +24 -0
  122. package/dist/index-esm.cjs +162 -0
  123. package/dist/index-esm.cjs.map +1 -0
  124. package/dist/index-esm.d.ts +72 -0
  125. package/dist/index.cjs +743 -0
  126. package/dist/index.cjs.cts +3 -0
  127. package/dist/index.cjs.map +1 -0
  128. package/dist/index.d.ts +93 -0
  129. package/dist/iterateJsdoc.cjs +2150 -0
  130. package/dist/iterateJsdoc.cjs.map +1 -0
  131. package/dist/iterateJsdoc.cts +7 -0
  132. package/dist/iterateJsdoc.d.ts +496 -0
  133. package/dist/jsdocUtils.cjs +1725 -0
  134. package/dist/jsdocUtils.cjs.map +1 -0
  135. package/dist/jsdocUtils.d.ts +494 -0
  136. package/dist/rules/checkAccess.cjs +40 -0
  137. package/dist/rules/checkAccess.cjs.map +1 -0
  138. package/dist/rules/checkAccess.d.ts +3 -0
  139. package/dist/rules/checkAlignment.cjs +78 -0
  140. package/dist/rules/checkAlignment.cjs.map +1 -0
  141. package/dist/rules/checkAlignment.d.ts +3 -0
  142. package/dist/rules/checkExamples.cjs +521 -0
  143. package/dist/rules/checkExamples.cjs.map +1 -0
  144. package/dist/rules/checkExamples.d.ts +4 -0
  145. package/dist/rules/checkIndentation.cjs +170 -0
  146. package/dist/rules/checkIndentation.cjs.map +1 -0
  147. package/dist/rules/checkIndentation.d.ts +3 -0
  148. package/dist/rules/checkLineAlignment.cjs +398 -0
  149. package/dist/rules/checkLineAlignment.cjs.map +1 -0
  150. package/dist/rules/checkLineAlignment.d.ts +10 -0
  151. package/dist/rules/checkParamNames.cjs +407 -0
  152. package/dist/rules/checkParamNames.cjs.map +1 -0
  153. package/dist/rules/checkParamNames.d.ts +3 -0
  154. package/dist/rules/checkPropertyNames.cjs +135 -0
  155. package/dist/rules/checkPropertyNames.cjs.map +1 -0
  156. package/dist/rules/checkPropertyNames.d.ts +3 -0
  157. package/dist/rules/checkSyntax.cjs +38 -0
  158. package/dist/rules/checkSyntax.cjs.map +1 -0
  159. package/dist/rules/checkSyntax.d.ts +3 -0
  160. package/dist/rules/checkTagNames.cjs +312 -0
  161. package/dist/rules/checkTagNames.cjs.map +1 -0
  162. package/dist/rules/checkTagNames.d.ts +3 -0
  163. package/dist/rules/checkTemplateNames.cjs +185 -0
  164. package/dist/rules/checkTemplateNames.cjs.map +1 -0
  165. package/dist/rules/checkTemplateNames.d.ts +3 -0
  166. package/dist/rules/checkTypes.cjs +111 -0
  167. package/dist/rules/checkTypes.cjs.map +1 -0
  168. package/dist/rules/checkTypes.d.ts +8 -0
  169. package/dist/rules/checkValues.cjs +166 -0
  170. package/dist/rules/checkValues.cjs.map +1 -0
  171. package/dist/rules/checkValues.d.ts +3 -0
  172. package/dist/rules/convertToJsdocComments.cjs +356 -0
  173. package/dist/rules/convertToJsdocComments.cjs.map +1 -0
  174. package/dist/rules/convertToJsdocComments.d.ts +267 -0
  175. package/dist/rules/emptyTags.cjs +85 -0
  176. package/dist/rules/emptyTags.cjs.map +1 -0
  177. package/dist/rules/emptyTags.d.ts +3 -0
  178. package/dist/rules/escapeInlineTags.cjs +149 -0
  179. package/dist/rules/escapeInlineTags.cjs.map +1 -0
  180. package/dist/rules/escapeInlineTags.d.ts +3 -0
  181. package/dist/rules/implementsOnClasses.cjs +74 -0
  182. package/dist/rules/implementsOnClasses.cjs.map +1 -0
  183. package/dist/rules/implementsOnClasses.d.ts +3 -0
  184. package/dist/rules/importsAsDependencies.cjs +104 -0
  185. package/dist/rules/importsAsDependencies.cjs.map +1 -0
  186. package/dist/rules/importsAsDependencies.d.ts +3 -0
  187. package/dist/rules/informativeDocs.cjs +187 -0
  188. package/dist/rules/informativeDocs.cjs.map +1 -0
  189. package/dist/rules/informativeDocs.d.ts +3 -0
  190. package/dist/rules/linesBeforeBlock.cjs +120 -0
  191. package/dist/rules/linesBeforeBlock.cjs.map +1 -0
  192. package/dist/rules/linesBeforeBlock.d.ts +3 -0
  193. package/dist/rules/matchDescription.cjs +356 -0
  194. package/dist/rules/matchDescription.cjs.map +1 -0
  195. package/dist/rules/matchDescription.d.ts +3 -0
  196. package/dist/rules/matchName.cjs +160 -0
  197. package/dist/rules/matchName.cjs.map +1 -0
  198. package/dist/rules/matchName.d.ts +3 -0
  199. package/dist/rules/multilineBlocks.cjs +431 -0
  200. package/dist/rules/multilineBlocks.cjs.map +1 -0
  201. package/dist/rules/multilineBlocks.d.ts +3 -0
  202. package/dist/rules/noBadBlocks.cjs +100 -0
  203. package/dist/rules/noBadBlocks.cjs.map +1 -0
  204. package/dist/rules/noBadBlocks.d.ts +3 -0
  205. package/dist/rules/noBlankBlockDescriptions.cjs +63 -0
  206. package/dist/rules/noBlankBlockDescriptions.cjs.map +1 -0
  207. package/dist/rules/noBlankBlockDescriptions.d.ts +3 -0
  208. package/dist/rules/noBlankBlocks.cjs +54 -0
  209. package/dist/rules/noBlankBlocks.cjs.map +1 -0
  210. package/dist/rules/noBlankBlocks.d.ts +3 -0
  211. package/dist/rules/noDefaults.cjs +102 -0
  212. package/dist/rules/noDefaults.cjs.map +1 -0
  213. package/dist/rules/noDefaults.d.ts +3 -0
  214. package/dist/rules/noMissingSyntax.cjs +196 -0
  215. package/dist/rules/noMissingSyntax.cjs.map +1 -0
  216. package/dist/rules/noMissingSyntax.d.ts +10 -0
  217. package/dist/rules/noMultiAsterisks.cjs +126 -0
  218. package/dist/rules/noMultiAsterisks.cjs.map +1 -0
  219. package/dist/rules/noMultiAsterisks.d.ts +3 -0
  220. package/dist/rules/noRestrictedSyntax.cjs +68 -0
  221. package/dist/rules/noRestrictedSyntax.cjs.map +1 -0
  222. package/dist/rules/noRestrictedSyntax.d.ts +3 -0
  223. package/dist/rules/noTypes.cjs +101 -0
  224. package/dist/rules/noTypes.cjs.map +1 -0
  225. package/dist/rules/noTypes.d.ts +3 -0
  226. package/dist/rules/noUndefinedTypes.cjs +588 -0
  227. package/dist/rules/noUndefinedTypes.cjs.map +1 -0
  228. package/dist/rules/noUndefinedTypes.d.ts +3 -0
  229. package/dist/rules/preferImportTag.cjs +362 -0
  230. package/dist/rules/preferImportTag.cjs.map +1 -0
  231. package/dist/rules/preferImportTag.d.ts +3 -0
  232. package/dist/rules/requireAsteriskPrefix.cjs +190 -0
  233. package/dist/rules/requireAsteriskPrefix.cjs.map +1 -0
  234. package/dist/rules/requireAsteriskPrefix.d.ts +3 -0
  235. package/dist/rules/requireDescription.cjs +164 -0
  236. package/dist/rules/requireDescription.cjs.map +1 -0
  237. package/dist/rules/requireDescription.d.ts +3 -0
  238. package/dist/rules/requireDescriptionCompleteSentence.cjs +321 -0
  239. package/dist/rules/requireDescriptionCompleteSentence.cjs.map +1 -0
  240. package/dist/rules/requireDescriptionCompleteSentence.d.ts +3 -0
  241. package/dist/rules/requireExample.cjs +133 -0
  242. package/dist/rules/requireExample.cjs.map +1 -0
  243. package/dist/rules/requireExample.d.ts +3 -0
  244. package/dist/rules/requireFileOverview.cjs +194 -0
  245. package/dist/rules/requireFileOverview.cjs.map +1 -0
  246. package/dist/rules/requireFileOverview.d.ts +3 -0
  247. package/dist/rules/requireHyphenBeforeParamDescription.cjs +166 -0
  248. package/dist/rules/requireHyphenBeforeParamDescription.cjs.map +1 -0
  249. package/dist/rules/requireHyphenBeforeParamDescription.d.ts +3 -0
  250. package/dist/rules/requireJsdoc.cjs +722 -0
  251. package/dist/rules/requireJsdoc.cjs.map +1 -0
  252. package/dist/rules/requireJsdoc.d.ts +25 -0
  253. package/dist/rules/requireParam.cjs +772 -0
  254. package/dist/rules/requireParam.cjs.map +1 -0
  255. package/dist/rules/requireParam.d.ts +4 -0
  256. package/dist/rules/requireParamDescription.cjs +105 -0
  257. package/dist/rules/requireParamDescription.cjs.map +1 -0
  258. package/dist/rules/requireParamDescription.d.ts +3 -0
  259. package/dist/rules/requireParamName.cjs +68 -0
  260. package/dist/rules/requireParamName.cjs.map +1 -0
  261. package/dist/rules/requireParamName.d.ts +3 -0
  262. package/dist/rules/requireParamType.cjs +104 -0
  263. package/dist/rules/requireParamType.cjs.map +1 -0
  264. package/dist/rules/requireParamType.d.ts +3 -0
  265. package/dist/rules/requireProperty.cjs +63 -0
  266. package/dist/rules/requireProperty.cjs.map +1 -0
  267. package/dist/rules/requireProperty.d.ts +3 -0
  268. package/dist/rules/requirePropertyDescription.cjs +29 -0
  269. package/dist/rules/requirePropertyDescription.cjs.map +1 -0
  270. package/dist/rules/requirePropertyDescription.d.ts +3 -0
  271. package/dist/rules/requirePropertyName.cjs +29 -0
  272. package/dist/rules/requirePropertyName.cjs.map +1 -0
  273. package/dist/rules/requirePropertyName.d.ts +3 -0
  274. package/dist/rules/requirePropertyType.cjs +29 -0
  275. package/dist/rules/requirePropertyType.cjs.map +1 -0
  276. package/dist/rules/requirePropertyType.d.ts +3 -0
  277. package/dist/rules/requireRejects.cjs +226 -0
  278. package/dist/rules/requireRejects.cjs.map +1 -0
  279. package/dist/rules/requireRejects.d.ts +3 -0
  280. package/dist/rules/requireReturns.cjs +262 -0
  281. package/dist/rules/requireReturns.cjs.map +1 -0
  282. package/dist/rules/requireReturns.d.ts +3 -0
  283. package/dist/rules/requireReturnsCheck.cjs +140 -0
  284. package/dist/rules/requireReturnsCheck.cjs.map +1 -0
  285. package/dist/rules/requireReturnsCheck.d.ts +3 -0
  286. package/dist/rules/requireReturnsDescription.cjs +72 -0
  287. package/dist/rules/requireReturnsDescription.cjs.map +1 -0
  288. package/dist/rules/requireReturnsDescription.d.ts +3 -0
  289. package/dist/rules/requireReturnsType.cjs +68 -0
  290. package/dist/rules/requireReturnsType.cjs.map +1 -0
  291. package/dist/rules/requireReturnsType.d.ts +3 -0
  292. package/dist/rules/requireTags.cjs +74 -0
  293. package/dist/rules/requireTags.cjs.map +1 -0
  294. package/dist/rules/requireTags.d.ts +3 -0
  295. package/dist/rules/requireTemplate.cjs +220 -0
  296. package/dist/rules/requireTemplate.cjs.map +1 -0
  297. package/dist/rules/requireTemplate.d.ts +3 -0
  298. package/dist/rules/requireThrows.cjs +118 -0
  299. package/dist/rules/requireThrows.cjs.map +1 -0
  300. package/dist/rules/requireThrows.d.ts +3 -0
  301. package/dist/rules/requireYields.cjs +224 -0
  302. package/dist/rules/requireYields.cjs.map +1 -0
  303. package/dist/rules/requireYields.d.ts +3 -0
  304. package/dist/rules/requireYieldsCheck.cjs +179 -0
  305. package/dist/rules/requireYieldsCheck.cjs.map +1 -0
  306. package/dist/rules/requireYieldsCheck.d.ts +3 -0
  307. package/dist/rules/sortTags.cjs +656 -0
  308. package/dist/rules/sortTags.cjs.map +1 -0
  309. package/dist/rules/sortTags.d.ts +3 -0
  310. package/dist/rules/tagLines.cjs +374 -0
  311. package/dist/rules/tagLines.cjs.map +1 -0
  312. package/dist/rules/tagLines.d.ts +3 -0
  313. package/dist/rules/textEscaping.cjs +141 -0
  314. package/dist/rules/textEscaping.cjs.map +1 -0
  315. package/dist/rules/textEscaping.d.ts +3 -0
  316. package/dist/rules/tsMethodSignatureStyle.cjs +240 -0
  317. package/dist/rules/tsMethodSignatureStyle.cjs.map +1 -0
  318. package/dist/rules/tsMethodSignatureStyle.d.ts +3 -0
  319. package/dist/rules/tsNoEmptyObjectType.cjs +62 -0
  320. package/dist/rules/tsNoEmptyObjectType.cjs.map +1 -0
  321. package/dist/rules/tsNoEmptyObjectType.d.ts +3 -0
  322. package/dist/rules/tsNoUnnecessaryTemplateExpression.cjs +104 -0
  323. package/dist/rules/tsNoUnnecessaryTemplateExpression.cjs.map +1 -0
  324. package/dist/rules/tsNoUnnecessaryTemplateExpression.d.ts +3 -0
  325. package/dist/rules/tsPreferFunctionType.cjs +110 -0
  326. package/dist/rules/tsPreferFunctionType.cjs.map +1 -0
  327. package/dist/rules/tsPreferFunctionType.d.ts +3 -0
  328. package/dist/rules/typeFormatting.cjs +607 -0
  329. package/dist/rules/typeFormatting.cjs.map +1 -0
  330. package/dist/rules/typeFormatting.d.ts +3 -0
  331. package/dist/rules/validTypes.cjs +328 -0
  332. package/dist/rules/validTypes.cjs.map +1 -0
  333. package/dist/rules/validTypes.d.ts +3 -0
  334. package/dist/rules.d.ts +3203 -0
  335. package/dist/tagNames.cjs +244 -0
  336. package/dist/tagNames.cjs.map +1 -0
  337. package/dist/tagNames.d.ts +16 -0
  338. package/dist/to-valid-identifier.cjs +263 -0
  339. package/dist/utils/hasReturnValue.cjs +495 -0
  340. package/dist/utils/hasReturnValue.cjs.map +1 -0
  341. package/dist/utils/hasReturnValue.d.ts +20 -0
  342. package/package.json +220 -0
  343. package/rollup.config.js +16 -0
  344. package/src/WarnSettings.js +34 -0
  345. package/src/alignTransform.js +444 -0
  346. package/src/buildForbidRuleDefinition.js +106 -0
  347. package/src/buildRejectOrPreferRuleDefinition.js +481 -0
  348. package/src/defaultTagOrder.js +169 -0
  349. package/src/exportParser.js +973 -0
  350. package/src/getDefaultTagStructureForMode.js +968 -0
  351. package/src/getJsdocProcessorPlugin.cts +5 -0
  352. package/src/getJsdocProcessorPlugin.js +692 -0
  353. package/src/index-cjs.js +755 -0
  354. package/src/index-esm.js +196 -0
  355. package/src/index.cjs.cts +3 -0
  356. package/src/index.js +940 -0
  357. package/src/iterateJsdoc.cts +7 -0
  358. package/src/iterateJsdoc.js +2612 -0
  359. package/src/jsdocUtils.js +2158 -0
  360. package/src/rules/checkAccess.js +45 -0
  361. package/src/rules/checkAlignment.js +82 -0
  362. package/src/rules/checkExamples.js +613 -0
  363. package/src/rules/checkIndentation.js +176 -0
  364. package/src/rules/checkLineAlignment.js +453 -0
  365. package/src/rules/checkParamNames.js +541 -0
  366. package/src/rules/checkPropertyNames.js +174 -0
  367. package/src/rules/checkSyntax.js +30 -0
  368. package/src/rules/checkTagNames.js +414 -0
  369. package/src/rules/checkTemplateNames.js +208 -0
  370. package/src/rules/checkTypes.js +130 -0
  371. package/src/rules/checkValues.js +264 -0
  372. package/src/rules/convertToJsdocComments.js +444 -0
  373. package/src/rules/emptyTags.js +106 -0
  374. package/src/rules/escapeInlineTags.js +189 -0
  375. package/src/rules/implementsOnClasses.js +78 -0
  376. package/src/rules/importsAsDependencies.js +132 -0
  377. package/src/rules/informativeDocs.js +228 -0
  378. package/src/rules/linesBeforeBlock.js +144 -0
  379. package/src/rules/matchDescription.js +413 -0
  380. package/src/rules/matchName.js +179 -0
  381. package/src/rules/multilineBlocks.js +562 -0
  382. package/src/rules/noBadBlocks.js +127 -0
  383. package/src/rules/noBlankBlockDescriptions.js +69 -0
  384. package/src/rules/noBlankBlocks.js +55 -0
  385. package/src/rules/noDefaults.js +104 -0
  386. package/src/rules/noMissingSyntax.js +215 -0
  387. package/src/rules/noMultiAsterisks.js +162 -0
  388. package/src/rules/noRestrictedSyntax.js +72 -0
  389. package/src/rules/noTypes.js +108 -0
  390. package/src/rules/noUndefinedTypes.js +797 -0
  391. package/src/rules/preferImportTag.js +521 -0
  392. package/src/rules/requireAsteriskPrefix.js +217 -0
  393. package/src/rules/requireDescription.js +190 -0
  394. package/src/rules/requireDescriptionCompleteSentence.js +376 -0
  395. package/src/rules/requireExample.js +143 -0
  396. package/src/rules/requireFileOverview.js +213 -0
  397. package/src/rules/requireHyphenBeforeParamDescription.js +210 -0
  398. package/src/rules/requireJsdoc.js +897 -0
  399. package/src/rules/requireParam.js +848 -0
  400. package/src/rules/requireParamDescription.js +110 -0
  401. package/src/rules/requireParamName.js +69 -0
  402. package/src/rules/requireParamType.js +109 -0
  403. package/src/rules/requireProperty.js +66 -0
  404. package/src/rules/requirePropertyDescription.js +25 -0
  405. package/src/rules/requirePropertyName.js +25 -0
  406. package/src/rules/requirePropertyType.js +25 -0
  407. package/src/rules/requireRejects.js +246 -0
  408. package/src/rules/requireReturns.js +291 -0
  409. package/src/rules/requireReturnsCheck.js +180 -0
  410. package/src/rules/requireReturnsDescription.js +73 -0
  411. package/src/rules/requireReturnsType.js +65 -0
  412. package/src/rules/requireTags.js +85 -0
  413. package/src/rules/requireTemplate.js +246 -0
  414. package/src/rules/requireThrows.js +128 -0
  415. package/src/rules/requireYields.js +265 -0
  416. package/src/rules/requireYieldsCheck.js +226 -0
  417. package/src/rules/sortTags.js +766 -0
  418. package/src/rules/tagLines.js +486 -0
  419. package/src/rules/textEscaping.js +158 -0
  420. package/src/rules/tsMethodSignatureStyle.js +300 -0
  421. package/src/rules/tsNoEmptyObjectType.js +61 -0
  422. package/src/rules/tsNoUnnecessaryTemplateExpression.js +130 -0
  423. package/src/rules/tsPreferFunctionType.js +127 -0
  424. package/src/rules/typeFormatting.js +690 -0
  425. package/src/rules/validTypes.js +466 -0
  426. package/src/rules.d.ts +3203 -0
  427. package/src/tagNames.js +301 -0
  428. package/src/utils/hasReturnValue.js +572 -0
  429. package/typings/babel__eslint-parser.d.ts +1 -0
  430. package/typings/gitdown.d.ts +16 -0
@@ -0,0 +1,493 @@
1
+ export type Integer = number;
2
+ export type ESTreeOrTypeScriptNode = import("./utils/hasReturnValue.js").ESTreeOrTypeScriptNode;
3
+ export type ParserMode = "jsdoc" | "typescript" | "closure" | "permissive";
4
+ export type ParamCommon = undefined | string | {
5
+ name: Integer;
6
+ restElement: boolean;
7
+ } | {
8
+ isRestProperty: boolean | undefined;
9
+ name: string;
10
+ restElement: boolean;
11
+ } | {
12
+ name: string;
13
+ restElement: boolean;
14
+ };
15
+ export type ParamNameInfo = ParamCommon | [string | undefined, (FlattendRootInfo & {
16
+ annotationParamName?: string;
17
+ })] | NestedParamInfo;
18
+ export type FlattendRootInfo = {
19
+ hasPropertyRest: boolean;
20
+ hasRestElement: boolean;
21
+ names: string[];
22
+ rests: boolean[];
23
+ };
24
+ export type NestedParamInfo = [string, (string[] | ParamInfo[])];
25
+ export type ParamInfo = ParamCommon | [string | undefined, (FlattendRootInfo & {
26
+ annotationParamName?: string;
27
+ })] | NestedParamInfo;
28
+ /**
29
+ * Given a nested array of property names, reduce them to a single array,
30
+ * appending the name of the root element along the way if present.
31
+ */
32
+ export type FlattenRoots = (params: ParamInfo[], root?: string | undefined) => FlattendRootInfo;
33
+ export type Reporter = {
34
+ report: (descriptor: import("eslint").Rule.ReportDescriptor) => void;
35
+ };
36
+ export type DefaultContexts = true | string[];
37
+ export type TagNamePreference = {
38
+ [key: string]: false | string | {
39
+ message: string;
40
+ replacement?: string;
41
+ };
42
+ };
43
+ export type PathDoesNotBeginWith = (name: string, otherPathName: string) => boolean;
44
+ /**
45
+ * @param {string} name
46
+ * @returns {(otherPathName: string) => boolean}
47
+ */
48
+ export function comparePaths(name: string): (otherPathName: string) => boolean;
49
+ /**
50
+ * Since path segments may be unquoted (if matching a reserved word,
51
+ * identifier or numeric literal) or single or double quoted, in either
52
+ * the `@param` or in source, we need to strip the quotes to give a fair
53
+ * comparison.
54
+ * @param {string} str
55
+ * @returns {string}
56
+ */
57
+ export function dropPathSegmentQuotes(str: string): string;
58
+ /**
59
+ * @typedef {true|string[]} DefaultContexts
60
+ */
61
+ /**
62
+ * Checks user option for `contexts` array, defaulting to
63
+ * contexts designated by the rule. Returns an array of
64
+ * ESTree AST types, indicating allowable contexts.
65
+ * @param {import('eslint').Rule.RuleContext} context
66
+ * @param {DefaultContexts|undefined} defaultContexts
67
+ * @param {{
68
+ * contexts?: import('./iterateJsdoc.js').Context[]
69
+ * }} settings
70
+ * @returns {(string|import('./iterateJsdoc.js').ContextObject)[]}
71
+ */
72
+ export function enforcedContexts(context: import("eslint").Rule.RuleContext, defaultContexts: DefaultContexts | undefined, settings: {
73
+ contexts?: import("./iterateJsdoc.js").Context[];
74
+ }): (string | import("./iterateJsdoc.js").ContextObject)[];
75
+ /**
76
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
77
+ * @param {import('eslint').Rule.Node|null} node
78
+ * @param {import('eslint').Rule.RuleContext} context
79
+ * @param {import('json-schema').JSONSchema4} schema
80
+ * @returns {boolean}
81
+ */
82
+ export function exemptSpeciaMethods(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline, node: import("eslint").Rule.Node | null, context: import("eslint").Rule.RuleContext, schema: import("json-schema").JSONSchema4): boolean;
83
+ /**
84
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
85
+ * @param {(tag: import('@es-joy/jsdoccomment').JsdocTagWithInline) => boolean} filter
86
+ * @returns {import('@es-joy/jsdoccomment').JsdocTagWithInline[]}
87
+ */
88
+ export function filterTags(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline, filter: (tag: import("@es-joy/jsdoccomment").JsdocTagWithInline) => boolean): import("@es-joy/jsdoccomment").JsdocTagWithInline[];
89
+ /**
90
+ * @typedef {undefined|string|{
91
+ * name: Integer,
92
+ * restElement: boolean
93
+ * }|{
94
+ * isRestProperty: boolean|undefined,
95
+ * name: string,
96
+ * restElement: boolean
97
+ * }|{
98
+ * name: string,
99
+ * restElement: boolean
100
+ * }} ParamCommon
101
+ */
102
+ /**
103
+ * @typedef {ParamCommon|[string|undefined, (FlattendRootInfo & {
104
+ * annotationParamName?: string,
105
+ * })]|NestedParamInfo} ParamNameInfo
106
+ */
107
+ /**
108
+ * @typedef {{
109
+ * hasPropertyRest: boolean,
110
+ * hasRestElement: boolean,
111
+ * names: string[],
112
+ * rests: boolean[],
113
+ * }} FlattendRootInfo
114
+ */
115
+ /**
116
+ * @typedef {[string, (string[]|ParamInfo[])]} NestedParamInfo
117
+ */
118
+ /**
119
+ * @typedef {ParamCommon|
120
+ * [string|undefined, (FlattendRootInfo & {
121
+ * annotationParamName?: string
122
+ * })]|
123
+ * NestedParamInfo} ParamInfo
124
+ */
125
+ /**
126
+ * Given a nested array of property names, reduce them to a single array,
127
+ * appending the name of the root element along the way if present.
128
+ * @callback FlattenRoots
129
+ * @param {ParamInfo[]} params
130
+ * @param {string} [root]
131
+ * @returns {FlattendRootInfo}
132
+ */
133
+ /** @type {FlattenRoots} */
134
+ export const flattenRoots: FlattenRoots;
135
+ /**
136
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
137
+ * @param {string} tagName
138
+ * @param {(
139
+ * matchingJsdocTag: import('@es-joy/jsdoccomment').JsdocTagWithInline,
140
+ * targetTagName: string
141
+ * ) => void} arrayHandler
142
+ * @param {object} cfg
143
+ * @param {import('eslint').Rule.RuleContext} [cfg.context]
144
+ * @param {ParserMode} [cfg.mode]
145
+ * @param {import('./iterateJsdoc.js').Report} [cfg.report]
146
+ * @param {TagNamePreference} [cfg.tagNamePreference]
147
+ * @param {boolean} [cfg.skipReportingBlockedTag]
148
+ * @returns {void}
149
+ */
150
+ export function forEachPreferredTag(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline, tagName: string, arrayHandler: (matchingJsdocTag: import("@es-joy/jsdoccomment").JsdocTagWithInline, targetTagName: string) => void, { context, mode, report, skipReportingBlockedTag, tagNamePreference, }?: {
151
+ context?: import("eslint").Rule.RuleContext | undefined;
152
+ mode?: ParserMode | undefined;
153
+ report?: import("./iterateJsdoc.js").Report | undefined;
154
+ tagNamePreference?: TagNamePreference | undefined;
155
+ skipReportingBlockedTag?: boolean | undefined;
156
+ }): void;
157
+ /**
158
+ * Get all tags, inline tags and inline tags in tags
159
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
160
+ * @returns {(import('comment-parser').Spec|
161
+ * import('@es-joy/jsdoccomment').JsdocInlineTagNoType & {
162
+ * line?: number | undefined; column?: number | undefined;
163
+ * })[]}
164
+ */
165
+ export function getAllTags(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline): (import("comment-parser").Spec | (import("@es-joy/jsdoccomment").JsdocInlineTagNoType & {
166
+ line?: number | undefined;
167
+ column?: number | undefined;
168
+ }))[];
169
+ /**
170
+ * @param {import('./iterateJsdoc.js').Context[]} contexts
171
+ * @param {import('./iterateJsdoc.js').CheckJsdoc} checkJsdoc
172
+ * @param {import('@es-joy/jsdoccomment').CommentHandler} [handler]
173
+ * @returns {import('eslint').Rule.RuleListener}
174
+ */
175
+ export function getContextObject(contexts: import("./iterateJsdoc.js").Context[], checkJsdoc: import("./iterateJsdoc.js").CheckJsdoc, handler?: import("@es-joy/jsdoccomment").CommentHandler): import("eslint").Rule.RuleListener;
176
+ /**
177
+ * @param {ESTreeOrTypeScriptNode|null} functionNode
178
+ * @param {boolean} [checkDefaultObjects]
179
+ * @param {boolean} [ignoreInterfacedParameters]
180
+ * @throws {Error}
181
+ * @returns {ParamNameInfo[]}
182
+ */
183
+ export function getFunctionParameterNames(functionNode: ESTreeOrTypeScriptNode | null, checkDefaultObjects?: boolean, ignoreInterfacedParameters?: boolean): ParamNameInfo[];
184
+ /**
185
+ * @param {import('eslint').SourceCode|{
186
+ * text: string
187
+ * }} sourceCode
188
+ * @returns {string}
189
+ */
190
+ export function getIndent(sourceCode: import("eslint").SourceCode | {
191
+ text: string;
192
+ }): string;
193
+ /**
194
+ * Get all inline tags and inline tags in tags
195
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
196
+ * @returns {(import('comment-parser').Spec|
197
+ * import('@es-joy/jsdoccomment').JsdocInlineTagNoType & {
198
+ * line?: number | undefined; column?: number | undefined;
199
+ * })[]}
200
+ */
201
+ export function getInlineTags(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline): (import("comment-parser").Spec | (import("@es-joy/jsdoccomment").JsdocInlineTagNoType & {
202
+ line?: number | undefined;
203
+ column?: number | undefined;
204
+ }))[];
205
+ /**
206
+ * Gets all names of the target type, including those that refer to a path, e.g.
207
+ * `foo` or `foo.bar`.
208
+ * @param {import('comment-parser').Block} jsdoc
209
+ * @param {string} targetTagName
210
+ * @returns {{
211
+ * idx: Integer,
212
+ * name: string,
213
+ * type: string
214
+ * }[]}
215
+ */
216
+ export function getJsdocTagsDeep(jsdoc: import("comment-parser").Block, targetTagName: string): {
217
+ idx: Integer;
218
+ name: string;
219
+ type: string;
220
+ }[];
221
+ /**
222
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
223
+ * @param {{
224
+ * tagName: string,
225
+ * context?: import('eslint').Rule.RuleContext,
226
+ * mode?: ParserMode,
227
+ * report?: import('./iterateJsdoc.js').Report
228
+ * tagNamePreference?: TagNamePreference
229
+ * skipReportingBlockedTag?: boolean,
230
+ * allowObjectReturn?: boolean,
231
+ * defaultMessage?: string,
232
+ * }} cfg
233
+ * @returns {string|undefined|false|{
234
+ * message: string;
235
+ * replacement?: string|undefined;
236
+ * }|{
237
+ * blocked: true,
238
+ * tagName: string
239
+ * }}
240
+ */
241
+ export function getPreferredTagName(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline, { allowObjectReturn, context, tagName, defaultMessage, mode, report, skipReportingBlockedTag, tagNamePreference, }: {
242
+ tagName: string;
243
+ context?: import("eslint").Rule.RuleContext;
244
+ mode?: ParserMode;
245
+ report?: import("./iterateJsdoc.js").Report;
246
+ tagNamePreference?: TagNamePreference;
247
+ skipReportingBlockedTag?: boolean;
248
+ allowObjectReturn?: boolean;
249
+ defaultMessage?: string;
250
+ }): string | undefined | false | {
251
+ message: string;
252
+ replacement?: string | undefined;
253
+ } | {
254
+ blocked: true;
255
+ tagName: string;
256
+ };
257
+ /**
258
+ * @typedef {{
259
+ * report: (descriptor: import('eslint').Rule.ReportDescriptor) => void
260
+ * }} Reporter
261
+ */
262
+ /**
263
+ * @param {string} name
264
+ * @param {ParserMode|undefined} mode
265
+ * @param {TagNamePreference} tagPreference
266
+ * @param {import('eslint').Rule.RuleContext} context
267
+ * @returns {string|false|{
268
+ * message: string;
269
+ * replacement?: string|undefined;
270
+ * }}
271
+ */
272
+ export function getPreferredTagNameSimple(name: string, mode: ParserMode | undefined, tagPreference?: TagNamePreference, context?: import("eslint").Rule.RuleContext): string | false | {
273
+ message: string;
274
+ replacement?: string | undefined;
275
+ };
276
+ /**
277
+ * @param {string} regexString
278
+ * @param {string} [requiredFlags]
279
+ * @returns {RegExp}
280
+ */
281
+ export function getRegexFromString(regexString: string, requiredFlags?: string): RegExp;
282
+ /**
283
+ * @param {import('comment-parser').Spec} tg
284
+ * @param {boolean} [returnArray]
285
+ * @returns {string[]|string}
286
+ */
287
+ export function getTagDescription(tg: import("comment-parser").Spec, returnArray?: boolean): string[] | string;
288
+ /**
289
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
290
+ * @param {string} tagName
291
+ * @returns {import('comment-parser').Spec[]}
292
+ */
293
+ export function getTags(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline, tagName: string): import("comment-parser").Spec[];
294
+ /**
295
+ * @typedef {{
296
+ * [key: string]: false|string|
297
+ * {message: string, replacement?: string}
298
+ * }} TagNamePreference
299
+ */
300
+ /**
301
+ * @param {import('eslint').Rule.RuleContext} context
302
+ * @param {ParserMode|undefined} mode
303
+ * @param {import('comment-parser').Spec[]} tags
304
+ * @returns {{
305
+ * tagsWithNames: import('comment-parser').Spec[],
306
+ * tagsWithoutNames: import('comment-parser').Spec[]
307
+ * }}
308
+ */
309
+ export function getTagsByType(context: import("eslint").Rule.RuleContext, mode: ParserMode | undefined, tags: import("comment-parser").Spec[]): {
310
+ tagsWithNames: import("comment-parser").Spec[];
311
+ tagsWithoutNames: import("comment-parser").Spec[];
312
+ };
313
+ /**
314
+ * @param {ParserMode} mode
315
+ * @param {import('./iterateJsdoc.js').StructuredTags} structuredTags
316
+ * @returns {import('./getDefaultTagStructureForMode.js').TagStructure}
317
+ */
318
+ export function getTagStructureForMode(mode: ParserMode, structuredTags: import("./iterateJsdoc.js").StructuredTags): import("./getDefaultTagStructureForMode.js").TagStructure;
319
+ /**
320
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
321
+ * @param {string[]} targetTagNames
322
+ * @returns {boolean}
323
+ */
324
+ export function hasATag(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline, targetTagNames: string[]): boolean;
325
+ /**
326
+ * @param {ESTreeOrTypeScriptNode} functionNode
327
+ * @returns {Integer}
328
+ */
329
+ export function hasParams(functionNode: ESTreeOrTypeScriptNode): Integer;
330
+ /**
331
+ * @param {import('./iterateJsdoc.js').JsdocBlockWithInline} jsdoc
332
+ * @param {string} targetTagName
333
+ * @returns {boolean}
334
+ */
335
+ export function hasTag(jsdoc: import("./iterateJsdoc.js").JsdocBlockWithInline, targetTagName: string): boolean;
336
+ /**
337
+ * Checks if a node has a throws statement.
338
+ * @param {ESTreeOrTypeScriptNode|null|undefined} node
339
+ * @param {boolean} [innerFunction]
340
+ * @returns {boolean}
341
+ */
342
+ export function hasThrowValue(node: ESTreeOrTypeScriptNode | null | undefined, innerFunction?: boolean): boolean;
343
+ /**
344
+ * Checks if a node has a return statement. Void return does not count.
345
+ * @param {ESTreeOrTypeScriptNode} node
346
+ * @param {boolean} [checkYieldReturnValue]
347
+ * @returns {boolean}
348
+ */
349
+ export function hasYieldValue(node: ESTreeOrTypeScriptNode, checkYieldReturnValue?: boolean): boolean;
350
+ /**
351
+ * @param {import('eslint').Rule.Node|null} node
352
+ * @returns {boolean}
353
+ */
354
+ export function isConstructor(node: import("eslint").Rule.Node | null): boolean;
355
+ /**
356
+ * @param {import('eslint').Rule.Node|null} node
357
+ * @returns {boolean}
358
+ */
359
+ export function isGetter(node: import("eslint").Rule.Node | null): boolean;
360
+ /**
361
+ * @param {string} tag
362
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
363
+ * @returns {boolean}
364
+ */
365
+ export function isNameOrNamepathDefiningTag(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean;
366
+ /**
367
+ * @param {string} tag
368
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
369
+ * @returns {boolean}
370
+ */
371
+ export function isNamepathOrUrlReferencingTag(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean;
372
+ /**
373
+ * @param {string} tag
374
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
375
+ * @returns {boolean}
376
+ */
377
+ export function isNamepathReferencingTag(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean;
378
+ /**
379
+ * @param {import('eslint').Rule.Node|null} node
380
+ * @returns {boolean}
381
+ */
382
+ export function isSetter(node: import("eslint").Rule.Node | null): boolean;
383
+ /**
384
+ * @param {import('eslint').Rule.RuleContext} context
385
+ * @param {ParserMode|undefined} mode
386
+ * @param {string} name
387
+ * @param {string[]} definedTags
388
+ * @returns {boolean}
389
+ */
390
+ export function isValidTag(context: import("eslint").Rule.RuleContext, mode: ParserMode | undefined, name: string, definedTags: string[]): boolean;
391
+ /**
392
+ * Checks if the JSDoc comment has an undefined type.
393
+ * @param {import('comment-parser').Spec|null|undefined} tag
394
+ * the tag which should be checked.
395
+ * @param {ParserMode} mode
396
+ * @returns {boolean}
397
+ * true in case a defined type is undeclared; otherwise false.
398
+ */
399
+ export function mayBeUndefinedTypeTag(tag: import("comment-parser").Spec | null | undefined, mode: ParserMode): boolean;
400
+ /**
401
+ * @param {import('./iterateJsdoc.js').StructuredTags} structuredTags
402
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
403
+ * @returns {void}
404
+ */
405
+ export function overrideTagStructure(structuredTags: import("./iterateJsdoc.js").StructuredTags, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): void;
406
+ /**
407
+ * @param {string} tag
408
+ */
409
+ /**
410
+ * Parses GCC Generic/Template types
411
+ * @see {@link https://github.com/google/closure-compiler/wiki/Generic-Types}
412
+ * @see {@link https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html#template}
413
+ * @param {import('comment-parser').Spec} tag
414
+ * @returns {string[]}
415
+ */
416
+ export function parseClosureTemplateTag(tag: import("comment-parser").Spec): string[];
417
+ /**
418
+ * @callback PathDoesNotBeginWith
419
+ * @param {string} name
420
+ * @param {string} otherPathName
421
+ * @returns {boolean}
422
+ */
423
+ /** @type {PathDoesNotBeginWith} */
424
+ export const pathDoesNotBeginWith: PathDoesNotBeginWith;
425
+ /**
426
+ * @param {import('@es-joy/jsdoccomment').JsdocBlockWithInline} jsdoc
427
+ * @param {import('@es-joy/jsdoccomment').JsdocTagWithInline} tag
428
+ * @param {import('jsdoc-type-pratt-parser').RootResult} parsedType
429
+ * @param {string} indent
430
+ * @param {string} typeBracketSpacing
431
+ */
432
+ export function rewireByParsedType(jsdoc: import("@es-joy/jsdoccomment").JsdocBlockWithInline, tag: import("@es-joy/jsdoccomment").JsdocTagWithInline, parsedType: import("jsdoc-type-pratt-parser").RootResult, indent: string, typeBracketSpacing?: string): void;
433
+ /**
434
+ * @param {ParserMode} mode
435
+ * @returns {void}
436
+ */
437
+ export function setTagStructure(mode: ParserMode): void;
438
+ export const strictNativeTypes: string[];
439
+ /**
440
+ * @param {string} tag
441
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
442
+ * @returns {boolean}
443
+ */
444
+ export function tagMightHaveEitherTypeOrNamePosition(tag: string, tagMap: import("./getDefaultTagStructureForMode.js").TagStructure): boolean;
445
+ /**
446
+ * @param {string} tag
447
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
448
+ * @returns {boolean}
449
+ */
450
+ export function tagMightHaveName(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean;
451
+ /**
452
+ * @param {string} tag
453
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
454
+ * @returns {boolean}
455
+ */
456
+ export function tagMightHaveNameOrNamepath(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean;
457
+ /**
458
+ * @param {string} tag
459
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
460
+ * @returns {boolean}
461
+ */
462
+ export function tagMightHaveNamepath(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean;
463
+ /**
464
+ * @param {string} tag
465
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
466
+ * @returns {boolean}
467
+ */
468
+ export function tagMightHaveNamePosition(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean;
469
+ /**
470
+ * @param {string} tag
471
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
472
+ * @returns {boolean|string}
473
+ */
474
+ export function tagMightHaveTypePosition(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean | string;
475
+ /**
476
+ * @param {import('comment-parser').Spec} tag
477
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
478
+ * @returns {boolean|undefined}
479
+ */
480
+ export function tagMissingRequiredTypeOrNamepath(tag: import("comment-parser").Spec, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean | undefined;
481
+ /**
482
+ * @param {string} tag
483
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
484
+ * @returns {boolean|undefined}
485
+ */
486
+ export function tagMustHaveNamePosition(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean | undefined;
487
+ /**
488
+ * @param {string} tag
489
+ * @param {import('./getDefaultTagStructureForMode.js').TagStructure} tagMap
490
+ * @returns {boolean|undefined}
491
+ */
492
+ export function tagMustHaveTypePosition(tag: string, tagMap?: import("./getDefaultTagStructureForMode.js").TagStructure): boolean | undefined;
493
+ export { hasReturnValue, hasValueOrExecutorHasNonEmptyResolveValue } from "./utils/hasReturnValue.js";
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
@@ -0,0 +1,3 @@
1
+ declare const _default: eslint.Rule.RuleModule;
2
+ export default _default;
3
+ import eslint from 'eslint';
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
@@ -0,0 +1,9 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
3
+ export type CustomSpacings = {
4
+ postDelimiter: import("../iterateJsdoc.js").Integer;
5
+ postHyphen: import("../iterateJsdoc.js").Integer;
6
+ postName: import("../iterateJsdoc.js").Integer;
7
+ postTag: import("../iterateJsdoc.js").Integer;
8
+ postType: import("../iterateJsdoc.js").Integer;
9
+ };
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
@@ -0,0 +1,7 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;
3
+ /**
4
+ * Iterates strict types to see if any should be added to `invalidTypes` (and
5
+ * the the relevant strict type returned as the new preferred type).
6
+ */
7
+ export type CheckNativeTypes = (preferredTypes: import("../iterateJsdoc.js").PreferredTypes, typeNodeName: string, preferred: string | undefined, parentNode: import("jsdoc-type-pratt-parser").NonRootResult | undefined, invalidTypes: (string | false | undefined)[][]) => string | undefined;
@@ -0,0 +1,2 @@
1
+ declare const _default: import("eslint").Rule.RuleModule;
2
+ export default _default;