@typescript-deploys/pr-build 5.5.0-pr-57207-16 → 5.5.0-pr-57589-6

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/lib/tsc.js CHANGED
@@ -18,7 +18,7 @@ and limitations under the License.
18
18
 
19
19
  // src/compiler/corePublic.ts
20
20
  var versionMajorMinor = "5.5";
21
- var version = `${versionMajorMinor}.0-insiders.20240307`;
21
+ var version = `${versionMajorMinor}.0-insiders.20240308`;
22
22
 
23
23
  // src/compiler/core.ts
24
24
  var emptyArray = [];
@@ -3340,13 +3340,12 @@ var SyntaxKind = /* @__PURE__ */ ((SyntaxKind4) => {
3340
3340
  SyntaxKind4[SyntaxKind4["JSDocPropertyTag"] = 348] = "JSDocPropertyTag";
3341
3341
  SyntaxKind4[SyntaxKind4["JSDocThrowsTag"] = 349] = "JSDocThrowsTag";
3342
3342
  SyntaxKind4[SyntaxKind4["JSDocSatisfiesTag"] = 350] = "JSDocSatisfiesTag";
3343
- SyntaxKind4[SyntaxKind4["JSDocImportTag"] = 351] = "JSDocImportTag";
3344
- SyntaxKind4[SyntaxKind4["SyntaxList"] = 352] = "SyntaxList";
3345
- SyntaxKind4[SyntaxKind4["NotEmittedStatement"] = 353] = "NotEmittedStatement";
3346
- SyntaxKind4[SyntaxKind4["PartiallyEmittedExpression"] = 354] = "PartiallyEmittedExpression";
3347
- SyntaxKind4[SyntaxKind4["CommaListExpression"] = 355] = "CommaListExpression";
3348
- SyntaxKind4[SyntaxKind4["SyntheticReferenceExpression"] = 356] = "SyntheticReferenceExpression";
3349
- SyntaxKind4[SyntaxKind4["Count"] = 357] = "Count";
3343
+ SyntaxKind4[SyntaxKind4["SyntaxList"] = 351] = "SyntaxList";
3344
+ SyntaxKind4[SyntaxKind4["NotEmittedStatement"] = 352] = "NotEmittedStatement";
3345
+ SyntaxKind4[SyntaxKind4["PartiallyEmittedExpression"] = 353] = "PartiallyEmittedExpression";
3346
+ SyntaxKind4[SyntaxKind4["CommaListExpression"] = 354] = "CommaListExpression";
3347
+ SyntaxKind4[SyntaxKind4["SyntheticReferenceExpression"] = 355] = "SyntheticReferenceExpression";
3348
+ SyntaxKind4[SyntaxKind4["Count"] = 356] = "Count";
3350
3349
  SyntaxKind4[SyntaxKind4["FirstAssignment"] = 64 /* EqualsToken */] = "FirstAssignment";
3351
3350
  SyntaxKind4[SyntaxKind4["LastAssignment"] = 79 /* CaretEqualsToken */] = "LastAssignment";
3352
3351
  SyntaxKind4[SyntaxKind4["FirstCompoundAssignment"] = 65 /* PlusEqualsToken */] = "FirstCompoundAssignment";
@@ -3375,9 +3374,9 @@ var SyntaxKind = /* @__PURE__ */ ((SyntaxKind4) => {
3375
3374
  SyntaxKind4[SyntaxKind4["LastStatement"] = 259 /* DebuggerStatement */] = "LastStatement";
3376
3375
  SyntaxKind4[SyntaxKind4["FirstNode"] = 166 /* QualifiedName */] = "FirstNode";
3377
3376
  SyntaxKind4[SyntaxKind4["FirstJSDocNode"] = 309 /* JSDocTypeExpression */] = "FirstJSDocNode";
3378
- SyntaxKind4[SyntaxKind4["LastJSDocNode"] = 351 /* JSDocImportTag */] = "LastJSDocNode";
3377
+ SyntaxKind4[SyntaxKind4["LastJSDocNode"] = 350 /* JSDocSatisfiesTag */] = "LastJSDocNode";
3379
3378
  SyntaxKind4[SyntaxKind4["FirstJSDocTagNode"] = 327 /* JSDocTag */] = "FirstJSDocTagNode";
3380
- SyntaxKind4[SyntaxKind4["LastJSDocTagNode"] = 351 /* JSDocImportTag */] = "LastJSDocTagNode";
3379
+ SyntaxKind4[SyntaxKind4["LastJSDocTagNode"] = 350 /* JSDocSatisfiesTag */] = "LastJSDocTagNode";
3381
3380
  SyntaxKind4[SyntaxKind4["FirstContextualKeyword"] = 128 /* AbstractKeyword */] = "FirstContextualKeyword";
3382
3381
  SyntaxKind4[SyntaxKind4["LastContextualKeyword"] = 165 /* OfKeyword */] = "LastContextualKeyword";
3383
3382
  return SyntaxKind4;
@@ -8437,7 +8436,7 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
8437
8436
  var tokenValue;
8438
8437
  var tokenFlags;
8439
8438
  var commentDirectives;
8440
- var skipJsDocLeadingAsterisks = 0;
8439
+ var inJSDocType = 0;
8441
8440
  var scriptKind = 0 /* Unknown */;
8442
8441
  var jsDocParsingMode = 0 /* ParseAll */;
8443
8442
  setText(text, start, length2);
@@ -8488,7 +8487,7 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
8488
8487
  setOnError,
8489
8488
  resetTokenState,
8490
8489
  setTextPos: resetTokenState,
8491
- setSkipJsDocLeadingAsterisks,
8490
+ setInJSDocType,
8492
8491
  tryScan,
8493
8492
  lookAhead,
8494
8493
  scanRange
@@ -9204,7 +9203,7 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
9204
9203
  return pos += 2, token = 43 /* AsteriskAsteriskToken */;
9205
9204
  }
9206
9205
  pos++;
9207
- if (skipJsDocLeadingAsterisks && !asteriskSeen && tokenFlags & 1 /* PrecedingLineBreak */) {
9206
+ if (inJSDocType && !asteriskSeen && tokenFlags & 1 /* PrecedingLineBreak */) {
9208
9207
  asteriskSeen = true;
9209
9208
  continue;
9210
9209
  }
@@ -9982,8 +9981,8 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
9982
9981
  tokenValue = void 0;
9983
9982
  tokenFlags = 0 /* None */;
9984
9983
  }
9985
- function setSkipJsDocLeadingAsterisks(skip) {
9986
- skipJsDocLeadingAsterisks += skip ? 1 : -1;
9984
+ function setInJSDocType(inType) {
9985
+ inJSDocType += inType ? 1 : -1;
9987
9986
  }
9988
9987
  }
9989
9988
  function codePointAt(s, i) {
@@ -11036,8 +11035,8 @@ function isExpressionKind(kind) {
11036
11035
  case 230 /* SpreadElement */:
11037
11036
  case 234 /* AsExpression */:
11038
11037
  case 232 /* OmittedExpression */:
11039
- case 355 /* CommaListExpression */:
11040
- case 354 /* PartiallyEmittedExpression */:
11038
+ case 354 /* CommaListExpression */:
11039
+ case 353 /* PartiallyEmittedExpression */:
11041
11040
  case 238 /* SatisfiesExpression */:
11042
11041
  return true;
11043
11042
  default:
@@ -11208,7 +11207,7 @@ function isDeclarationStatementKind(kind) {
11208
11207
  return kind === 262 /* FunctionDeclaration */ || kind === 282 /* MissingDeclaration */ || kind === 263 /* ClassDeclaration */ || kind === 264 /* InterfaceDeclaration */ || kind === 265 /* TypeAliasDeclaration */ || kind === 266 /* EnumDeclaration */ || kind === 267 /* ModuleDeclaration */ || kind === 272 /* ImportDeclaration */ || kind === 271 /* ImportEqualsDeclaration */ || kind === 278 /* ExportDeclaration */ || kind === 277 /* ExportAssignment */ || kind === 270 /* NamespaceExportDeclaration */;
11209
11208
  }
11210
11209
  function isStatementKindButNotDeclarationKind(kind) {
11211
- return kind === 252 /* BreakStatement */ || kind === 251 /* ContinueStatement */ || kind === 259 /* DebuggerStatement */ || kind === 246 /* DoStatement */ || kind === 244 /* ExpressionStatement */ || kind === 242 /* EmptyStatement */ || kind === 249 /* ForInStatement */ || kind === 250 /* ForOfStatement */ || kind === 248 /* ForStatement */ || kind === 245 /* IfStatement */ || kind === 256 /* LabeledStatement */ || kind === 253 /* ReturnStatement */ || kind === 255 /* SwitchStatement */ || kind === 257 /* ThrowStatement */ || kind === 258 /* TryStatement */ || kind === 243 /* VariableStatement */ || kind === 247 /* WhileStatement */ || kind === 254 /* WithStatement */ || kind === 353 /* NotEmittedStatement */;
11210
+ return kind === 252 /* BreakStatement */ || kind === 251 /* ContinueStatement */ || kind === 259 /* DebuggerStatement */ || kind === 246 /* DoStatement */ || kind === 244 /* ExpressionStatement */ || kind === 242 /* EmptyStatement */ || kind === 249 /* ForInStatement */ || kind === 250 /* ForOfStatement */ || kind === 248 /* ForStatement */ || kind === 245 /* IfStatement */ || kind === 256 /* LabeledStatement */ || kind === 253 /* ReturnStatement */ || kind === 255 /* SwitchStatement */ || kind === 257 /* ThrowStatement */ || kind === 258 /* TryStatement */ || kind === 243 /* VariableStatement */ || kind === 247 /* WhileStatement */ || kind === 254 /* WithStatement */ || kind === 352 /* NotEmittedStatement */;
11212
11211
  }
11213
11212
  function isDeclaration(node) {
11214
11213
  if (node.kind === 168 /* TypeParameter */) {
@@ -11269,10 +11268,10 @@ function isCaseOrDefaultClause(node) {
11269
11268
  return kind === 296 /* CaseClause */ || kind === 297 /* DefaultClause */;
11270
11269
  }
11271
11270
  function isJSDocNode(node) {
11272
- return node.kind >= 309 /* FirstJSDocNode */ && node.kind <= 351 /* LastJSDocNode */;
11271
+ return node.kind >= 309 /* FirstJSDocNode */ && node.kind <= 350 /* LastJSDocNode */;
11273
11272
  }
11274
11273
  function isJSDocTag(node) {
11275
- return node.kind >= 327 /* FirstJSDocTagNode */ && node.kind <= 351 /* LastJSDocTagNode */;
11274
+ return node.kind >= 327 /* FirstJSDocTagNode */ && node.kind <= 350 /* LastJSDocTagNode */;
11276
11275
  }
11277
11276
  function isSetAccessor(node) {
11278
11277
  return node.kind === 178 /* SetAccessor */;
@@ -11713,7 +11712,7 @@ function getTokenPosOfNode(node, sourceFile, includeJsDoc) {
11713
11712
  if (includeJsDoc && hasJSDocNodes(node)) {
11714
11713
  return getTokenPosOfNode(node.jsDoc[0], sourceFile);
11715
11714
  }
11716
- if (node.kind === 352 /* SyntaxList */ && node._children.length > 0) {
11715
+ if (node.kind === 351 /* SyntaxList */ && node._children.length > 0) {
11717
11716
  return getTokenPosOfNode(node._children[0], sourceFile, includeJsDoc);
11718
11717
  }
11719
11718
  return skipTrivia(
@@ -13664,7 +13663,6 @@ function tryGetModuleSpecifierFromDeclaration(node) {
13664
13663
  ))) == null ? void 0 : _a.arguments[0];
13665
13664
  case 272 /* ImportDeclaration */:
13666
13665
  case 278 /* ExportDeclaration */:
13667
- case 351 /* JSDocImportTag */:
13668
13666
  return tryCast(node.moduleSpecifier, isStringLiteralLike);
13669
13667
  case 271 /* ImportEqualsDeclaration */:
13670
13668
  return tryCast((_b = tryCast(node.moduleReference, isExternalModuleReference)) == null ? void 0 : _b.expression, isStringLiteralLike);
@@ -13686,7 +13684,6 @@ function getExternalModuleName(node) {
13686
13684
  switch (node.kind) {
13687
13685
  case 272 /* ImportDeclaration */:
13688
13686
  case 278 /* ExportDeclaration */:
13689
- case 351 /* JSDocImportTag */:
13690
13687
  return node.moduleSpecifier;
13691
13688
  case 271 /* ImportEqualsDeclaration */:
13692
13689
  return node.moduleReference.kind === 283 /* ExternalModuleReference */ ? node.moduleReference.expression : void 0;
@@ -13713,7 +13710,7 @@ function getNamespaceDeclarationNode(node) {
13713
13710
  }
13714
13711
  }
13715
13712
  function isDefaultImport(node) {
13716
- return (node.kind === 272 /* ImportDeclaration */ || node.kind === 351 /* JSDocImportTag */) && !!node.importClause && !!node.importClause.name;
13713
+ return node.kind === 272 /* ImportDeclaration */ && !!node.importClause && !!node.importClause.name;
13717
13714
  }
13718
13715
  function hasQuestionToken(node) {
13719
13716
  if (node) {
@@ -14486,7 +14483,7 @@ function getOperator(expression) {
14486
14483
  }
14487
14484
  function getOperatorPrecedence(nodeKind, operatorKind, hasArguments) {
14488
14485
  switch (nodeKind) {
14489
- case 355 /* CommaListExpression */:
14486
+ case 354 /* CommaListExpression */:
14490
14487
  return 0 /* Comma */;
14491
14488
  case 230 /* SpreadElement */:
14492
14489
  return 1 /* Spread */;
@@ -16035,7 +16032,7 @@ function getLeftmostExpression(node, stopAtCallExpressions) {
16035
16032
  case 212 /* ElementAccessExpression */:
16036
16033
  case 211 /* PropertyAccessExpression */:
16037
16034
  case 235 /* NonNullExpression */:
16038
- case 354 /* PartiallyEmittedExpression */:
16035
+ case 353 /* PartiallyEmittedExpression */:
16039
16036
  case 238 /* SatisfiesExpression */:
16040
16037
  node = node.expression;
16041
16038
  continue;
@@ -17422,7 +17419,7 @@ function getContainingNodeArray(node) {
17422
17419
  return parent.types;
17423
17420
  case 189 /* TupleType */:
17424
17421
  case 209 /* ArrayLiteralExpression */:
17425
- case 355 /* CommaListExpression */:
17422
+ case 354 /* CommaListExpression */:
17426
17423
  case 275 /* NamedImports */:
17427
17424
  case 279 /* NamedExports */:
17428
17425
  return parent.elements;
@@ -18607,8 +18604,6 @@ function createNodeFactory(flags, baseFactory2) {
18607
18604
  updateJSDocImplementsTag,
18608
18605
  createJSDocSeeTag,
18609
18606
  updateJSDocSeeTag,
18610
- createJSDocImportTag,
18611
- updateJSDocImportTag,
18612
18607
  createJSDocNameReference,
18613
18608
  updateJSDocNameReference,
18614
18609
  createJSDocMemberName,
@@ -21381,17 +21376,6 @@ function createNodeFactory(flags, baseFactory2) {
21381
21376
  function updateJSDocEnumTag(node, tagName = getDefaultTagName(node), typeExpression, comment) {
21382
21377
  return node.tagName !== tagName || node.typeExpression !== typeExpression || node.comment !== comment ? update(createJSDocEnumTag(tagName, typeExpression, comment), node) : node;
21383
21378
  }
21384
- function createJSDocImportTag(tagName, importClause, moduleSpecifier, attributes, comment) {
21385
- const node = createBaseJSDocTag(351 /* JSDocImportTag */, tagName ?? createIdentifier("import"), comment);
21386
- node.importClause = importClause;
21387
- node.moduleSpecifier = moduleSpecifier;
21388
- node.attributes = attributes;
21389
- node.comment = comment;
21390
- return node;
21391
- }
21392
- function updateJSDocImportTag(node, tagName, importClause, moduleSpecifier, attributes, comment) {
21393
- return node.tagName !== tagName || node.comment !== comment || node.importClause !== importClause || node.moduleSpecifier !== moduleSpecifier || node.attributes !== attributes ? update(createJSDocImportTag(tagName, importClause, moduleSpecifier, attributes, comment), node) : node;
21394
- }
21395
21379
  function createJSDocText(text) {
21396
21380
  const node = createBaseNode(321 /* JSDocText */);
21397
21381
  node.text = text;
@@ -21789,18 +21773,18 @@ function createNodeFactory(flags, baseFactory2) {
21789
21773
  return node;
21790
21774
  }
21791
21775
  function createSyntaxList(children) {
21792
- const node = createBaseNode(352 /* SyntaxList */);
21776
+ const node = createBaseNode(351 /* SyntaxList */);
21793
21777
  node._children = children;
21794
21778
  return node;
21795
21779
  }
21796
21780
  function createNotEmittedStatement(original) {
21797
- const node = createBaseNode(353 /* NotEmittedStatement */);
21781
+ const node = createBaseNode(352 /* NotEmittedStatement */);
21798
21782
  node.original = original;
21799
21783
  setTextRange(node, original);
21800
21784
  return node;
21801
21785
  }
21802
21786
  function createPartiallyEmittedExpression(expression, original) {
21803
- const node = createBaseNode(354 /* PartiallyEmittedExpression */);
21787
+ const node = createBaseNode(353 /* PartiallyEmittedExpression */);
21804
21788
  node.expression = expression;
21805
21789
  node.original = original;
21806
21790
  node.transformFlags |= propagateChildFlags(node.expression) | 1 /* ContainsTypeScript */;
@@ -21822,7 +21806,7 @@ function createNodeFactory(flags, baseFactory2) {
21822
21806
  return node;
21823
21807
  }
21824
21808
  function createCommaListExpression(elements) {
21825
- const node = createBaseNode(355 /* CommaListExpression */);
21809
+ const node = createBaseNode(354 /* CommaListExpression */);
21826
21810
  node.elements = createNodeArray(sameFlatMap(elements, flattenCommaElements));
21827
21811
  node.transformFlags |= propagateChildrenFlags(node.elements);
21828
21812
  return node;
@@ -21831,7 +21815,7 @@ function createNodeFactory(flags, baseFactory2) {
21831
21815
  return node.elements !== elements ? update(createCommaListExpression(elements), node) : node;
21832
21816
  }
21833
21817
  function createSyntheticReferenceExpression(expression, thisArg) {
21834
- const node = createBaseNode(356 /* SyntheticReferenceExpression */);
21818
+ const node = createBaseNode(355 /* SyntheticReferenceExpression */);
21835
21819
  node.expression = expression;
21836
21820
  node.thisArg = thisArg;
21837
21821
  node.transformFlags |= propagateChildFlags(node.expression) | propagateChildFlags(node.thisArg);
@@ -22077,7 +22061,7 @@ function createNodeFactory(flags, baseFactory2) {
22077
22061
  return updateSatisfiesExpression(outerExpression, expression, outerExpression.type);
22078
22062
  case 235 /* NonNullExpression */:
22079
22063
  return updateNonNullExpression(outerExpression, expression);
22080
- case 354 /* PartiallyEmittedExpression */:
22064
+ case 353 /* PartiallyEmittedExpression */:
22081
22065
  return updatePartiallyEmittedExpression(outerExpression, expression);
22082
22066
  }
22083
22067
  }
@@ -22487,8 +22471,6 @@ function getDefaultTagNameForKind(kind) {
22487
22471
  return "augments";
22488
22472
  case 329 /* JSDocImplementsTag */:
22489
22473
  return "implements";
22490
- case 351 /* JSDocImportTag */:
22491
- return "import";
22492
22474
  default:
22493
22475
  return Debug.fail(`Unsupported kind: ${Debug.formatSyntaxKind(kind)}`);
22494
22476
  }
@@ -22629,7 +22611,7 @@ function getTransformFlagsSubtreeExclusions(kind) {
22629
22611
  case 216 /* TypeAssertionExpression */:
22630
22612
  case 238 /* SatisfiesExpression */:
22631
22613
  case 234 /* AsExpression */:
22632
- case 354 /* PartiallyEmittedExpression */:
22614
+ case 353 /* PartiallyEmittedExpression */:
22633
22615
  case 217 /* ParenthesizedExpression */:
22634
22616
  case 108 /* SuperKeyword */:
22635
22617
  return -2147483648 /* OuterExpressionExcludes */;
@@ -24267,10 +24249,10 @@ function isMetaProperty(node) {
24267
24249
  return node.kind === 236 /* MetaProperty */;
24268
24250
  }
24269
24251
  function isPartiallyEmittedExpression(node) {
24270
- return node.kind === 354 /* PartiallyEmittedExpression */;
24252
+ return node.kind === 353 /* PartiallyEmittedExpression */;
24271
24253
  }
24272
24254
  function isCommaListExpression(node) {
24273
- return node.kind === 355 /* CommaListExpression */;
24255
+ return node.kind === 354 /* CommaListExpression */;
24274
24256
  }
24275
24257
  function isTemplateSpan(node) {
24276
24258
  return node.kind === 239 /* TemplateSpan */;
@@ -24393,10 +24375,10 @@ function isExportSpecifier(node) {
24393
24375
  return node.kind === 281 /* ExportSpecifier */;
24394
24376
  }
24395
24377
  function isNotEmittedStatement(node) {
24396
- return node.kind === 353 /* NotEmittedStatement */;
24378
+ return node.kind === 352 /* NotEmittedStatement */;
24397
24379
  }
24398
24380
  function isSyntheticReference(node) {
24399
- return node.kind === 356 /* SyntheticReferenceExpression */;
24381
+ return node.kind === 355 /* SyntheticReferenceExpression */;
24400
24382
  }
24401
24383
  function isExternalModuleReference(node) {
24402
24384
  return node.kind === 283 /* ExternalModuleReference */;
@@ -24563,9 +24545,6 @@ function isJSDocImplementsTag(node) {
24563
24545
  function isJSDocSatisfiesTag(node) {
24564
24546
  return node.kind === 350 /* JSDocSatisfiesTag */;
24565
24547
  }
24566
- function isJSDocImportTag(node) {
24567
- return node.kind === 351 /* JSDocImportTag */;
24568
- }
24569
24548
 
24570
24549
  // src/compiler/factory/utilities.ts
24571
24550
  function createEmptyExports(factory2) {
@@ -24948,7 +24927,7 @@ function isOuterExpression(node, kinds = 15 /* All */) {
24948
24927
  return (kinds & 2 /* TypeAssertions */) !== 0;
24949
24928
  case 235 /* NonNullExpression */:
24950
24929
  return (kinds & 4 /* NonNullAssertions */) !== 0;
24951
- case 354 /* PartiallyEmittedExpression */:
24930
+ case 353 /* PartiallyEmittedExpression */:
24952
24931
  return (kinds & 8 /* PartiallyEmittedExpressions */) !== 0;
24953
24932
  }
24954
24933
  return false;
@@ -26024,7 +26003,7 @@ var forEachChildTable = {
26024
26003
  [282 /* MissingDeclaration */]: function forEachChildInMissingDeclaration(node, cbNode, cbNodes) {
26025
26004
  return visitNodes(cbNode, cbNodes, node.modifiers);
26026
26005
  },
26027
- [355 /* CommaListExpression */]: function forEachChildInCommaListExpression(node, cbNode, cbNodes) {
26006
+ [354 /* CommaListExpression */]: function forEachChildInCommaListExpression(node, cbNode, cbNodes) {
26028
26007
  return visitNodes(cbNode, cbNodes, node.elements);
26029
26008
  },
26030
26009
  [284 /* JsxElement */]: function forEachChildInJsxElement(node, cbNode, cbNodes) {
@@ -26119,8 +26098,7 @@ var forEachChildTable = {
26119
26098
  [336 /* JSDocReadonlyTag */]: forEachChildInJSDocTag,
26120
26099
  [331 /* JSDocDeprecatedTag */]: forEachChildInJSDocTag,
26121
26100
  [337 /* JSDocOverrideTag */]: forEachChildInJSDocTag,
26122
- [351 /* JSDocImportTag */]: forEachChildInJSDocImportTag,
26123
- [354 /* PartiallyEmittedExpression */]: forEachChildInPartiallyEmittedExpression
26101
+ [353 /* PartiallyEmittedExpression */]: forEachChildInPartiallyEmittedExpression
26124
26102
  };
26125
26103
  function forEachChildInCallOrConstructSignature(node, cbNode, cbNodes) {
26126
26104
  return visitNodes(cbNode, cbNodes, node.typeParameters) || visitNodes(cbNode, cbNodes, node.parameters) || visitNode2(cbNode, node.type);
@@ -26171,9 +26149,6 @@ function forEachChildInJSDocLinkCodeOrPlain(node, cbNode, _cbNodes) {
26171
26149
  function forEachChildInJSDocTag(node, cbNode, cbNodes) {
26172
26150
  return visitNode2(cbNode, node.tagName) || (typeof node.comment === "string" ? void 0 : visitNodes(cbNode, cbNodes, node.comment));
26173
26151
  }
26174
- function forEachChildInJSDocImportTag(node, cbNode, cbNodes) {
26175
- return visitNode2(cbNode, node.tagName) || visitNode2(cbNode, node.importClause) || visitNode2(cbNode, node.moduleSpecifier) || visitNode2(cbNode, node.attributes) || (typeof node.comment === "string" ? void 0 : visitNodes(cbNode, cbNodes, node.comment));
26176
- }
26177
26152
  function forEachChildInPartiallyEmittedExpression(node, cbNode, _cbNodes) {
26178
26153
  return visitNode2(cbNode, node.expression);
26179
26154
  }
@@ -28166,7 +28141,7 @@ var Parser;
28166
28141
  );
28167
28142
  }
28168
28143
  function parseJSDocType() {
28169
- scanner.setSkipJsDocLeadingAsterisks(true);
28144
+ scanner.setInJSDocType(true);
28170
28145
  const pos = getNodePos();
28171
28146
  if (parseOptional(144 /* ModuleKeyword */)) {
28172
28147
  const moduleTag = factory2.createJSDocNamepathType(
@@ -28185,12 +28160,12 @@ var Parser;
28185
28160
  nextTokenJSDoc();
28186
28161
  }
28187
28162
  }
28188
- scanner.setSkipJsDocLeadingAsterisks(false);
28163
+ scanner.setInJSDocType(false);
28189
28164
  return finishNode(moduleTag, pos);
28190
28165
  }
28191
28166
  const hasDotDotDot = parseOptional(26 /* DotDotDotToken */);
28192
28167
  let type = parseTypeOrTypePredicate();
28193
- scanner.setSkipJsDocLeadingAsterisks(false);
28168
+ scanner.setInJSDocType(false);
28194
28169
  if (hasDotDotDot) {
28195
28170
  type = finishNode(factory2.createJSDocVariadicType(type), pos);
28196
28171
  }
@@ -31753,28 +31728,22 @@ var Parser;
31753
31728
  if (identifier && !tokenAfterImportedIdentifierDefinitelyProducesImportDeclaration()) {
31754
31729
  return parseImportEqualsDeclaration(pos, hasJSDoc, modifiers, identifier, isTypeOnly);
31755
31730
  }
31756
- const importClause = tryParseImportClause(identifier, afterImportPos, isTypeOnly);
31757
- const moduleSpecifier = parseModuleSpecifier();
31758
- const attributes = tryParseImportAttributes();
31759
- parseSemicolon();
31760
- const node = factory2.createImportDeclaration(modifiers, importClause, moduleSpecifier, attributes);
31761
- return withJSDoc(finishNode(node, pos), hasJSDoc);
31762
- }
31763
- function tryParseImportClause(identifier, pos, isTypeOnly, skipJsDocLeadingAsterisks = false) {
31764
31731
  let importClause;
31765
31732
  if (identifier || // import id
31766
31733
  token() === 42 /* AsteriskToken */ || // import *
31767
31734
  token() === 19 /* OpenBraceToken */) {
31768
- importClause = parseImportClause(identifier, pos, isTypeOnly, skipJsDocLeadingAsterisks);
31735
+ importClause = parseImportClause(identifier, afterImportPos, isTypeOnly);
31769
31736
  parseExpected(161 /* FromKeyword */);
31770
31737
  }
31771
- return importClause;
31772
- }
31773
- function tryParseImportAttributes() {
31738
+ const moduleSpecifier = parseModuleSpecifier();
31774
31739
  const currentToken2 = token();
31740
+ let attributes;
31775
31741
  if ((currentToken2 === 118 /* WithKeyword */ || currentToken2 === 132 /* AssertKeyword */) && !scanner.hasPrecedingLineBreak()) {
31776
- return parseImportAttributes(currentToken2);
31742
+ attributes = parseImportAttributes(currentToken2);
31777
31743
  }
31744
+ parseSemicolon();
31745
+ const node = factory2.createImportDeclaration(modifiers, importClause, moduleSpecifier, attributes);
31746
+ return withJSDoc(finishNode(node, pos), hasJSDoc);
31778
31747
  }
31779
31748
  function parseImportAttribute() {
31780
31749
  const pos = getNodePos();
@@ -31841,14 +31810,10 @@ var Parser;
31841
31810
  const finished = withJSDoc(finishNode(node, pos), hasJSDoc);
31842
31811
  return finished;
31843
31812
  }
31844
- function parseImportClause(identifier, pos, isTypeOnly, skipJsDocLeadingAsterisks) {
31813
+ function parseImportClause(identifier, pos, isTypeOnly) {
31845
31814
  let namedBindings;
31846
31815
  if (!identifier || parseOptional(28 /* CommaToken */)) {
31847
- if (skipJsDocLeadingAsterisks)
31848
- scanner.setSkipJsDocLeadingAsterisks(true);
31849
31816
  namedBindings = token() === 42 /* AsteriskToken */ ? parseNamespaceImport() : parseNamedImportsOrExports(275 /* NamedImports */);
31850
- if (skipJsDocLeadingAsterisks)
31851
- scanner.setSkipJsDocLeadingAsterisks(false);
31852
31817
  }
31853
31818
  return finishNode(factory2.createImportClause(isTypeOnly, identifier, namedBindings), pos);
31854
31819
  }
@@ -32419,9 +32384,6 @@ var Parser;
32419
32384
  case "throws":
32420
32385
  tag = parseThrowsTag(start2, tagName, margin, indentText);
32421
32386
  break;
32422
- case "import":
32423
- tag = parseImportTag(start2, tagName, margin, indentText);
32424
- break;
32425
32387
  default:
32426
32388
  tag = parseUnknownTag(start2, tagName, margin, indentText);
32427
32389
  break;
@@ -32741,32 +32703,13 @@ var Parser;
32741
32703
  const comments2 = margin !== void 0 && indentText !== void 0 ? parseTrailingTagComments(start2, getNodePos(), margin, indentText) : void 0;
32742
32704
  return finishNode(factory2.createJSDocSatisfiesTag(tagName, typeExpression, comments2), start2);
32743
32705
  }
32744
- function parseImportTag(start2, tagName, margin, indentText) {
32745
- const afterImportTagPos = scanner.getTokenFullStart();
32746
- let identifier;
32747
- if (isIdentifier2()) {
32748
- identifier = parseIdentifier();
32749
- }
32750
- const importClause = tryParseImportClause(
32751
- identifier,
32752
- afterImportTagPos,
32753
- /*isTypeOnly*/
32754
- true,
32755
- /*skipJsDocLeadingAsterisks*/
32756
- true
32757
- );
32758
- const moduleSpecifier = parseModuleSpecifier();
32759
- const attributes = tryParseImportAttributes();
32760
- const comments2 = margin !== void 0 && indentText !== void 0 ? parseTrailingTagComments(start2, getNodePos(), margin, indentText) : void 0;
32761
- return finishNode(factory2.createJSDocImportTag(tagName, importClause, moduleSpecifier, attributes, comments2), start2);
32762
- }
32763
32706
  function parseExpressionWithTypeArgumentsForAugments() {
32764
32707
  const usedBrace = parseOptional(19 /* OpenBraceToken */);
32765
32708
  const pos = getNodePos();
32766
32709
  const expression = parsePropertyAccessEntityNameExpression();
32767
- scanner.setSkipJsDocLeadingAsterisks(true);
32710
+ scanner.setInJSDocType(true);
32768
32711
  const typeArguments = tryParseTypeArguments();
32769
- scanner.setSkipJsDocLeadingAsterisks(false);
32712
+ scanner.setInJSDocType(false);
32770
32713
  const node = factory2.createExpressionWithTypeArguments(expression, typeArguments);
32771
32714
  const res = finishNode(node, pos);
32772
32715
  if (usedBrace) {
@@ -39442,7 +39385,6 @@ function createBinder() {
39442
39385
  var lastContainer;
39443
39386
  var delayedTypeAliases;
39444
39387
  var seenThisKeyword;
39445
- var jsDocImports;
39446
39388
  var currentFlow;
39447
39389
  var currentBreakTarget;
39448
39390
  var currentContinueTarget;
@@ -39490,7 +39432,6 @@ function createBinder() {
39490
39432
  file.symbolCount = symbolCount;
39491
39433
  file.classifiableNames = classifiableNames;
39492
39434
  delayedBindJSDocTypedefTag();
39493
- bindJSDocImports();
39494
39435
  }
39495
39436
  file = void 0;
39496
39437
  options = void 0;
@@ -39501,7 +39442,6 @@ function createBinder() {
39501
39442
  blockScopeContainer = void 0;
39502
39443
  lastContainer = void 0;
39503
39444
  delayedTypeAliases = void 0;
39504
- jsDocImports = void 0;
39505
39445
  seenThisKeyword = false;
39506
39446
  currentFlow = void 0;
39507
39447
  currentBreakTarget = void 0;
@@ -39936,9 +39876,6 @@ function createBinder() {
39936
39876
  case 340 /* JSDocEnumTag */:
39937
39877
  bindJSDocTypeAlias(node);
39938
39878
  break;
39939
- case 351 /* JSDocImportTag */:
39940
- bindJSDocImportTag(node);
39941
- break;
39942
39879
  case 307 /* SourceFile */: {
39943
39880
  bindEachFunctionsFirst(node.statements);
39944
39881
  bind(node.endOfFileToken);
@@ -40671,12 +40608,6 @@ function createBinder() {
40671
40608
  addDeclarationToSymbol(host.symbol, host, 32 /* Class */);
40672
40609
  }
40673
40610
  }
40674
- function bindJSDocImportTag(node) {
40675
- bind(node.tagName);
40676
- if (typeof node.comment !== "string") {
40677
- bindEach(node.comment);
40678
- }
40679
- }
40680
40611
  function bindOptionalExpression(node, trueTarget, falseTarget) {
40681
40612
  doWithConditionalBranches(bind, node, trueTarget, falseTarget);
40682
40613
  if (!isOptionalChain(node) || isOutermostOptionalChain(node)) {
@@ -40993,31 +40924,6 @@ function createBinder() {
40993
40924
  parent = saveParent;
40994
40925
  currentFlow = saveCurrentFlow;
40995
40926
  }
40996
- function bindJSDocImports() {
40997
- if (jsDocImports === void 0) {
40998
- return;
40999
- }
41000
- const saveContainer = container;
41001
- const saveLastContainer = lastContainer;
41002
- const saveBlockScopeContainer = blockScopeContainer;
41003
- const saveParent = parent;
41004
- const saveCurrentFlow = currentFlow;
41005
- for (const jsDocImportTag of jsDocImports) {
41006
- const host = getJSDocHost(jsDocImportTag);
41007
- const enclosingContainer = host ? getEnclosingContainer(host) : void 0;
41008
- const enclosingBlockScopeContainer = host ? getEnclosingBlockScopeContainer(host) : void 0;
41009
- container = enclosingContainer || file;
41010
- blockScopeContainer = enclosingBlockScopeContainer || file;
41011
- currentFlow = initFlowNode({ flags: 2 /* Start */ });
41012
- parent = jsDocImportTag;
41013
- bind(jsDocImportTag.importClause);
41014
- }
41015
- container = saveContainer;
41016
- lastContainer = saveLastContainer;
41017
- blockScopeContainer = saveBlockScopeContainer;
41018
- parent = saveParent;
41019
- currentFlow = saveCurrentFlow;
41020
- }
41021
40927
  function checkContextualIdentifier(node) {
41022
40928
  if (!file.parseDiagnostics.length && !(node.flags & 33554432 /* Ambient */) && !(node.flags & 16777216 /* JSDoc */) && !isIdentifierName(node)) {
41023
40929
  const originalKeywordKind = identifierToKeywordKind(node);
@@ -41442,8 +41348,6 @@ function createBinder() {
41442
41348
  return (delayedTypeAliases || (delayedTypeAliases = [])).push(node);
41443
41349
  case 339 /* JSDocOverloadTag */:
41444
41350
  return bind(node.typeExpression);
41445
- case 351 /* JSDocImportTag */:
41446
- return (jsDocImports || (jsDocImports = [])).push(node);
41447
41351
  }
41448
41352
  }
41449
41353
  function bindPropertyWorker(node) {
@@ -45123,7 +45027,6 @@ function createTypeChecker(host) {
45123
45027
  case 346 /* JSDocTypedefTag */:
45124
45028
  case 338 /* JSDocCallbackTag */:
45125
45029
  case 340 /* JSDocEnumTag */:
45126
- case 351 /* JSDocImportTag */:
45127
45030
  const root = getJSDocRoot(location);
45128
45031
  if (root) {
45129
45032
  location = root.parent;
@@ -46616,7 +46519,7 @@ function createTypeChecker(host) {
46616
46519
  return ambientModule;
46617
46520
  }
46618
46521
  const currentSourceFile = getSourceFileOfNode(location);
46619
- const contextSpecifier = isStringLiteralLike(location) ? location : ((_a = isModuleDeclaration(location) ? location : location.parent && isModuleDeclaration(location.parent) && location.parent.name === location ? location.parent : void 0) == null ? void 0 : _a.name) || ((_b = isLiteralImportTypeNode(location) ? location : void 0) == null ? void 0 : _b.argument.literal) || (isInJSFile(location) && isJSDocImportTag(location) ? location.moduleSpecifier : void 0) || (isVariableDeclaration(location) && location.initializer && isRequireCall(
46522
+ const contextSpecifier = isStringLiteralLike(location) ? location : ((_a = isModuleDeclaration(location) ? location : location.parent && isModuleDeclaration(location.parent) && location.parent.name === location ? location.parent : void 0) == null ? void 0 : _a.name) || ((_b = isLiteralImportTypeNode(location) ? location : void 0) == null ? void 0 : _b.argument.literal) || (isVariableDeclaration(location) && location.initializer && isRequireCall(
46620
46523
  location.initializer,
46621
46524
  /*requireStringLiteralLikeArgument*/
46622
46525
  true
@@ -50917,20 +50820,19 @@ function createTypeChecker(host) {
50917
50820
  case 273 /* ImportClause */: {
50918
50821
  const generatedSpecifier = getSpecifierForModuleSymbol(target.parent || target, context);
50919
50822
  const specifier2 = bundled ? factory.createStringLiteral(generatedSpecifier) : node.parent.moduleSpecifier;
50920
- const attributes = isImportDeclaration(node.parent) ? node.parent.attributes : void 0;
50921
- const isTypeOnly = isJSDocImportTag(node.parent);
50922
50823
  addResult(
50923
50824
  factory.createImportDeclaration(
50924
50825
  /*modifiers*/
50925
50826
  void 0,
50926
50827
  factory.createImportClause(
50927
- isTypeOnly,
50828
+ /*isTypeOnly*/
50829
+ false,
50928
50830
  factory.createIdentifier(localName),
50929
50831
  /*namedBindings*/
50930
50832
  void 0
50931
50833
  ),
50932
50834
  specifier2,
50933
- attributes
50835
+ node.parent.attributes
50934
50836
  ),
50935
50837
  0 /* None */
50936
50838
  );
@@ -50939,13 +50841,13 @@ function createTypeChecker(host) {
50939
50841
  case 274 /* NamespaceImport */: {
50940
50842
  const generatedSpecifier = getSpecifierForModuleSymbol(target.parent || target, context);
50941
50843
  const specifier2 = bundled ? factory.createStringLiteral(generatedSpecifier) : node.parent.parent.moduleSpecifier;
50942
- const isTypeOnly = isJSDocImportTag(node.parent.parent);
50943
50844
  addResult(
50944
50845
  factory.createImportDeclaration(
50945
50846
  /*modifiers*/
50946
50847
  void 0,
50947
50848
  factory.createImportClause(
50948
- isTypeOnly,
50849
+ /*isTypeOnly*/
50850
+ false,
50949
50851
  /*name*/
50950
50852
  void 0,
50951
50853
  factory.createNamespaceImport(factory.createIdentifier(localName))
@@ -50973,13 +50875,13 @@ function createTypeChecker(host) {
50973
50875
  case 276 /* ImportSpecifier */: {
50974
50876
  const generatedSpecifier = getSpecifierForModuleSymbol(target.parent || target, context);
50975
50877
  const specifier2 = bundled ? factory.createStringLiteral(generatedSpecifier) : node.parent.parent.parent.moduleSpecifier;
50976
- const isTypeOnly = isJSDocImportTag(node.parent.parent.parent);
50977
50878
  addResult(
50978
50879
  factory.createImportDeclaration(
50979
50880
  /*modifiers*/
50980
50881
  void 0,
50981
50882
  factory.createImportClause(
50982
- isTypeOnly,
50883
+ /*isTypeOnly*/
50884
+ false,
50983
50885
  /*name*/
50984
50886
  void 0,
50985
50887
  factory.createNamedImports([
@@ -77714,9 +77616,6 @@ function createTypeChecker(host) {
77714
77616
  error(node.tagName, Diagnostics.An_arrow_function_cannot_have_a_this_parameter);
77715
77617
  }
77716
77618
  }
77717
- function checkJSDocImportTag(node) {
77718
- checkImportAttributes(node);
77719
- }
77720
77619
  function checkJSDocImplementsTag(node) {
77721
77620
  const classLike = getEffectiveJSDocHost(node);
77722
77621
  if (!classLike || !isClassDeclaration(classLike) && !isClassExpression(classLike)) {
@@ -80958,7 +80857,7 @@ function createTypeChecker(host) {
80958
80857
  const message = isImportAttributes2 ? moduleKind === 199 /* NodeNext */ ? Diagnostics.Import_attributes_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls : Diagnostics.Import_attributes_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve : moduleKind === 199 /* NodeNext */ ? Diagnostics.Import_assertions_are_not_allowed_on_statements_that_compile_to_CommonJS_require_calls : Diagnostics.Import_assertions_are_only_supported_when_the_module_option_is_set_to_esnext_nodenext_or_preserve;
80959
80858
  return grammarErrorOnNode(node, message);
80960
80859
  }
80961
- if (isImportDeclaration(declaration) || isJSDocImportTag(declaration) ? (_a = declaration.importClause) == null ? void 0 : _a.isTypeOnly : declaration.isTypeOnly) {
80860
+ if (isImportDeclaration(declaration) ? (_a = declaration.importClause) == null ? void 0 : _a.isTypeOnly : declaration.isTypeOnly) {
80962
80861
  return grammarErrorOnNode(node, isImportAttributes2 ? Diagnostics.Import_attributes_cannot_be_used_with_type_only_imports_or_exports : Diagnostics.Import_assertions_cannot_be_used_with_type_only_imports_or_exports);
80963
80862
  }
80964
80863
  if (override) {
@@ -81409,8 +81308,6 @@ function createTypeChecker(host) {
81409
81308
  return checkJSDocSatisfiesTag(node);
81410
81309
  case 343 /* JSDocThisTag */:
81411
81310
  return checkJSDocThisTag(node);
81412
- case 351 /* JSDocImportTag */:
81413
- return checkJSDocImportTag(node);
81414
81311
  case 199 /* IndexedAccessType */:
81415
81312
  return checkIndexedAccessType(node);
81416
81313
  case 200 /* MappedType */:
@@ -82214,7 +82111,7 @@ function createTypeChecker(host) {
82214
82111
  return void 0;
82215
82112
  case 11 /* StringLiteral */:
82216
82113
  case 15 /* NoSubstitutionTemplateLiteral */:
82217
- if (isExternalModuleImportEqualsDeclaration(node.parent.parent) && getExternalModuleImportEqualsDeclarationExpression(node.parent.parent) === node || (node.parent.kind === 272 /* ImportDeclaration */ || node.parent.kind === 278 /* ExportDeclaration */) && node.parent.moduleSpecifier === node || isInJSFile(node) && isJSDocImportTag(node.parent) && node.parent.moduleSpecifier === node || (isInJSFile(node) && isRequireCall(
82114
+ if (isExternalModuleImportEqualsDeclaration(node.parent.parent) && getExternalModuleImportEqualsDeclarationExpression(node.parent.parent) === node || (node.parent.kind === 272 /* ImportDeclaration */ || node.parent.kind === 278 /* ExportDeclaration */) && node.parent.moduleSpecifier === node || (isInJSFile(node) && isRequireCall(
82218
82115
  node.parent,
82219
82116
  /*requireStringLiteralLikeArgument*/
82220
82117
  false
@@ -86456,13 +86353,13 @@ var visitEachChildTable = {
86456
86353
  );
86457
86354
  },
86458
86355
  // Transformation nodes
86459
- [354 /* PartiallyEmittedExpression */]: function visitEachChildOfPartiallyEmittedExpression(node, visitor, context, _nodesVisitor, nodeVisitor, _tokenVisitor) {
86356
+ [353 /* PartiallyEmittedExpression */]: function visitEachChildOfPartiallyEmittedExpression(node, visitor, context, _nodesVisitor, nodeVisitor, _tokenVisitor) {
86460
86357
  return context.factory.updatePartiallyEmittedExpression(
86461
86358
  node,
86462
86359
  Debug.checkDefined(nodeVisitor(node.expression, visitor, isExpression))
86463
86360
  );
86464
86361
  },
86465
- [355 /* CommaListExpression */]: function visitEachChildOfCommaListExpression(node, visitor, context, nodesVisitor, _nodeVisitor, _tokenVisitor) {
86362
+ [354 /* CommaListExpression */]: function visitEachChildOfCommaListExpression(node, visitor, context, nodesVisitor, _nodeVisitor, _tokenVisitor) {
86466
86363
  return context.factory.updateCommaListExpression(
86467
86364
  node,
86468
86365
  nodesVisitor(node.elements, visitor, isExpression)
@@ -90118,7 +90015,7 @@ function transformClassFields(context) {
90118
90015
  /*discarded*/
90119
90016
  true
90120
90017
  );
90121
- case 355 /* CommaListExpression */:
90018
+ case 354 /* CommaListExpression */:
90122
90019
  return visitCommaListExpression(
90123
90020
  node,
90124
90021
  /*discarded*/
@@ -93211,7 +93108,7 @@ function transformESDecorators(context) {
93211
93108
  return visitForStatement(node);
93212
93109
  case 244 /* ExpressionStatement */:
93213
93110
  return visitExpressionStatement(node);
93214
- case 355 /* CommaListExpression */:
93111
+ case 354 /* CommaListExpression */:
93215
93112
  return visitCommaListExpression(
93216
93113
  node,
93217
93114
  /*discarded*/
@@ -93223,7 +93120,7 @@ function transformESDecorators(context) {
93223
93120
  /*discarded*/
93224
93121
  false
93225
93122
  );
93226
- case 354 /* PartiallyEmittedExpression */:
93123
+ case 353 /* PartiallyEmittedExpression */:
93227
93124
  return visitPartiallyEmittedExpression(
93228
93125
  node,
93229
93126
  /*discarded*/
@@ -93309,7 +93206,7 @@ function transformESDecorators(context) {
93309
93206
  /*discarded*/
93310
93207
  true
93311
93208
  );
93312
- case 355 /* CommaListExpression */:
93209
+ case 354 /* CommaListExpression */:
93313
93210
  return visitCommaListExpression(
93314
93211
  node,
93315
93212
  /*discarded*/
@@ -95900,7 +95797,7 @@ function transformES2018(context) {
95900
95797
  return visitObjectLiteralExpression(node);
95901
95798
  case 226 /* BinaryExpression */:
95902
95799
  return visitBinaryExpression(node, expressionResultIsUnused2);
95903
- case 355 /* CommaListExpression */:
95800
+ case 354 /* CommaListExpression */:
95904
95801
  return visitCommaListExpression(node, expressionResultIsUnused2);
95905
95802
  case 299 /* CatchClause */:
95906
95803
  return visitCatchClause(node);
@@ -99123,7 +99020,7 @@ function transformES2015(context) {
99123
99020
  return visitParenthesizedExpression(node, expressionResultIsUnused2);
99124
99021
  case 226 /* BinaryExpression */:
99125
99022
  return visitBinaryExpression(node, expressionResultIsUnused2);
99126
- case 355 /* CommaListExpression */:
99023
+ case 354 /* CommaListExpression */:
99127
99024
  return visitCommaListExpression(node, expressionResultIsUnused2);
99128
99025
  case 15 /* NoSubstitutionTemplateLiteral */:
99129
99026
  case 16 /* TemplateHead */:
@@ -102418,7 +102315,7 @@ function transformGenerators(context) {
102418
102315
  switch (node.kind) {
102419
102316
  case 226 /* BinaryExpression */:
102420
102317
  return visitBinaryExpression(node);
102421
- case 355 /* CommaListExpression */:
102318
+ case 354 /* CommaListExpression */:
102422
102319
  return visitCommaListExpression(node);
102423
102320
  case 227 /* ConditionalExpression */:
102424
102321
  return visitConditionalExpression(node);
@@ -104808,7 +104705,7 @@ function transformModule(context) {
104808
104705
  return visitExpressionStatement(node);
104809
104706
  case 217 /* ParenthesizedExpression */:
104810
104707
  return visitParenthesizedExpression(node, valueIsDiscarded);
104811
- case 354 /* PartiallyEmittedExpression */:
104708
+ case 353 /* PartiallyEmittedExpression */:
104812
104709
  return visitPartiallyEmittedExpression(node, valueIsDiscarded);
104813
104710
  case 213 /* CallExpression */:
104814
104711
  if (isImportCall(node) && currentSourceFile.impliedNodeFormat === void 0) {
@@ -107201,7 +107098,7 @@ function transformSystemModule(context) {
107201
107098
  return visitExpressionStatement(node);
107202
107099
  case 217 /* ParenthesizedExpression */:
107203
107100
  return visitParenthesizedExpression(node, valueIsDiscarded);
107204
- case 354 /* PartiallyEmittedExpression */:
107101
+ case 353 /* PartiallyEmittedExpression */:
107205
107102
  return visitPartiallyEmittedExpression(node, valueIsDiscarded);
107206
107103
  case 226 /* BinaryExpression */:
107207
107104
  if (isDestructuringAssignment(node)) {
@@ -107944,9 +107841,17 @@ function createGetSymbolAccessibilityDiagnosticForNode(node) {
107944
107841
  return getImportEntityNameVisibilityError;
107945
107842
  } else if (isTypeAliasDeclaration(node) || isJSDocTypeAlias(node)) {
107946
107843
  return getTypeAliasDeclarationVisibilityError;
107844
+ } else if (isExportAssignment(node)) {
107845
+ return getExportAssignmentTypeVisibilityDiagnosticMessage;
107947
107846
  } else {
107948
107847
  return Debug.assertNever(node, `Attempted to set a declaration diagnostic context for unhandled node kind: ${Debug.formatSyntaxKind(node.kind)}`);
107949
107848
  }
107849
+ function getExportAssignmentTypeVisibilityDiagnosticMessage() {
107850
+ return {
107851
+ diagnosticMessage: Diagnostics.Default_export_of_the_module_has_or_is_using_private_name_0,
107852
+ errorNode: node
107853
+ };
107854
+ }
107950
107855
  function getVariableDeclarationTypeVisibilityDiagnosticMessage(symbolAccessibilityResult) {
107951
107856
  if (node.kind === 260 /* VariableDeclaration */ || node.kind === 208 /* BindingElement */) {
107952
107857
  return symbolAccessibilityResult.errorModuleName ? symbolAccessibilityResult.accessibility === 2 /* CannotBeNamed */ ? Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_external_module_2_but_cannot_be_named : Diagnostics.Exported_variable_0_has_or_is_using_name_1_from_private_module_2 : Diagnostics.Exported_variable_0_has_or_is_using_private_name_1;
@@ -108192,6 +108097,7 @@ function transformDeclarations(context) {
108192
108097
  const resolver = context.getEmitResolver();
108193
108098
  const options = context.getCompilerOptions();
108194
108099
  const { noResolve, stripInternal } = options;
108100
+ const strictNullChecks = getStrictOptionValue(options, "strictNullChecks");
108195
108101
  return transformRoot;
108196
108102
  function recordTypeReferenceDirectivesIfNecessary(typeReferenceDirectives) {
108197
108103
  if (!typeReferenceDirectives) {
@@ -108579,7 +108485,7 @@ function transformDeclarations(context) {
108579
108485
  );
108580
108486
  }
108581
108487
  }
108582
- function ensureParameter(p, modifierMask, type) {
108488
+ function ensureParameter(p, modifierMask) {
108583
108489
  let oldDiag;
108584
108490
  if (!suppressNewDiagnosticContexts) {
108585
108491
  oldDiag = getSymbolAccessibilityDiagnostic;
@@ -108593,7 +108499,6 @@ function transformDeclarations(context) {
108593
108499
  resolver.isOptionalParameter(p) ? p.questionToken || factory2.createToken(58 /* QuestionToken */) : void 0,
108594
108500
  ensureType(
108595
108501
  p,
108596
- type || p.type,
108597
108502
  /*ignorePrivate*/
108598
108503
  true
108599
108504
  ),
@@ -108614,18 +108519,37 @@ function transformDeclarations(context) {
108614
108519
  }
108615
108520
  return void 0;
108616
108521
  }
108617
- function ensureType(node, type, ignorePrivate) {
108522
+ function ensureType(node, ignorePrivate) {
108618
108523
  if (!ignorePrivate && hasEffectiveModifier(node, 2 /* Private */)) {
108619
108524
  return;
108620
108525
  }
108621
108526
  if (shouldPrintWithInitializer(node)) {
108622
108527
  return;
108623
108528
  }
108624
- const shouldAddImplicitUndefined = node.kind === 169 /* Parameter */ && resolver.requiresAddingImplicitUndefined(node);
108625
- if (type && !shouldAddImplicitUndefined) {
108626
- return visitNode(type, visitDeclarationSubtree, isTypeNode);
108529
+ return typeFromDeclaration(node);
108530
+ }
108531
+ function inferVariableLikeType(node, addUndefined) {
108532
+ const flags = node.kind === 303 /* PropertyAssignment */ ? 4194304 /* InObjectTypeLiteral */ : 0 /* None */;
108533
+ return resolver.createTypeOfDeclaration(node, enclosingDeclaration, declarationEmitNodeBuilderFlags | flags, symbolTracker, addUndefined) ?? factory2.createKeywordTypeNode(133 /* AnyKeyword */);
108534
+ }
108535
+ function inferExpressionType(node) {
108536
+ return resolver.createTypeOfExpression(node, enclosingDeclaration, declarationEmitNodeBuilderFlags, symbolTracker) ?? factory2.createKeywordTypeNode(133 /* AnyKeyword */);
108537
+ }
108538
+ function inferReturnTypeOfSignatureSignature(node) {
108539
+ return resolver.createReturnTypeOfSignatureDeclaration(node, enclosingDeclaration, declarationEmitNodeBuilderFlags, symbolTracker) ?? factory2.createKeywordTypeNode(133 /* AnyKeyword */);
108540
+ }
108541
+ function inferAccessorType(node) {
108542
+ if (node.kind === 177 /* GetAccessor */) {
108543
+ return inferReturnTypeOfSignatureSignature(node);
108544
+ } else {
108545
+ return factory2.createKeywordTypeNode(133 /* AnyKeyword */);
108627
108546
  }
108547
+ }
108548
+ function typeFromDeclaration(node) {
108549
+ const savedErrorNameNode = errorNameNode;
108550
+ const savedErrorFallbackNode = errorFallbackNode;
108628
108551
  errorNameNode = node.name;
108552
+ errorFallbackNode = node;
108629
108553
  let oldDiag;
108630
108554
  if (!suppressNewDiagnosticContexts) {
108631
108555
  oldDiag = getSymbolAccessibilityDiagnostic;
@@ -108634,28 +108558,142 @@ function transformDeclarations(context) {
108634
108558
  let typeNode;
108635
108559
  switch (node.kind) {
108636
108560
  case 169 /* Parameter */:
108637
- case 171 /* PropertySignature */:
108561
+ typeNode = typeFromParameter(node);
108562
+ break;
108563
+ case 260 /* VariableDeclaration */:
108564
+ typeNode = typeFromVariable(node);
108565
+ break;
108638
108566
  case 172 /* PropertyDeclaration */:
108567
+ typeNode = typeFromProperty(node);
108568
+ break;
108569
+ case 177 /* GetAccessor */:
108570
+ typeNode = typeFromAccessor(node);
108571
+ break;
108639
108572
  case 208 /* BindingElement */:
108640
- case 260 /* VariableDeclaration */:
108641
- typeNode = resolver.createTypeOfDeclaration(node, enclosingDeclaration, declarationEmitNodeBuilderFlags, symbolTracker, shouldAddImplicitUndefined);
108573
+ typeNode = inferVariableLikeType(node);
108642
108574
  break;
108643
- case 262 /* FunctionDeclaration */:
108644
108575
  case 180 /* ConstructSignature */:
108576
+ case 171 /* PropertySignature */:
108645
108577
  case 173 /* MethodSignature */:
108646
- case 174 /* MethodDeclaration */:
108647
- case 177 /* GetAccessor */:
108648
108578
  case 179 /* CallSignature */:
108649
- typeNode = resolver.createReturnTypeOfSignatureDeclaration(node, enclosingDeclaration, declarationEmitNodeBuilderFlags, symbolTracker);
108579
+ typeNode = visitTypeNode(node.type) ?? factory2.createKeywordTypeNode(133 /* AnyKeyword */);
108580
+ break;
108581
+ case 174 /* MethodDeclaration */:
108582
+ case 262 /* FunctionDeclaration */:
108583
+ typeNode = visitTypeNode(node.type) ?? inferReturnTypeOfSignatureSignature(node);
108584
+ break;
108585
+ case 277 /* ExportAssignment */:
108586
+ typeNode = typeFromExpression(node.expression) ?? inferExpressionType(node.expression);
108650
108587
  break;
108651
108588
  default:
108652
- Debug.assertNever(node);
108589
+ Debug.assertNever(node, `Node needs to be an inferrable node, found ${Debug.formatSyntaxKind(node.kind)}`);
108653
108590
  }
108654
- errorNameNode = void 0;
108591
+ errorNameNode = savedErrorNameNode;
108592
+ errorFallbackNode = savedErrorFallbackNode;
108655
108593
  if (!suppressNewDiagnosticContexts) {
108656
108594
  getSymbolAccessibilityDiagnostic = oldDiag;
108657
108595
  }
108658
- return typeNode ?? factory2.createKeywordTypeNode(133 /* AnyKeyword */);
108596
+ return typeNode;
108597
+ }
108598
+ function visitTypeNode(type) {
108599
+ return visitNode(type, visitDeclarationSubtree, isTypeNode);
108600
+ }
108601
+ function addUndefinedInUnion(type) {
108602
+ if (!strictNullChecks)
108603
+ return type;
108604
+ if (isUnionTypeNode(type)) {
108605
+ const hasUndefined = type.types.some((p) => p.kind === 157 /* UndefinedKeyword */);
108606
+ if (hasUndefined)
108607
+ return type;
108608
+ return factory2.createUnionTypeNode([
108609
+ ...type.types,
108610
+ factory2.createKeywordTypeNode(157 /* UndefinedKeyword */)
108611
+ ]);
108612
+ }
108613
+ return factory2.createUnionTypeNode([
108614
+ type,
108615
+ factory2.createKeywordTypeNode(157 /* UndefinedKeyword */)
108616
+ ]);
108617
+ }
108618
+ function canAddUndefined(node) {
108619
+ if (!strictNullChecks)
108620
+ return true;
108621
+ if (isKeyword(node.kind) || node.kind === 201 /* LiteralType */ || node.kind === 184 /* FunctionType */ || node.kind === 185 /* ConstructorType */ || node.kind === 188 /* ArrayType */ || node.kind === 189 /* TupleType */ || node.kind === 187 /* TypeLiteral */ || node.kind === 203 /* TemplateLiteralType */ || node.kind === 197 /* ThisType */) {
108622
+ return true;
108623
+ }
108624
+ if (node.kind === 196 /* ParenthesizedType */) {
108625
+ return canAddUndefined(node.type);
108626
+ }
108627
+ if (node.kind === 192 /* UnionType */ || node.kind === 193 /* IntersectionType */) {
108628
+ return node.types.every(canAddUndefined);
108629
+ }
108630
+ return false;
108631
+ }
108632
+ function typeFromExpression(node, requiresUndefined) {
108633
+ switch (node.kind) {
108634
+ case 216 /* TypeAssertionExpression */:
108635
+ case 234 /* AsExpression */:
108636
+ const asExpression = node;
108637
+ const type = asExpression.type;
108638
+ if (isConstTypeReference(asExpression.type) || requiresUndefined && !canAddUndefined(type)) {
108639
+ return void 0;
108640
+ } else {
108641
+ return visitTypeNode(type);
108642
+ }
108643
+ }
108644
+ return void 0;
108645
+ }
108646
+ function typeFromAccessor(node) {
108647
+ const accessorDeclarations = resolver.getAllAccessorDeclarations(node);
108648
+ const accessorType = getTypeAnnotationFromAllAccessorDeclarations(node, accessorDeclarations);
108649
+ if (accessorType) {
108650
+ return visitTypeNode(accessorType);
108651
+ }
108652
+ return inferAccessorType(accessorDeclarations.getAccessor ?? node);
108653
+ }
108654
+ function typeFromVariable(node) {
108655
+ const declaredType = node.type;
108656
+ if (declaredType) {
108657
+ return visitNode(declaredType, visitDeclarationSubtree, isTypeNode);
108658
+ }
108659
+ let resultType;
108660
+ if (node.initializer) {
108661
+ resultType = typeFromExpression(node.initializer);
108662
+ }
108663
+ return resultType ?? inferVariableLikeType(node);
108664
+ }
108665
+ function typeFromParameter(node) {
108666
+ const parent = node.parent;
108667
+ if (parent.kind === 178 /* SetAccessor */) {
108668
+ return typeFromAccessor(parent);
108669
+ }
108670
+ const declaredType = node.type;
108671
+ const addUndefined = resolver.requiresAddingImplicitUndefined(node);
108672
+ let resultType;
108673
+ if (!addUndefined) {
108674
+ if (declaredType) {
108675
+ return visitTypeNode(declaredType);
108676
+ }
108677
+ if (node.initializer && isIdentifier(node.name)) {
108678
+ resultType = typeFromExpression(node.initializer);
108679
+ }
108680
+ }
108681
+ return resultType ?? inferVariableLikeType(node, addUndefined);
108682
+ }
108683
+ function typeFromProperty(node) {
108684
+ const declaredType = node.type;
108685
+ if (declaredType) {
108686
+ return visitTypeNode(declaredType);
108687
+ }
108688
+ let resultType;
108689
+ if (node.initializer) {
108690
+ const isOptional = isOptionalDeclaration(node);
108691
+ resultType = typeFromExpression(node.initializer, isOptional);
108692
+ if (isOptional && resultType) {
108693
+ return addUndefinedInUnion(resultType);
108694
+ }
108695
+ }
108696
+ return resultType ?? inferVariableLikeType(node);
108659
108697
  }
108660
108698
  function isDeclarationAndNotVisible(node) {
108661
108699
  node = getParseTreeNode(node);
@@ -108720,12 +108758,10 @@ function transformDeclarations(context) {
108720
108758
  if (!isPrivate) {
108721
108759
  const valueParameter = getSetAccessorValueParameter(input);
108722
108760
  if (valueParameter) {
108723
- const accessorType = getTypeAnnotationFromAllAccessorDeclarations(input, resolver.getAllAccessorDeclarations(input));
108724
108761
  newValueParameter = ensureParameter(
108725
108762
  valueParameter,
108726
108763
  /*modifierMask*/
108727
- void 0,
108728
- accessorType
108764
+ void 0
108729
108765
  );
108730
108766
  }
108731
108767
  }
@@ -108972,7 +109008,7 @@ function transformDeclarations(context) {
108972
109008
  input,
108973
109009
  ensureTypeParams(input, input.typeParameters),
108974
109010
  updateParamsList(input, input.parameters),
108975
- ensureType(input, input.type)
109011
+ ensureType(input)
108976
109012
  ));
108977
109013
  case 176 /* Constructor */: {
108978
109014
  const ctor = factory2.createConstructorDeclaration(
@@ -108999,7 +109035,7 @@ function transformDeclarations(context) {
108999
109035
  input.questionToken,
109000
109036
  ensureTypeParams(input, input.typeParameters),
109001
109037
  updateParamsList(input, input.parameters),
109002
- ensureType(input, input.type),
109038
+ ensureType(input),
109003
109039
  /*body*/
109004
109040
  void 0
109005
109041
  );
@@ -109012,13 +109048,12 @@ function transformDeclarations(context) {
109012
109048
  void 0
109013
109049
  );
109014
109050
  }
109015
- const accessorType = getTypeAnnotationFromAllAccessorDeclarations(input, resolver.getAllAccessorDeclarations(input));
109016
109051
  return cleanup(factory2.updateGetAccessorDeclaration(
109017
109052
  input,
109018
109053
  ensureModifiers(input),
109019
109054
  input.name,
109020
109055
  updateAccessorParamsList(input, hasEffectiveModifier(input, 2 /* Private */)),
109021
- ensureType(input, accessorType),
109056
+ ensureType(input),
109022
109057
  /*body*/
109023
109058
  void 0
109024
109059
  ));
@@ -109051,7 +109086,7 @@ function transformDeclarations(context) {
109051
109086
  ensureModifiers(input),
109052
109087
  input.name,
109053
109088
  input.questionToken,
109054
- ensureType(input, input.type),
109089
+ ensureType(input),
109055
109090
  ensureNoInitializer(input)
109056
109091
  ));
109057
109092
  case 171 /* PropertySignature */:
@@ -109066,7 +109101,7 @@ function transformDeclarations(context) {
109066
109101
  ensureModifiers(input),
109067
109102
  input.name,
109068
109103
  input.questionToken,
109069
- ensureType(input, input.type)
109104
+ ensureType(input)
109070
109105
  ));
109071
109106
  case 173 /* MethodSignature */: {
109072
109107
  if (isPrivateIdentifier(input.name)) {
@@ -109082,7 +109117,7 @@ function transformDeclarations(context) {
109082
109117
  input.questionToken,
109083
109118
  ensureTypeParams(input, input.typeParameters),
109084
109119
  updateParamsList(input, input.parameters),
109085
- ensureType(input, input.type)
109120
+ ensureType(input)
109086
109121
  ));
109087
109122
  }
109088
109123
  case 179 /* CallSignature */: {
@@ -109091,7 +109126,7 @@ function transformDeclarations(context) {
109091
109126
  input,
109092
109127
  ensureTypeParams(input, input.typeParameters),
109093
109128
  updateParamsList(input, input.parameters),
109094
- ensureType(input, input.type)
109129
+ ensureType(input)
109095
109130
  )
109096
109131
  );
109097
109132
  }
@@ -109114,7 +109149,7 @@ function transformDeclarations(context) {
109114
109149
  input.name,
109115
109150
  /*exclamationToken*/
109116
109151
  void 0,
109117
- ensureType(input, input.type),
109152
+ ensureType(input),
109118
109153
  ensureNoInitializer(input)
109119
109154
  ));
109120
109155
  }
@@ -109242,11 +109277,12 @@ function transformDeclarations(context) {
109242
109277
  errorNode: input
109243
109278
  });
109244
109279
  errorFallbackNode = input;
109280
+ const type = ensureType(input);
109245
109281
  const varDecl = factory2.createVariableDeclaration(
109246
109282
  newId,
109247
109283
  /*exclamationToken*/
109248
109284
  void 0,
109249
- resolver.createTypeOfExpression(input.expression, input, declarationEmitNodeBuilderFlags, symbolTracker),
109285
+ type,
109250
109286
  /*initializer*/
109251
109287
  void 0
109252
109288
  );
@@ -109309,8 +109345,6 @@ function transformDeclarations(context) {
109309
109345
  }
109310
109346
  if (isDeclaration(input) && isDeclarationAndNotVisible(input))
109311
109347
  return;
109312
- if (isJSDocImportTag(input))
109313
- return;
109314
109348
  if (isFunctionLike(input) && resolver.isImplementationOfOverload(input))
109315
109349
  return;
109316
109350
  let previousEnclosingDeclaration;
@@ -109356,7 +109390,7 @@ function transformDeclarations(context) {
109356
109390
  input.name,
109357
109391
  ensureTypeParams(input, input.typeParameters),
109358
109392
  updateParamsList(input, input.parameters),
109359
- ensureType(input, input.type),
109393
+ ensureType(input),
109360
109394
  /*body*/
109361
109395
  void 0
109362
109396
  ));
@@ -109522,7 +109556,7 @@ function transformDeclarations(context) {
109522
109556
  ensureModifiers(param),
109523
109557
  param.name,
109524
109558
  param.questionToken,
109525
- ensureType(param, param.type),
109559
+ ensureType(param),
109526
109560
  ensureNoInitializer(param)
109527
109561
  ),
109528
109562
  param
@@ -109544,11 +109578,7 @@ function transformDeclarations(context) {
109544
109578
  elem.name,
109545
109579
  /*questionOrExclamationToken*/
109546
109580
  void 0,
109547
- ensureType(
109548
- elem,
109549
- /*type*/
109550
- void 0
109551
- ),
109581
+ ensureType(elem),
109552
109582
  /*initializer*/
109553
109583
  void 0
109554
109584
  ));
@@ -109697,11 +109727,7 @@ function transformDeclarations(context) {
109697
109727
  e.name,
109698
109728
  /*exclamationToken*/
109699
109729
  void 0,
109700
- ensureType(
109701
- e,
109702
- /*type*/
109703
- void 0
109704
- ),
109730
+ ensureType(e),
109705
109731
  /*initializer*/
109706
109732
  void 0
109707
109733
  );
@@ -109958,7 +109984,7 @@ function noEmitNotification(hint, node, callback) {
109958
109984
  }
109959
109985
  function transformNodes(resolver, host, factory2, options, nodes, transformers, allowDtsFiles) {
109960
109986
  var _a, _b;
109961
- const enabledSyntaxKindFeatures = new Array(357 /* Count */);
109987
+ const enabledSyntaxKindFeatures = new Array(356 /* Count */);
109962
109988
  let lexicalEnvironmentVariableDeclarations;
109963
109989
  let lexicalEnvironmentFunctionDeclarations;
109964
109990
  let lexicalEnvironmentStatements;
@@ -111531,9 +111557,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
111531
111557
  return emitJSDocTypedefTag(node);
111532
111558
  case 347 /* JSDocSeeTag */:
111533
111559
  return emitJSDocSeeTag(node);
111534
- case 351 /* JSDocImportTag */:
111535
- return emitJSDocImportTag(node);
111536
- case 353 /* NotEmittedStatement */:
111560
+ case 352 /* NotEmittedStatement */:
111537
111561
  return;
111538
111562
  }
111539
111563
  if (isExpression(node)) {
@@ -111634,15 +111658,15 @@ function createPrinter(printerOptions = {}, handlers = {}) {
111634
111658
  return emitJsxSelfClosingElement(node);
111635
111659
  case 288 /* JsxFragment */:
111636
111660
  return emitJsxFragment(node);
111637
- case 352 /* SyntaxList */:
111661
+ case 351 /* SyntaxList */:
111638
111662
  return Debug.fail("SyntaxList should not be printed");
111639
- case 353 /* NotEmittedStatement */:
111663
+ case 352 /* NotEmittedStatement */:
111640
111664
  return;
111641
- case 354 /* PartiallyEmittedExpression */:
111665
+ case 353 /* PartiallyEmittedExpression */:
111642
111666
  return emitPartiallyEmittedExpression(node);
111643
- case 355 /* CommaListExpression */:
111667
+ case 354 /* CommaListExpression */:
111644
111668
  return emitCommaList(node);
111645
- case 356 /* SyntheticReferenceExpression */:
111669
+ case 355 /* SyntheticReferenceExpression */:
111646
111670
  return Debug.fail("SyntheticReferenceExpression should not be printed");
111647
111671
  }
111648
111672
  }
@@ -113486,21 +113510,6 @@ function createPrinter(printerOptions = {}, handlers = {}) {
113486
113510
  emit(tag.name);
113487
113511
  emitJSDocComment(tag.comment);
113488
113512
  }
113489
- function emitJSDocImportTag(tag) {
113490
- emitJSDocTagName(tag.tagName);
113491
- writeSpace();
113492
- if (tag.importClause) {
113493
- emit(tag.importClause);
113494
- writeSpace();
113495
- emitTokenWithComment(161 /* FromKeyword */, tag.importClause.end, writeKeyword, tag);
113496
- writeSpace();
113497
- }
113498
- emitExpression(tag.moduleSpecifier);
113499
- if (tag.attributes) {
113500
- emitWithLeadingSpace(tag.attributes);
113501
- }
113502
- emitJSDocComment(tag.comment);
113503
- }
113504
113513
  function emitJSDocNameReference(node) {
113505
113514
  writeSpace();
113506
113515
  writePunctuation("{");
@@ -114915,7 +114924,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
114915
114924
  emitLeadingComments(
114916
114925
  pos,
114917
114926
  /*isEmittedNode*/
114918
- node.kind !== 353 /* NotEmittedStatement */
114927
+ node.kind !== 352 /* NotEmittedStatement */
114919
114928
  );
114920
114929
  }
114921
114930
  if (!skipLeadingComments || pos >= 0 && (emitFlags & 1024 /* NoLeadingComments */) !== 0) {
@@ -114939,7 +114948,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
114939
114948
  containerPos = savedContainerPos;
114940
114949
  containerEnd = savedContainerEnd;
114941
114950
  declarationListContainerEnd = savedDeclarationListContainerEnd;
114942
- if (!skipTrailingComments && node.kind !== 353 /* NotEmittedStatement */) {
114951
+ if (!skipTrailingComments && node.kind !== 352 /* NotEmittedStatement */) {
114943
114952
  emitTrailingComments(end);
114944
114953
  }
114945
114954
  }
@@ -115191,7 +115200,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
115191
115200
  const emitFlags = getEmitFlags(node);
115192
115201
  const sourceMapRange = getSourceMapRange(node);
115193
115202
  const source = sourceMapRange.source || sourceMapSource;
115194
- if (node.kind !== 353 /* NotEmittedStatement */ && (emitFlags & 32 /* NoLeadingSourceMap */) === 0 && sourceMapRange.pos >= 0) {
115203
+ if (node.kind !== 352 /* NotEmittedStatement */ && (emitFlags & 32 /* NoLeadingSourceMap */) === 0 && sourceMapRange.pos >= 0) {
115195
115204
  emitSourcePos(sourceMapRange.source || sourceMapSource, skipSourceTrivia(source, sourceMapRange.pos));
115196
115205
  }
115197
115206
  if (emitFlags & 128 /* NoNestedSourceMaps */) {
@@ -115204,7 +115213,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
115204
115213
  if (emitFlags & 128 /* NoNestedSourceMaps */) {
115205
115214
  sourceMapsDisabled = false;
115206
115215
  }
115207
- if (node.kind !== 353 /* NotEmittedStatement */ && (emitFlags & 64 /* NoTrailingSourceMap */) === 0 && sourceMapRange.end >= 0) {
115216
+ if (node.kind !== 352 /* NotEmittedStatement */ && (emitFlags & 64 /* NoTrailingSourceMap */) === 0 && sourceMapRange.end >= 0) {
115208
115217
  emitSourcePos(sourceMapRange.source || sourceMapSource, sourceMapRange.end);
115209
115218
  }
115210
115219
  }
@@ -118086,7 +118095,7 @@ function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _config
118086
118095
  );
118087
118096
  }
118088
118097
  if (file.flags & 4194304 /* PossiblyContainsDynamicImport */ || isJavaScriptFile) {
118089
- collectDynamicImportOrRequireOrJsDocImportCalls(file);
118098
+ collectDynamicImportOrRequireCalls(file);
118090
118099
  }
118091
118100
  file.imports = imports || emptyArray;
118092
118101
  file.moduleAugmentations = moduleAugmentations || emptyArray;
@@ -118130,7 +118139,7 @@ function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _config
118130
118139
  }
118131
118140
  }
118132
118141
  }
118133
- function collectDynamicImportOrRequireOrJsDocImportCalls(file2) {
118142
+ function collectDynamicImportOrRequireCalls(file2) {
118134
118143
  const r = /import|require/g;
118135
118144
  while (r.exec(file2.text) !== null) {
118136
118145
  const node = getNodeAtPosition(file2, r.lastIndex);
@@ -118159,16 +118168,6 @@ function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _config
118159
118168
  false
118160
118169
  );
118161
118170
  imports = append(imports, node.argument.literal);
118162
- } else if (isJavaScriptFile && isJSDocImportTag(node)) {
118163
- const moduleNameExpr = getExternalModuleName(node);
118164
- if (moduleNameExpr && isStringLiteral(moduleNameExpr) && moduleNameExpr.text) {
118165
- setParentRecursive(
118166
- node,
118167
- /*incremental*/
118168
- false
118169
- );
118170
- imports = append(imports, moduleNameExpr);
118171
- }
118172
118171
  }
118173
118172
  }
118174
118173
  }