typedoc 0.23.26 → 0.24.0-beta.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.
- package/bin/typedoc +1 -130
- package/dist/index.d.ts +4 -5
- package/dist/index.js +15 -5
- package/dist/lib/application-events.d.ts +1 -1
- package/dist/lib/application-events.js +1 -1
- package/dist/lib/application.d.ts +24 -13
- package/dist/lib/application.js +136 -69
- package/dist/lib/cli.d.ts +1 -0
- package/dist/lib/cli.js +129 -0
- package/dist/lib/converter/comments/declarationReference.d.ts +1 -1
- package/dist/lib/converter/comments/declarationReferenceResolver.js +11 -5
- package/dist/lib/converter/comments/discovery.d.ts +1 -1
- package/dist/lib/converter/comments/discovery.js +96 -76
- package/dist/lib/converter/comments/index.d.ts +1 -1
- package/dist/lib/converter/comments/index.js +41 -21
- package/dist/lib/converter/comments/linkResolver.d.ts +2 -8
- package/dist/lib/converter/comments/linkResolver.js +42 -145
- package/dist/lib/converter/context.d.ts +1 -1
- package/dist/lib/converter/context.js +27 -14
- package/dist/lib/converter/convert-expression.d.ts +1 -1
- package/dist/lib/converter/convert-expression.js +35 -15
- package/dist/lib/converter/converter.d.ts +4 -6
- package/dist/lib/converter/converter.js +38 -27
- package/dist/lib/converter/factories/index-signature.d.ts +1 -1
- package/dist/lib/converter/factories/index-signature.js +26 -3
- package/dist/lib/converter/factories/signature.d.ts +2 -2
- package/dist/lib/converter/factories/signature.js +76 -52
- package/dist/lib/converter/index.d.ts +0 -1
- package/dist/lib/converter/jsdoc.d.ts +1 -1
- package/dist/lib/converter/jsdoc.js +39 -17
- package/dist/lib/converter/plugins/CommentPlugin.d.ts +0 -2
- package/dist/lib/converter/plugins/CommentPlugin.js +7 -28
- package/dist/lib/converter/plugins/GroupPlugin.d.ts +1 -39
- package/dist/lib/converter/plugins/GroupPlugin.js +3 -61
- package/dist/lib/converter/plugins/ImplementsPlugin.d.ts +1 -4
- package/dist/lib/converter/plugins/ImplementsPlugin.js +49 -28
- package/dist/lib/converter/plugins/InheritDocPlugin.d.ts +0 -3
- package/dist/lib/converter/plugins/InheritDocPlugin.js +6 -7
- package/dist/lib/converter/plugins/LinkResolverPlugin.d.ts +2 -3
- package/dist/lib/converter/plugins/LinkResolverPlugin.js +12 -18
- package/dist/lib/converter/plugins/PackagePlugin.d.ts +5 -14
- package/dist/lib/converter/plugins/PackagePlugin.js +44 -56
- package/dist/lib/converter/plugins/SourcePlugin.js +31 -6
- package/dist/lib/converter/plugins/TypePlugin.d.ts +4 -10
- package/dist/lib/converter/plugins/TypePlugin.js +23 -13
- package/dist/lib/converter/symbols.d.ts +1 -1
- package/dist/lib/converter/symbols.js +153 -132
- package/dist/lib/converter/types.d.ts +1 -1
- package/dist/lib/converter/types.js +121 -95
- package/dist/lib/converter/utils/nodes.d.ts +1 -1
- package/dist/lib/converter/utils/nodes.js +24 -4
- package/dist/lib/converter/utils/symbols.d.ts +1 -1
- package/dist/lib/converter/utils/symbols.js +24 -4
- package/dist/lib/models/ReflectionCategory.d.ts +2 -1
- package/dist/lib/models/ReflectionCategory.js +12 -0
- package/dist/lib/models/ReflectionGroup.d.ts +3 -2
- package/dist/lib/models/ReflectionGroup.js +20 -0
- package/dist/lib/models/comments/comment.d.ts +12 -7
- package/dist/lib/models/comments/comment.js +77 -64
- package/dist/lib/models/reflections/ReflectionSymbolId.d.ts +29 -0
- package/dist/lib/models/reflections/ReflectionSymbolId.js +94 -0
- package/dist/lib/models/reflections/abstract.d.ts +12 -37
- package/dist/lib/models/reflections/abstract.js +27 -35
- package/dist/lib/models/reflections/container.d.ts +6 -10
- package/dist/lib/models/reflections/container.js +8 -1
- package/dist/lib/models/reflections/declaration.d.ts +19 -4
- package/dist/lib/models/reflections/declaration.js +54 -1
- package/dist/lib/models/reflections/index.d.ts +2 -0
- package/dist/lib/models/reflections/index.js +3 -1
- package/dist/lib/models/reflections/kind.d.ts +15 -1
- package/dist/lib/models/reflections/kind.js +43 -1
- package/dist/lib/models/reflections/parameter.d.ts +3 -1
- package/dist/lib/models/reflections/parameter.js +10 -0
- package/dist/lib/models/reflections/project.d.ts +32 -5
- package/dist/lib/models/reflections/project.js +84 -20
- package/dist/lib/models/reflections/reference.d.ts +5 -9
- package/dist/lib/models/reflections/reference.js +13 -29
- package/dist/lib/models/reflections/signature.d.ts +8 -1
- package/dist/lib/models/reflections/signature.js +14 -0
- package/dist/lib/models/reflections/type-parameter.d.ts +7 -4
- package/dist/lib/models/reflections/type-parameter.js +9 -3
- package/dist/lib/models/reflections/variant.d.ts +18 -0
- package/dist/lib/models/reflections/variant.js +2 -0
- package/dist/lib/models/sources/file.d.ts +2 -0
- package/dist/lib/models/sources/file.js +3 -0
- package/dist/lib/models/types.d.ts +24 -20
- package/dist/lib/models/types.js +132 -33
- package/dist/lib/output/plugins/JavascriptIndexPlugin.js +3 -7
- package/dist/lib/output/renderer.d.ts +21 -14
- package/dist/lib/output/renderer.js +25 -25
- package/dist/lib/output/themes/MarkedPlugin.js +2 -3
- package/dist/lib/output/themes/default/DefaultTheme.d.ts +2 -20
- package/dist/lib/output/themes/default/DefaultTheme.js +4 -75
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.d.ts +10 -9
- package/dist/lib/output/themes/default/DefaultThemeRenderContext.js +55 -1
- package/dist/lib/output/themes/default/partials/header.js +2 -5
- package/dist/lib/output/themes/default/partials/index.js +2 -2
- package/dist/lib/output/themes/default/partials/member.getterSetter.d.ts +2 -2
- package/dist/lib/output/themes/default/partials/member.getterSetter.js +4 -1
- package/dist/lib/output/themes/default/partials/member.js +1 -1
- package/dist/lib/output/themes/default/partials/member.signatures.js +2 -1
- package/dist/lib/output/themes/default/partials/members.d.ts +1 -1
- package/dist/lib/output/themes/default/partials/members.js +3 -1
- package/dist/lib/output/themes/default/partials/navigation.js +6 -4
- package/dist/lib/output/themes/default/partials/parameter.js +1 -1
- package/dist/lib/output/themes/default/partials/type.js +4 -4
- package/dist/lib/output/themes/default/templates/reflection.js +1 -1
- package/dist/lib/output/themes/lib.d.ts +4 -1
- package/dist/lib/output/themes/lib.js +53 -3
- package/dist/lib/serialization/deserializer.d.ts +54 -0
- package/dist/lib/serialization/deserializer.js +212 -0
- package/dist/lib/serialization/events.d.ts +0 -15
- package/dist/lib/serialization/index.d.ts +2 -3
- package/dist/lib/serialization/index.js +4 -3
- package/dist/lib/serialization/schema.d.ts +23 -17
- package/dist/lib/serialization/serializer.d.ts +5 -5
- package/dist/lib/serialization/serializer.js +4 -15
- package/dist/lib/utils/array.d.ts +0 -1
- package/dist/lib/utils/array.js +1 -2
- package/dist/lib/utils/entry-point.d.ts +15 -4
- package/dist/lib/utils/entry-point.js +45 -28
- package/dist/lib/utils/enum.d.ts +4 -1
- package/dist/lib/utils/enum.js +2 -3
- package/dist/lib/utils/fs.d.ts +3 -1
- package/dist/lib/utils/fs.js +36 -73
- package/dist/lib/utils/index.d.ts +4 -3
- package/dist/lib/utils/index.js +3 -3
- package/dist/lib/utils/loggers.d.ts +5 -26
- package/dist/lib/utils/loggers.js +38 -42
- package/dist/lib/utils/map.d.ts +17 -0
- package/dist/lib/utils/map.js +49 -1
- package/dist/lib/utils/options/declaration.d.ts +20 -6
- package/dist/lib/utils/options/help.js +1 -1
- package/dist/lib/utils/options/options.d.ts +27 -18
- package/dist/lib/utils/options/options.js +68 -14
- package/dist/lib/utils/options/readers/arguments.d.ts +2 -1
- package/dist/lib/utils/options/readers/arguments.js +9 -2
- package/dist/lib/utils/options/readers/tsconfig.d.ts +3 -7
- package/dist/lib/utils/options/readers/tsconfig.js +35 -36
- package/dist/lib/utils/options/readers/typedoc.d.ts +4 -5
- package/dist/lib/utils/options/readers/typedoc.js +9 -21
- package/dist/lib/utils/options/sources/typedoc.js +18 -64
- package/dist/lib/utils/package-manifest.js +1 -2
- package/dist/lib/utils/paths.js +2 -0
- package/dist/lib/utils/plugins.d.ts +1 -2
- package/dist/lib/utils/plugins.js +22 -106
- package/dist/lib/utils/sort.d.ts +1 -1
- package/dist/lib/utils/sort.js +8 -11
- package/dist/lib/utils/tsconfig.d.ts +4 -0
- package/dist/lib/utils/tsconfig.js +36 -0
- package/dist/lib/utils/tsutils.d.ts +3 -2
- package/dist/lib/utils/tsutils.js +46 -12
- package/dist/lib/validation/documentation.d.ts +1 -1
- package/dist/lib/validation/documentation.js +6 -29
- package/dist/lib/validation/exports.js +18 -21
- package/dist/lib/validation/links.js +1 -1
- package/package.json +18 -19
- package/static/main.js +1 -55
|
@@ -1,65 +1,68 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
4
24
|
};
|
|
5
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
26
|
exports.resolvePartLinks = exports.resolveLinks = void 0;
|
|
7
|
-
const
|
|
27
|
+
const ts = __importStar(require("typescript"));
|
|
8
28
|
const models_1 = require("../../models");
|
|
9
29
|
const declarationReference_1 = require("./declarationReference");
|
|
10
30
|
const declarationReferenceResolver_1 = require("./declarationReferenceResolver");
|
|
11
31
|
const urlPrefix = /^(http|ftp)s?:\/\//;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
let warned = false;
|
|
15
|
-
const warn = () => {
|
|
16
|
-
if (!warned) {
|
|
17
|
-
warned = true;
|
|
18
|
-
logger.warn(`${reflection.getFriendlyFullName()}: Comment [[target]] style links are deprecated and will be removed in 0.24`);
|
|
19
|
-
}
|
|
20
|
-
};
|
|
21
|
-
comment.summary = resolvePartLinks(reflection, comment.summary, warn, validation, logger, externalResolver);
|
|
32
|
+
function resolveLinks(comment, reflection, attemptExternalResolve) {
|
|
33
|
+
comment.summary = resolvePartLinks(reflection, comment.summary, attemptExternalResolve);
|
|
22
34
|
for (const tag of comment.blockTags) {
|
|
23
|
-
tag.content = resolvePartLinks(reflection, tag.content,
|
|
35
|
+
tag.content = resolvePartLinks(reflection, tag.content, attemptExternalResolve);
|
|
24
36
|
}
|
|
25
37
|
if (reflection instanceof models_1.DeclarationReflection && reflection.readme) {
|
|
26
|
-
reflection.readme = resolvePartLinks(reflection, reflection.readme,
|
|
38
|
+
reflection.readme = resolvePartLinks(reflection, reflection.readme, attemptExternalResolve);
|
|
27
39
|
}
|
|
28
40
|
}
|
|
29
41
|
exports.resolveLinks = resolveLinks;
|
|
30
|
-
function resolvePartLinks(reflection, parts,
|
|
31
|
-
return parts.flatMap((part) => processPart(reflection, part,
|
|
42
|
+
function resolvePartLinks(reflection, parts, attemptExternalResolve) {
|
|
43
|
+
return parts.flatMap((part) => processPart(reflection, part, attemptExternalResolve));
|
|
32
44
|
}
|
|
33
45
|
exports.resolvePartLinks = resolvePartLinks;
|
|
34
|
-
function processPart(reflection, part,
|
|
35
|
-
if (part.kind === "text" && brackets.test(part.text)) {
|
|
36
|
-
warn();
|
|
37
|
-
return replaceBrackets(reflection, part.text, validation, logger);
|
|
38
|
-
}
|
|
46
|
+
function processPart(reflection, part, attemptExternalResolve) {
|
|
39
47
|
if (part.kind === "inline-tag") {
|
|
40
48
|
if (part.tag === "@link" ||
|
|
41
49
|
part.tag === "@linkcode" ||
|
|
42
50
|
part.tag === "@linkplain") {
|
|
43
|
-
return resolveLinkTag(reflection, part,
|
|
44
|
-
if (validation.invalidLink) {
|
|
45
|
-
logger.warn(msg);
|
|
46
|
-
}
|
|
47
|
-
});
|
|
51
|
+
return resolveLinkTag(reflection, part, attemptExternalResolve);
|
|
48
52
|
}
|
|
49
53
|
}
|
|
50
54
|
return part;
|
|
51
55
|
}
|
|
52
|
-
function resolveLinkTag(reflection, part,
|
|
56
|
+
function resolveLinkTag(reflection, part, attemptExternalResolve) {
|
|
53
57
|
let pos = 0;
|
|
54
58
|
const end = part.text.length;
|
|
55
|
-
while (pos < end &&
|
|
59
|
+
while (pos < end && ts.isWhiteSpaceLike(part.text.charCodeAt(pos))) {
|
|
56
60
|
pos++;
|
|
57
61
|
}
|
|
58
|
-
const origText = part.text;
|
|
59
62
|
// Try to parse one
|
|
60
63
|
const declRef = (0, declarationReference_1.parseDeclarationReference)(part.text, pos, end);
|
|
61
64
|
let target;
|
|
62
|
-
let defaultDisplayText
|
|
65
|
+
let defaultDisplayText;
|
|
63
66
|
if (declRef) {
|
|
64
67
|
// Got one, great! Try to resolve the link
|
|
65
68
|
target = (0, declarationReferenceResolver_1.resolveDeclarationReference)(reflection, declRef[0]);
|
|
@@ -69,16 +72,9 @@ function resolveLinkTag(reflection, part, externalResolver, warn) {
|
|
|
69
72
|
}
|
|
70
73
|
else {
|
|
71
74
|
// If we didn't find a link, it might be a @link tag to an external symbol, check that next.
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
case "string":
|
|
76
|
-
target = externalResolveResult;
|
|
77
|
-
break;
|
|
78
|
-
case "object":
|
|
79
|
-
target = externalResolveResult.target;
|
|
80
|
-
defaultDisplayText =
|
|
81
|
-
externalResolveResult.caption || defaultDisplayText;
|
|
75
|
+
target = attemptExternalResolve(declRef[0]);
|
|
76
|
+
if (target) {
|
|
77
|
+
defaultDisplayText = part.text.substring(0, pos);
|
|
82
78
|
}
|
|
83
79
|
}
|
|
84
80
|
}
|
|
@@ -91,117 +87,18 @@ function resolveLinkTag(reflection, part, externalResolver, warn) {
|
|
|
91
87
|
defaultDisplayText = target;
|
|
92
88
|
}
|
|
93
89
|
}
|
|
94
|
-
// If resolution via a declaration reference failed, revert to the legacy "split and check"
|
|
95
|
-
// method... this should go away in 0.24, once people have had a chance to migrate any failing links.
|
|
96
|
-
if (!target) {
|
|
97
|
-
const resolved = legacyResolveLinkTag(reflection, part);
|
|
98
|
-
if (resolved.target) {
|
|
99
|
-
warn(`Failed to resolve {@link ${origText}} in ${reflection.getFriendlyFullName()} with declaration references. This link will break in v0.24.`);
|
|
100
|
-
}
|
|
101
|
-
return resolved;
|
|
102
|
-
}
|
|
103
90
|
// Remaining text after an optional pipe is the link text, so advance
|
|
104
91
|
// until that's consumed.
|
|
105
|
-
while (pos < end &&
|
|
92
|
+
while (pos < end && ts.isWhiteSpaceLike(part.text.charCodeAt(pos))) {
|
|
106
93
|
pos++;
|
|
107
94
|
}
|
|
108
95
|
if (pos < end && part.text[pos] === "|") {
|
|
109
96
|
pos++;
|
|
110
97
|
}
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
part.text.substring(pos).trim() || defaultDisplayText || part.text;
|
|
114
|
-
return part;
|
|
115
|
-
}
|
|
116
|
-
function legacyResolveLinkTag(reflection, part) {
|
|
117
|
-
const { caption, target } = splitLinkText(part.text);
|
|
118
|
-
if (urlPrefix.test(target)) {
|
|
119
|
-
part.text = caption;
|
|
120
|
-
part.target = target;
|
|
121
|
-
}
|
|
122
|
-
else {
|
|
123
|
-
const targetRefl = reflection.findReflectionByName(target);
|
|
124
|
-
if (targetRefl) {
|
|
125
|
-
part.text = caption;
|
|
126
|
-
part.target = targetRefl;
|
|
127
|
-
}
|
|
98
|
+
if (!target) {
|
|
99
|
+
return part;
|
|
128
100
|
}
|
|
101
|
+
part.target = target;
|
|
102
|
+
part.text = part.text.substring(pos).trim() || defaultDisplayText;
|
|
129
103
|
return part;
|
|
130
104
|
}
|
|
131
|
-
function replaceBrackets(reflection, text, validation, logger) {
|
|
132
|
-
const parts = [];
|
|
133
|
-
let begin = 0;
|
|
134
|
-
brackets.lastIndex = 0;
|
|
135
|
-
for (const match of text.matchAll(brackets)) {
|
|
136
|
-
if (begin != match.index) {
|
|
137
|
-
parts.push({
|
|
138
|
-
kind: "text",
|
|
139
|
-
text: text.substring(begin, match.index),
|
|
140
|
-
});
|
|
141
|
-
}
|
|
142
|
-
begin = match.index + match[0].length;
|
|
143
|
-
const content = match[1];
|
|
144
|
-
const { target, caption } = splitLinkText(content);
|
|
145
|
-
if (urlPrefix.test(target)) {
|
|
146
|
-
parts.push({
|
|
147
|
-
kind: "inline-tag",
|
|
148
|
-
tag: "@link",
|
|
149
|
-
text: caption,
|
|
150
|
-
target,
|
|
151
|
-
});
|
|
152
|
-
}
|
|
153
|
-
else {
|
|
154
|
-
const targetRefl = reflection.findReflectionByName(target);
|
|
155
|
-
if (targetRefl) {
|
|
156
|
-
parts.push({
|
|
157
|
-
kind: "inline-tag",
|
|
158
|
-
tag: "@link",
|
|
159
|
-
text: caption,
|
|
160
|
-
target: targetRefl,
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
else {
|
|
164
|
-
if (validation.invalidLink) {
|
|
165
|
-
logger.warn("Failed to find target: " + content);
|
|
166
|
-
}
|
|
167
|
-
parts.push({
|
|
168
|
-
kind: "inline-tag",
|
|
169
|
-
tag: "@link",
|
|
170
|
-
text: content,
|
|
171
|
-
});
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
parts.push({
|
|
176
|
-
kind: "text",
|
|
177
|
-
text: text.substring(begin),
|
|
178
|
-
});
|
|
179
|
-
return parts;
|
|
180
|
-
}
|
|
181
|
-
/**
|
|
182
|
-
* Split the given link into text and target at first pipe or space.
|
|
183
|
-
*
|
|
184
|
-
* @param text The source string that should be checked for a split character.
|
|
185
|
-
* @returns An object containing the link text and target.
|
|
186
|
-
*/
|
|
187
|
-
function splitLinkText(text) {
|
|
188
|
-
let splitIndex = text.indexOf("|");
|
|
189
|
-
if (splitIndex === -1) {
|
|
190
|
-
splitIndex = text.search(/\s/);
|
|
191
|
-
}
|
|
192
|
-
if (splitIndex !== -1) {
|
|
193
|
-
return {
|
|
194
|
-
caption: text
|
|
195
|
-
.substring(splitIndex + 1)
|
|
196
|
-
.replace(/\n+/, " ")
|
|
197
|
-
.trim(),
|
|
198
|
-
target: text.substring(0, splitIndex).trim(),
|
|
199
|
-
};
|
|
200
|
-
}
|
|
201
|
-
else {
|
|
202
|
-
return {
|
|
203
|
-
caption: text,
|
|
204
|
-
target: text,
|
|
205
|
-
};
|
|
206
|
-
}
|
|
207
|
-
}
|
|
@@ -1,16 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
4
24
|
};
|
|
5
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
26
|
exports.Context = void 0;
|
|
7
27
|
const assert_1 = require("assert");
|
|
8
|
-
const
|
|
28
|
+
const ts = __importStar(require("typescript"));
|
|
9
29
|
const index_1 = require("../models/index");
|
|
10
30
|
const nodes_1 = require("./utils/nodes");
|
|
11
31
|
const converter_events_1 = require("./converter-events");
|
|
12
32
|
const symbols_1 = require("./utils/symbols");
|
|
13
33
|
const comments_1 = require("./comments");
|
|
34
|
+
const tsutils_1 = require("../utils/tsutils");
|
|
14
35
|
/**
|
|
15
36
|
* The context describes the current state the converter is in.
|
|
16
37
|
*/
|
|
@@ -99,8 +120,8 @@ class Context {
|
|
|
99
120
|
expectSymbolAtLocation(node) {
|
|
100
121
|
const symbol = this.getSymbolAtLocation(node);
|
|
101
122
|
if (!symbol) {
|
|
102
|
-
const { line } =
|
|
103
|
-
throw new Error(`Expected a symbol for node with kind ${
|
|
123
|
+
const { line } = ts.getLineAndCharacterOfPosition(node.getSourceFile(), node.pos);
|
|
124
|
+
throw new Error(`Expected a symbol for node with kind ${ts.SyntaxKind[node.kind]} at ${node.getSourceFile().fileName}:${line + 1}`);
|
|
104
125
|
}
|
|
105
126
|
return symbol;
|
|
106
127
|
}
|
|
@@ -110,7 +131,7 @@ class Context {
|
|
|
110
131
|
createDeclarationReflection(kind, symbol, exportSymbol,
|
|
111
132
|
// We need this because modules don't always have symbols.
|
|
112
133
|
nameOverride) {
|
|
113
|
-
const name = getHumanName(nameOverride ?? exportSymbol?.name ?? symbol?.name ?? "unknown");
|
|
134
|
+
const name = (0, tsutils_1.getHumanName)(nameOverride ?? exportSymbol?.name ?? symbol?.name ?? "unknown");
|
|
114
135
|
const reflection = new index_1.DeclarationReflection(name, kind, this.scope);
|
|
115
136
|
this.postReflectionCreation(reflection, symbol, exportSymbol);
|
|
116
137
|
return reflection;
|
|
@@ -189,11 +210,3 @@ class Context {
|
|
|
189
210
|
}
|
|
190
211
|
}
|
|
191
212
|
exports.Context = Context;
|
|
192
|
-
const uniqueSymbolRegExp = /^__@(.*)@\d+$/;
|
|
193
|
-
function getHumanName(name) {
|
|
194
|
-
const match = uniqueSymbolRegExp.exec(name);
|
|
195
|
-
if (match) {
|
|
196
|
-
return `[${match[1]}]`;
|
|
197
|
-
}
|
|
198
|
-
return name;
|
|
199
|
-
}
|
|
@@ -1,10 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
4
24
|
};
|
|
5
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
26
|
exports.convertExpression = exports.convertDefaultValue = void 0;
|
|
7
|
-
const
|
|
27
|
+
const ts = __importStar(require("typescript"));
|
|
8
28
|
/**
|
|
9
29
|
* Return the default value of the given node.
|
|
10
30
|
*
|
|
@@ -23,32 +43,32 @@ function convertDefaultValue(node) {
|
|
|
23
43
|
exports.convertDefaultValue = convertDefaultValue;
|
|
24
44
|
function convertExpression(expression) {
|
|
25
45
|
switch (expression.kind) {
|
|
26
|
-
case
|
|
27
|
-
case
|
|
28
|
-
case
|
|
29
|
-
case
|
|
30
|
-
case
|
|
31
|
-
case
|
|
32
|
-
case
|
|
46
|
+
case ts.SyntaxKind.StringLiteral:
|
|
47
|
+
case ts.SyntaxKind.TrueKeyword:
|
|
48
|
+
case ts.SyntaxKind.FalseKeyword:
|
|
49
|
+
case ts.SyntaxKind.NullKeyword:
|
|
50
|
+
case ts.SyntaxKind.NumericLiteral:
|
|
51
|
+
case ts.SyntaxKind.PrefixUnaryExpression:
|
|
52
|
+
case ts.SyntaxKind.Identifier:
|
|
33
53
|
return expression.getText();
|
|
34
54
|
}
|
|
35
|
-
if (
|
|
55
|
+
if (ts.isArrayLiteralExpression(expression) &&
|
|
36
56
|
expression.elements.length === 0) {
|
|
37
57
|
return "[]";
|
|
38
58
|
}
|
|
39
|
-
if (
|
|
59
|
+
if (ts.isObjectLiteralExpression(expression) &&
|
|
40
60
|
expression.properties.length === 0) {
|
|
41
61
|
return "{}";
|
|
42
62
|
}
|
|
43
63
|
// a.b.c.d
|
|
44
|
-
if (
|
|
64
|
+
if (ts.isPropertyAccessExpression(expression)) {
|
|
45
65
|
const parts = [expression.name.getText()];
|
|
46
66
|
let iter = expression.expression;
|
|
47
|
-
while (
|
|
67
|
+
while (ts.isPropertyAccessExpression(iter)) {
|
|
48
68
|
parts.unshift(iter.name.getText());
|
|
49
69
|
iter = iter.expression;
|
|
50
70
|
}
|
|
51
|
-
if (
|
|
71
|
+
if (ts.isIdentifier(iter)) {
|
|
52
72
|
parts.unshift(iter.text);
|
|
53
73
|
return parts.join(".");
|
|
54
74
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import ts from "typescript";
|
|
1
|
+
import * as ts from "typescript";
|
|
2
2
|
import type { Application } from "../application";
|
|
3
3
|
import { Comment, CommentDisplayPart, ProjectReflection, Reflection, SomeType } from "../models/index";
|
|
4
4
|
import { Context } from "./context";
|
|
@@ -8,7 +8,6 @@ import { MinimalSourceFile } from "../utils";
|
|
|
8
8
|
import type { DocumentationEntryPoint } from "../utils/entry-point";
|
|
9
9
|
import { CommentParserConfig } from "./comments";
|
|
10
10
|
import type { CommentStyle, ValidationOptions } from "../utils/options/declaration";
|
|
11
|
-
import { ExternalSymbolResolver, ExternalResolveResult } from "./comments/linkResolver";
|
|
12
11
|
import type { DeclarationReference } from "./comments/declarationReference";
|
|
13
12
|
/**
|
|
14
13
|
* Compiles source files using TypeScript and converts compiler symbols to reflections.
|
|
@@ -129,13 +128,12 @@ export declare class Converter extends ChildableComponent<Application, Converter
|
|
|
129
128
|
*
|
|
130
129
|
* Note: This will be used for both references to types declared in node_modules (in which case the
|
|
131
130
|
* reference passed will have the `moduleSource` set and the `symbolReference` will navigate via `.`)
|
|
132
|
-
* and user defined \{\@link\} tags which cannot be resolved.
|
|
133
|
-
* from a type, then no `part` will be passed to the resolver function.
|
|
131
|
+
* and user defined \{\@link\} tags which cannot be resolved.
|
|
134
132
|
* @since 0.22.14
|
|
135
133
|
*/
|
|
136
|
-
addUnknownSymbolResolver(resolver:
|
|
134
|
+
addUnknownSymbolResolver(resolver: (ref: DeclarationReference) => string | undefined): void;
|
|
137
135
|
/** @internal */
|
|
138
|
-
resolveExternalLink(ref: DeclarationReference
|
|
136
|
+
resolveExternalLink(ref: DeclarationReference): string | undefined;
|
|
139
137
|
resolveLinks(comment: Comment, owner: Reflection): void;
|
|
140
138
|
resolveLinks(parts: readonly CommentDisplayPart[], owner: Reflection): CommentDisplayPart[];
|
|
141
139
|
/**
|
|
@@ -1,17 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
2
18
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
19
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
20
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
21
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
22
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
23
|
};
|
|
8
|
-
var
|
|
9
|
-
|
|
24
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
25
|
+
if (mod && mod.__esModule) return mod;
|
|
26
|
+
var result = {};
|
|
27
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
28
|
+
__setModuleDefault(result, mod);
|
|
29
|
+
return result;
|
|
10
30
|
};
|
|
11
31
|
var Converter_1;
|
|
12
32
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
33
|
exports.Converter = void 0;
|
|
14
|
-
const
|
|
34
|
+
const ts = __importStar(require("typescript"));
|
|
15
35
|
const index_1 = require("../models/index");
|
|
16
36
|
const context_1 = require("./context");
|
|
17
37
|
const components_1 = require("./components");
|
|
@@ -72,9 +92,8 @@ let Converter = Converter_1 = class Converter extends component_1.ChildableCompo
|
|
|
72
92
|
this.trigger(Converter_1.EVENT_BEGIN, context);
|
|
73
93
|
this.compile(entryPoints, context);
|
|
74
94
|
this.resolve(context);
|
|
75
|
-
// This should only do anything if a plugin does something bad.
|
|
76
|
-
project.removeDanglingReferences();
|
|
77
95
|
this.trigger(Converter_1.EVENT_END, context);
|
|
96
|
+
project.forgetTsReferences();
|
|
78
97
|
return project;
|
|
79
98
|
}
|
|
80
99
|
/** @internal */
|
|
@@ -107,34 +126,26 @@ let Converter = Converter_1 = class Converter extends component_1.ChildableCompo
|
|
|
107
126
|
*
|
|
108
127
|
* Note: This will be used for both references to types declared in node_modules (in which case the
|
|
109
128
|
* reference passed will have the `moduleSource` set and the `symbolReference` will navigate via `.`)
|
|
110
|
-
* and user defined \{\@link\} tags which cannot be resolved.
|
|
111
|
-
* from a type, then no `part` will be passed to the resolver function.
|
|
129
|
+
* and user defined \{\@link\} tags which cannot be resolved.
|
|
112
130
|
* @since 0.22.14
|
|
113
131
|
*/
|
|
114
132
|
addUnknownSymbolResolver(resolver) {
|
|
115
133
|
this._externalSymbolResolvers.push(resolver);
|
|
116
134
|
}
|
|
117
135
|
/** @internal */
|
|
118
|
-
resolveExternalLink(ref
|
|
136
|
+
resolveExternalLink(ref) {
|
|
119
137
|
for (const resolver of this._externalSymbolResolvers) {
|
|
120
|
-
const resolved = resolver(ref
|
|
138
|
+
const resolved = resolver(ref);
|
|
121
139
|
if (resolved)
|
|
122
140
|
return resolved;
|
|
123
141
|
}
|
|
124
142
|
}
|
|
125
143
|
resolveLinks(comment, owner) {
|
|
126
144
|
if (comment instanceof index_1.Comment) {
|
|
127
|
-
(0, linkResolver_1.resolveLinks)(comment, owner,
|
|
145
|
+
(0, linkResolver_1.resolveLinks)(comment, owner, (ref) => this.resolveExternalLink(ref));
|
|
128
146
|
}
|
|
129
147
|
else {
|
|
130
|
-
|
|
131
|
-
const warn = () => {
|
|
132
|
-
if (!warned) {
|
|
133
|
-
warned = true;
|
|
134
|
-
this.application.logger.warn(`${owner.name}: Comment [[target]] style links are deprecated and will be removed in 0.24`);
|
|
135
|
-
}
|
|
136
|
-
};
|
|
137
|
-
return (0, linkResolver_1.resolvePartLinks)(owner, comment, warn, this.validation, this.owner.logger, (ref, part, refl) => this.resolveExternalLink(ref, part, refl));
|
|
148
|
+
return (0, linkResolver_1.resolvePartLinks)(owner, comment, (ref) => this.resolveExternalLink(ref));
|
|
138
149
|
}
|
|
139
150
|
}
|
|
140
151
|
/**
|
|
@@ -192,7 +203,7 @@ let Converter = Converter_1 = class Converter extends component_1.ChildableCompo
|
|
|
192
203
|
}
|
|
193
204
|
reflection.readme = comment.summary;
|
|
194
205
|
}
|
|
195
|
-
reflection.
|
|
206
|
+
reflection.packageVersion = entryPoint.version;
|
|
196
207
|
context.finalizeDeclarationReflection(reflection);
|
|
197
208
|
moduleContext = context.withScope(reflection);
|
|
198
209
|
}
|
|
@@ -360,15 +371,15 @@ function getSymbolForModuleLike(context, node) {
|
|
|
360
371
|
// "globals" file, but this is uncommon enough that I'm skipping it for now.
|
|
361
372
|
const sourceFile = node.getSourceFile();
|
|
362
373
|
const globalSymbols = context.checker
|
|
363
|
-
.getSymbolsInScope(node,
|
|
374
|
+
.getSymbolsInScope(node, ts.SymbolFlags.ModuleMember)
|
|
364
375
|
.filter((s) => s.getDeclarations()?.some((d) => d.getSourceFile() === sourceFile));
|
|
365
376
|
// Detect declaration files with declare module "foo" as their only export
|
|
366
377
|
// and lift that up one level as the source file symbol
|
|
367
378
|
if (globalSymbols.length === 1 &&
|
|
368
379
|
globalSymbols[0]
|
|
369
380
|
.getDeclarations()
|
|
370
|
-
?.every((declaration) =>
|
|
371
|
-
|
|
381
|
+
?.every((declaration) => ts.isModuleDeclaration(declaration) &&
|
|
382
|
+
ts.isStringLiteral(declaration.name))) {
|
|
372
383
|
return globalSymbols[0];
|
|
373
384
|
}
|
|
374
385
|
}
|
|
@@ -383,15 +394,15 @@ function getExports(context, node, symbol) {
|
|
|
383
394
|
// members of the export= class and as functions if a class is directly exported.
|
|
384
395
|
result = [exportEq].concat(context.checker
|
|
385
396
|
.getExportsOfModule(symbol)
|
|
386
|
-
.filter((s) => !(0, enum_1.hasAnyFlag)(s.flags,
|
|
397
|
+
.filter((s) => !(0, enum_1.hasAnyFlag)(s.flags, ts.SymbolFlags.Prototype | ts.SymbolFlags.Value)));
|
|
387
398
|
}
|
|
388
399
|
else if (symbol) {
|
|
389
400
|
result = context.checker
|
|
390
401
|
.getExportsOfModule(symbol)
|
|
391
|
-
.filter((s) => !(0, enum_1.hasAllFlags)(s.flags,
|
|
402
|
+
.filter((s) => !(0, enum_1.hasAllFlags)(s.flags, ts.SymbolFlags.Prototype));
|
|
392
403
|
if (result.length === 0) {
|
|
393
|
-
const globalDecl = node.statements.find((s) =>
|
|
394
|
-
s.flags &
|
|
404
|
+
const globalDecl = node.statements.find((s) => ts.isModuleDeclaration(s) &&
|
|
405
|
+
s.flags & ts.NodeFlags.GlobalAugmentation);
|
|
395
406
|
if (globalDecl) {
|
|
396
407
|
const globalSymbol = context.getSymbolAtLocation(globalDecl);
|
|
397
408
|
if (globalSymbol) {
|
|
@@ -406,7 +417,7 @@ function getExports(context, node, symbol) {
|
|
|
406
417
|
// Global file with no inferred top level symbol, get all symbols declared in this file.
|
|
407
418
|
const sourceFile = node.getSourceFile();
|
|
408
419
|
result = context.checker
|
|
409
|
-
.getSymbolsInScope(node,
|
|
420
|
+
.getSymbolsInScope(node, ts.SymbolFlags.ModuleMember)
|
|
410
421
|
.filter((s) => s
|
|
411
422
|
.getDeclarations()
|
|
412
423
|
?.some((d) => d.getSourceFile() === sourceFile));
|
|
@@ -1,11 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
2
25
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
26
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
27
|
};
|
|
5
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
29
|
exports.convertIndexSignature = void 0;
|
|
7
30
|
const assert_1 = __importDefault(require("assert"));
|
|
8
|
-
const
|
|
31
|
+
const ts = __importStar(require("typescript"));
|
|
9
32
|
const models_1 = require("../../models");
|
|
10
33
|
const converter_events_1 = require("../converter-events");
|
|
11
34
|
function convertIndexSignature(context, symbol) {
|
|
@@ -16,9 +39,9 @@ function convertIndexSignature(context, symbol) {
|
|
|
16
39
|
// and number index signatures... { [x: string]: 1 | 2; [x: number]: 2 }
|
|
17
40
|
// will be misrepresented.
|
|
18
41
|
const indexDeclaration = indexSymbol.getDeclarations()?.[0];
|
|
19
|
-
(0, assert_1.default)(indexDeclaration &&
|
|
42
|
+
(0, assert_1.default)(indexDeclaration && ts.isIndexSignatureDeclaration(indexDeclaration));
|
|
20
43
|
const param = indexDeclaration.parameters[0];
|
|
21
|
-
(0, assert_1.default)(param &&
|
|
44
|
+
(0, assert_1.default)(param && ts.isParameter(param));
|
|
22
45
|
const index = new models_1.SignatureReflection("__index", models_1.ReflectionKind.IndexSignature, context.scope);
|
|
23
46
|
index.parameters = [
|
|
24
47
|
new models_1.ParameterReflection(param.name.getText(), models_1.ReflectionKind.Parameter, index),
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import ts from "typescript";
|
|
1
|
+
import * as ts from "typescript";
|
|
2
2
|
import { ParameterReflection, ReflectionKind, SignatureReflection, TypeParameterReflection } from "../../models";
|
|
3
3
|
import type { Context } from "../context";
|
|
4
|
-
export declare function createSignature(context: Context, kind: ReflectionKind.CallSignature | ReflectionKind.ConstructorSignature | ReflectionKind.GetSignature | ReflectionKind.SetSignature, signature: ts.Signature, declaration?: ts.SignatureDeclaration | ts.JSDocSignature): void;
|
|
4
|
+
export declare function createSignature(context: Context, kind: ReflectionKind.CallSignature | ReflectionKind.ConstructorSignature | ReflectionKind.GetSignature | ReflectionKind.SetSignature, signature: ts.Signature, symbol: ts.Symbol | undefined, declaration?: ts.SignatureDeclaration | ts.JSDocSignature): void;
|
|
5
5
|
export declare function convertParameterNodes(context: Context, sigRef: SignatureReflection, parameters: readonly (ts.JSDocParameterTag | ts.ParameterDeclaration)[]): ParameterReflection[];
|
|
6
6
|
export declare function convertTypeParameterNodes(context: Context, parameters: readonly ts.TypeParameterDeclaration[] | undefined): TypeParameterReflection[] | undefined;
|
|
7
7
|
export declare function createTypeParamReflection(param: ts.TypeParameterDeclaration, context: Context): TypeParameterReflection;
|