@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,244 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.typeScriptTags = exports.jsdocTags = exports.closureTags = void 0;
7
+ /**
8
+ * @typedef {{
9
+ * [key: string]: string[]
10
+ * }} AliasedTags
11
+ */
12
+
13
+ /**
14
+ * @type {AliasedTags}
15
+ */
16
+ const jsdocTagsUndocumented = {
17
+ // Undocumented but present; see
18
+ // https://github.com/jsdoc/jsdoc/issues/1283#issuecomment-516816802
19
+ // https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js#L594
20
+ modifies: []
21
+ };
22
+
23
+ /**
24
+ * @type {AliasedTags}
25
+ */
26
+ const jsdocTags = exports.jsdocTags = {
27
+ ...jsdocTagsUndocumented,
28
+ abstract: ['virtual'],
29
+ access: [],
30
+ alias: [],
31
+ async: [],
32
+ augments: ['extends'],
33
+ author: [],
34
+ borrows: [],
35
+ callback: [],
36
+ class: ['constructor'],
37
+ classdesc: [],
38
+ constant: ['const'],
39
+ constructs: [],
40
+ copyright: [],
41
+ default: ['defaultvalue'],
42
+ deprecated: [],
43
+ description: ['desc'],
44
+ enum: [],
45
+ event: [],
46
+ example: [],
47
+ exports: [],
48
+ external: ['host'],
49
+ file: ['fileoverview', 'overview'],
50
+ fires: ['emits'],
51
+ function: ['func', 'method'],
52
+ generator: [],
53
+ global: [],
54
+ hideconstructor: [],
55
+ ignore: [],
56
+ implements: [],
57
+ inheritdoc: [],
58
+ // Allowing casing distinct from jsdoc `definitions.js` (required in Closure)
59
+ inheritDoc: [],
60
+ inner: [],
61
+ instance: [],
62
+ interface: [],
63
+ kind: [],
64
+ lends: [],
65
+ license: [],
66
+ listens: [],
67
+ member: ['var'],
68
+ memberof: [],
69
+ 'memberof!': [],
70
+ mixes: [],
71
+ mixin: [],
72
+ module: [],
73
+ name: [],
74
+ namespace: [],
75
+ override: [],
76
+ package: [],
77
+ param: ['arg', 'argument'],
78
+ private: [],
79
+ property: ['prop'],
80
+ protected: [],
81
+ public: [],
82
+ readonly: [],
83
+ requires: [],
84
+ returns: ['return'],
85
+ see: [],
86
+ since: [],
87
+ static: [],
88
+ summary: [],
89
+ this: [],
90
+ throws: ['exception'],
91
+ todo: [],
92
+ tutorial: [],
93
+ type: [],
94
+ typedef: [],
95
+ variation: [],
96
+ version: [],
97
+ yields: ['yield']
98
+ };
99
+
100
+ /**
101
+ * @see {@link https://tsdoc.org/}
102
+ * @type {AliasedTags}
103
+ */
104
+ const tsdocTags = {
105
+ alpha: [],
106
+ beta: [],
107
+ decorator: [],
108
+ eventProperty: [],
109
+ experimental: [],
110
+ packageDocumentation: [],
111
+ privateRemarks: [],
112
+ remarks: [],
113
+ sealed: []
114
+ };
115
+
116
+ /**
117
+ * @see {@link https://typedoc.org/documents/Tags.html}
118
+ * @type {AliasedTags}
119
+ */
120
+ const typedocTags = {
121
+ category: [],
122
+ // https://typedoc.org/documents/Tags._category.html#category-descriptions
123
+ categoryDescription: [],
124
+ // https://typedoc.org/documents/Tags._group.html#disablegroups
125
+ disableGroups: [],
126
+ document: [],
127
+ expand: [],
128
+ // https://typedoc.org/documents/Tags._expand.html#expandtype
129
+ expandType: [],
130
+ group: [],
131
+ // https://typedoc.org/documents/Tags._group.html#groupdescription
132
+ groupDescription: [],
133
+ hidden: [],
134
+ // https://typedoc.org/documents/Tags._category.html#navigation-customization
135
+ hideCategories: [],
136
+ // https://typedoc.org/documents/Tags._group.html#navigation-customization
137
+ hideGroups: [],
138
+ inline: [],
139
+ // https://typedoc.org/documents/Tags._inline.html#inlinetype
140
+ inlineType: [],
141
+ mergeModuleWith: [],
142
+ // https://typedoc.org/documents/Tags._expand.html#preventexpand
143
+ preventExpand: [],
144
+ // https://typedoc.org/documents/Tags._inline.html#preventinline
145
+ preventInline: [],
146
+ primaryExport: [],
147
+ // https://typedoc.org/documents/Tags._category.html#navigation-customization
148
+ showCategories: [],
149
+ // https://typedoc.org/documents/Tags._group.html#navigation-customization
150
+ showGroups: [],
151
+ sortStrategy: [],
152
+ useDeclaredType: []
153
+ };
154
+
155
+ /**
156
+ * @type {AliasedTags}
157
+ */
158
+ const typeScriptTags = exports.typeScriptTags = {
159
+ ...jsdocTags,
160
+ ...tsdocTags,
161
+ ...typedocTags,
162
+ // https://github.com/microsoft/TypeScript/issues/22160
163
+ // https://devblogs.microsoft.com/typescript/announcing-typescript-5-5/#the-jsdoc-import-tag
164
+ import: [],
165
+ // https://www.typescriptlang.org/tsconfig/#stripInternal
166
+ internal: [],
167
+ // https://typedoc.org/documents/Tags.TypeScript_Tags.html
168
+ jsx: [],
169
+ // https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#overload-support-in-jsdoc
170
+ overload: [],
171
+ // https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#satisfies-support-in-jsdoc
172
+ satisfies: [],
173
+ // `@template` is also in TypeScript per:
174
+ // https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html#template
175
+ template: [
176
+ // Alias as per https://typedoc.org/documents/Tags._typeParam.html
177
+ 'typeParam']
178
+ };
179
+
180
+ /**
181
+ * @type {AliasedTags}
182
+ */
183
+ const undocumentedClosureTags = {
184
+ // These are in Closure source but not in jsdoc source nor in the Closure
185
+ // docs: https://github.com/google/closure-compiler/blob/master/src/com/google/javascript/jscomp/parsing/Annotation.java
186
+ closurePrimitive: [],
187
+ customElement: [],
188
+ expose: [],
189
+ hidden: [],
190
+ idGenerator: [],
191
+ meaning: [],
192
+ mixinClass: [],
193
+ mixinFunction: [],
194
+ ngInject: [],
195
+ owner: [],
196
+ typeSummary: [],
197
+ wizaction: []
198
+ };
199
+ const {
200
+ /* eslint-disable no-unused-vars */
201
+ inheritdoc,
202
+ internal,
203
+ overload,
204
+ // Will be inverted to prefer `return`
205
+ returns,
206
+ satisfies,
207
+ /* eslint-enable no-unused-vars */
208
+ ...typeScriptTagsInClosure
209
+ } = typeScriptTags;
210
+
211
+ /**
212
+ * @type {AliasedTags}
213
+ */
214
+ const closureTags = exports.closureTags = {
215
+ ...typeScriptTagsInClosure,
216
+ ...undocumentedClosureTags,
217
+ // From https://github.com/google/closure-compiler/wiki/Annotating-JavaScript-for-the-Closure-Compiler
218
+ // These are all recognized in https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js
219
+ // except for the experimental `noinline` and the casing differences noted below
220
+
221
+ // Defined as a synonym of `const` in jsdoc `definitions.js`
222
+ define: [],
223
+ dict: [],
224
+ export: [],
225
+ externs: [],
226
+ final: [],
227
+ // With casing distinct from jsdoc `definitions.js`
228
+ implicitCast: [],
229
+ noalias: [],
230
+ nocollapse: [],
231
+ nocompile: [],
232
+ noinline: [],
233
+ nosideeffects: [],
234
+ polymer: [],
235
+ polymerBehavior: [],
236
+ preserve: [],
237
+ // Defined as a synonym of `interface` in jsdoc `definitions.js`
238
+ record: [],
239
+ return: ['returns'],
240
+ struct: [],
241
+ suppress: [],
242
+ unrestricted: []
243
+ };
244
+ //# sourceMappingURL=tagNames.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tagNames.cjs","names":["jsdocTagsUndocumented","modifies","jsdocTags","exports","abstract","access","alias","async","augments","author","borrows","callback","class","classdesc","constant","constructs","copyright","default","deprecated","description","enum","event","example","external","file","fires","function","generator","global","hideconstructor","ignore","implements","inheritdoc","inheritDoc","inner","instance","interface","kind","lends","license","listens","member","memberof","mixes","mixin","module","name","namespace","override","package","param","private","property","protected","public","readonly","requires","returns","see","since","static","summary","this","throws","todo","tutorial","type","typedef","variation","version","yields","tsdocTags","alpha","beta","decorator","eventProperty","experimental","packageDocumentation","privateRemarks","remarks","sealed","typedocTags","category","categoryDescription","disableGroups","document","expand","expandType","group","groupDescription","hidden","hideCategories","hideGroups","inline","inlineType","mergeModuleWith","preventExpand","preventInline","primaryExport","showCategories","showGroups","sortStrategy","useDeclaredType","typeScriptTags","import","internal","jsx","overload","satisfies","template","undocumentedClosureTags","closurePrimitive","customElement","expose","idGenerator","meaning","mixinClass","mixinFunction","ngInject","owner","typeSummary","wizaction","typeScriptTagsInClosure","closureTags","define","dict","export","externs","final","implicitCast","noalias","nocollapse","nocompile","noinline","nosideeffects","polymer","polymerBehavior","preserve","record","return","struct","suppress","unrestricted"],"sources":["../src/tagNames.js"],"sourcesContent":["/**\n * @typedef {{\n * [key: string]: string[]\n * }} AliasedTags\n */\n\n/**\n * @type {AliasedTags}\n */\nconst jsdocTagsUndocumented = {\n // Undocumented but present; see\n // https://github.com/jsdoc/jsdoc/issues/1283#issuecomment-516816802\n // https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js#L594\n modifies: [],\n};\n\n/**\n * @type {AliasedTags}\n */\nconst jsdocTags = {\n ...jsdocTagsUndocumented,\n abstract: [\n 'virtual',\n ],\n access: [],\n alias: [],\n async: [],\n augments: [\n 'extends',\n ],\n author: [],\n borrows: [],\n callback: [],\n class: [\n 'constructor',\n ],\n classdesc: [],\n constant: [\n 'const',\n ],\n constructs: [],\n copyright: [],\n default: [\n 'defaultvalue',\n ],\n deprecated: [],\n description: [\n 'desc',\n ],\n enum: [],\n event: [],\n example: [],\n exports: [],\n external: [\n 'host',\n ],\n file: [\n 'fileoverview',\n 'overview',\n ],\n fires: [\n 'emits',\n ],\n function: [\n 'func',\n 'method',\n ],\n generator: [],\n global: [],\n hideconstructor: [],\n ignore: [],\n implements: [],\n inheritdoc: [],\n\n // Allowing casing distinct from jsdoc `definitions.js` (required in Closure)\n inheritDoc: [],\n\n inner: [],\n instance: [],\n interface: [],\n kind: [],\n lends: [],\n license: [],\n listens: [],\n member: [\n 'var',\n ],\n memberof: [],\n 'memberof!': [],\n mixes: [],\n mixin: [],\n\n module: [],\n name: [],\n namespace: [],\n override: [],\n package: [],\n param: [\n 'arg',\n 'argument',\n ],\n private: [],\n property: [\n 'prop',\n ],\n protected: [],\n public: [],\n readonly: [],\n requires: [],\n returns: [\n 'return',\n ],\n see: [],\n since: [],\n static: [],\n summary: [],\n\n this: [],\n throws: [\n 'exception',\n ],\n todo: [],\n tutorial: [],\n type: [],\n typedef: [],\n variation: [],\n version: [],\n yields: [\n 'yield',\n ],\n};\n\n/**\n * @see {@link https://tsdoc.org/}\n * @type {AliasedTags}\n */\nconst tsdocTags = {\n alpha: [],\n beta: [],\n decorator: [],\n eventProperty: [],\n experimental: [],\n packageDocumentation: [],\n privateRemarks: [],\n remarks: [],\n sealed: [],\n};\n\n/**\n * @see {@link https://typedoc.org/documents/Tags.html}\n * @type {AliasedTags}\n */\nconst typedocTags = {\n category: [],\n // https://typedoc.org/documents/Tags._category.html#category-descriptions\n categoryDescription: [],\n // https://typedoc.org/documents/Tags._group.html#disablegroups\n disableGroups: [],\n document: [],\n expand: [],\n // https://typedoc.org/documents/Tags._expand.html#expandtype\n expandType: [],\n group: [],\n // https://typedoc.org/documents/Tags._group.html#groupdescription\n groupDescription: [],\n hidden: [],\n // https://typedoc.org/documents/Tags._category.html#navigation-customization\n hideCategories: [],\n // https://typedoc.org/documents/Tags._group.html#navigation-customization\n hideGroups: [],\n inline: [],\n // https://typedoc.org/documents/Tags._inline.html#inlinetype\n inlineType: [],\n mergeModuleWith: [],\n // https://typedoc.org/documents/Tags._expand.html#preventexpand\n preventExpand: [],\n // https://typedoc.org/documents/Tags._inline.html#preventinline\n preventInline: [],\n primaryExport: [],\n // https://typedoc.org/documents/Tags._category.html#navigation-customization\n showCategories: [],\n // https://typedoc.org/documents/Tags._group.html#navigation-customization\n showGroups: [],\n sortStrategy: [],\n useDeclaredType: [],\n};\n\n/**\n * @type {AliasedTags}\n */\nconst typeScriptTags = {\n ...jsdocTags,\n ...tsdocTags,\n ...typedocTags,\n\n // https://github.com/microsoft/TypeScript/issues/22160\n // https://devblogs.microsoft.com/typescript/announcing-typescript-5-5/#the-jsdoc-import-tag\n import: [],\n\n // https://www.typescriptlang.org/tsconfig/#stripInternal\n internal: [],\n\n // https://typedoc.org/documents/Tags.TypeScript_Tags.html\n jsx: [],\n\n // https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#overload-support-in-jsdoc\n overload: [],\n\n // https://devblogs.microsoft.com/typescript/announcing-typescript-5-0/#satisfies-support-in-jsdoc\n satisfies: [],\n\n // `@template` is also in TypeScript per:\n // https://www.typescriptlang.org/docs/handbook/jsdoc-supported-types.html#template\n template: [\n // Alias as per https://typedoc.org/documents/Tags._typeParam.html\n 'typeParam',\n ],\n};\n\n/**\n * @type {AliasedTags}\n */\nconst undocumentedClosureTags = {\n // These are in Closure source but not in jsdoc source nor in the Closure\n // docs: https://github.com/google/closure-compiler/blob/master/src/com/google/javascript/jscomp/parsing/Annotation.java\n closurePrimitive: [],\n customElement: [],\n expose: [],\n hidden: [],\n idGenerator: [],\n meaning: [],\n mixinClass: [],\n mixinFunction: [],\n ngInject: [],\n owner: [],\n typeSummary: [],\n wizaction: [],\n};\n\nconst {\n /* eslint-disable no-unused-vars */\n inheritdoc,\n internal,\n overload,\n // Will be inverted to prefer `return`\n returns,\n\n satisfies,\n /* eslint-enable no-unused-vars */\n ...typeScriptTagsInClosure\n} = typeScriptTags;\n\n/**\n * @type {AliasedTags}\n */\nconst closureTags = {\n ...typeScriptTagsInClosure,\n ...undocumentedClosureTags,\n\n // From https://github.com/google/closure-compiler/wiki/Annotating-JavaScript-for-the-Closure-Compiler\n // These are all recognized in https://github.com/jsdoc/jsdoc/blob/master/packages/jsdoc/lib/jsdoc/tag/dictionary/definitions.js\n // except for the experimental `noinline` and the casing differences noted below\n\n // Defined as a synonym of `const` in jsdoc `definitions.js`\n define: [],\n\n dict: [],\n export: [],\n externs: [],\n final: [],\n\n // With casing distinct from jsdoc `definitions.js`\n implicitCast: [],\n\n noalias: [],\n nocollapse: [],\n nocompile: [],\n noinline: [],\n nosideeffects: [],\n polymer: [],\n polymerBehavior: [],\n preserve: [],\n\n // Defined as a synonym of `interface` in jsdoc `definitions.js`\n record: [],\n\n return: [\n 'returns',\n ],\n\n struct: [],\n suppress: [],\n\n unrestricted: [],\n};\n\nexport {\n closureTags,\n jsdocTags,\n typeScriptTags,\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,16 @@
1
+ export type AliasedTags = {
2
+ [key: string]: string[];
3
+ };
4
+ /**
5
+ * @type {AliasedTags}
6
+ */
7
+ export const closureTags: AliasedTags;
8
+ /**
9
+ * @type {AliasedTags}
10
+ */
11
+ export const jsdocTags: AliasedTags;
12
+ /**
13
+ * @type {AliasedTags}
14
+ */
15
+ export const typeScriptTags: AliasedTags;
16
+ //# sourceMappingURL=tagNames.d.ts.map
@@ -0,0 +1,263 @@
1
+ 'use strict';
2
+
3
+ // https://262.ecma-international.org/14.0/#sec-keywords-and-reserved-words
4
+ // 14 is ES2023
5
+ const identifiers = [
6
+ // Keywords
7
+ 'await',
8
+ 'break',
9
+ 'case',
10
+ 'catch',
11
+ 'class',
12
+ 'const',
13
+ 'continue',
14
+ 'debugger',
15
+ 'default',
16
+ 'delete',
17
+ 'do',
18
+ 'else',
19
+ 'enum',
20
+ 'export',
21
+ 'extends',
22
+ 'false',
23
+ 'finally',
24
+ 'for',
25
+ 'function',
26
+ 'if',
27
+ 'import',
28
+ 'in',
29
+ 'instanceof',
30
+ 'new',
31
+ 'null',
32
+ 'return',
33
+ 'super',
34
+ 'switch',
35
+ 'this',
36
+ 'throw',
37
+ 'true',
38
+ 'try',
39
+ 'typeof',
40
+ 'var',
41
+ 'void',
42
+ 'while',
43
+ 'with',
44
+ 'yield',
45
+
46
+ // Future reserved keywords (strict mode)
47
+ 'implements',
48
+ 'interface',
49
+ 'let',
50
+ 'package',
51
+ 'private',
52
+ 'protected',
53
+ 'public',
54
+ 'static',
55
+
56
+ // Not keywords, but still restricted
57
+ 'arguments',
58
+ 'eval',
59
+ ];
60
+
61
+ // https://262.ecma-international.org/14.0/#sec-value-properties-of-the-global-object
62
+ const globalProperties = [
63
+ 'globalThis',
64
+ 'Infinity',
65
+ 'NaN',
66
+ 'undefined',
67
+ ];
68
+
69
+ function reservedIdentifiers$1({includeGlobalProperties = false} = {}) {
70
+ return new Set([
71
+ ...identifiers,
72
+ ...(includeGlobalProperties ? globalProperties : []),
73
+ ]);
74
+ }
75
+
76
+ /* eslint-disable no-bitwise */
77
+
78
+ const BASE = 62;
79
+ const BASE_BIGINT = 62n;
80
+ const DEFAULT_ALPHABET = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
81
+
82
+ const cachedEncoder = new globalThis.TextEncoder();
83
+ const cachedDecoder = new globalThis.TextDecoder();
84
+
85
+ function assertString(value, label) {
86
+ if (typeof value !== 'string') {
87
+ throw new TypeError(`The \`${label}\` parameter must be a string, got \`${value}\` (${typeof value}).`);
88
+ }
89
+ }
90
+
91
+ function validateAlphabet(alphabet) {
92
+ if (typeof alphabet !== 'string') {
93
+ throw new TypeError(`The alphabet must be a string, got \`${alphabet}\` (${typeof alphabet}).`);
94
+ }
95
+
96
+ if (alphabet.length !== BASE) {
97
+ throw new TypeError(`The alphabet must be exactly ${BASE} characters long, got ${alphabet.length}.`);
98
+ }
99
+
100
+ const uniqueCharacters = new Set(alphabet);
101
+ if (uniqueCharacters.size !== BASE) {
102
+ throw new TypeError(`The alphabet must contain ${BASE} unique characters, got ${uniqueCharacters.size}.`);
103
+ }
104
+ }
105
+
106
+ class Base62 {
107
+ constructor(options = {}) {
108
+ const alphabet = options.alphabet ?? DEFAULT_ALPHABET;
109
+ validateAlphabet(alphabet);
110
+ this.alphabet = [...alphabet];
111
+ this.indices = new Map(this.alphabet.map((character, index) => [character, index]));
112
+ }
113
+
114
+ #getIndex(character) {
115
+ const index = this.indices.get(character);
116
+
117
+ if (index === undefined) {
118
+ throw new TypeError(`Unexpected character for Base62 encoding: \`${character}\`.`);
119
+ }
120
+
121
+ return index;
122
+ }
123
+
124
+ encodeString(string) {
125
+ assertString(string, 'string');
126
+ return this.encodeBytes(cachedEncoder.encode(string));
127
+ }
128
+
129
+ decodeString(encodedString) {
130
+ assertString(encodedString, 'encodedString');
131
+ return cachedDecoder.decode(this.decodeBytes(encodedString));
132
+ }
133
+
134
+ encodeBytes(bytes) {
135
+ if (!(bytes instanceof Uint8Array)) {
136
+ throw new TypeError('The `bytes` parameter must be an instance of Uint8Array.');
137
+ }
138
+
139
+ if (bytes.length === 0) {
140
+ return '';
141
+ }
142
+
143
+ // Prepend 0x01 to the byte array before encoding to ensure the BigInt conversion
144
+ // does not strip any leading zeros and to prevent any byte sequence from being
145
+ // interpreted as a numerically zero value.
146
+ let value = 1n;
147
+
148
+ for (const byte of bytes) {
149
+ value = (value << 8n) | BigInt(byte);
150
+ }
151
+
152
+ return this.encodeBigInt(value);
153
+ }
154
+
155
+ decodeBytes(encodedString) {
156
+ assertString(encodedString, 'encodedString');
157
+
158
+ if (encodedString.length === 0) {
159
+ return new Uint8Array();
160
+ }
161
+
162
+ let value = this.decodeBigInt(encodedString);
163
+
164
+ const byteArray = [];
165
+ while (value > 0n) {
166
+ byteArray.push(Number(value & 0xFFn));
167
+ value >>= 8n;
168
+ }
169
+
170
+ // Remove the 0x01 that was prepended during encoding.
171
+ return Uint8Array.from(byteArray.reverse().slice(1));
172
+ }
173
+
174
+ encodeInteger(integer) {
175
+ if (!Number.isInteger(integer)) {
176
+ throw new TypeError(`Expected an integer, got \`${integer}\` (${typeof integer}).`);
177
+ }
178
+
179
+ if (integer < 0) {
180
+ throw new TypeError('The integer must be non-negative.');
181
+ }
182
+
183
+ if (integer === 0) {
184
+ return this.alphabet[0];
185
+ }
186
+
187
+ let encodedString = '';
188
+ while (integer > 0) {
189
+ encodedString = this.alphabet[integer % BASE] + encodedString;
190
+ integer = Math.floor(integer / BASE);
191
+ }
192
+
193
+ return encodedString;
194
+ }
195
+
196
+ decodeInteger(encodedString) {
197
+ assertString(encodedString, 'encodedString');
198
+
199
+ let integer = 0;
200
+ for (const character of encodedString) {
201
+ integer = (integer * BASE) + this.#getIndex(character);
202
+ }
203
+
204
+ return integer;
205
+ }
206
+
207
+ encodeBigInt(bigint) {
208
+ if (typeof bigint !== 'bigint') {
209
+ throw new TypeError(`Expected a bigint, got \`${bigint}\` (${typeof bigint}).`);
210
+ }
211
+
212
+ if (bigint < 0) {
213
+ throw new TypeError('The bigint must be non-negative.');
214
+ }
215
+
216
+ if (bigint === 0n) {
217
+ return this.alphabet[0];
218
+ }
219
+
220
+ let encodedString = '';
221
+ while (bigint > 0n) {
222
+ encodedString = this.alphabet[Number(bigint % BASE_BIGINT)] + encodedString;
223
+ bigint /= BASE_BIGINT;
224
+ }
225
+
226
+ return encodedString;
227
+ }
228
+
229
+ decodeBigInt(encodedString) {
230
+ assertString(encodedString, 'encodedString');
231
+
232
+ let bigint = 0n;
233
+ for (const character of encodedString) {
234
+ bigint = (bigint * BASE_BIGINT) + BigInt(this.#getIndex(character));
235
+ }
236
+
237
+ return bigint;
238
+ }
239
+ }
240
+
241
+ // Create default instance with standard alphabet
242
+ const defaultBase62 = new Base62();
243
+ const encodeInteger = integer => defaultBase62.encodeInteger(integer);
244
+
245
+ const reservedIdentifiers = reservedIdentifiers$1({includeGlobalProperties: true});
246
+
247
+ const encodeCodePoint = x => `$${encodeInteger(x.codePointAt(0))}$`;
248
+
249
+ function toValidIdentifier(value) {
250
+ if (typeof value !== 'string') {
251
+ throw new TypeError(`Expected a string, got \`${typeof value}\`.`);
252
+ }
253
+
254
+ if (reservedIdentifiers.has(value)) {
255
+ // We prefix with underscore to avoid any potential conflicts with the Base62 encoded string.
256
+ return `$_${value}$`;
257
+ }
258
+
259
+ return value.replaceAll(/(?<!^)\P{ID_Continue}/gu, encodeCodePoint)
260
+ .replaceAll(/^[^_\p{ID_Start}]/gu, encodeCodePoint);
261
+ }
262
+
263
+ module.exports = toValidIdentifier;