eslint-plugin-jsdoc 63.3.3 → 64.0.1

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 (270) hide show
  1. package/dist/index.d.ts +14 -0
  2. package/package.json +23 -48
  3. package/src/index.js +22 -6
  4. package/dist/WarnSettings.cjs +0 -38
  5. package/dist/WarnSettings.cjs.map +0 -1
  6. package/dist/alignTransform.cjs +0 -402
  7. package/dist/alignTransform.cjs.map +0 -1
  8. package/dist/buildForbidRuleDefinition.cjs +0 -101
  9. package/dist/buildForbidRuleDefinition.cjs.map +0 -1
  10. package/dist/buildRejectOrPreferRuleDefinition.cjs +0 -352
  11. package/dist/buildRejectOrPreferRuleDefinition.cjs.map +0 -1
  12. package/dist/cjs/WarnSettings.d.ts +0 -16
  13. package/dist/cjs/alignTransform.d.ts +0 -33
  14. package/dist/cjs/buildForbidRuleDefinition.d.ts +0 -14
  15. package/dist/cjs/buildRejectOrPreferRuleDefinition.d.ts +0 -8
  16. package/dist/cjs/defaultTagOrder.d.ts +0 -4
  17. package/dist/cjs/exportParser.d.ts +0 -40
  18. package/dist/cjs/getDefaultTagStructureForMode.d.ts +0 -10
  19. package/dist/cjs/getJsdocProcessorPlugin.d.cts +0 -5
  20. package/dist/cjs/getJsdocProcessorPlugin.d.ts +0 -66
  21. package/dist/cjs/index-cjs.d.ts +0 -26
  22. package/dist/cjs/index.cjs.d.cts +0 -2
  23. package/dist/cjs/iterateJsdoc.d.cts +0 -7
  24. package/dist/cjs/iterateJsdoc.d.ts +0 -495
  25. package/dist/cjs/jsdocUtils.d.ts +0 -500
  26. package/dist/cjs/rules/checkAccess.d.ts +0 -2
  27. package/dist/cjs/rules/checkAlignment.d.ts +0 -2
  28. package/dist/cjs/rules/checkExamples.d.ts +0 -3
  29. package/dist/cjs/rules/checkIndentation.d.ts +0 -2
  30. package/dist/cjs/rules/checkLineAlignment.d.ts +0 -9
  31. package/dist/cjs/rules/checkParamNames.d.ts +0 -2
  32. package/dist/cjs/rules/checkPropertyNames.d.ts +0 -2
  33. package/dist/cjs/rules/checkSyntax.d.ts +0 -2
  34. package/dist/cjs/rules/checkTagNames.d.ts +0 -2
  35. package/dist/cjs/rules/checkTemplateNames.d.ts +0 -2
  36. package/dist/cjs/rules/checkTypes.d.ts +0 -7
  37. package/dist/cjs/rules/checkValues.d.ts +0 -2
  38. package/dist/cjs/rules/convertToJsdocComments.d.ts +0 -266
  39. package/dist/cjs/rules/emptyTags.d.ts +0 -2
  40. package/dist/cjs/rules/escapeInlineTags.d.ts +0 -2
  41. package/dist/cjs/rules/implementsOnClasses.d.ts +0 -2
  42. package/dist/cjs/rules/importsAsDependencies.d.ts +0 -2
  43. package/dist/cjs/rules/informativeDocs.d.ts +0 -2
  44. package/dist/cjs/rules/linesBeforeBlock.d.ts +0 -2
  45. package/dist/cjs/rules/matchDescription.d.ts +0 -2
  46. package/dist/cjs/rules/matchName.d.ts +0 -2
  47. package/dist/cjs/rules/multilineBlocks.d.ts +0 -2
  48. package/dist/cjs/rules/noBadBlocks.d.ts +0 -2
  49. package/dist/cjs/rules/noBlankBlockDescriptions.d.ts +0 -2
  50. package/dist/cjs/rules/noBlankBlocks.d.ts +0 -2
  51. package/dist/cjs/rules/noDefaults.d.ts +0 -2
  52. package/dist/cjs/rules/noMissingSyntax.d.ts +0 -9
  53. package/dist/cjs/rules/noMultiAsterisks.d.ts +0 -2
  54. package/dist/cjs/rules/noRestrictedSyntax.d.ts +0 -2
  55. package/dist/cjs/rules/noTypes.d.ts +0 -2
  56. package/dist/cjs/rules/noUndefinedTypes.d.ts +0 -2
  57. package/dist/cjs/rules/normalizeSeeLinks.d.ts +0 -2
  58. package/dist/cjs/rules/preferImportTag.d.ts +0 -2
  59. package/dist/cjs/rules/requireAsteriskPrefix.d.ts +0 -2
  60. package/dist/cjs/rules/requireDescription.d.ts +0 -2
  61. package/dist/cjs/rules/requireDescriptionCompleteSentence.d.ts +0 -2
  62. package/dist/cjs/rules/requireExample.d.ts +0 -2
  63. package/dist/cjs/rules/requireFileOverview.d.ts +0 -2
  64. package/dist/cjs/rules/requireHyphenBeforeParamDescription.d.ts +0 -2
  65. package/dist/cjs/rules/requireJsdoc.d.ts +0 -24
  66. package/dist/cjs/rules/requireParam.d.ts +0 -3
  67. package/dist/cjs/rules/requireParamDescription.d.ts +0 -2
  68. package/dist/cjs/rules/requireParamName.d.ts +0 -2
  69. package/dist/cjs/rules/requireParamType.d.ts +0 -2
  70. package/dist/cjs/rules/requireProperty.d.ts +0 -2
  71. package/dist/cjs/rules/requirePropertyDescription.d.ts +0 -2
  72. package/dist/cjs/rules/requirePropertyName.d.ts +0 -2
  73. package/dist/cjs/rules/requirePropertyType.d.ts +0 -2
  74. package/dist/cjs/rules/requireRejects.d.ts +0 -2
  75. package/dist/cjs/rules/requireReturns.d.ts +0 -2
  76. package/dist/cjs/rules/requireReturnsCheck.d.ts +0 -2
  77. package/dist/cjs/rules/requireReturnsDescription.d.ts +0 -2
  78. package/dist/cjs/rules/requireReturnsType.d.ts +0 -2
  79. package/dist/cjs/rules/requireTags.d.ts +0 -2
  80. package/dist/cjs/rules/requireTemplate.d.ts +0 -2
  81. package/dist/cjs/rules/requireThrows.d.ts +0 -2
  82. package/dist/cjs/rules/requireYields.d.ts +0 -2
  83. package/dist/cjs/rules/requireYieldsCheck.d.ts +0 -2
  84. package/dist/cjs/rules/sortTags.d.ts +0 -2
  85. package/dist/cjs/rules/tagLines.d.ts +0 -2
  86. package/dist/cjs/rules/textEscaping.d.ts +0 -2
  87. package/dist/cjs/rules/tsMethodSignatureStyle.d.ts +0 -2
  88. package/dist/cjs/rules/tsNoEmptyObjectType.d.ts +0 -2
  89. package/dist/cjs/rules/tsNoUnnecessaryTemplateExpression.d.ts +0 -2
  90. package/dist/cjs/rules/tsPreferFunctionType.d.ts +0 -2
  91. package/dist/cjs/rules/typeFormatting.d.ts +0 -2
  92. package/dist/cjs/rules/validTypes.d.ts +0 -2
  93. package/dist/cjs/tagNames.d.ts +0 -15
  94. package/dist/cjs/utils/hasReturnValue.d.ts +0 -19
  95. package/dist/defaultTagOrder.cjs +0 -46
  96. package/dist/defaultTagOrder.cjs.map +0 -1
  97. package/dist/exportParser.cjs +0 -732
  98. package/dist/exportParser.cjs.map +0 -1
  99. package/dist/generateDocs.cjs +0 -342
  100. package/dist/generateDocs.cjs.map +0 -1
  101. package/dist/generateOptions.cjs +0 -62
  102. package/dist/generateOptions.cjs.map +0 -1
  103. package/dist/generateRule.cjs +0 -248
  104. package/dist/generateRule.cjs.map +0 -1
  105. package/dist/generateRuleTypes.cjs +0 -24
  106. package/dist/generateRuleTypes.cjs.map +0 -1
  107. package/dist/getDefaultTagStructureForMode.cjs +0 -289
  108. package/dist/getDefaultTagStructureForMode.cjs.map +0 -1
  109. package/dist/getJsdocProcessorPlugin.cjs +0 -587
  110. package/dist/getJsdocProcessorPlugin.cjs.map +0 -1
  111. package/dist/getJsdocProcessorPlugin.cts +0 -5
  112. package/dist/index-cjs.cjs +0 -600
  113. package/dist/index-cjs.cjs.map +0 -1
  114. package/dist/index-cjs.d.ts +0 -27
  115. package/dist/index-esm.cjs +0 -162
  116. package/dist/index-esm.cjs.map +0 -1
  117. package/dist/index-esm.d.ts +0 -72
  118. package/dist/index.cjs +0 -748
  119. package/dist/index.cjs.cts +0 -3
  120. package/dist/index.cjs.map +0 -1
  121. package/dist/iterateJsdoc.cjs +0 -2150
  122. package/dist/iterateJsdoc.cjs.map +0 -1
  123. package/dist/iterateJsdoc.cts +0 -7
  124. package/dist/jsdocUtils.cjs +0 -1786
  125. package/dist/jsdocUtils.cjs.map +0 -1
  126. package/dist/rules/checkAccess.cjs +0 -40
  127. package/dist/rules/checkAccess.cjs.map +0 -1
  128. package/dist/rules/checkAlignment.cjs +0 -78
  129. package/dist/rules/checkAlignment.cjs.map +0 -1
  130. package/dist/rules/checkExamples.cjs +0 -521
  131. package/dist/rules/checkExamples.cjs.map +0 -1
  132. package/dist/rules/checkIndentation.cjs +0 -170
  133. package/dist/rules/checkIndentation.cjs.map +0 -1
  134. package/dist/rules/checkLineAlignment.cjs +0 -398
  135. package/dist/rules/checkLineAlignment.cjs.map +0 -1
  136. package/dist/rules/checkParamNames.cjs +0 -407
  137. package/dist/rules/checkParamNames.cjs.map +0 -1
  138. package/dist/rules/checkPropertyNames.cjs +0 -135
  139. package/dist/rules/checkPropertyNames.cjs.map +0 -1
  140. package/dist/rules/checkSyntax.cjs +0 -38
  141. package/dist/rules/checkSyntax.cjs.map +0 -1
  142. package/dist/rules/checkTagNames.cjs +0 -312
  143. package/dist/rules/checkTagNames.cjs.map +0 -1
  144. package/dist/rules/checkTemplateNames.cjs +0 -192
  145. package/dist/rules/checkTemplateNames.cjs.map +0 -1
  146. package/dist/rules/checkTypes.cjs +0 -111
  147. package/dist/rules/checkTypes.cjs.map +0 -1
  148. package/dist/rules/checkValues.cjs +0 -166
  149. package/dist/rules/checkValues.cjs.map +0 -1
  150. package/dist/rules/convertToJsdocComments.cjs +0 -356
  151. package/dist/rules/convertToJsdocComments.cjs.map +0 -1
  152. package/dist/rules/emptyTags.cjs +0 -98
  153. package/dist/rules/emptyTags.cjs.map +0 -1
  154. package/dist/rules/escapeInlineTags.cjs +0 -234
  155. package/dist/rules/escapeInlineTags.cjs.map +0 -1
  156. package/dist/rules/implementsOnClasses.cjs +0 -74
  157. package/dist/rules/implementsOnClasses.cjs.map +0 -1
  158. package/dist/rules/importsAsDependencies.cjs +0 -104
  159. package/dist/rules/importsAsDependencies.cjs.map +0 -1
  160. package/dist/rules/informativeDocs.cjs +0 -187
  161. package/dist/rules/informativeDocs.cjs.map +0 -1
  162. package/dist/rules/linesBeforeBlock.cjs +0 -120
  163. package/dist/rules/linesBeforeBlock.cjs.map +0 -1
  164. package/dist/rules/matchDescription.cjs +0 -356
  165. package/dist/rules/matchDescription.cjs.map +0 -1
  166. package/dist/rules/matchName.cjs +0 -160
  167. package/dist/rules/matchName.cjs.map +0 -1
  168. package/dist/rules/multilineBlocks.cjs +0 -431
  169. package/dist/rules/multilineBlocks.cjs.map +0 -1
  170. package/dist/rules/noBadBlocks.cjs +0 -100
  171. package/dist/rules/noBadBlocks.cjs.map +0 -1
  172. package/dist/rules/noBlankBlockDescriptions.cjs +0 -63
  173. package/dist/rules/noBlankBlockDescriptions.cjs.map +0 -1
  174. package/dist/rules/noBlankBlocks.cjs +0 -54
  175. package/dist/rules/noBlankBlocks.cjs.map +0 -1
  176. package/dist/rules/noDefaults.cjs +0 -102
  177. package/dist/rules/noDefaults.cjs.map +0 -1
  178. package/dist/rules/noMissingSyntax.cjs +0 -196
  179. package/dist/rules/noMissingSyntax.cjs.map +0 -1
  180. package/dist/rules/noMultiAsterisks.cjs +0 -126
  181. package/dist/rules/noMultiAsterisks.cjs.map +0 -1
  182. package/dist/rules/noRestrictedSyntax.cjs +0 -68
  183. package/dist/rules/noRestrictedSyntax.cjs.map +0 -1
  184. package/dist/rules/noTypes.cjs +0 -101
  185. package/dist/rules/noTypes.cjs.map +0 -1
  186. package/dist/rules/noUndefinedTypes.cjs +0 -616
  187. package/dist/rules/noUndefinedTypes.cjs.map +0 -1
  188. package/dist/rules/normalizeSeeLinks.cjs +0 -271
  189. package/dist/rules/normalizeSeeLinks.cjs.map +0 -1
  190. package/dist/rules/preferImportTag.cjs +0 -362
  191. package/dist/rules/preferImportTag.cjs.map +0 -1
  192. package/dist/rules/requireAsteriskPrefix.cjs +0 -190
  193. package/dist/rules/requireAsteriskPrefix.cjs.map +0 -1
  194. package/dist/rules/requireDescription.cjs +0 -164
  195. package/dist/rules/requireDescription.cjs.map +0 -1
  196. package/dist/rules/requireDescriptionCompleteSentence.cjs +0 -321
  197. package/dist/rules/requireDescriptionCompleteSentence.cjs.map +0 -1
  198. package/dist/rules/requireExample.cjs +0 -136
  199. package/dist/rules/requireExample.cjs.map +0 -1
  200. package/dist/rules/requireFileOverview.cjs +0 -194
  201. package/dist/rules/requireFileOverview.cjs.map +0 -1
  202. package/dist/rules/requireHyphenBeforeParamDescription.cjs +0 -166
  203. package/dist/rules/requireHyphenBeforeParamDescription.cjs.map +0 -1
  204. package/dist/rules/requireJsdoc.cjs +0 -721
  205. package/dist/rules/requireJsdoc.cjs.map +0 -1
  206. package/dist/rules/requireParam.cjs +0 -772
  207. package/dist/rules/requireParam.cjs.map +0 -1
  208. package/dist/rules/requireParamDescription.cjs +0 -105
  209. package/dist/rules/requireParamDescription.cjs.map +0 -1
  210. package/dist/rules/requireParamName.cjs +0 -68
  211. package/dist/rules/requireParamName.cjs.map +0 -1
  212. package/dist/rules/requireParamType.cjs +0 -104
  213. package/dist/rules/requireParamType.cjs.map +0 -1
  214. package/dist/rules/requireProperty.cjs +0 -63
  215. package/dist/rules/requireProperty.cjs.map +0 -1
  216. package/dist/rules/requirePropertyDescription.cjs +0 -29
  217. package/dist/rules/requirePropertyDescription.cjs.map +0 -1
  218. package/dist/rules/requirePropertyName.cjs +0 -29
  219. package/dist/rules/requirePropertyName.cjs.map +0 -1
  220. package/dist/rules/requirePropertyType.cjs +0 -29
  221. package/dist/rules/requirePropertyType.cjs.map +0 -1
  222. package/dist/rules/requireRejects.cjs +0 -226
  223. package/dist/rules/requireRejects.cjs.map +0 -1
  224. package/dist/rules/requireReturns.cjs +0 -262
  225. package/dist/rules/requireReturns.cjs.map +0 -1
  226. package/dist/rules/requireReturnsCheck.cjs +0 -225
  227. package/dist/rules/requireReturnsCheck.cjs.map +0 -1
  228. package/dist/rules/requireReturnsDescription.cjs +0 -72
  229. package/dist/rules/requireReturnsDescription.cjs.map +0 -1
  230. package/dist/rules/requireReturnsType.cjs +0 -68
  231. package/dist/rules/requireReturnsType.cjs.map +0 -1
  232. package/dist/rules/requireTags.cjs +0 -74
  233. package/dist/rules/requireTags.cjs.map +0 -1
  234. package/dist/rules/requireTemplate.cjs +0 -220
  235. package/dist/rules/requireTemplate.cjs.map +0 -1
  236. package/dist/rules/requireThrows.cjs +0 -118
  237. package/dist/rules/requireThrows.cjs.map +0 -1
  238. package/dist/rules/requireYields.cjs +0 -224
  239. package/dist/rules/requireYields.cjs.map +0 -1
  240. package/dist/rules/requireYieldsCheck.cjs +0 -179
  241. package/dist/rules/requireYieldsCheck.cjs.map +0 -1
  242. package/dist/rules/sortTags.cjs +0 -656
  243. package/dist/rules/sortTags.cjs.map +0 -1
  244. package/dist/rules/tagLines.cjs +0 -374
  245. package/dist/rules/tagLines.cjs.map +0 -1
  246. package/dist/rules/textEscaping.cjs +0 -141
  247. package/dist/rules/textEscaping.cjs.map +0 -1
  248. package/dist/rules/tsMethodSignatureStyle.cjs +0 -240
  249. package/dist/rules/tsMethodSignatureStyle.cjs.map +0 -1
  250. package/dist/rules/tsNoEmptyObjectType.cjs +0 -62
  251. package/dist/rules/tsNoEmptyObjectType.cjs.map +0 -1
  252. package/dist/rules/tsNoUnnecessaryTemplateExpression.cjs +0 -104
  253. package/dist/rules/tsNoUnnecessaryTemplateExpression.cjs.map +0 -1
  254. package/dist/rules/tsPreferFunctionType.cjs +0 -110
  255. package/dist/rules/tsPreferFunctionType.cjs.map +0 -1
  256. package/dist/rules/typeFormatting.cjs +0 -607
  257. package/dist/rules/typeFormatting.cjs.map +0 -1
  258. package/dist/rules/validTypes.cjs +0 -324
  259. package/dist/rules/validTypes.cjs.map +0 -1
  260. package/dist/tagNames.cjs +0 -244
  261. package/dist/tagNames.cjs.map +0 -1
  262. package/dist/to-valid-identifier.cjs +0 -263
  263. package/dist/utils/hasReturnValue.cjs +0 -495
  264. package/dist/utils/hasReturnValue.cjs.map +0 -1
  265. package/rollup.config.js +0 -16
  266. package/src/getJsdocProcessorPlugin.cts +0 -5
  267. package/src/index-cjs.js +0 -760
  268. package/src/index-esm.js +0 -196
  269. package/src/index.cjs.cts +0 -3
  270. 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;