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