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