@typespec/compiler 0.45.0-dev.15 → 0.45.0-dev.17

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.
@@ -1,5 +1,5 @@
1
1
  import { Program } from "./program.js";
2
- import { Enum, ErrorType, Interface, Model, Namespace, NeverType, Node, NullType, Operation, TemplateDeclarationNode, TemplatedType, Type, TypeMapper, UnknownType, VoidType } from "./types.js";
2
+ import { Enum, ErrorType, Interface, Model, Namespace, NeverType, Node, NullType, Operation, Sym, TemplateDeclarationNode, TemplatedType, Type, TypeMapper, UnknownType, VoidType } from "./types.js";
3
3
  export declare function isErrorType(type: Type): type is ErrorType;
4
4
  export declare function isVoidType(type: Type): type is VoidType;
5
5
  export declare function isNeverType(type: Type): type is NeverType;
@@ -53,4 +53,7 @@ export declare function isGlobalNamespace(program: Program, namespace: Namespace
53
53
  export declare function isDeclaredInNamespace(type: Model | Operation | Interface | Namespace | Enum, namespace: Namespace, options?: {
54
54
  recursive?: boolean;
55
55
  }): boolean;
56
+ export declare function getFullyQualifiedSymbolName(sym: Sym | undefined, options?: {
57
+ useGlobalPrefixAtTopLevel?: boolean;
58
+ }): string;
56
59
  //# sourceMappingURL=type-utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-utils.d.ts","sourceRoot":"","sources":["../../core/type-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,IAAI,EACJ,SAAS,EACT,SAAS,EACT,KAAK,EACL,SAAS,EACT,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,SAAS,EAET,uBAAuB,EACvB,aAAa,EACb,IAAI,EACJ,UAAU,EACV,WAAW,EACX,QAAQ,EACT,MAAM,YAAY,CAAC;AAEpB,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,SAAS,CAEzD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,QAAQ,CAEvD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,SAAS,CAEzD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,WAAW,CAE7D;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,QAAQ,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,uBAAuB,CAAC,GAAG,SAAS,CAc9F;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,IAAI,GACT,IAAI,IAAI,aAAa,GAAG;IAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAAC,cAAc,EAAE,UAAU,CAAA;CAAE,CAOnF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAQlD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,aAAa,GAClB,IAAI,IAAI,aAAa,GAAG;IAAE,IAAI,EAAE,uBAAuB,CAAA;CAAE,CAU3D;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAM5E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACnB,SAAS,IAAI,SAAS,GAAG;IAAE,IAAI,EAAE,EAAE,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAE,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,EACtD,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAwB,WAmBvD"}
1
+ {"version":3,"file":"type-utils.d.ts","sourceRoot":"","sources":["../../core/type-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,IAAI,EACJ,SAAS,EACT,SAAS,EACT,KAAK,EACL,SAAS,EACT,SAAS,EACT,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,GAAG,EAGH,uBAAuB,EACvB,aAAa,EACb,IAAI,EACJ,UAAU,EACV,WAAW,EACX,QAAQ,EACT,MAAM,YAAY,CAAC;AAEpB,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,SAAS,CAEzD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,QAAQ,CAEvD;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,SAAS,CAEzD;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,WAAW,CAE7D;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,QAAQ,CAEvD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,uBAAuB,CAAC,GAAG,SAAS,CAc9F;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,IAAI,EAAE,IAAI,GACT,IAAI,IAAI,aAAa,GAAG;IAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;IAAC,cAAc,EAAE,UAAU,CAAA;CAAE,CAOnF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAQlD;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,aAAa,GAClB,IAAI,IAAI,aAAa,GAAG;IAAE,IAAI,EAAE,uBAAuB,CAAA;CAAE,CAU3D;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAM5E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,SAAS,GACnB,SAAS,IAAI,SAAS,GAAG;IAAE,IAAI,EAAE,EAAE,CAAC;IAAC,SAAS,EAAE,SAAS,CAAA;CAAE,CAE7D;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,KAAK,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,IAAI,EACtD,SAAS,EAAE,SAAS,EACpB,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,OAAO,CAAA;CAAwB,WAmBvD;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,GAAG,GAAG,SAAS,EACpB,OAAO,CAAC,EAAE;IAAE,yBAAyB,CAAC,EAAE,OAAO,CAAA;CAAE,GAChD,MAAM,CAcR"}
@@ -108,4 +108,21 @@ export function isDeclaredInNamespace(type, namespace, options = { recursive: tr
108
108
  }
109
109
  return false;
110
110
  }
111
+ export function getFullyQualifiedSymbolName(sym, options) {
112
+ if (!sym)
113
+ return "";
114
+ if (sym.symbolSource)
115
+ sym = sym.symbolSource;
116
+ const parent = sym.parent && !(sym.parent.flags & 2097152 /* SymbolFlags.SourceFile */) ? sym.parent : undefined;
117
+ const name = sym.flags & 16384 /* SymbolFlags.Decorator */ ? sym.name.slice(1) : sym.name;
118
+ if (parent === null || parent === void 0 ? void 0 : parent.name) {
119
+ return `${getFullyQualifiedSymbolName(parent)}.${name}`;
120
+ }
121
+ else if (options === null || options === void 0 ? void 0 : options.useGlobalPrefixAtTopLevel) {
122
+ return `global.${name}`;
123
+ }
124
+ else {
125
+ return name;
126
+ }
127
+ }
111
128
  //# sourceMappingURL=type-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-utils.js","sourceRoot":"","sources":["../../core/type-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type-utils.js","sourceRoot":"","sources":["../../core/type-utils.ts"],"names":[],"mappings":"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"}
package/dist/manifest.js CHANGED
@@ -1,4 +1,4 @@
1
1
  export default {
2
2
  "version": "0.44.0",
3
- "commit": "dd983027d96871b3ff7dab30c7ccf4ee490ce432"
3
+ "commit": "bd7b72a4c5158324e1487b68b1eab59c5b647828"
4
4
  };
@@ -4,7 +4,7 @@ import { getAnyExtensionFromPath, getBaseFileName, getDirectoryPath, hasTrailing
4
4
  import { findProjectRoot, loadFile, resolveTspMain } from "../core/util.js";
5
5
  import { printId } from "../formatter/print/printer.js";
6
6
  import { isDeprecated } from "../lib/decorators.js";
7
- import { getTypeDetails } from "./type-details.js";
7
+ import { getSymbolDetails } from "./type-details.js";
8
8
  export async function resolveCompletion(context, node) {
9
9
  const completions = {
10
10
  isIncomplete: false,
@@ -158,7 +158,7 @@ function addIdentifierCompletion({ program, completions }, node) {
158
158
  kind = getCompletionItemKind(program, type);
159
159
  deprecated = isDeprecated(program, type);
160
160
  }
161
- const documentation = getTypeDetails(program, type);
161
+ const documentation = getSymbolDetails(program, sym);
162
162
  const item = {
163
163
  label: label !== null && label !== void 0 ? label : key,
164
164
  documentation: documentation
@@ -1 +1 @@
1
- {"version":3,"file":"completion.js","sourceRoot":"","sources":["../../server/completion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"completion.js","sourceRoot":"","sources":["../../server/completion.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"serverlib.d.ts","sourceRoot":"","sources":["../../server/serverlib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serverlib.d.ts","sourceRoot":"","sources":["../../server/serverlib.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,7 @@ import { SyntaxKind, } from "../core/types.js";
12
12
  import { doIO, getNormalizedRealPath, getSourceFileKindFromExt, loadFile, resolveTspMain, } from "../core/util.js";
13
13
  import { resolveCompletion } from "./completion.js";
14
14
  import { getSymbolStructure } from "./symbol-structure.js";
15
- import { getParameterDocumentation, getTypeDetails } from "./type-details.js";
15
+ import { getParameterDocumentation, getSymbolDetails, getTemplateParameterDocumentation, } from "./type-details.js";
16
16
  export var SemanticTokenKind;
17
17
  (function (SemanticTokenKind) {
18
18
  SemanticTokenKind[SemanticTokenKind["Namespace"] = 0] = "Namespace";
@@ -390,12 +390,10 @@ export function createServer(host) {
390
390
  }
391
391
  async function getHover(params) {
392
392
  const docString = await compile(params.textDocument, (program, document, file) => {
393
- var _a;
394
393
  const id = getNodeAtPosition(file, document.offsetAt(params.position));
395
394
  const sym = (id === null || id === void 0 ? void 0 : id.kind) === SyntaxKind.Identifier ? program.checker.resolveIdentifier(id) : undefined;
396
395
  if (sym) {
397
- const type = (_a = sym.type) !== null && _a !== void 0 ? _a : program.checker.getTypeForNode(sym.declarations[0]);
398
- return getTypeDetails(program, type);
396
+ return getSymbolDetails(program, sym);
399
397
  }
400
398
  return undefined;
401
399
  });
@@ -409,62 +407,113 @@ export function createServer(host) {
409
407
  }
410
408
  async function getSignatureHelp(params) {
411
409
  return await compile(params.textDocument, (program, document, file) => {
412
- const nodeAtPosition = getNodeAtPosition(file, document.offsetAt(params.position));
413
- const data = nodeAtPosition && findDecoratorOrParameter(nodeAtPosition);
410
+ const data = getSignatureHelpNodeAtPosition(file, document.offsetAt(params.position));
414
411
  if (data === undefined) {
415
412
  return undefined;
416
413
  }
417
414
  const { node, argumentIndex } = data;
418
- const sym = program.checker.resolveIdentifier(node.target.kind === SyntaxKind.MemberExpression ? node.target.id : node.target);
419
- const decoratorDeclNode = sym === null || sym === void 0 ? void 0 : sym.declarations.find((x) => x.kind === SyntaxKind.DecoratorDeclarationStatement);
420
- if (decoratorDeclNode === undefined) {
421
- return undefined;
415
+ switch (node.kind) {
416
+ case SyntaxKind.TypeReference:
417
+ return getSignatureHelpForTemplate(program, node, argumentIndex);
418
+ case SyntaxKind.DecoratorExpression:
419
+ case SyntaxKind.AugmentDecoratorStatement:
420
+ return getSignatureHelpForDecorator(program, node, argumentIndex);
421
+ default:
422
+ const _assertNever = node;
423
+ compilerAssert(false, "Unreachable");
422
424
  }
423
- const type = program.checker.getTypeForNode(decoratorDeclNode);
424
- compilerAssert(type.kind === "Decorator", "Expected type to be a decorator.");
425
- const parameterDocs = getParameterDocumentation(program, type);
426
- let labelPrefix = "";
427
- const parameters = [];
428
- if (node.kind === SyntaxKind.AugmentDecoratorStatement) {
429
- const targetType = decoratorDeclNode.target.type
430
- ? program.checker.getTypeForNode(decoratorDeclNode.target.type)
431
- : undefined;
432
- parameters.push({
433
- label: `${decoratorDeclNode.target.id.sv}: ${targetType ? getTypeName(targetType) : "unknown"}`,
434
- });
435
- labelPrefix = "@";
425
+ });
426
+ }
427
+ function getSignatureHelpForTemplate(program, node, argumentIndex) {
428
+ const sym = program.checker.resolveIdentifier(node.target.kind === SyntaxKind.MemberExpression ? node.target.id : node.target);
429
+ const templateDeclNode = sym === null || sym === void 0 ? void 0 : sym.declarations[0];
430
+ if (!templateDeclNode ||
431
+ !("templateParameters" in templateDeclNode) ||
432
+ templateDeclNode.templateParameters.length === 0) {
433
+ return undefined;
434
+ }
435
+ const parameterDocs = getTemplateParameterDocumentation(templateDeclNode);
436
+ const parameters = templateDeclNode.templateParameters.map((x) => {
437
+ const info = { label: x.id.sv };
438
+ const doc = parameterDocs.get(x.id.sv);
439
+ if (doc) {
440
+ info.documentation = { kind: MarkupKind.Markdown, value: doc };
436
441
  }
437
- parameters.push(...type.parameters.map((x) => {
438
- const info = {
439
- // prettier-ignore
440
- label: `${x.rest ? "..." : ""}${x.name}${x.optional ? "?" : ""}: ${getTypeName(x.type)}`,
441
- };
442
- const doc = parameterDocs.get(x.name);
443
- if (doc) {
444
- info.documentation = { kind: MarkupKind.Markdown, value: doc };
445
- }
446
- return info;
447
- }));
448
- const help = {
449
- signatures: [
450
- {
451
- label: `${labelPrefix}${type.name}(${parameters.map((x) => x.label).join(", ")})`,
452
- parameters,
453
- activeParameter: Math.min(parameters.length - 1, argumentIndex),
454
- },
455
- ],
456
- activeSignature: 0,
457
- activeParameter: 0,
458
- };
459
- const doc = getTypeDetails(program, type, {
460
- includeSignature: false,
461
- includeParameterTags: false,
442
+ return info;
443
+ });
444
+ const help = {
445
+ signatures: [
446
+ {
447
+ label: `${sym.name}<${parameters.map((x) => x.label).join(", ")}>`,
448
+ parameters,
449
+ activeParameter: Math.min(parameters.length - 1, argumentIndex),
450
+ },
451
+ ],
452
+ activeSignature: 0,
453
+ activeParameter: 0,
454
+ };
455
+ const doc = getSymbolDetails(program, sym, {
456
+ includeSignature: false,
457
+ includeParameterTags: false,
458
+ });
459
+ if (doc) {
460
+ help.signatures[0].documentation = { kind: MarkupKind.Markdown, value: doc };
461
+ }
462
+ return help;
463
+ }
464
+ function getSignatureHelpForDecorator(program, node, argumentIndex) {
465
+ const sym = program.checker.resolveIdentifier(node.target.kind === SyntaxKind.MemberExpression ? node.target.id : node.target);
466
+ if (!sym) {
467
+ return undefined;
468
+ }
469
+ const decoratorDeclNode = sym.declarations.find((x) => x.kind === SyntaxKind.DecoratorDeclarationStatement);
470
+ if (decoratorDeclNode === undefined) {
471
+ return undefined;
472
+ }
473
+ const type = program.checker.getTypeForNode(decoratorDeclNode);
474
+ compilerAssert(type.kind === "Decorator", "Expected type to be a decorator.");
475
+ const parameterDocs = getParameterDocumentation(program, type);
476
+ let labelPrefix = "";
477
+ const parameters = [];
478
+ if (node.kind === SyntaxKind.AugmentDecoratorStatement) {
479
+ const targetType = decoratorDeclNode.target.type
480
+ ? program.checker.getTypeForNode(decoratorDeclNode.target.type)
481
+ : undefined;
482
+ parameters.push({
483
+ label: `${decoratorDeclNode.target.id.sv}: ${targetType ? getTypeName(targetType) : "unknown"}`,
462
484
  });
485
+ labelPrefix = "@";
486
+ }
487
+ parameters.push(...type.parameters.map((x) => {
488
+ const info = {
489
+ // prettier-ignore
490
+ label: `${x.rest ? "..." : ""}${x.name}${x.optional ? "?" : ""}: ${getTypeName(x.type)}`,
491
+ };
492
+ const doc = parameterDocs.get(x.name);
463
493
  if (doc) {
464
- help.signatures[0].documentation = { kind: MarkupKind.Markdown, value: doc };
494
+ info.documentation = { kind: MarkupKind.Markdown, value: doc };
465
495
  }
466
- return help;
496
+ return info;
497
+ }));
498
+ const help = {
499
+ signatures: [
500
+ {
501
+ label: `${labelPrefix}${type.name}(${parameters.map((x) => x.label).join(", ")})`,
502
+ parameters,
503
+ activeParameter: Math.min(parameters.length - 1, argumentIndex),
504
+ },
505
+ ],
506
+ activeSignature: 0,
507
+ activeParameter: 0,
508
+ };
509
+ const doc = getSymbolDetails(program, sym, {
510
+ includeSignature: false,
511
+ includeParameterTags: false,
467
512
  });
513
+ if (doc) {
514
+ help.signatures[0].documentation = { kind: MarkupKind.Markdown, value: doc };
515
+ }
516
+ return help;
468
517
  }
469
518
  async function formatDocument(params) {
470
519
  const document = host.getOpenDocumentByURL(params.textDocument.uri);
@@ -986,31 +1035,52 @@ export function createServer(host) {
986
1035
  }
987
1036
  }
988
1037
  }
989
- function findDecoratorOrParameter(node) {
990
- var _a, _b, _c;
991
- if (node.kind === SyntaxKind.DecoratorExpression) {
992
- return { node, argumentIndex: node.arguments.length };
1038
+ function getSignatureHelpNodeAtPosition(file, position) {
1039
+ var _a;
1040
+ const node = getNodeAtPosition(file, position);
1041
+ if (!node) {
1042
+ return undefined;
993
1043
  }
994
- if (node.kind === SyntaxKind.AugmentDecoratorStatement) {
995
- return { node, argumentIndex: node.arguments.length + 1 };
1044
+ // Edge case: If the node itself is decorator or type reference and we're
1045
+ // at a position where a type argument can occur, then we are at the last
1046
+ // argument. The syntax tree will not have a missing identifier for the
1047
+ // final argument as the recovery will be to assume there was a trailing
1048
+ // delimiter. For example: @dec(x,y,|) or Template<x,y,|>.
1049
+ switch (node.kind) {
1050
+ case SyntaxKind.DecoratorExpression:
1051
+ case SyntaxKind.TypeReference:
1052
+ if (position > node.target.end) {
1053
+ return { node, argumentIndex: node.arguments.length };
1054
+ }
1055
+ break;
1056
+ case SyntaxKind.AugmentDecoratorStatement:
1057
+ if (position > node.targetType.end) {
1058
+ return { node, argumentIndex: node.arguments.length + 1 };
1059
+ }
1060
+ break;
996
1061
  }
997
- let current = node;
998
- while (current) {
999
- if (((_a = current.parent) === null || _a === void 0 ? void 0 : _a.kind) === SyntaxKind.DecoratorExpression) {
1000
- return {
1001
- node: current.parent,
1002
- argumentIndex: current.parent.arguments.indexOf(current),
1003
- };
1062
+ // Normal case: Check if the node is parented by a type reference or
1063
+ // decorator and is one of its parent's arguments.
1064
+ for (let current = node; current; current = current.parent) {
1065
+ let argumentIndex = -1;
1066
+ let signatureNode;
1067
+ switch ((_a = current.parent) === null || _a === void 0 ? void 0 : _a.kind) {
1068
+ case SyntaxKind.TypeReference:
1069
+ case SyntaxKind.DecoratorExpression:
1070
+ signatureNode = current.parent;
1071
+ argumentIndex = current.parent.arguments.indexOf(current);
1072
+ break;
1073
+ case SyntaxKind.AugmentDecoratorStatement:
1074
+ signatureNode = current.parent;
1075
+ argumentIndex =
1076
+ current === current.parent.targetType
1077
+ ? 0
1078
+ : current.parent.arguments.indexOf(current) + 1;
1079
+ break;
1004
1080
  }
1005
- if (((_b = current.parent) === null || _b === void 0 ? void 0 : _b.kind) === SyntaxKind.AugmentDecoratorStatement) {
1006
- return {
1007
- node: current.parent,
1008
- argumentIndex: current === ((_c = current.parent) === null || _c === void 0 ? void 0 : _c.targetType)
1009
- ? 0
1010
- : current.parent.arguments.indexOf(current) + 1,
1011
- };
1081
+ if (signatureNode && argumentIndex >= 0) {
1082
+ return { node: signatureNode, argumentIndex };
1012
1083
  }
1013
- current = current.parent;
1014
1084
  }
1015
1085
  return undefined;
1016
1086
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serverlib.js","sourceRoot":"","sources":["../../server/serverlib.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serverlib.js","sourceRoot":"","sources":["../../server/serverlib.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,2 @@
1
- import { Program, Type } from "../core/index.js";
2
- /**
3
- * Get the detailed documentation of a type.
4
- * @param program The program
5
- */
6
- export declare function getTypeDetails(program: Program, type: Type, options?: {
7
- includeSignature: boolean;
8
- includeParameterTags: boolean;
9
- }): string;
10
- export declare function getParameterDocumentation(program: Program, type: Type): Map<string, string>;
1
+ export {};
11
2
  //# sourceMappingURL=type-details.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"type-details.d.ts","sourceRoot":"","sources":["../../server/type-details.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,OAAO,EAEP,IAAI,EACL,MAAM,kBAAkB,CAAC;AAG1B;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,OAAO;;;CAGN,GACA,MAAM,CA2BR;AAoBD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAU3F"}
1
+ {"version":3,"file":"type-details.d.ts","sourceRoot":"","sources":["../../server/type-details.ts"],"names":[],"mappings":""}