typescript 5.0.0-dev.20230112 → 5.0.0-dev.20230114

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/tsserver.js CHANGED
@@ -194,6 +194,7 @@ __export(server_exports, {
194
194
  addEmitHelper: () => addEmitHelper,
195
195
  addEmitHelpers: () => addEmitHelpers,
196
196
  addNodeFactoryPatcher: () => addNodeFactoryPatcher,
197
+ addObjectAllocatorPatcher: () => addObjectAllocatorPatcher,
197
198
  addRange: () => addRange,
198
199
  addRelatedInfo: () => addRelatedInfo,
199
200
  addSyntheticLeadingComment: () => addSyntheticLeadingComment,
@@ -962,6 +963,9 @@ __export(server_exports, {
962
963
  getGeneratedNameForNode: () => getGeneratedNameForNode,
963
964
  getHeritageClause: () => getHeritageClause,
964
965
  getHostSignatureFromJSDoc: () => getHostSignatureFromJSDoc,
966
+ getIdentifierAutoGenerate: () => getIdentifierAutoGenerate,
967
+ getIdentifierGeneratedImportReference: () => getIdentifierGeneratedImportReference,
968
+ getIdentifierTypeArguments: () => getIdentifierTypeArguments,
965
969
  getImmediatelyInvokedFunctionExpression: () => getImmediatelyInvokedFunctionExpression,
966
970
  getImpliedNodeFormatForFile: () => getImpliedNodeFormatForFile,
967
971
  getImpliedNodeFormatForFileWorker: () => getImpliedNodeFormatForFileWorker,
@@ -1295,6 +1299,7 @@ __export(server_exports, {
1295
1299
  hostUsesCaseSensitiveFileNames: () => hostUsesCaseSensitiveFileNames,
1296
1300
  idText: () => idText,
1297
1301
  identifierIsThisKeyword: () => identifierIsThisKeyword,
1302
+ identifierToKeywordKind: () => identifierToKeywordKind,
1298
1303
  identity: () => identity,
1299
1304
  identitySourceMapConsumer: () => identitySourceMapConsumer,
1300
1305
  ignoreSourceNewlines: () => ignoreSourceNewlines,
@@ -2184,6 +2189,7 @@ __export(server_exports, {
2184
2189
  sameMap: () => sameMap,
2185
2190
  sameMapping: () => sameMapping,
2186
2191
  scanShebangTrivia: () => scanShebangTrivia,
2192
+ scanTokenAtPosition: () => scanTokenAtPosition,
2187
2193
  scanner: () => scanner,
2188
2194
  screenStartingMessageCodes: () => screenStartingMessageCodes,
2189
2195
  semanticDiagnosticsOptionDeclarations: () => semanticDiagnosticsOptionDeclarations,
@@ -2196,6 +2202,9 @@ __export(server_exports, {
2196
2202
  setEachParent: () => setEachParent,
2197
2203
  setEmitFlags: () => setEmitFlags,
2198
2204
  setGetSourceFileAsHashVersioned: () => setGetSourceFileAsHashVersioned,
2205
+ setIdentifierAutoGenerate: () => setIdentifierAutoGenerate,
2206
+ setIdentifierGeneratedImportReference: () => setIdentifierGeneratedImportReference,
2207
+ setIdentifierTypeArguments: () => setIdentifierTypeArguments,
2199
2208
  setLocalizedDiagnosticMessages: () => setLocalizedDiagnosticMessages,
2200
2209
  setModuleDefaultHelper: () => setModuleDefaultHelper,
2201
2210
  setNodeFlags: () => setNodeFlags,
@@ -2662,7 +2671,7 @@ __export(ts_server_exports3, {
2662
2671
 
2663
2672
  // src/compiler/corePublic.ts
2664
2673
  var versionMajorMinor = "5.0";
2665
- var version = `${versionMajorMinor}.0-dev.20230112`;
2674
+ var version = `${versionMajorMinor}.0-dev.20230114`;
2666
2675
  var Comparison = /* @__PURE__ */ ((Comparison3) => {
2667
2676
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
2668
2677
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -6542,6 +6551,8 @@ var NodeFlags = /* @__PURE__ */ ((NodeFlags4) => {
6542
6551
  NodeFlags4[NodeFlags4["ContextFlags"] = 50720768] = "ContextFlags";
6543
6552
  NodeFlags4[NodeFlags4["TypeExcludesFlags"] = 40960] = "TypeExcludesFlags";
6544
6553
  NodeFlags4[NodeFlags4["PermanentlySetIncrementalFlags"] = 6291456] = "PermanentlySetIncrementalFlags";
6554
+ NodeFlags4[NodeFlags4["IdentifierHasExtendedUnicodeEscape"] = 128 /* ContainsThis */] = "IdentifierHasExtendedUnicodeEscape";
6555
+ NodeFlags4[NodeFlags4["IdentifierIsInJSDocNamespace"] = 2048 /* HasAsyncFunctions */] = "IdentifierIsInJSDocNamespace";
6545
6556
  return NodeFlags4;
6546
6557
  })(NodeFlags || {});
6547
6558
  var ModifierFlags = /* @__PURE__ */ ((ModifierFlags3) => {
@@ -10950,6 +10961,8 @@ var Diagnostics = {
10950
10961
  package_json_scope_0_explicitly_maps_specifier_1_to_null: diag(6274, 3 /* Message */, "package_json_scope_0_explicitly_maps_specifier_1_to_null_6274", "package.json scope '{0}' explicitly maps specifier '{1}' to null."),
10951
10962
  package_json_scope_0_has_invalid_type_for_target_of_specifier_1: diag(6275, 3 /* Message */, "package_json_scope_0_has_invalid_type_for_target_of_specifier_1_6275", "package.json scope '{0}' has invalid type for target of specifier '{1}'"),
10952
10963
  Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1: diag(6276, 3 /* Message */, "Export_specifier_0_does_not_exist_in_package_json_scope_at_path_1_6276", "Export specifier '{0}' does not exist in package.json scope at path '{1}'."),
10964
+ Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update: diag(6277, 3 /* Message */, "Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_i_6277", "Resolution of non-relative name failed; trying with modern Node resolution features disabled to see if npm library needs configuration update."),
10965
+ There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings: diag(6278, 3 /* Message */, "There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The__6278", `There are types at '{0}', but this result could not be resolved when respecting package.json "exports". The '{1}' library may need to update its package.json or typings.`),
10953
10966
  Enable_project_compilation: diag(6302, 3 /* Message */, "Enable_project_compilation_6302", "Enable project compilation"),
10954
10967
  Composite_projects_may_not_disable_declaration_emit: diag(6304, 1 /* Error */, "Composite_projects_may_not_disable_declaration_emit_6304", "Composite projects may not disable declaration emit."),
10955
10968
  Output_file_0_has_not_been_built_from_source_file_1: diag(6305, 1 /* Error */, "Output_file_0_has_not_been_built_from_source_file_1_6305", "Output file '{0}' has not been built from source file '{1}'."),
@@ -14016,6 +14029,10 @@ function unescapeLeadingUnderscores(identifier) {
14016
14029
  function idText(identifierOrPrivateName) {
14017
14030
  return unescapeLeadingUnderscores(identifierOrPrivateName.escapedText);
14018
14031
  }
14032
+ function identifierToKeywordKind(node) {
14033
+ const token = stringToToken(node.escapedText);
14034
+ return token ? tryCast(token, isKeyword) : void 0;
14035
+ }
14019
14036
  function symbolName(symbol) {
14020
14037
  if (symbol.valueDeclaration && isPrivateIdentifierClassElementDeclaration(symbol.valueDeclaration)) {
14021
14038
  return idText(symbol.valueDeclaration.name);
@@ -14323,15 +14340,17 @@ function getJSDocReturnType(node) {
14323
14340
  }
14324
14341
  }
14325
14342
  function getJSDocTagsWorker(node, noCache) {
14343
+ var _a2, _b;
14326
14344
  if (!canHaveJSDoc(node))
14327
14345
  return emptyArray;
14328
- let tags = node.jsDocCache;
14346
+ let tags = (_a2 = node.jsDoc) == null ? void 0 : _a2.jsDocCache;
14329
14347
  if (tags === void 0 || noCache) {
14330
14348
  const comments = getJSDocCommentsAndTags(node, noCache);
14331
14349
  Debug.assert(comments.length < 2 || comments[0] !== comments[1]);
14332
14350
  tags = flatMap(comments, (j) => isJSDoc(j) ? j.tags : j);
14333
14351
  if (!noCache) {
14334
- node.jsDocCache = tags;
14352
+ (_b = node.jsDoc) != null ? _b : node.jsDoc = [];
14353
+ node.jsDoc.jsDocCache = tags;
14335
14354
  }
14336
14355
  }
14337
14356
  return tags;
@@ -14530,10 +14549,12 @@ function isStringTextContainingNode(node) {
14530
14549
  return node.kind === 10 /* StringLiteral */ || isTemplateLiteralKind(node.kind);
14531
14550
  }
14532
14551
  function isGeneratedIdentifier(node) {
14533
- return isIdentifier(node) && node.autoGenerate !== void 0;
14552
+ var _a2;
14553
+ return isIdentifier(node) && ((_a2 = node.emitNode) == null ? void 0 : _a2.autoGenerate) !== void 0;
14534
14554
  }
14535
14555
  function isGeneratedPrivateIdentifier(node) {
14536
- return isPrivateIdentifier(node) && node.autoGenerate !== void 0;
14556
+ var _a2;
14557
+ return isPrivateIdentifier(node) && ((_a2 = node.emitNode) == null ? void 0 : _a2.autoGenerate) !== void 0;
14537
14558
  }
14538
14559
  function isPrivateIdentifierClassElementDeclaration(node) {
14539
14560
  return (isPropertyDeclaration(node) || isMethodOrAccessor(node)) && isPrivateIdentifier(node.name);
@@ -15915,10 +15936,11 @@ function isComputedNonLiteralName(name) {
15915
15936
  return name.kind === 164 /* ComputedPropertyName */ && !isStringOrNumericLiteralLike(name.expression);
15916
15937
  }
15917
15938
  function tryGetTextOfPropertyName(name) {
15939
+ var _a2;
15918
15940
  switch (name.kind) {
15919
15941
  case 79 /* Identifier */:
15920
15942
  case 80 /* PrivateIdentifier */:
15921
- return name.autoGenerate ? void 0 : name.escapedText;
15943
+ return ((_a2 = name.emitNode) == null ? void 0 : _a2.autoGenerate) ? void 0 : name.escapedText;
15922
15944
  case 10 /* StringLiteral */:
15923
15945
  case 8 /* NumericLiteral */:
15924
15946
  case 14 /* NoSubstitutionTemplateLiteral */:
@@ -16036,6 +16058,20 @@ function getSpanOfTokenAtPosition(sourceFile, pos) {
16036
16058
  const start2 = scanner2.getTokenPos();
16037
16059
  return createTextSpanFromBounds(start2, scanner2.getTextPos());
16038
16060
  }
16061
+ function scanTokenAtPosition(sourceFile, pos) {
16062
+ const scanner2 = createScanner(
16063
+ sourceFile.languageVersion,
16064
+ /*skipTrivia*/
16065
+ true,
16066
+ sourceFile.languageVariant,
16067
+ sourceFile.text,
16068
+ /*onError:*/
16069
+ void 0,
16070
+ pos
16071
+ );
16072
+ scanner2.scan();
16073
+ return scanner2.getToken();
16074
+ }
16039
16075
  function getErrorSpanForArrowFunction(sourceFile, node) {
16040
16076
  const pos = skipTrivia(sourceFile.text, node.pos);
16041
16077
  if (node.body && node.body.kind === 238 /* Block */) {
@@ -17728,7 +17764,8 @@ function isStringAKeyword(name) {
17728
17764
  const token = stringToToken(name);
17729
17765
  return token !== void 0 && isKeyword(token);
17730
17766
  }
17731
- function isIdentifierANonContextualKeyword({ originalKeywordKind }) {
17767
+ function isIdentifierANonContextualKeyword(node) {
17768
+ const originalKeywordKind = identifierToKeywordKind(node);
17732
17769
  return !!originalKeywordKind && !isContextualKeyword(originalKeywordKind);
17733
17770
  }
17734
17771
  function isTrivia(token) {
@@ -18600,7 +18637,7 @@ function isThisInTypeQuery(node) {
18600
18637
  return node.parent.kind === 183 /* TypeQuery */;
18601
18638
  }
18602
18639
  function identifierIsThisKeyword(id) {
18603
- return id.originalKeywordKind === 108 /* ThisKeyword */;
18640
+ return id.escapedText === "this";
18604
18641
  }
18605
18642
  function getAllAccessorDeclarations(declarations, accessor) {
18606
18643
  let firstAccessor;
@@ -18911,7 +18948,7 @@ function getEffectiveModifierFlagsNoCache(node) {
18911
18948
  }
18912
18949
  function getSyntacticModifierFlagsNoCache(node) {
18913
18950
  let flags = canHaveModifiers(node) ? modifiersToFlags(node.modifiers) : 0 /* None */;
18914
- if (node.flags & 4 /* NestedNamespace */ || node.kind === 79 /* Identifier */ && node.isInJSDocNamespace) {
18951
+ if (node.flags & 4 /* NestedNamespace */ || node.kind === 79 /* Identifier */ && node.flags & 2048 /* IdentifierIsInJSDocNamespace */) {
18915
18952
  flags |= 1 /* Export */;
18916
18953
  }
18917
18954
  return flags;
@@ -19683,7 +19720,6 @@ function Identifier2(kind, pos, end) {
19683
19720
  this.parent = void 0;
19684
19721
  this.original = void 0;
19685
19722
  this.emitNode = void 0;
19686
- this.flowNode = void 0;
19687
19723
  }
19688
19724
  function SourceMapSource(fileName, text, skipTrivia2) {
19689
19725
  this.fileName = fileName;
@@ -19701,8 +19737,14 @@ var objectAllocator = {
19701
19737
  getSignatureConstructor: () => Signature2,
19702
19738
  getSourceMapSourceConstructor: () => SourceMapSource
19703
19739
  };
19740
+ var objectAllocatorPatchers = [];
19741
+ function addObjectAllocatorPatcher(fn) {
19742
+ objectAllocatorPatchers.push(fn);
19743
+ fn(objectAllocator);
19744
+ }
19704
19745
  function setObjectAllocator(alloc) {
19705
19746
  Object.assign(objectAllocator, alloc);
19747
+ forEach(objectAllocatorPatchers, (fn) => fn(objectAllocator));
19706
19748
  }
19707
19749
  function formatStringFromArgs(text, args, baseIndex = 0) {
19708
19750
  return text.replace(/{(\d+)}/g, (_match, index) => "" + Debug.checkDefined(args[+index + baseIndex]));
@@ -21724,7 +21766,6 @@ function createNodeFactory(flags, baseFactory2) {
21724
21766
  createRegularExpressionLiteral: createRegularExpressionLiteral2,
21725
21767
  createLiteralLikeNode,
21726
21768
  createIdentifier: createIdentifier3,
21727
- updateIdentifier,
21728
21769
  createTempVariable: createTempVariable3,
21729
21770
  createLoopVariable: createLoopVariable2,
21730
21771
  createUniqueName: createUniqueName2,
@@ -22467,55 +22508,43 @@ function createNodeFactory(flags, baseFactory2) {
22467
22508
  );
22468
22509
  }
22469
22510
  }
22470
- function createBaseIdentifier(escapedText, originalKeywordKind) {
22511
+ function createBaseIdentifier(escapedText) {
22471
22512
  const node = baseFactory2.createBaseIdentifierNode(79 /* Identifier */);
22472
- node.originalKeywordKind = originalKeywordKind;
22473
22513
  node.escapedText = escapedText;
22474
- node.autoGenerate = void 0;
22475
- node.typeArguments = void 0;
22476
- node.hasExtendedUnicodeEscape = void 0;
22477
22514
  node.jsDoc = void 0;
22478
- node.jsDocCache = void 0;
22479
22515
  node.flowNode = void 0;
22480
22516
  node.symbol = void 0;
22481
22517
  return node;
22482
22518
  }
22483
22519
  function createBaseGeneratedIdentifier(text, autoGenerateFlags, prefix, suffix) {
22484
- const node = createBaseIdentifier(
22485
- escapeLeadingUnderscores(text),
22486
- /*originalKeywordKind*/
22487
- void 0
22488
- );
22489
- node.autoGenerate = {
22520
+ const node = createBaseIdentifier(escapeLeadingUnderscores(text));
22521
+ setIdentifierAutoGenerate(node, {
22490
22522
  flags: autoGenerateFlags,
22491
22523
  id: nextAutoGenerateId,
22492
22524
  prefix,
22493
22525
  suffix
22494
- };
22526
+ });
22495
22527
  nextAutoGenerateId++;
22496
22528
  return node;
22497
22529
  }
22498
- function createIdentifier3(text, typeArguments, originalKeywordKind, hasExtendedUnicodeEscape) {
22530
+ function createIdentifier3(text, originalKeywordKind, hasExtendedUnicodeEscape) {
22499
22531
  if (originalKeywordKind === void 0 && text) {
22500
22532
  originalKeywordKind = stringToToken(text);
22501
22533
  }
22502
22534
  if (originalKeywordKind === 79 /* Identifier */) {
22503
22535
  originalKeywordKind = void 0;
22504
22536
  }
22505
- const node = createBaseIdentifier(escapeLeadingUnderscores(text), originalKeywordKind);
22506
- node.typeArguments = asNodeArray(typeArguments);
22507
- node.hasExtendedUnicodeEscape = hasExtendedUnicodeEscape;
22508
- if (node.originalKeywordKind === 133 /* AwaitKeyword */) {
22537
+ const node = createBaseIdentifier(escapeLeadingUnderscores(text));
22538
+ if (hasExtendedUnicodeEscape)
22539
+ node.flags |= 128 /* IdentifierHasExtendedUnicodeEscape */;
22540
+ if (node.escapedText === "await") {
22509
22541
  node.transformFlags |= 67108864 /* ContainsPossibleTopLevelAwait */;
22510
22542
  }
22511
- if (node.hasExtendedUnicodeEscape) {
22543
+ if (node.flags & 128 /* IdentifierHasExtendedUnicodeEscape */) {
22512
22544
  node.transformFlags |= 1024 /* ContainsES2015 */;
22513
22545
  }
22514
22546
  return node;
22515
22547
  }
22516
- function updateIdentifier(node, typeArguments) {
22517
- return node.typeArguments !== typeArguments ? update(createIdentifier3(idText(node), typeArguments), node) : node;
22518
- }
22519
22548
  function createTempVariable3(recordTempVariable, reservedInNestedScopes, prefix, suffix) {
22520
22549
  let flags2 = 1 /* Auto */;
22521
22550
  if (reservedInNestedScopes)
@@ -22563,7 +22592,6 @@ function createNodeFactory(flags, baseFactory2) {
22563
22592
  function createBasePrivateIdentifier(escapedText) {
22564
22593
  const node = baseFactory2.createBasePrivateIdentifierNode(80 /* PrivateIdentifier */);
22565
22594
  node.escapedText = escapedText;
22566
- node.autoGenerate = void 0;
22567
22595
  node.transformFlags |= 16777216 /* ContainsClassFields */;
22568
22596
  return node;
22569
22597
  }
@@ -22574,12 +22602,12 @@ function createNodeFactory(flags, baseFactory2) {
22574
22602
  }
22575
22603
  function createBaseGeneratedPrivateIdentifier(text, autoGenerateFlags, prefix, suffix) {
22576
22604
  const node = createBasePrivateIdentifier(escapeLeadingUnderscores(text));
22577
- node.autoGenerate = {
22605
+ setIdentifierAutoGenerate(node, {
22578
22606
  flags: autoGenerateFlags,
22579
22607
  id: nextAutoGenerateId,
22580
22608
  prefix,
22581
22609
  suffix
22582
- };
22610
+ });
22583
22611
  nextAutoGenerateId++;
22584
22612
  return node;
22585
22613
  }
@@ -22741,7 +22769,6 @@ function createNodeFactory(flags, baseFactory2) {
22741
22769
  node.transformFlags = 1 /* ContainsTypeScript */;
22742
22770
  node.expression = void 0;
22743
22771
  node.jsDoc = void 0;
22744
- node.jsDocCache = void 0;
22745
22772
  return node;
22746
22773
  }
22747
22774
  function updateTypeParameterDeclaration2(node, modifiers, name, constraint, defaultType) {
@@ -22762,7 +22789,6 @@ function createNodeFactory(flags, baseFactory2) {
22762
22789
  node.transformFlags = propagateChildrenFlags(node.modifiers) | propagateChildFlags(node.dotDotDotToken) | propagateNameFlags(node.name) | propagateChildFlags(node.questionToken) | propagateChildFlags(node.initializer) | (((_a2 = node.questionToken) != null ? _a2 : node.type) ? 1 /* ContainsTypeScript */ : 0 /* None */) | (((_b = node.dotDotDotToken) != null ? _b : node.initializer) ? 1024 /* ContainsES2015 */ : 0 /* None */) | (modifiersToFlags(node.modifiers) & 16476 /* ParameterPropertyModifier */ ? 8192 /* ContainsTypeScriptClassSyntax */ : 0 /* None */);
22763
22790
  }
22764
22791
  node.jsDoc = void 0;
22765
- node.jsDocCache = void 0;
22766
22792
  return node;
22767
22793
  }
22768
22794
  function updateParameterDeclaration(node, modifiers, dotDotDotToken, name, questionToken, type, initializer) {
@@ -22790,7 +22816,6 @@ function createNodeFactory(flags, baseFactory2) {
22790
22816
  node.transformFlags = 1 /* ContainsTypeScript */;
22791
22817
  node.initializer = void 0;
22792
22818
  node.jsDoc = void 0;
22793
- node.jsDocCache = void 0;
22794
22819
  return node;
22795
22820
  }
22796
22821
  function updatePropertySignature3(node, modifiers, name, questionToken, type) {
@@ -22813,7 +22838,6 @@ function createNodeFactory(flags, baseFactory2) {
22813
22838
  const isAmbient = node.flags & 16777216 /* Ambient */ || modifiersToFlags(node.modifiers) & 2 /* Ambient */;
22814
22839
  node.transformFlags = propagateChildrenFlags(node.modifiers) | propagateNameFlags(node.name) | propagateChildFlags(node.initializer) | (isAmbient || node.questionToken || node.exclamationToken || node.type ? 1 /* ContainsTypeScript */ : 0 /* None */) | (isComputedPropertyName(node.name) || modifiersToFlags(node.modifiers) & 32 /* Static */ && node.initializer ? 8192 /* ContainsTypeScriptClassSyntax */ : 0 /* None */) | 16777216 /* ContainsClassFields */;
22815
22840
  node.jsDoc = void 0;
22816
- node.jsDocCache = void 0;
22817
22841
  return node;
22818
22842
  }
22819
22843
  function updatePropertyDeclaration2(node, modifiers, name, questionOrExclamationToken, type, initializer) {
@@ -22829,7 +22853,6 @@ function createNodeFactory(flags, baseFactory2) {
22829
22853
  node.type = type;
22830
22854
  node.transformFlags = 1 /* ContainsTypeScript */;
22831
22855
  node.jsDoc = void 0;
22832
- node.jsDocCache = void 0;
22833
22856
  node.locals = void 0;
22834
22857
  node.nextContainer = void 0;
22835
22858
  node.typeArguments = void 0;
@@ -22859,7 +22882,6 @@ function createNodeFactory(flags, baseFactory2) {
22859
22882
  }
22860
22883
  node.typeArguments = void 0;
22861
22884
  node.jsDoc = void 0;
22862
- node.jsDocCache = void 0;
22863
22885
  node.locals = void 0;
22864
22886
  node.nextContainer = void 0;
22865
22887
  node.flowNode = void 0;
@@ -22883,7 +22905,6 @@ function createNodeFactory(flags, baseFactory2) {
22883
22905
  node.illegalDecorators = void 0;
22884
22906
  node.modifiers = void 0;
22885
22907
  node.jsDoc = void 0;
22886
- node.jsDocCache = void 0;
22887
22908
  node.locals = void 0;
22888
22909
  node.nextContainer = void 0;
22889
22910
  node.endFlowNode = void 0;
@@ -22911,7 +22932,6 @@ function createNodeFactory(flags, baseFactory2) {
22911
22932
  node.type = void 0;
22912
22933
  node.typeArguments = void 0;
22913
22934
  node.jsDoc = void 0;
22914
- node.jsDocCache = void 0;
22915
22935
  node.locals = void 0;
22916
22936
  node.nextContainer = void 0;
22917
22937
  node.endFlowNode = void 0;
@@ -22944,7 +22964,6 @@ function createNodeFactory(flags, baseFactory2) {
22944
22964
  node.typeArguments = void 0;
22945
22965
  node.typeParameters = void 0;
22946
22966
  node.jsDoc = void 0;
22947
- node.jsDocCache = void 0;
22948
22967
  node.locals = void 0;
22949
22968
  node.nextContainer = void 0;
22950
22969
  node.flowNode = void 0;
@@ -22976,7 +22995,6 @@ function createNodeFactory(flags, baseFactory2) {
22976
22995
  node.typeParameters = void 0;
22977
22996
  node.type = void 0;
22978
22997
  node.jsDoc = void 0;
22979
- node.jsDocCache = void 0;
22980
22998
  node.locals = void 0;
22981
22999
  node.nextContainer = void 0;
22982
23000
  node.flowNode = void 0;
@@ -23001,7 +23019,6 @@ function createNodeFactory(flags, baseFactory2) {
23001
23019
  node.type = type;
23002
23020
  node.transformFlags = 1 /* ContainsTypeScript */;
23003
23021
  node.jsDoc = void 0;
23004
- node.jsDocCache = void 0;
23005
23022
  node.locals = void 0;
23006
23023
  node.nextContainer = void 0;
23007
23024
  node.typeArguments = void 0;
@@ -23017,7 +23034,6 @@ function createNodeFactory(flags, baseFactory2) {
23017
23034
  node.type = type;
23018
23035
  node.transformFlags = 1 /* ContainsTypeScript */;
23019
23036
  node.jsDoc = void 0;
23020
- node.jsDocCache = void 0;
23021
23037
  node.locals = void 0;
23022
23038
  node.nextContainer = void 0;
23023
23039
  node.typeArguments = void 0;
@@ -23034,7 +23050,6 @@ function createNodeFactory(flags, baseFactory2) {
23034
23050
  node.transformFlags = 1 /* ContainsTypeScript */;
23035
23051
  node.illegalDecorators = void 0;
23036
23052
  node.jsDoc = void 0;
23037
- node.jsDocCache = void 0;
23038
23053
  node.locals = void 0;
23039
23054
  node.nextContainer = void 0;
23040
23055
  node.typeArguments = void 0;
@@ -23085,7 +23100,6 @@ function createNodeFactory(flags, baseFactory2) {
23085
23100
  node.transformFlags = 1 /* ContainsTypeScript */;
23086
23101
  node.modifiers = void 0;
23087
23102
  node.jsDoc = void 0;
23088
- node.jsDocCache = void 0;
23089
23103
  node.locals = void 0;
23090
23104
  node.nextContainer = void 0;
23091
23105
  node.typeArguments = void 0;
@@ -23111,7 +23125,6 @@ function createNodeFactory(flags, baseFactory2) {
23111
23125
  node.type = type;
23112
23126
  node.transformFlags = 1 /* ContainsTypeScript */;
23113
23127
  node.jsDoc = void 0;
23114
- node.jsDocCache = void 0;
23115
23128
  node.locals = void 0;
23116
23129
  node.nextContainer = void 0;
23117
23130
  node.typeArguments = void 0;
@@ -23180,7 +23193,6 @@ function createNodeFactory(flags, baseFactory2) {
23180
23193
  node.type = type;
23181
23194
  node.transformFlags = 1 /* ContainsTypeScript */;
23182
23195
  node.jsDoc = void 0;
23183
- node.jsDocCache = void 0;
23184
23196
  return node;
23185
23197
  }
23186
23198
  function updateNamedTupleMember(node, dotDotDotToken, name, questionToken, type) {
@@ -23382,7 +23394,6 @@ function createNodeFactory(flags, baseFactory2) {
23382
23394
  node.multiLine = multiLine;
23383
23395
  node.transformFlags |= propagateChildrenFlags(node.properties);
23384
23396
  node.jsDoc = void 0;
23385
- node.jsDocCache = void 0;
23386
23397
  return node;
23387
23398
  }
23388
23399
  function updateObjectLiteralExpression(node, properties) {
@@ -23395,7 +23406,6 @@ function createNodeFactory(flags, baseFactory2) {
23395
23406
  node.name = name;
23396
23407
  node.transformFlags = propagateChildFlags(node.expression) | propagateChildFlags(node.questionDotToken) | (isIdentifier(node.name) ? propagateIdentifierNameFlags(node.name) : propagateChildFlags(node.name) | 536870912 /* ContainsPrivateIdentifierInExpression */);
23397
23408
  node.jsDoc = void 0;
23398
- node.jsDocCache = void 0;
23399
23409
  node.flowNode = void 0;
23400
23410
  return node;
23401
23411
  }
@@ -23446,7 +23456,6 @@ function createNodeFactory(flags, baseFactory2) {
23446
23456
  node.argumentExpression = argumentExpression;
23447
23457
  node.transformFlags |= propagateChildFlags(node.expression) | propagateChildFlags(node.questionDotToken) | propagateChildFlags(node.argumentExpression);
23448
23458
  node.jsDoc = void 0;
23449
- node.jsDocCache = void 0;
23450
23459
  node.flowNode = void 0;
23451
23460
  return node;
23452
23461
  }
@@ -23597,7 +23606,6 @@ function createNodeFactory(flags, baseFactory2) {
23597
23606
  node.expression = expression;
23598
23607
  node.transformFlags = propagateChildFlags(node.expression);
23599
23608
  node.jsDoc = void 0;
23600
- node.jsDocCache = void 0;
23601
23609
  return node;
23602
23610
  }
23603
23611
  function updateParenthesizedExpression(node, expression) {
@@ -23618,7 +23626,6 @@ function createNodeFactory(flags, baseFactory2) {
23618
23626
  node.transformFlags = propagateChildrenFlags(node.modifiers) | propagateChildFlags(node.asteriskToken) | propagateNameFlags(node.name) | propagateChildrenFlags(node.typeParameters) | propagateChildrenFlags(node.parameters) | propagateChildFlags(node.type) | propagateChildFlags(node.body) & ~67108864 /* ContainsPossibleTopLevelAwait */ | (isAsyncGenerator ? 128 /* ContainsES2018 */ : isAsync ? 256 /* ContainsES2017 */ : isGenerator ? 2048 /* ContainsGenerator */ : 0 /* None */) | (node.typeParameters || node.type ? 1 /* ContainsTypeScript */ : 0 /* None */) | 4194304 /* ContainsHoistedDeclarationOrCompletion */;
23619
23627
  node.typeArguments = void 0;
23620
23628
  node.jsDoc = void 0;
23621
- node.jsDocCache = void 0;
23622
23629
  node.locals = void 0;
23623
23630
  node.nextContainer = void 0;
23624
23631
  node.flowNode = void 0;
@@ -23641,7 +23648,6 @@ function createNodeFactory(flags, baseFactory2) {
23641
23648
  node.transformFlags = propagateChildrenFlags(node.modifiers) | propagateChildrenFlags(node.typeParameters) | propagateChildrenFlags(node.parameters) | propagateChildFlags(node.type) | propagateChildFlags(node.equalsGreaterThanToken) | propagateChildFlags(node.body) & ~67108864 /* ContainsPossibleTopLevelAwait */ | (node.typeParameters || node.type ? 1 /* ContainsTypeScript */ : 0 /* None */) | (isAsync ? 256 /* ContainsES2017 */ | 16384 /* ContainsLexicalThis */ : 0 /* None */) | 1024 /* ContainsES2015 */;
23642
23649
  node.typeArguments = void 0;
23643
23650
  node.jsDoc = void 0;
23644
- node.jsDocCache = void 0;
23645
23651
  node.locals = void 0;
23646
23652
  node.nextContainer = void 0;
23647
23653
  node.flowNode = void 0;
@@ -23739,7 +23745,6 @@ function createNodeFactory(flags, baseFactory2) {
23739
23745
  node.transformFlags |= 536870912 /* ContainsPrivateIdentifierInExpression */;
23740
23746
  }
23741
23747
  node.jsDoc = void 0;
23742
- node.jsDocCache = void 0;
23743
23748
  return node;
23744
23749
  }
23745
23750
  function propagateAssignmentPatternFlags(node) {
@@ -23881,7 +23886,6 @@ function createNodeFactory(flags, baseFactory2) {
23881
23886
  node.members = createNodeArray2(members);
23882
23887
  node.transformFlags |= propagateChildrenFlags(node.modifiers) | propagateNameFlags(node.name) | propagateChildrenFlags(node.typeParameters) | propagateChildrenFlags(node.heritageClauses) | propagateChildrenFlags(node.members) | (node.typeParameters ? 1 /* ContainsTypeScript */ : 0 /* None */) | 1024 /* ContainsES2015 */;
23883
23888
  node.jsDoc = void 0;
23884
- node.jsDocCache = void 0;
23885
23889
  return node;
23886
23890
  }
23887
23891
  function updateClassExpression3(node, modifiers, name, typeParameters, heritageClauses, members) {
@@ -23997,7 +24001,6 @@ function createNodeFactory(flags, baseFactory2) {
23997
24001
  node.multiLine = multiLine;
23998
24002
  node.transformFlags |= propagateChildrenFlags(node.statements);
23999
24003
  node.jsDoc = void 0;
24000
- node.jsDocCache = void 0;
24001
24004
  node.locals = void 0;
24002
24005
  node.nextContainer = void 0;
24003
24006
  return node;
@@ -24015,7 +24018,6 @@ function createNodeFactory(flags, baseFactory2) {
24015
24018
  }
24016
24019
  node.illegalDecorators = void 0;
24017
24020
  node.jsDoc = void 0;
24018
- node.jsDocCache = void 0;
24019
24021
  node.flowNode = void 0;
24020
24022
  return node;
24021
24023
  }
@@ -24025,7 +24027,6 @@ function createNodeFactory(flags, baseFactory2) {
24025
24027
  function createEmptyStatement2() {
24026
24028
  const node = createBaseNode(239 /* EmptyStatement */);
24027
24029
  node.jsDoc = void 0;
24028
- node.jsDocCache = void 0;
24029
24030
  return node;
24030
24031
  }
24031
24032
  function createExpressionStatement2(expression) {
@@ -24033,7 +24034,6 @@ function createNodeFactory(flags, baseFactory2) {
24033
24034
  node.expression = parenthesizerRules().parenthesizeExpressionOfExpressionStatement(expression);
24034
24035
  node.transformFlags |= propagateChildFlags(node.expression);
24035
24036
  node.jsDoc = void 0;
24036
- node.jsDocCache = void 0;
24037
24037
  node.flowNode = void 0;
24038
24038
  return node;
24039
24039
  }
@@ -24047,7 +24047,6 @@ function createNodeFactory(flags, baseFactory2) {
24047
24047
  node.elseStatement = asEmbeddedStatement(elseStatement);
24048
24048
  node.transformFlags |= propagateChildFlags(node.expression) | propagateChildFlags(node.thenStatement) | propagateChildFlags(node.elseStatement);
24049
24049
  node.jsDoc = void 0;
24050
- node.jsDocCache = void 0;
24051
24050
  node.flowNode = void 0;
24052
24051
  return node;
24053
24052
  }
@@ -24060,7 +24059,6 @@ function createNodeFactory(flags, baseFactory2) {
24060
24059
  node.expression = expression;
24061
24060
  node.transformFlags |= propagateChildFlags(node.statement) | propagateChildFlags(node.expression);
24062
24061
  node.jsDoc = void 0;
24063
- node.jsDocCache = void 0;
24064
24062
  node.flowNode = void 0;
24065
24063
  return node;
24066
24064
  }
@@ -24073,7 +24071,6 @@ function createNodeFactory(flags, baseFactory2) {
24073
24071
  node.statement = asEmbeddedStatement(statement);
24074
24072
  node.transformFlags |= propagateChildFlags(node.expression) | propagateChildFlags(node.statement);
24075
24073
  node.jsDoc = void 0;
24076
- node.jsDocCache = void 0;
24077
24074
  node.flowNode = void 0;
24078
24075
  return node;
24079
24076
  }
@@ -24088,7 +24085,6 @@ function createNodeFactory(flags, baseFactory2) {
24088
24085
  node.statement = asEmbeddedStatement(statement);
24089
24086
  node.transformFlags |= propagateChildFlags(node.initializer) | propagateChildFlags(node.condition) | propagateChildFlags(node.incrementor) | propagateChildFlags(node.statement);
24090
24087
  node.jsDoc = void 0;
24091
- node.jsDocCache = void 0;
24092
24088
  node.locals = void 0;
24093
24089
  node.nextContainer = void 0;
24094
24090
  node.flowNode = void 0;
@@ -24104,7 +24100,6 @@ function createNodeFactory(flags, baseFactory2) {
24104
24100
  node.statement = asEmbeddedStatement(statement);
24105
24101
  node.transformFlags |= propagateChildFlags(node.initializer) | propagateChildFlags(node.expression) | propagateChildFlags(node.statement);
24106
24102
  node.jsDoc = void 0;
24107
- node.jsDocCache = void 0;
24108
24103
  node.locals = void 0;
24109
24104
  node.nextContainer = void 0;
24110
24105
  node.flowNode = void 0;
@@ -24123,7 +24118,6 @@ function createNodeFactory(flags, baseFactory2) {
24123
24118
  if (awaitModifier)
24124
24119
  node.transformFlags |= 128 /* ContainsES2018 */;
24125
24120
  node.jsDoc = void 0;
24126
- node.jsDocCache = void 0;
24127
24121
  node.locals = void 0;
24128
24122
  node.nextContainer = void 0;
24129
24123
  node.flowNode = void 0;
@@ -24137,7 +24131,6 @@ function createNodeFactory(flags, baseFactory2) {
24137
24131
  node.label = asName(label);
24138
24132
  node.transformFlags |= propagateChildFlags(node.label) | 4194304 /* ContainsHoistedDeclarationOrCompletion */;
24139
24133
  node.jsDoc = void 0;
24140
- node.jsDocCache = void 0;
24141
24134
  node.flowNode = void 0;
24142
24135
  return node;
24143
24136
  }
@@ -24149,7 +24142,6 @@ function createNodeFactory(flags, baseFactory2) {
24149
24142
  node.label = asName(label);
24150
24143
  node.transformFlags |= propagateChildFlags(node.label) | 4194304 /* ContainsHoistedDeclarationOrCompletion */;
24151
24144
  node.jsDoc = void 0;
24152
- node.jsDocCache = void 0;
24153
24145
  node.flowNode = void 0;
24154
24146
  return node;
24155
24147
  }
@@ -24161,7 +24153,6 @@ function createNodeFactory(flags, baseFactory2) {
24161
24153
  node.expression = expression;
24162
24154
  node.transformFlags |= propagateChildFlags(node.expression) | 128 /* ContainsES2018 */ | 4194304 /* ContainsHoistedDeclarationOrCompletion */;
24163
24155
  node.jsDoc = void 0;
24164
- node.jsDocCache = void 0;
24165
24156
  node.flowNode = void 0;
24166
24157
  return node;
24167
24158
  }
@@ -24174,7 +24165,6 @@ function createNodeFactory(flags, baseFactory2) {
24174
24165
  node.statement = asEmbeddedStatement(statement);
24175
24166
  node.transformFlags |= propagateChildFlags(node.expression) | propagateChildFlags(node.statement);
24176
24167
  node.jsDoc = void 0;
24177
- node.jsDocCache = void 0;
24178
24168
  node.flowNode = void 0;
24179
24169
  return node;
24180
24170
  }
@@ -24187,7 +24177,6 @@ function createNodeFactory(flags, baseFactory2) {
24187
24177
  node.caseBlock = caseBlock;
24188
24178
  node.transformFlags |= propagateChildFlags(node.expression) | propagateChildFlags(node.caseBlock);
24189
24179
  node.jsDoc = void 0;
24190
- node.jsDocCache = void 0;
24191
24180
  node.flowNode = void 0;
24192
24181
  node.possiblyExhaustive = false;
24193
24182
  return node;
@@ -24201,7 +24190,6 @@ function createNodeFactory(flags, baseFactory2) {
24201
24190
  node.statement = asEmbeddedStatement(statement);
24202
24191
  node.transformFlags |= propagateChildFlags(node.label) | propagateChildFlags(node.statement);
24203
24192
  node.jsDoc = void 0;
24204
- node.jsDocCache = void 0;
24205
24193
  node.flowNode = void 0;
24206
24194
  return node;
24207
24195
  }
@@ -24213,7 +24201,6 @@ function createNodeFactory(flags, baseFactory2) {
24213
24201
  node.expression = expression;
24214
24202
  node.transformFlags |= propagateChildFlags(node.expression);
24215
24203
  node.jsDoc = void 0;
24216
- node.jsDocCache = void 0;
24217
24204
  node.flowNode = void 0;
24218
24205
  return node;
24219
24206
  }
@@ -24227,7 +24214,6 @@ function createNodeFactory(flags, baseFactory2) {
24227
24214
  node.finallyBlock = finallyBlock;
24228
24215
  node.transformFlags |= propagateChildFlags(node.tryBlock) | propagateChildFlags(node.catchClause) | propagateChildFlags(node.finallyBlock);
24229
24216
  node.jsDoc = void 0;
24230
- node.jsDocCache = void 0;
24231
24217
  node.flowNode = void 0;
24232
24218
  return node;
24233
24219
  }
@@ -24237,7 +24223,6 @@ function createNodeFactory(flags, baseFactory2) {
24237
24223
  function createDebuggerStatement2() {
24238
24224
  const node = createBaseNode(256 /* DebuggerStatement */);
24239
24225
  node.jsDoc = void 0;
24240
- node.jsDocCache = void 0;
24241
24226
  node.flowNode = void 0;
24242
24227
  return node;
24243
24228
  }
@@ -24250,7 +24235,6 @@ function createNodeFactory(flags, baseFactory2) {
24250
24235
  node.initializer = asInitializer(initializer);
24251
24236
  node.transformFlags |= propagateNameFlags(node.name) | propagateChildFlags(node.initializer) | (((_a2 = node.exclamationToken) != null ? _a2 : node.type) ? 1 /* ContainsTypeScript */ : 0 /* None */);
24252
24237
  node.jsDoc = void 0;
24253
- node.jsDocCache = void 0;
24254
24238
  return node;
24255
24239
  }
24256
24240
  function updateVariableDeclaration3(node, name, exclamationToken, type, initializer) {
@@ -24289,7 +24273,6 @@ function createNodeFactory(flags, baseFactory2) {
24289
24273
  node.illegalDecorators = void 0;
24290
24274
  node.typeArguments = void 0;
24291
24275
  node.jsDoc = void 0;
24292
- node.jsDocCache = void 0;
24293
24276
  node.locals = void 0;
24294
24277
  node.nextContainer = void 0;
24295
24278
  node.endFlowNode = void 0;
@@ -24321,7 +24304,6 @@ function createNodeFactory(flags, baseFactory2) {
24321
24304
  }
24322
24305
  }
24323
24306
  node.jsDoc = void 0;
24324
- node.jsDocCache = void 0;
24325
24307
  return node;
24326
24308
  }
24327
24309
  function updateClassDeclaration2(node, modifiers, name, typeParameters, heritageClauses, members) {
@@ -24337,7 +24319,6 @@ function createNodeFactory(flags, baseFactory2) {
24337
24319
  node.transformFlags = 1 /* ContainsTypeScript */;
24338
24320
  node.illegalDecorators = void 0;
24339
24321
  node.jsDoc = void 0;
24340
- node.jsDocCache = void 0;
24341
24322
  return node;
24342
24323
  }
24343
24324
  function updateInterfaceDeclaration2(node, modifiers, name, typeParameters, heritageClauses, members) {
@@ -24358,7 +24339,6 @@ function createNodeFactory(flags, baseFactory2) {
24358
24339
  node.transformFlags = 1 /* ContainsTypeScript */;
24359
24340
  node.illegalDecorators = void 0;
24360
24341
  node.jsDoc = void 0;
24361
- node.jsDocCache = void 0;
24362
24342
  node.locals = void 0;
24363
24343
  node.nextContainer = void 0;
24364
24344
  return node;
@@ -24381,7 +24361,6 @@ function createNodeFactory(flags, baseFactory2) {
24381
24361
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */;
24382
24362
  node.illegalDecorators = void 0;
24383
24363
  node.jsDoc = void 0;
24384
- node.jsDocCache = void 0;
24385
24364
  return node;
24386
24365
  }
24387
24366
  function updateEnumDeclaration2(node, modifiers, name, members) {
@@ -24407,7 +24386,6 @@ function createNodeFactory(flags, baseFactory2) {
24407
24386
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */;
24408
24387
  node.illegalDecorators = void 0;
24409
24388
  node.jsDoc = void 0;
24410
- node.jsDocCache = void 0;
24411
24389
  node.locals = void 0;
24412
24390
  node.nextContainer = void 0;
24413
24391
  return node;
@@ -24426,7 +24404,6 @@ function createNodeFactory(flags, baseFactory2) {
24426
24404
  node.statements = createNodeArray2(statements);
24427
24405
  node.transformFlags |= propagateChildrenFlags(node.statements);
24428
24406
  node.jsDoc = void 0;
24429
- node.jsDocCache = void 0;
24430
24407
  return node;
24431
24408
  }
24432
24409
  function updateModuleBlock2(node, statements) {
@@ -24450,7 +24427,6 @@ function createNodeFactory(flags, baseFactory2) {
24450
24427
  node.illegalDecorators = void 0;
24451
24428
  node.modifiers = void 0;
24452
24429
  node.jsDoc = void 0;
24453
- node.jsDocCache = void 0;
24454
24430
  return node;
24455
24431
  }
24456
24432
  function updateNamespaceExportDeclaration2(node, name) {
@@ -24476,7 +24452,6 @@ function createNodeFactory(flags, baseFactory2) {
24476
24452
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */;
24477
24453
  node.illegalDecorators = void 0;
24478
24454
  node.jsDoc = void 0;
24479
- node.jsDocCache = void 0;
24480
24455
  return node;
24481
24456
  }
24482
24457
  function updateImportEqualsDeclaration2(node, modifiers, isTypeOnly, name, moduleReference) {
@@ -24498,7 +24473,6 @@ function createNodeFactory(flags, baseFactory2) {
24498
24473
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */;
24499
24474
  node.illegalDecorators = void 0;
24500
24475
  node.jsDoc = void 0;
24501
- node.jsDocCache = void 0;
24502
24476
  return node;
24503
24477
  }
24504
24478
  function updateImportDeclaration2(node, modifiers, importClause, moduleSpecifier, assertClause) {
@@ -24610,7 +24584,6 @@ function createNodeFactory(flags, baseFactory2) {
24610
24584
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */;
24611
24585
  node.illegalDecorators = void 0;
24612
24586
  node.jsDoc = void 0;
24613
- node.jsDocCache = void 0;
24614
24587
  return node;
24615
24588
  }
24616
24589
  function updateExportAssignment2(node, modifiers, expression) {
@@ -24633,7 +24606,6 @@ function createNodeFactory(flags, baseFactory2) {
24633
24606
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */;
24634
24607
  node.illegalDecorators = void 0;
24635
24608
  node.jsDoc = void 0;
24636
- node.jsDocCache = void 0;
24637
24609
  return node;
24638
24610
  }
24639
24611
  function updateExportDeclaration3(node, modifiers, isTypeOnly, exportClause, moduleSpecifier, assertClause) {
@@ -24663,7 +24635,6 @@ function createNodeFactory(flags, baseFactory2) {
24663
24635
  node.transformFlags |= propagateChildFlags(node.propertyName) | propagateChildFlags(node.name);
24664
24636
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */;
24665
24637
  node.jsDoc = void 0;
24666
- node.jsDocCache = void 0;
24667
24638
  return node;
24668
24639
  }
24669
24640
  function updateExportSpecifier2(node, isTypeOnly, propertyName, name) {
@@ -24672,7 +24643,6 @@ function createNodeFactory(flags, baseFactory2) {
24672
24643
  function createMissingDeclaration() {
24673
24644
  const node = createBaseDeclaration(279 /* MissingDeclaration */);
24674
24645
  node.jsDoc = void 0;
24675
- node.jsDocCache = void 0;
24676
24646
  return node;
24677
24647
  }
24678
24648
  function createExternalModuleReference2(expression) {
@@ -24713,7 +24683,6 @@ function createNodeFactory(flags, baseFactory2) {
24713
24683
  node.type = type;
24714
24684
  node.transformFlags = propagateChildrenFlags(node.parameters) | (node.type ? 1 /* ContainsTypeScript */ : 0 /* None */);
24715
24685
  node.jsDoc = void 0;
24716
- node.jsDocCache = void 0;
24717
24686
  node.locals = void 0;
24718
24687
  node.nextContainer = void 0;
24719
24688
  node.typeArguments = void 0;
@@ -24745,7 +24714,6 @@ function createNodeFactory(flags, baseFactory2) {
24745
24714
  node.parameters = createNodeArray2(parameters);
24746
24715
  node.type = type;
24747
24716
  node.jsDoc = void 0;
24748
- node.jsDocCache = void 0;
24749
24717
  node.locals = void 0;
24750
24718
  node.nextContainer = void 0;
24751
24719
  return node;
@@ -25073,7 +25041,6 @@ function createNodeFactory(flags, baseFactory2) {
25073
25041
  node.statements = createNodeArray2(statements);
25074
25042
  node.transformFlags |= propagateChildFlags(node.expression) | propagateChildrenFlags(node.statements);
25075
25043
  node.jsDoc = void 0;
25076
- node.jsDocCache = void 0;
25077
25044
  return node;
25078
25045
  }
25079
25046
  function updateCaseClause2(node, expression, statements) {
@@ -25130,7 +25097,6 @@ function createNodeFactory(flags, baseFactory2) {
25130
25097
  node.questionToken = void 0;
25131
25098
  node.exclamationToken = void 0;
25132
25099
  node.jsDoc = void 0;
25133
- node.jsDocCache = void 0;
25134
25100
  return node;
25135
25101
  }
25136
25102
  function updatePropertyAssignment2(node, name, initializer) {
@@ -25156,7 +25122,6 @@ function createNodeFactory(flags, baseFactory2) {
25156
25122
  node.questionToken = void 0;
25157
25123
  node.exclamationToken = void 0;
25158
25124
  node.jsDoc = void 0;
25159
- node.jsDocCache = void 0;
25160
25125
  return node;
25161
25126
  }
25162
25127
  function updateShorthandPropertyAssignment2(node, name, objectAssignmentInitializer) {
@@ -25177,7 +25142,6 @@ function createNodeFactory(flags, baseFactory2) {
25177
25142
  node.expression = parenthesizerRules().parenthesizeExpressionForDisallowedComma(expression);
25178
25143
  node.transformFlags |= propagateChildFlags(node.expression) | 128 /* ContainsES2018 */ | 65536 /* ContainsObjectRestOrSpread */;
25179
25144
  node.jsDoc = void 0;
25180
- node.jsDocCache = void 0;
25181
25145
  return node;
25182
25146
  }
25183
25147
  function updateSpreadAssignment2(node, expression) {
@@ -25189,7 +25153,6 @@ function createNodeFactory(flags, baseFactory2) {
25189
25153
  node.initializer = initializer && parenthesizerRules().parenthesizeExpressionForDisallowedComma(initializer);
25190
25154
  node.transformFlags |= propagateChildFlags(node.name) | propagateChildFlags(node.initializer) | 1 /* ContainsTypeScript */;
25191
25155
  node.jsDoc = void 0;
25192
- node.jsDocCache = void 0;
25193
25156
  return node;
25194
25157
  }
25195
25158
  function updateEnumMember2(node, name, initializer) {
@@ -25435,36 +25398,32 @@ function createNodeFactory(flags, baseFactory2) {
25435
25398
  return node.expression !== expression || node.thisArg !== thisArg ? update(createSyntheticReferenceExpression(expression, thisArg), node) : node;
25436
25399
  }
25437
25400
  function cloneGeneratedIdentifier(node) {
25438
- const clone2 = createBaseIdentifier(
25439
- node.escapedText,
25440
- /*originalKeywordKind*/
25441
- void 0
25442
- );
25401
+ const clone2 = createBaseIdentifier(node.escapedText);
25443
25402
  clone2.flags |= node.flags & ~8 /* Synthesized */;
25444
- clone2.autoGenerate = { ...node.autoGenerate };
25445
25403
  clone2.transformFlags = node.transformFlags;
25446
25404
  setOriginalNode(clone2, node);
25405
+ setIdentifierAutoGenerate(clone2, { ...node.emitNode.autoGenerate });
25447
25406
  return clone2;
25448
25407
  }
25449
25408
  function cloneIdentifier(node) {
25450
- const clone2 = createBaseIdentifier(node.escapedText, node.originalKeywordKind);
25409
+ const clone2 = createBaseIdentifier(node.escapedText);
25451
25410
  clone2.flags |= node.flags & ~8 /* Synthesized */;
25452
- clone2.typeArguments = node.typeArguments;
25453
- clone2.hasExtendedUnicodeEscape = node.hasExtendedUnicodeEscape;
25454
25411
  clone2.jsDoc = node.jsDoc;
25455
- clone2.jsDocCache = node.jsDocCache;
25456
25412
  clone2.flowNode = node.flowNode;
25457
25413
  clone2.symbol = node.symbol;
25458
25414
  clone2.transformFlags = node.transformFlags;
25459
25415
  setOriginalNode(clone2, node);
25416
+ const typeArguments = getIdentifierTypeArguments(node);
25417
+ if (typeArguments)
25418
+ setIdentifierTypeArguments(clone2, typeArguments);
25460
25419
  return clone2;
25461
25420
  }
25462
25421
  function cloneGeneratedPrivateIdentifier(node) {
25463
25422
  const clone2 = createBasePrivateIdentifier(node.escapedText);
25464
25423
  clone2.flags |= node.flags & ~8 /* Synthesized */;
25465
- clone2.autoGenerate = { ...node.autoGenerate };
25466
25424
  clone2.transformFlags = node.transformFlags;
25467
25425
  setOriginalNode(clone2, node);
25426
+ setIdentifierAutoGenerate(clone2, { ...node.emitNode.autoGenerate });
25468
25427
  return clone2;
25469
25428
  }
25470
25429
  function clonePrivateIdentifier(node) {
@@ -26718,6 +26677,30 @@ function getTypeNode(node) {
26718
26677
  var _a2;
26719
26678
  return (_a2 = node.emitNode) == null ? void 0 : _a2.typeNode;
26720
26679
  }
26680
+ function setIdentifierTypeArguments(node, typeArguments) {
26681
+ getOrCreateEmitNode(node).identifierTypeArguments = typeArguments;
26682
+ return node;
26683
+ }
26684
+ function getIdentifierTypeArguments(node) {
26685
+ var _a2;
26686
+ return (_a2 = node.emitNode) == null ? void 0 : _a2.identifierTypeArguments;
26687
+ }
26688
+ function setIdentifierAutoGenerate(node, autoGenerate) {
26689
+ getOrCreateEmitNode(node).autoGenerate = autoGenerate;
26690
+ return node;
26691
+ }
26692
+ function getIdentifierAutoGenerate(node) {
26693
+ var _a2;
26694
+ return (_a2 = node.emitNode) == null ? void 0 : _a2.autoGenerate;
26695
+ }
26696
+ function setIdentifierGeneratedImportReference(node, value) {
26697
+ getOrCreateEmitNode(node).generatedImportReference = value;
26698
+ return node;
26699
+ }
26700
+ function getIdentifierGeneratedImportReference(node) {
26701
+ var _a2;
26702
+ return (_a2 = node.emitNode) == null ? void 0 : _a2.generatedImportReference;
26703
+ }
26721
26704
 
26722
26705
  // src/compiler/factory/emitHelpers.ts
26723
26706
  function createEmitHelperFactory(context) {
@@ -29065,13 +29048,16 @@ function elideNodes(factory2, nodes) {
29065
29048
  return setTextRange(factory2.createNodeArray([], nodes.hasTrailingComma), nodes);
29066
29049
  }
29067
29050
  function getNodeForGeneratedName(name) {
29068
- if (name.autoGenerate.flags & 4 /* Node */) {
29069
- const autoGenerateId = name.autoGenerate.id;
29051
+ var _a2;
29052
+ const autoGenerate = name.emitNode.autoGenerate;
29053
+ if (autoGenerate.flags & 4 /* Node */) {
29054
+ const autoGenerateId = autoGenerate.id;
29070
29055
  let node = name;
29071
29056
  let original = node.original;
29072
29057
  while (original) {
29073
29058
  node = original;
29074
- if (isMemberName(node) && (node.autoGenerate === void 0 || !!(node.autoGenerate.flags & 4 /* Node */) && node.autoGenerate.id !== autoGenerateId)) {
29059
+ const autoGenerate2 = (_a2 = node.emitNode) == null ? void 0 : _a2.autoGenerate;
29060
+ if (isMemberName(node) && (autoGenerate2 === void 0 || !!(autoGenerate2.flags & 4 /* Node */) && autoGenerate2.id !== autoGenerateId)) {
29075
29061
  break;
29076
29062
  }
29077
29063
  original = node.original;
@@ -30685,8 +30671,6 @@ var Parser;
30685
30671
  const pos = getNodePos();
30686
30672
  const result = kind === 79 /* Identifier */ ? factory2.createIdentifier(
30687
30673
  "",
30688
- /*typeArguments*/
30689
- void 0,
30690
30674
  /*originalKeywordKind*/
30691
30675
  void 0
30692
30676
  ) : isTemplateLiteralKind(kind) ? factory2.createTemplateLiteralLikeNode(
@@ -30721,13 +30705,7 @@ var Parser;
30721
30705
  const text = internIdentifier(scanner2.getTokenValue());
30722
30706
  const hasExtendedUnicodeEscape = scanner2.hasExtendedUnicodeEscape();
30723
30707
  nextTokenWithoutCheck();
30724
- return finishNode(factory2.createIdentifier(
30725
- text,
30726
- /*typeArguments*/
30727
- void 0,
30728
- originalKeywordKind,
30729
- hasExtendedUnicodeEscape
30730
- ), pos);
30708
+ return finishNode(factory2.createIdentifier(text, originalKeywordKind, hasExtendedUnicodeEscape), pos);
30731
30709
  }
30732
30710
  if (token() === 80 /* PrivateIdentifier */) {
30733
30711
  parseErrorAtCurrentToken(privateIdentifierDiagnosticMessage || Diagnostics.Private_identifiers_are_not_allowed_outside_class_bodies);
@@ -31069,6 +31047,7 @@ var Parser;
31069
31047
  return parseElement();
31070
31048
  }
31071
31049
  function currentNode(parsingContext2, pos) {
31050
+ var _a2;
31072
31051
  if (!syntaxCursor || !isReusableParsingContext(parsingContext2) || parseErrorBeforeNextFinishedNode) {
31073
31052
  return void 0;
31074
31053
  }
@@ -31083,8 +31062,8 @@ var Parser;
31083
31062
  if (!canReuseNode(node, parsingContext2)) {
31084
31063
  return void 0;
31085
31064
  }
31086
- if (canHaveJSDoc(node) && node.jsDocCache) {
31087
- node.jsDocCache = void 0;
31065
+ if (canHaveJSDoc(node) && ((_a2 = node.jsDoc) == null ? void 0 : _a2.jsDocCache)) {
31066
+ node.jsDoc.jsDocCache = void 0;
31088
31067
  }
31089
31068
  return node;
31090
31069
  }
@@ -31143,7 +31122,7 @@ var Parser;
31143
31122
  return true;
31144
31123
  case 171 /* MethodDeclaration */:
31145
31124
  const methodDeclaration = node;
31146
- const nameIsConstructor = methodDeclaration.name.kind === 79 /* Identifier */ && methodDeclaration.name.originalKeywordKind === 135 /* ConstructorKeyword */;
31125
+ const nameIsConstructor = methodDeclaration.name.kind === 79 /* Identifier */ && methodDeclaration.name.escapedText === "constructor";
31147
31126
  return !nameIsConstructor;
31148
31127
  }
31149
31128
  }
@@ -31365,13 +31344,10 @@ var Parser;
31365
31344
  function parseEntityName(allowReservedWords, diagnosticMessage) {
31366
31345
  const pos = getNodePos();
31367
31346
  let entity = allowReservedWords ? parseIdentifierName(diagnosticMessage) : parseIdentifier(diagnosticMessage);
31368
- let dotPos = getNodePos();
31369
31347
  while (parseOptional(24 /* DotToken */)) {
31370
31348
  if (token() === 29 /* LessThanToken */) {
31371
- entity.jsdocDotPos = dotPos;
31372
31349
  break;
31373
31350
  }
31374
- dotPos = getNodePos();
31375
31351
  entity = finishNode(
31376
31352
  factory2.createQualifiedName(
31377
31353
  entity,
@@ -36151,7 +36127,7 @@ var Parser;
36151
36127
  return finishNode(jsDocNamespaceNode, pos);
36152
36128
  }
36153
36129
  if (nested) {
36154
- typeNameOrNamespaceName.isInJSDocNamespace = true;
36130
+ typeNameOrNamespaceName.flags |= 2048 /* IdentifierIsInJSDocNamespace */;
36155
36131
  }
36156
36132
  return typeNameOrNamespaceName;
36157
36133
  }
@@ -36355,12 +36331,7 @@ var Parser;
36355
36331
  const end2 = scanner2.getTextPos();
36356
36332
  const originalKeywordKind = token();
36357
36333
  const text = internIdentifier(scanner2.getTokenValue());
36358
- const result = finishNode(factory2.createIdentifier(
36359
- text,
36360
- /*typeArguments*/
36361
- void 0,
36362
- originalKeywordKind
36363
- ), pos, end2);
36334
+ const result = finishNode(factory2.createIdentifier(text, originalKeywordKind), pos, end2);
36364
36335
  nextTokenJSDoc();
36365
36336
  return result;
36366
36337
  }
@@ -36982,6 +36953,7 @@ var libEntries = [
36982
36953
  ["es2020", "lib.es2020.d.ts"],
36983
36954
  ["es2021", "lib.es2021.d.ts"],
36984
36955
  ["es2022", "lib.es2022.d.ts"],
36956
+ ["es2023", "lib.es2023.d.ts"],
36985
36957
  ["esnext", "lib.esnext.d.ts"],
36986
36958
  // Host only
36987
36959
  ["dom", "lib.dom.d.ts"],
@@ -37035,7 +37007,8 @@ var libEntries = [
37035
37007
  ["es2022.sharedmemory", "lib.es2022.sharedmemory.d.ts"],
37036
37008
  ["es2022.string", "lib.es2022.string.d.ts"],
37037
37009
  ["es2022.regexp", "lib.es2022.regexp.d.ts"],
37038
- ["esnext.array", "lib.es2022.array.d.ts"],
37010
+ ["es2023.array", "lib.es2023.array.d.ts"],
37011
+ ["esnext.array", "lib.es2023.array.d.ts"],
37039
37012
  ["esnext.symbol", "lib.es2019.symbol.d.ts"],
37040
37013
  ["esnext.asynciterable", "lib.es2018.asynciterable.d.ts"],
37041
37014
  ["esnext.intl", "lib.esnext.intl.d.ts"],
@@ -40288,7 +40261,7 @@ function resolvedTypeScriptOnly(resolved) {
40288
40261
  Debug.assert(extensionIsTS(resolved.extension));
40289
40262
  return { fileName: resolved.path, packageId: resolved.packageId };
40290
40263
  }
40291
- function createResolvedModuleWithFailedLookupLocations(resolved, isExternalLibraryImport, failedLookupLocations, affectingLocations, diagnostics, resultFromCache) {
40264
+ function createResolvedModuleWithFailedLookupLocations(resolved, isExternalLibraryImport, failedLookupLocations, affectingLocations, diagnostics, resultFromCache, legacyResult) {
40292
40265
  if (resultFromCache) {
40293
40266
  resultFromCache.failedLookupLocations = updateResolutionField(resultFromCache.failedLookupLocations, failedLookupLocations);
40294
40267
  resultFromCache.affectingLocations = updateResolutionField(resultFromCache.affectingLocations, affectingLocations);
@@ -40306,7 +40279,8 @@ function createResolvedModuleWithFailedLookupLocations(resolved, isExternalLibra
40306
40279
  },
40307
40280
  failedLookupLocations: initializeResolutionField(failedLookupLocations),
40308
40281
  affectingLocations: initializeResolutionField(affectingLocations),
40309
- resolutionDiagnostics: initializeResolutionField(diagnostics)
40282
+ resolutionDiagnostics: initializeResolutionField(diagnostics),
40283
+ node10Result: legacyResult
40310
40284
  };
40311
40285
  }
40312
40286
  function initializeResolutionField(value) {
@@ -41361,7 +41335,7 @@ function nodeNextJsonConfigResolver(moduleName, containingFile, host) {
41361
41335
  );
41362
41336
  }
41363
41337
  function nodeModuleNameResolverWorker(features, moduleName, containingDirectory, compilerOptions, host, cache, extensions, isConfigLookup, redirectedReference) {
41364
- var _a2, _b;
41338
+ var _a2, _b, _c, _d;
41365
41339
  const traceEnabled = isTraceEnabled(compilerOptions, host);
41366
41340
  const failedLookupLocations = [];
41367
41341
  const affectingLocations = [];
@@ -41388,44 +41362,60 @@ function nodeModuleNameResolverWorker(features, moduleName, containingDirectory,
41388
41362
  if (getEmitModuleResolutionKind(compilerOptions) === 2 /* Node10 */) {
41389
41363
  const priorityExtensions = extensions & (1 /* TypeScript */ | 4 /* Declaration */);
41390
41364
  const secondaryExtensions = extensions & ~(1 /* TypeScript */ | 4 /* Declaration */);
41391
- result = priorityExtensions && tryResolve(priorityExtensions) || secondaryExtensions && tryResolve(secondaryExtensions) || void 0;
41365
+ result = priorityExtensions && tryResolve(priorityExtensions, state) || secondaryExtensions && tryResolve(secondaryExtensions, state) || void 0;
41392
41366
  } else {
41393
- result = tryResolve(extensions);
41367
+ result = tryResolve(extensions, state);
41368
+ }
41369
+ let legacyResult;
41370
+ if (((_a2 = result == null ? void 0 : result.value) == null ? void 0 : _a2.isExternalLibraryImport) && !isConfigLookup && extensions & (1 /* TypeScript */ | 4 /* Declaration */) && features & 8 /* Exports */ && !isExternalModuleNameRelative(moduleName) && !extensionIsOk(1 /* TypeScript */ | 4 /* Declaration */, result.value.resolved.extension) && conditions.indexOf("import") > -1) {
41371
+ traceIfEnabled(state, Diagnostics.Resolution_of_non_relative_name_failed_trying_with_modern_Node_resolution_features_disabled_to_see_if_npm_library_needs_configuration_update);
41372
+ const diagnosticState = {
41373
+ ...state,
41374
+ features: state.features & ~8 /* Exports */,
41375
+ failedLookupLocations: [],
41376
+ affectingLocations: [],
41377
+ reportDiagnostic: noop
41378
+ };
41379
+ const diagnosticResult = tryResolve(extensions & (1 /* TypeScript */ | 4 /* Declaration */), diagnosticState);
41380
+ if ((_b = diagnosticResult == null ? void 0 : diagnosticResult.value) == null ? void 0 : _b.isExternalLibraryImport) {
41381
+ legacyResult = diagnosticResult.value.resolved.path;
41382
+ }
41394
41383
  }
41395
41384
  return createResolvedModuleWithFailedLookupLocations(
41396
- (_a2 = result == null ? void 0 : result.value) == null ? void 0 : _a2.resolved,
41397
- (_b = result == null ? void 0 : result.value) == null ? void 0 : _b.isExternalLibraryImport,
41385
+ (_c = result == null ? void 0 : result.value) == null ? void 0 : _c.resolved,
41386
+ (_d = result == null ? void 0 : result.value) == null ? void 0 : _d.isExternalLibraryImport,
41398
41387
  failedLookupLocations,
41399
41388
  affectingLocations,
41400
41389
  diagnostics,
41401
- state.resultFromCache
41390
+ state.resultFromCache,
41391
+ legacyResult
41402
41392
  );
41403
- function tryResolve(extensions2) {
41404
- const loader = (extensions3, candidate, onlyRecordFailures, state2) => nodeLoadModuleByRelativeName(
41393
+ function tryResolve(extensions2, state2) {
41394
+ const loader = (extensions3, candidate, onlyRecordFailures, state3) => nodeLoadModuleByRelativeName(
41405
41395
  extensions3,
41406
41396
  candidate,
41407
41397
  onlyRecordFailures,
41408
- state2,
41398
+ state3,
41409
41399
  /*considerPackageJson*/
41410
41400
  true
41411
41401
  );
41412
- const resolved = tryLoadModuleUsingOptionalResolutionSettings(extensions2, moduleName, containingDirectory, loader, state);
41402
+ const resolved = tryLoadModuleUsingOptionalResolutionSettings(extensions2, moduleName, containingDirectory, loader, state2);
41413
41403
  if (resolved) {
41414
41404
  return toSearchResult({ resolved, isExternalLibraryImport: pathContainsNodeModules(resolved.path) });
41415
41405
  }
41416
41406
  if (!isExternalModuleNameRelative(moduleName)) {
41417
41407
  let resolved2;
41418
41408
  if (features & 2 /* Imports */ && startsWith(moduleName, "#")) {
41419
- resolved2 = loadModuleFromImports(extensions2, moduleName, containingDirectory, state, cache, redirectedReference);
41409
+ resolved2 = loadModuleFromImports(extensions2, moduleName, containingDirectory, state2, cache, redirectedReference);
41420
41410
  }
41421
41411
  if (!resolved2 && features & 4 /* SelfName */) {
41422
- resolved2 = loadModuleFromSelfNameReference(extensions2, moduleName, containingDirectory, state, cache, redirectedReference);
41412
+ resolved2 = loadModuleFromSelfNameReference(extensions2, moduleName, containingDirectory, state2, cache, redirectedReference);
41423
41413
  }
41424
41414
  if (!resolved2) {
41425
41415
  if (traceEnabled) {
41426
41416
  trace(host, Diagnostics.Loading_module_0_from_node_modules_folder_target_file_types_Colon_1, moduleName, formatExtensions(extensions2));
41427
41417
  }
41428
- resolved2 = loadModuleFromNearestNodeModulesDirectory(extensions2, moduleName, containingDirectory, state, cache, redirectedReference);
41418
+ resolved2 = loadModuleFromNearestNodeModulesDirectory(extensions2, moduleName, containingDirectory, state2, cache, redirectedReference);
41429
41419
  }
41430
41420
  if (!resolved2)
41431
41421
  return void 0;
@@ -41444,7 +41434,7 @@ function nodeModuleNameResolverWorker(features, moduleName, containingDirectory,
41444
41434
  candidate,
41445
41435
  /*onlyRecordFailures*/
41446
41436
  false,
41447
- state,
41437
+ state2,
41448
41438
  /*considerPackageJson*/
41449
41439
  true
41450
41440
  );
@@ -42784,7 +42774,7 @@ function getModuleInstanceStateWorker(node, visited) {
42784
42774
  case 264 /* ModuleDeclaration */:
42785
42775
  return getModuleInstanceState(node, visited);
42786
42776
  case 79 /* Identifier */:
42787
- if (node.isInJSDocNamespace) {
42777
+ if (node.flags & 2048 /* IdentifierIsInJSDocNamespace */) {
42788
42778
  return 0 /* NonInstantiated */;
42789
42779
  }
42790
42780
  }
@@ -43221,6 +43211,7 @@ function createBinder() {
43221
43211
  } else if (containerFlags & 64 /* IsInterface */) {
43222
43212
  seenThisKeyword = false;
43223
43213
  bindChildren(node);
43214
+ Debug.assertNotNode(node, isIdentifier);
43224
43215
  node.flags = seenThisKeyword ? node.flags | 128 /* ContainsThis */ : node.flags & ~128 /* ContainsThis */;
43225
43216
  } else {
43226
43217
  bindChildren(node);
@@ -44380,13 +44371,14 @@ function createBinder() {
44380
44371
  }
44381
44372
  function checkContextualIdentifier(node) {
44382
44373
  if (!file.parseDiagnostics.length && !(node.flags & 16777216 /* Ambient */) && !(node.flags & 8388608 /* JSDoc */) && !isIdentifierName(node)) {
44383
- if (inStrictMode && node.originalKeywordKind >= 117 /* FirstFutureReservedWord */ && node.originalKeywordKind <= 125 /* LastFutureReservedWord */) {
44374
+ const originalKeywordKind = identifierToKeywordKind(node);
44375
+ if (inStrictMode && originalKeywordKind >= 117 /* FirstFutureReservedWord */ && originalKeywordKind <= 125 /* LastFutureReservedWord */) {
44384
44376
  file.bindDiagnostics.push(createDiagnosticForNode2(
44385
44377
  node,
44386
44378
  getStrictModeIdentifierMessage(node),
44387
44379
  declarationNameToString(node)
44388
44380
  ));
44389
- } else if (node.originalKeywordKind === 133 /* AwaitKeyword */) {
44381
+ } else if (originalKeywordKind === 133 /* AwaitKeyword */) {
44390
44382
  if (isExternalModule(file) && isInTopLevelContext(node)) {
44391
44383
  file.bindDiagnostics.push(createDiagnosticForNode2(
44392
44384
  node,
@@ -44400,7 +44392,7 @@ function createBinder() {
44400
44392
  declarationNameToString(node)
44401
44393
  ));
44402
44394
  }
44403
- } else if (node.originalKeywordKind === 125 /* YieldKeyword */ && node.flags & 8192 /* YieldContext */) {
44395
+ } else if (originalKeywordKind === 125 /* YieldKeyword */ && node.flags & 8192 /* YieldContext */) {
44404
44396
  file.bindDiagnostics.push(createDiagnosticForNode2(
44405
44397
  node,
44406
44398
  Diagnostics.Identifier_expected_0_is_a_reserved_word_that_cannot_be_used_here,
@@ -44612,7 +44604,7 @@ function createBinder() {
44612
44604
  function bindWorker(node) {
44613
44605
  switch (node.kind) {
44614
44606
  case 79 /* Identifier */:
44615
- if (node.isInJSDocNamespace) {
44607
+ if (node.flags & 2048 /* IdentifierIsInJSDocNamespace */) {
44616
44608
  let parentNode = node.parent;
44617
44609
  while (parentNode && !isJSDocTypeAlias(parentNode)) {
44618
44610
  parentNode = parentNode.parent;
@@ -49674,6 +49666,8 @@ function createTypeChecker(host) {
49674
49666
  /*isError*/
49675
49667
  false,
49676
49668
  errorNode,
49669
+ currentSourceFile,
49670
+ mode,
49677
49671
  resolvedModule,
49678
49672
  moduleReference
49679
49673
  );
@@ -49759,6 +49753,8 @@ function createTypeChecker(host) {
49759
49753
  /*isError*/
49760
49754
  noImplicitAny && !!moduleNotFoundError,
49761
49755
  errorNode,
49756
+ currentSourceFile,
49757
+ mode,
49762
49758
  resolvedModule,
49763
49759
  moduleReference
49764
49760
  );
@@ -49813,26 +49809,37 @@ function createTypeChecker(host) {
49813
49809
  return importSourceWithoutExtension;
49814
49810
  }
49815
49811
  }
49816
- function errorOnImplicitAnyModule(isError, errorNode, { packageId, resolvedFileName }, moduleReference) {
49817
- const errorInfo = !isExternalModuleNameRelative(moduleReference) && packageId ? typesPackageExists(packageId.name) ? chainDiagnosticMessages(
49818
- /*details*/
49819
- void 0,
49820
- Diagnostics.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,
49821
- packageId.name,
49822
- mangleScopedPackageName(packageId.name)
49823
- ) : packageBundlesTypes(packageId.name) ? chainDiagnosticMessages(
49824
- /*details*/
49825
- void 0,
49826
- Diagnostics.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,
49827
- packageId.name,
49828
- moduleReference
49829
- ) : chainDiagnosticMessages(
49830
- /*details*/
49831
- void 0,
49832
- Diagnostics.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,
49833
- moduleReference,
49834
- mangleScopedPackageName(packageId.name)
49835
- ) : void 0;
49812
+ function errorOnImplicitAnyModule(isError, errorNode, sourceFile, mode, { packageId, resolvedFileName }, moduleReference) {
49813
+ var _a2, _b;
49814
+ let errorInfo;
49815
+ if (!isExternalModuleNameRelative(moduleReference) && packageId) {
49816
+ const node10Result = (_b = (_a2 = sourceFile.resolvedModules) == null ? void 0 : _a2.get(moduleReference, mode)) == null ? void 0 : _b.node10Result;
49817
+ errorInfo = node10Result ? chainDiagnosticMessages(
49818
+ /*details*/
49819
+ void 0,
49820
+ Diagnostics.There_are_types_at_0_but_this_result_could_not_be_resolved_when_respecting_package_json_exports_The_1_library_may_need_to_update_its_package_json_or_typings,
49821
+ node10Result,
49822
+ node10Result.indexOf(nodeModulesPathPart + "@types/") > -1 ? `@types/${mangleScopedPackageName(packageId.name)}` : packageId.name
49823
+ ) : typesPackageExists(packageId.name) ? chainDiagnosticMessages(
49824
+ /*details*/
49825
+ void 0,
49826
+ Diagnostics.If_the_0_package_actually_exposes_this_module_consider_sending_a_pull_request_to_amend_https_Colon_Slash_Slashgithub_com_SlashDefinitelyTyped_SlashDefinitelyTyped_Slashtree_Slashmaster_Slashtypes_Slash_1,
49827
+ packageId.name,
49828
+ mangleScopedPackageName(packageId.name)
49829
+ ) : packageBundlesTypes(packageId.name) ? chainDiagnosticMessages(
49830
+ /*details*/
49831
+ void 0,
49832
+ Diagnostics.If_the_0_package_actually_exposes_this_module_try_adding_a_new_declaration_d_ts_file_containing_declare_module_1,
49833
+ packageId.name,
49834
+ moduleReference
49835
+ ) : chainDiagnosticMessages(
49836
+ /*details*/
49837
+ void 0,
49838
+ Diagnostics.Try_npm_i_save_dev_types_Slash_1_if_it_exists_or_add_a_new_declaration_d_ts_file_containing_declare_module_0,
49839
+ moduleReference,
49840
+ mangleScopedPackageName(packageId.name)
49841
+ );
49842
+ }
49836
49843
  errorOrSuggestion(isError, errorNode, chainDiagnosticMessages(
49837
49844
  errorInfo,
49838
49845
  Diagnostics.Could_not_find_a_declaration_file_for_module_0_1_implicitly_has_an_any_type,
@@ -51489,13 +51496,17 @@ function createTypeChecker(host) {
51489
51496
  let qualifier = root.qualifier;
51490
51497
  if (qualifier) {
51491
51498
  if (isIdentifier(qualifier)) {
51492
- qualifier = factory.updateIdentifier(qualifier, typeArguments);
51499
+ if (typeArguments !== getIdentifierTypeArguments(qualifier)) {
51500
+ qualifier = setIdentifierTypeArguments(factory.cloneNode(qualifier), typeArguments);
51501
+ }
51493
51502
  } else {
51494
- qualifier = factory.updateQualifiedName(
51495
- qualifier,
51496
- qualifier.left,
51497
- factory.updateIdentifier(qualifier.right, typeArguments)
51498
- );
51503
+ if (typeArguments !== getIdentifierTypeArguments(qualifier.right)) {
51504
+ qualifier = factory.updateQualifiedName(
51505
+ qualifier,
51506
+ qualifier.left,
51507
+ setIdentifierTypeArguments(factory.cloneNode(qualifier.right), typeArguments)
51508
+ );
51509
+ }
51499
51510
  }
51500
51511
  }
51501
51512
  typeArguments = ref.typeArguments;
@@ -51515,13 +51526,17 @@ function createTypeChecker(host) {
51515
51526
  let typeArguments = root.typeArguments;
51516
51527
  let typeName = root.typeName;
51517
51528
  if (isIdentifier(typeName)) {
51518
- typeName = factory.updateIdentifier(typeName, typeArguments);
51529
+ if (typeArguments !== getIdentifierTypeArguments(typeName)) {
51530
+ typeName = setIdentifierTypeArguments(factory.cloneNode(typeName), typeArguments);
51531
+ }
51519
51532
  } else {
51520
- typeName = factory.updateQualifiedName(
51521
- typeName,
51522
- typeName.left,
51523
- factory.updateIdentifier(typeName.right, typeArguments)
51524
- );
51533
+ if (typeArguments !== getIdentifierTypeArguments(typeName.right)) {
51534
+ typeName = factory.updateQualifiedName(
51535
+ typeName,
51536
+ typeName.left,
51537
+ setIdentifierTypeArguments(factory.cloneNode(typeName.right), typeArguments)
51538
+ );
51539
+ }
51525
51540
  }
51526
51541
  typeArguments = ref.typeArguments;
51527
51542
  const ids = getAccessStack(ref);
@@ -52235,7 +52250,11 @@ function createTypeChecker(host) {
52235
52250
  if (!nonRootParts || isEntityName(nonRootParts)) {
52236
52251
  if (nonRootParts) {
52237
52252
  const lastId = isIdentifier(nonRootParts) ? nonRootParts : nonRootParts.right;
52238
- lastId.typeArguments = void 0;
52253
+ setIdentifierTypeArguments(
52254
+ lastId,
52255
+ /*typeArguments*/
52256
+ void 0
52257
+ );
52239
52258
  }
52240
52259
  return factory.createImportTypeNode(lit, assertion, nonRootParts, typeParameterNodes, isTypeOf);
52241
52260
  } else {
@@ -52252,8 +52271,12 @@ function createTypeChecker(host) {
52252
52271
  return factory.createTypeQueryNode(entityName);
52253
52272
  } else {
52254
52273
  const lastId = isIdentifier(entityName) ? entityName : entityName.right;
52255
- const lastTypeArgs = lastId.typeArguments;
52256
- lastId.typeArguments = void 0;
52274
+ const lastTypeArgs = getIdentifierTypeArguments(lastId);
52275
+ setIdentifierTypeArguments(
52276
+ lastId,
52277
+ /*typeArguments*/
52278
+ void 0
52279
+ );
52257
52280
  return factory.createTypeReferenceNode(entityName, lastTypeArgs);
52258
52281
  }
52259
52282
  function createAccessFromSymbolChain(chain2, index, stopper) {
@@ -52297,7 +52320,9 @@ function createTypeChecker(host) {
52297
52320
  return factory.createIndexedAccessTypeNode(factory.createTypeReferenceNode(LHS, typeParameterNodes), factory.createLiteralTypeNode(factory.createStringLiteral(symbolName2)));
52298
52321
  }
52299
52322
  }
52300
- const identifier = setEmitFlags(factory.createIdentifier(symbolName2, typeParameterNodes), 33554432 /* NoAsciiEscaping */);
52323
+ const identifier = setEmitFlags(factory.createIdentifier(symbolName2), 33554432 /* NoAsciiEscaping */);
52324
+ if (typeParameterNodes)
52325
+ setIdentifierTypeArguments(identifier, factory.createNodeArray(typeParameterNodes));
52301
52326
  identifier.symbol = symbol2;
52302
52327
  if (index > stopper) {
52303
52328
  const LHS = createAccessFromSymbolChain(chain2, index - 1, stopper);
@@ -52355,7 +52380,9 @@ function createTypeChecker(host) {
52355
52380
  text = `${rawtext}_${i}`;
52356
52381
  }
52357
52382
  if (text !== rawtext) {
52358
- result = factory.createIdentifier(text, result.typeArguments);
52383
+ const typeArguments = getIdentifierTypeArguments(result);
52384
+ result = factory.createIdentifier(text);
52385
+ setIdentifierTypeArguments(result, typeArguments);
52359
52386
  }
52360
52387
  (context.typeParameterNamesByTextNextNameCount || (context.typeParameterNamesByTextNextNameCount = /* @__PURE__ */ new Map())).set(rawtext, i);
52361
52388
  (context.typeParameterNames || (context.typeParameterNames = /* @__PURE__ */ new Map())).set(getTypeId(type), result);
@@ -52379,7 +52406,9 @@ function createTypeChecker(host) {
52379
52406
  if (index === 0) {
52380
52407
  context.flags ^= 16777216 /* InInitialEntityName */;
52381
52408
  }
52382
- const identifier = setEmitFlags(factory.createIdentifier(symbolName2, typeParameterNodes), 33554432 /* NoAsciiEscaping */);
52409
+ const identifier = setEmitFlags(factory.createIdentifier(symbolName2), 33554432 /* NoAsciiEscaping */);
52410
+ if (typeParameterNodes)
52411
+ setIdentifierTypeArguments(identifier, factory.createNodeArray(typeParameterNodes));
52383
52412
  identifier.symbol = symbol2;
52384
52413
  return index > 0 ? factory.createQualifiedName(createEntityNameFromSymbolChain(chain2, index - 1), identifier) : identifier;
52385
52414
  }
@@ -52402,7 +52431,9 @@ function createTypeChecker(host) {
52402
52431
  return factory.createStringLiteral(getSpecifierForModuleSymbol(symbol2, context));
52403
52432
  }
52404
52433
  if (index === 0 || canUsePropertyAccess(symbolName2, languageVersion)) {
52405
- const identifier = setEmitFlags(factory.createIdentifier(symbolName2, typeParameterNodes), 33554432 /* NoAsciiEscaping */);
52434
+ const identifier = setEmitFlags(factory.createIdentifier(symbolName2), 33554432 /* NoAsciiEscaping */);
52435
+ if (typeParameterNodes)
52436
+ setIdentifierTypeArguments(identifier, factory.createNodeArray(typeParameterNodes));
52406
52437
  identifier.symbol = symbol2;
52407
52438
  return index > 0 ? factory.createPropertyAccessExpression(createExpressionFromSymbolChain(chain2, index - 1), identifier) : identifier;
52408
52439
  } else {
@@ -52417,8 +52448,11 @@ function createTypeChecker(host) {
52417
52448
  expression = factory.createNumericLiteral(+symbolName2);
52418
52449
  }
52419
52450
  if (!expression) {
52420
- expression = setEmitFlags(factory.createIdentifier(symbolName2, typeParameterNodes), 33554432 /* NoAsciiEscaping */);
52421
- expression.symbol = symbol2;
52451
+ const identifier = setEmitFlags(factory.createIdentifier(symbolName2), 33554432 /* NoAsciiEscaping */);
52452
+ if (typeParameterNodes)
52453
+ setIdentifierTypeArguments(identifier, factory.createNodeArray(typeParameterNodes));
52454
+ identifier.symbol = symbol2;
52455
+ expression = identifier;
52422
52456
  }
52423
52457
  return factory.createElementAccessExpression(createExpressionFromSymbolChain(chain2, index - 1), expression);
52424
52458
  }
@@ -57248,7 +57282,7 @@ function createTypeChecker(host) {
57248
57282
  }
57249
57283
  function isConstTypeVariable(type) {
57250
57284
  var _a2;
57251
- return !!(type.flags & 262144 /* TypeParameter */ && some((_a2 = type.symbol) == null ? void 0 : _a2.declarations, (d) => hasSyntacticModifier(d, 2048 /* Const */)) || type.flags & 8388608 /* IndexedAccess */ && isConstTypeVariable(type.objectType));
57285
+ return !!(type.flags & 262144 /* TypeParameter */ && some((_a2 = type.symbol) == null ? void 0 : _a2.declarations, (d) => hasSyntacticModifier(d, 2048 /* Const */)) || isGenericTupleType(type) && findIndex(getTypeArguments(type), (t, i) => !!(type.target.elementFlags[i] & 8 /* Variadic */) && isConstTypeVariable(t)) >= 0 || type.flags & 8388608 /* IndexedAccess */ && isConstTypeVariable(type.objectType));
57252
57286
  }
57253
57287
  function getConstraintOfIndexedAccess(type) {
57254
57288
  return hasNonCircularBaseConstraint(type) ? getConstraintFromIndexedAccess(type) : void 0;
@@ -65933,19 +65967,22 @@ function createTypeChecker(host) {
65933
65967
  break;
65934
65968
  case 166 /* Parameter */:
65935
65969
  const param = declaration;
65936
- if (isIdentifier(param.name) && (isCallSignatureDeclaration(param.parent) || isMethodSignature(param.parent) || isFunctionTypeNode(param.parent)) && param.parent.parameters.indexOf(param) > -1 && (resolveName(
65937
- param,
65938
- param.name.escapedText,
65939
- 788968 /* Type */,
65940
- void 0,
65941
- param.name.escapedText,
65942
- /*isUse*/
65943
- true
65944
- ) || param.name.originalKeywordKind && isTypeNodeKind(param.name.originalKeywordKind))) {
65945
- const newName = "arg" + param.parent.parameters.indexOf(param);
65946
- const typeName = declarationNameToString(param.name) + (param.dotDotDotToken ? "[]" : "");
65947
- errorOrSuggestion(noImplicitAny, declaration, Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1, newName, typeName);
65948
- return;
65970
+ if (isIdentifier(param.name)) {
65971
+ const originalKeywordKind = identifierToKeywordKind(param.name);
65972
+ if ((isCallSignatureDeclaration(param.parent) || isMethodSignature(param.parent) || isFunctionTypeNode(param.parent)) && param.parent.parameters.indexOf(param) > -1 && (resolveName(
65973
+ param,
65974
+ param.name.escapedText,
65975
+ 788968 /* Type */,
65976
+ void 0,
65977
+ param.name.escapedText,
65978
+ /*isUse*/
65979
+ true
65980
+ ) || originalKeywordKind && isTypeNodeKind(originalKeywordKind))) {
65981
+ const newName = "arg" + param.parent.parameters.indexOf(param);
65982
+ const typeName = declarationNameToString(param.name) + (param.dotDotDotToken ? "[]" : "");
65983
+ errorOrSuggestion(noImplicitAny, declaration, Diagnostics.Parameter_has_a_name_but_no_type_Did_you_mean_0_Colon_1, newName, typeName);
65984
+ return;
65985
+ }
65949
65986
  }
65950
65987
  diagnostic = declaration.dotDotDotToken ? noImplicitAny ? Diagnostics.Rest_parameter_0_implicitly_has_an_any_type : Diagnostics.Rest_parameter_0_implicitly_has_an_any_type_but_a_better_type_may_be_inferred_from_usage : noImplicitAny ? Diagnostics.Parameter_0_implicitly_has_an_1_type : Diagnostics.Parameter_0_implicitly_has_an_1_type_but_a_better_type_may_be_inferred_from_usage;
65951
65988
  break;
@@ -66133,6 +66170,10 @@ function createTypeChecker(host) {
66133
66170
  function isTypeParameterAtTopLevel(type, typeParameter) {
66134
66171
  return !!(type === typeParameter || type.flags & 3145728 /* UnionOrIntersection */ && some(type.types, (t) => isTypeParameterAtTopLevel(t, typeParameter)) || type.flags & 16777216 /* Conditional */ && (getTrueTypeFromConditionalType(type) === typeParameter || getFalseTypeFromConditionalType(type) === typeParameter));
66135
66172
  }
66173
+ function isTypeParameterAtTopLevelInReturnType(signature, typeParameter) {
66174
+ const typePredicate = getTypePredicateOfSignature(signature);
66175
+ return typePredicate ? !!typePredicate.type && isTypeParameterAtTopLevel(typePredicate.type, typeParameter) : isTypeParameterAtTopLevel(getReturnTypeOfSignature(signature), typeParameter);
66176
+ }
66136
66177
  function createEmptyObjectTypeFromStringLiteral(type) {
66137
66178
  const members = createSymbolTable();
66138
66179
  forEachType(type, (t) => {
@@ -67004,7 +67045,7 @@ function createTypeChecker(host) {
67004
67045
  function getCovariantInference(inference, signature) {
67005
67046
  const candidates = unionObjectAndArrayLiteralCandidates(inference.candidates);
67006
67047
  const primitiveConstraint = hasPrimitiveConstraint(inference.typeParameter) || isConstTypeVariable(inference.typeParameter);
67007
- const widenLiteralTypes = !primitiveConstraint && inference.topLevel && (inference.isFixed || !isTypeParameterAtTopLevel(getReturnTypeOfSignature(signature), inference.typeParameter));
67048
+ const widenLiteralTypes = !primitiveConstraint && inference.topLevel && (inference.isFixed || !isTypeParameterAtTopLevelInReturnType(signature, inference.typeParameter));
67008
67049
  const baseCandidates = primitiveConstraint ? sameMap(candidates, getRegularTypeOfLiteralType) : widenLiteralTypes ? sameMap(candidates, getWidenedLiteralType) : candidates;
67009
67050
  const unwidenedType = inference.priority & 416 /* PriorityImpliesCombination */ ? getUnionType(baseCandidates, 2 /* Subtype */) : getCommonSupertype(baseCandidates);
67010
67051
  return getWidenedType(unwidenedType);
@@ -69157,6 +69198,7 @@ function createTypeChecker(host) {
69157
69198
  }
69158
69199
  }
69159
69200
  function getNarrowedTypeOfSymbol(symbol, location) {
69201
+ var _a2;
69160
69202
  const type = getTypeOfSymbol(symbol);
69161
69203
  const declaration = symbol.valueDeclaration;
69162
69204
  if (declaration) {
@@ -69192,7 +69234,7 @@ function createTypeChecker(host) {
69192
69234
  if (func.parameters.length >= 2 && isContextSensitiveFunctionOrObjectLiteralMethod(func)) {
69193
69235
  const contextualSignature = getContextualSignature(func);
69194
69236
  if (contextualSignature && contextualSignature.parameters.length === 1 && signatureHasRestParameter(contextualSignature)) {
69195
- const restType = getReducedApparentType(getTypeOfSymbol(contextualSignature.parameters[0]));
69237
+ const restType = getReducedApparentType(instantiateType(getTypeOfSymbol(contextualSignature.parameters[0]), (_a2 = getInferenceContext(func)) == null ? void 0 : _a2.nonFixingMapper));
69196
69238
  if (restType.flags & 1048576 /* Union */ && everyType(restType, isTupleType) && !isSymbolAssigned(symbol)) {
69197
69239
  const narrowedType = getFlowTypeOfReference(
69198
69240
  func,
@@ -70413,7 +70455,9 @@ function createTypeChecker(host) {
70413
70455
  }
70414
70456
  const index = findContextualNode(node);
70415
70457
  if (index >= 0) {
70416
- return contextualTypes[index];
70458
+ const cached = contextualTypes[index];
70459
+ if (cached || !contextFlags)
70460
+ return cached;
70417
70461
  }
70418
70462
  const { parent: parent2 } = node;
70419
70463
  switch (parent2.kind) {
@@ -77733,8 +77777,11 @@ function createTypeChecker(host) {
77733
77777
  }
77734
77778
  function checkTypeReferenceNode(node) {
77735
77779
  checkGrammarTypeArguments(node, node.typeArguments);
77736
- if (node.kind === 180 /* TypeReference */ && node.typeName.jsdocDotPos !== void 0 && !isInJSFile(node) && !isInJSDoc(node)) {
77737
- grammarErrorAtPos(node, node.typeName.jsdocDotPos, 1, Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments);
77780
+ if (node.kind === 180 /* TypeReference */ && !isInJSFile(node) && !isInJSDoc(node) && node.typeArguments && node.typeName.end !== node.typeArguments.pos) {
77781
+ const sourceFile = getSourceFileOfNode(node);
77782
+ if (scanTokenAtPosition(sourceFile, node.typeName.end) === 24 /* DotToken */) {
77783
+ grammarErrorAtPos(node, skipTrivia(sourceFile.text, node.typeName.end), 1, Diagnostics.JSDoc_types_can_only_be_used_inside_documentation_comments);
77784
+ }
77738
77785
  }
77739
77786
  forEach(node.typeArguments, checkSourceElement);
77740
77787
  const type = getTypeFromTypeReference(node);
@@ -83343,8 +83390,9 @@ function createTypeChecker(host) {
83343
83390
  }
83344
83391
  }
83345
83392
  function getReferencedImportDeclaration(nodeIn) {
83346
- if (nodeIn.generatedImportReference) {
83347
- return nodeIn.generatedImportReference;
83393
+ const specifier = getIdentifierGeneratedImportReference(nodeIn);
83394
+ if (specifier) {
83395
+ return specifier;
83348
83396
  }
83349
83397
  const node = getParseTreeNode(nodeIn, isIdentifier);
83350
83398
  if (node) {
@@ -85322,7 +85370,7 @@ function createTypeChecker(host) {
85322
85370
  }
85323
85371
  function checkGrammarNameInLetOrConstDeclarations(name) {
85324
85372
  if (name.kind === 79 /* Identifier */) {
85325
- if (name.originalKeywordKind === 119 /* LetKeyword */) {
85373
+ if (name.escapedText === "let") {
85326
85374
  return grammarErrorOnNode(name, Diagnostics.let_is_not_allowed_to_be_used_as_a_name_in_let_or_const_declarations);
85327
85375
  }
85328
85376
  } else {
@@ -86126,12 +86174,6 @@ function visitEachChild(node, visitor, context, nodesVisitor = visitNodes2, toke
86126
86174
  return fn === void 0 ? node : fn(node, visitor, context, nodesVisitor, nodeVisitor, tokenVisitor);
86127
86175
  }
86128
86176
  var visitEachChildTable = {
86129
- [79 /* Identifier */]: function visitEachChildOfIdentifier(node, visitor, context, nodesVisitor, _nodeVisitor, _tokenVisitor) {
86130
- return context.factory.updateIdentifier(
86131
- node,
86132
- nodesVisitor(node.typeArguments, visitor, isTypeNodeOrTypeParameterDeclaration)
86133
- );
86134
- },
86135
86177
  [163 /* QualifiedName */]: function visitEachChildOfQualifiedName(node, visitor, context, _nodesVisitor, nodeVisitor, _tokenVisitor) {
86136
86178
  return context.factory.updateQualifiedName(
86137
86179
  node,
@@ -91344,7 +91386,7 @@ function transformClassFields(context) {
91344
91386
  if (isClassWithConstructorReference) {
91345
91387
  enableSubstitutionForClassAliases();
91346
91388
  const alias = factory2.cloneNode(temp);
91347
- alias.autoGenerate.flags &= ~8 /* ReservedInNestedScopes */;
91389
+ alias.emitNode.autoGenerate.flags &= ~8 /* ReservedInNestedScopes */;
91348
91390
  classAliases[getOriginalNodeId(node)] = alias;
91349
91391
  }
91350
91392
  setEmitFlags(classExpression, 131072 /* Indented */ | getEmitFlags(classExpression));
@@ -95480,7 +95522,7 @@ function transformJsx(context) {
95480
95522
  factory2.createIdentifier(name),
95481
95523
  generatedName
95482
95524
  );
95483
- generatedName.generatedImportReference = specifier;
95525
+ setIdentifierGeneratedImportReference(generatedName, specifier);
95484
95526
  specifierSourceImports.set(name, specifier);
95485
95527
  return generatedName;
95486
95528
  }
@@ -96623,7 +96665,7 @@ function transformES2015(context) {
96623
96665
  return convertedLoopState.argumentsName || (convertedLoopState.argumentsName = factory2.createUniqueName("arguments"));
96624
96666
  }
96625
96667
  }
96626
- if (node.hasExtendedUnicodeEscape) {
96668
+ if (node.flags & 128 /* IdentifierHasExtendedUnicodeEscape */) {
96627
96669
  return setOriginalNode(setTextRange(
96628
96670
  factory2.createIdentifier(unescapeLeadingUnderscores(node.escapedText)),
96629
96671
  node
@@ -99504,7 +99546,7 @@ function transformES5(context) {
99504
99546
  return node;
99505
99547
  }
99506
99548
  function trySubstituteReservedName(name) {
99507
- const token = name.originalKeywordKind || (nodeIsSynthesized(name) ? stringToToken(idText(name)) : void 0);
99549
+ const token = identifierToKeywordKind(name);
99508
99550
  if (token !== void 0 && token >= 81 /* FirstReservedWord */ && token <= 116 /* LastReservedWord */) {
99509
99551
  return setTextRange(factory2.createStringLiteralFromNode(name), name);
99510
99552
  }
@@ -103172,7 +103214,7 @@ function transformModule(context) {
103172
103214
  return factory2.createPropertyAccessExpression(externalHelpersModuleName, node);
103173
103215
  }
103174
103216
  return node;
103175
- } else if (!(isGeneratedIdentifier(node) && !(node.autoGenerate.flags & 64 /* AllowNameSubstitution */)) && !isLocalName(node)) {
103217
+ } else if (!(isGeneratedIdentifier(node) && !(node.emitNode.autoGenerate.flags & 64 /* AllowNameSubstitution */)) && !isLocalName(node)) {
103176
103218
  const exportContainer = resolver.getReferencedExportContainer(node, isExportName(node));
103177
103219
  if (exportContainer && exportContainer.kind === 308 /* SourceFile */) {
103178
103220
  return setTextRange(
@@ -109136,7 +109178,7 @@ function createPrinter(printerOptions = {}, handlers = {}) {
109136
109178
  /*includeTrivia*/
109137
109179
  false
109138
109180
  ), node.symbol);
109139
- emitList(node, node.typeArguments, 53776 /* TypeParameters */);
109181
+ emitList(node, getIdentifierTypeArguments(node), 53776 /* TypeParameters */);
109140
109182
  }
109141
109183
  function emitPrivateIdentifier(node) {
109142
109184
  write(getTextOfNode2(
@@ -111854,10 +111896,11 @@ function createPrinter(printerOptions = {}, handlers = {}) {
111854
111896
  }
111855
111897
  }
111856
111898
  function generateName(name) {
111857
- if ((name.autoGenerate.flags & 7 /* KindMask */) === 4 /* Node */) {
111858
- return generateNameCached(getNodeForGeneratedName(name), isPrivateIdentifier(name), name.autoGenerate.flags, name.autoGenerate.prefix, name.autoGenerate.suffix);
111899
+ const autoGenerate = name.emitNode.autoGenerate;
111900
+ if ((autoGenerate.flags & 7 /* KindMask */) === 4 /* Node */) {
111901
+ return generateNameCached(getNodeForGeneratedName(name), isPrivateIdentifier(name), autoGenerate.flags, autoGenerate.prefix, autoGenerate.suffix);
111859
111902
  } else {
111860
- const autoGenerateId = name.autoGenerate.id;
111903
+ const autoGenerateId = autoGenerate.id;
111861
111904
  return autoGeneratedIdToGeneratedName[autoGenerateId] || (autoGeneratedIdToGeneratedName[autoGenerateId] = makeName(name));
111862
111905
  }
111863
111906
  }
@@ -112137,16 +112180,17 @@ function createPrinter(printerOptions = {}, handlers = {}) {
112137
112180
  }
112138
112181
  }
112139
112182
  function makeName(name) {
112140
- const prefix = formatGeneratedNamePart(name.autoGenerate.prefix, generateName);
112141
- const suffix = formatGeneratedNamePart(name.autoGenerate.suffix);
112142
- switch (name.autoGenerate.flags & 7 /* KindMask */) {
112183
+ const autoGenerate = name.emitNode.autoGenerate;
112184
+ const prefix = formatGeneratedNamePart(autoGenerate.prefix, generateName);
112185
+ const suffix = formatGeneratedNamePart(autoGenerate.suffix);
112186
+ switch (autoGenerate.flags & 7 /* KindMask */) {
112143
112187
  case 1 /* Auto */:
112144
- return makeTempVariableName(TempFlags.Auto, !!(name.autoGenerate.flags & 8 /* ReservedInNestedScopes */), isPrivateIdentifier(name), prefix, suffix);
112188
+ return makeTempVariableName(TempFlags.Auto, !!(autoGenerate.flags & 8 /* ReservedInNestedScopes */), isPrivateIdentifier(name), prefix, suffix);
112145
112189
  case 2 /* Loop */:
112146
112190
  Debug.assertNode(name, isIdentifier);
112147
112191
  return makeTempVariableName(
112148
112192
  TempFlags._i,
112149
- !!(name.autoGenerate.flags & 8 /* ReservedInNestedScopes */),
112193
+ !!(autoGenerate.flags & 8 /* ReservedInNestedScopes */),
112150
112194
  /*privateName*/
112151
112195
  false,
112152
112196
  prefix,
@@ -112155,16 +112199,16 @@ function createPrinter(printerOptions = {}, handlers = {}) {
112155
112199
  case 3 /* Unique */:
112156
112200
  return makeUniqueName2(
112157
112201
  idText(name),
112158
- name.autoGenerate.flags & 32 /* FileLevel */ ? isFileLevelUniqueName2 : isUniqueName,
112159
- !!(name.autoGenerate.flags & 16 /* Optimistic */),
112160
- !!(name.autoGenerate.flags & 8 /* ReservedInNestedScopes */),
112202
+ autoGenerate.flags & 32 /* FileLevel */ ? isFileLevelUniqueName2 : isUniqueName,
112203
+ !!(autoGenerate.flags & 16 /* Optimistic */),
112204
+ !!(autoGenerate.flags & 8 /* ReservedInNestedScopes */),
112161
112205
  isPrivateIdentifier(name),
112162
112206
  prefix,
112163
112207
  suffix
112164
112208
  );
112165
112209
  }
112166
112210
  return Debug.fail(`Unsupported GeneratedIdentifierKind: ${Debug.formatEnum(
112167
- name.autoGenerate.flags & 7 /* KindMask */,
112211
+ autoGenerate.flags & 7 /* KindMask */,
112168
112212
  GeneratedIdentifierFlags,
112169
112213
  /*isFlags*/
112170
112214
  true
@@ -123399,6 +123443,7 @@ __export(ts_exports3, {
123399
123443
  addEmitHelper: () => addEmitHelper,
123400
123444
  addEmitHelpers: () => addEmitHelpers,
123401
123445
  addNodeFactoryPatcher: () => addNodeFactoryPatcher,
123446
+ addObjectAllocatorPatcher: () => addObjectAllocatorPatcher,
123402
123447
  addRange: () => addRange,
123403
123448
  addRelatedInfo: () => addRelatedInfo,
123404
123449
  addSyntheticLeadingComment: () => addSyntheticLeadingComment,
@@ -124167,6 +124212,9 @@ __export(ts_exports3, {
124167
124212
  getGeneratedNameForNode: () => getGeneratedNameForNode,
124168
124213
  getHeritageClause: () => getHeritageClause,
124169
124214
  getHostSignatureFromJSDoc: () => getHostSignatureFromJSDoc,
124215
+ getIdentifierAutoGenerate: () => getIdentifierAutoGenerate,
124216
+ getIdentifierGeneratedImportReference: () => getIdentifierGeneratedImportReference,
124217
+ getIdentifierTypeArguments: () => getIdentifierTypeArguments,
124170
124218
  getImmediatelyInvokedFunctionExpression: () => getImmediatelyInvokedFunctionExpression,
124171
124219
  getImpliedNodeFormatForFile: () => getImpliedNodeFormatForFile,
124172
124220
  getImpliedNodeFormatForFileWorker: () => getImpliedNodeFormatForFileWorker,
@@ -124500,6 +124548,7 @@ __export(ts_exports3, {
124500
124548
  hostUsesCaseSensitiveFileNames: () => hostUsesCaseSensitiveFileNames,
124501
124549
  idText: () => idText,
124502
124550
  identifierIsThisKeyword: () => identifierIsThisKeyword,
124551
+ identifierToKeywordKind: () => identifierToKeywordKind,
124503
124552
  identity: () => identity,
124504
124553
  identitySourceMapConsumer: () => identitySourceMapConsumer,
124505
124554
  ignoreSourceNewlines: () => ignoreSourceNewlines,
@@ -125389,6 +125438,7 @@ __export(ts_exports3, {
125389
125438
  sameMap: () => sameMap,
125390
125439
  sameMapping: () => sameMapping,
125391
125440
  scanShebangTrivia: () => scanShebangTrivia,
125441
+ scanTokenAtPosition: () => scanTokenAtPosition,
125392
125442
  scanner: () => scanner,
125393
125443
  screenStartingMessageCodes: () => screenStartingMessageCodes,
125394
125444
  semanticDiagnosticsOptionDeclarations: () => semanticDiagnosticsOptionDeclarations,
@@ -125401,6 +125451,9 @@ __export(ts_exports3, {
125401
125451
  setEachParent: () => setEachParent,
125402
125452
  setEmitFlags: () => setEmitFlags,
125403
125453
  setGetSourceFileAsHashVersioned: () => setGetSourceFileAsHashVersioned,
125454
+ setIdentifierAutoGenerate: () => setIdentifierAutoGenerate,
125455
+ setIdentifierGeneratedImportReference: () => setIdentifierGeneratedImportReference,
125456
+ setIdentifierTypeArguments: () => setIdentifierTypeArguments,
125404
125457
  setLocalizedDiagnosticMessages: () => setLocalizedDiagnosticMessages,
125405
125458
  setModuleDefaultHelper: () => setModuleDefaultHelper,
125406
125459
  setNodeFlags: () => setNodeFlags,
@@ -139078,8 +139131,8 @@ function convertFileToEsModule(sourceFile, checker, changes, target, quotePrefer
139078
139131
  function collectExportRenames(sourceFile, checker, identifiers) {
139079
139132
  const res = /* @__PURE__ */ new Map();
139080
139133
  forEachExportReference(sourceFile, (node) => {
139081
- const { text, originalKeywordKind } = node.name;
139082
- if (!res.has(text) && (originalKeywordKind !== void 0 && isNonContextualKeyword(originalKeywordKind) || checker.resolveName(
139134
+ const { text } = node.name;
139135
+ if (!res.has(text) && (isIdentifierANonContextualKeyword(node.name) || checker.resolveName(
139083
139136
  text,
139084
139137
  node,
139085
139138
  111551 /* Value */,
@@ -147681,8 +147734,11 @@ function isModifierLike2(node) {
147681
147734
  if (isModifier(node)) {
147682
147735
  return node.kind;
147683
147736
  }
147684
- if (isIdentifier(node) && node.originalKeywordKind && isModifierKind(node.originalKeywordKind)) {
147685
- return node.originalKeywordKind;
147737
+ if (isIdentifier(node)) {
147738
+ const originalKeywordKind = identifierToKeywordKind(node);
147739
+ if (originalKeywordKind && isModifierKind(originalKeywordKind)) {
147740
+ return originalKeywordKind;
147741
+ }
147686
147742
  }
147687
147743
  return void 0;
147688
147744
  }
@@ -149881,7 +149937,8 @@ function isFunctionLikeBodyKeyword(kind) {
149881
149937
  return kind === 132 /* AsyncKeyword */ || kind === 133 /* AwaitKeyword */ || kind === 128 /* AsKeyword */ || kind === 150 /* SatisfiesKeyword */ || kind === 154 /* TypeKeyword */ || !isContextualKeyword(kind) && !isClassMemberCompletionKeyword(kind);
149882
149938
  }
149883
149939
  function keywordForNode(node) {
149884
- return isIdentifier(node) ? node.originalKeywordKind || 0 /* Unknown */ : node.kind;
149940
+ var _a2;
149941
+ return isIdentifier(node) ? (_a2 = identifierToKeywordKind(node)) != null ? _a2 : 0 /* Unknown */ : node.kind;
149885
149942
  }
149886
149943
  function getContextualKeywords(contextToken, position) {
149887
149944
  const entries = [];
@@ -149927,6 +149984,7 @@ function getPropertiesForCompletion(type, checker) {
149927
149984
  return type.isUnion() ? Debug.checkEachDefined(checker.getAllPossiblePropertiesOfTypes(type.types), "getAllPossiblePropertiesOfTypes() should all be defined") : Debug.checkEachDefined(type.getApparentProperties(), "getApparentProperties() should all be defined");
149928
149985
  }
149929
149986
  function tryGetObjectTypeDeclarationCompletionContainer(sourceFile, contextToken, location, position) {
149987
+ var _a2;
149930
149988
  switch (location.kind) {
149931
149989
  case 353 /* SyntaxList */:
149932
149990
  return tryCast(location.parent, isObjectTypeDeclaration);
@@ -149937,8 +149995,8 @@ function tryGetObjectTypeDeclarationCompletionContainer(sourceFile, contextToken
149937
149995
  }
149938
149996
  break;
149939
149997
  case 79 /* Identifier */: {
149940
- const originalKeywordKind = location.originalKeywordKind;
149941
- if (originalKeywordKind && isKeyword(originalKeywordKind)) {
149998
+ const originalKeywordKind = identifierToKeywordKind(location);
149999
+ if (originalKeywordKind) {
149942
150000
  return void 0;
149943
150001
  }
149944
150002
  if (isPropertyDeclaration(location.parent) && location.parent.initializer === location) {
@@ -149964,14 +150022,14 @@ function tryGetObjectTypeDeclarationCompletionContainer(sourceFile, contextToken
149964
150022
  case 27 /* CommaToken */:
149965
150023
  return tryCast(contextToken.parent, isObjectTypeDeclaration);
149966
150024
  default:
149967
- if (!isFromObjectTypeDeclaration(contextToken)) {
149968
- if (getLineAndCharacterOfPosition(sourceFile, contextToken.getEnd()).line !== getLineAndCharacterOfPosition(sourceFile, position).line && isObjectTypeDeclaration(location)) {
150025
+ if (isObjectTypeDeclaration(location)) {
150026
+ if (getLineAndCharacterOfPosition(sourceFile, contextToken.getEnd()).line !== getLineAndCharacterOfPosition(sourceFile, position).line) {
149969
150027
  return location;
149970
150028
  }
149971
- return void 0;
150029
+ const isValidKeyword = isClassLike(contextToken.parent.parent) ? isClassMemberCompletionKeyword : isInterfaceOrTypeLiteralCompletionKeyword;
150030
+ return isValidKeyword(contextToken.kind) || contextToken.kind === 41 /* AsteriskToken */ || isIdentifier(contextToken) && isValidKeyword((_a2 = identifierToKeywordKind(contextToken)) != null ? _a2 : 0 /* Unknown */) ? contextToken.parent.parent : void 0;
149972
150031
  }
149973
- const isValidKeyword = isClassLike(contextToken.parent.parent) ? isClassMemberCompletionKeyword : isInterfaceOrTypeLiteralCompletionKeyword;
149974
- return isValidKeyword(contextToken.kind) || contextToken.kind === 41 /* AsteriskToken */ || isIdentifier(contextToken) && isValidKeyword(stringToToken(contextToken.text)) ? contextToken.parent.parent : void 0;
150032
+ return void 0;
149975
150033
  }
149976
150034
  }
149977
150035
  function tryGetTypeLiteralNode(node) {
@@ -152908,7 +152966,7 @@ var Core;
152908
152966
  }
152909
152967
  }
152910
152968
  if (!isForRenameWithPrefixAndSuffixText(state.options) || alwaysGetReferences) {
152911
- const isDefaultExport = referenceLocation.originalKeywordKind === 88 /* DefaultKeyword */ || exportSpecifier.name.originalKeywordKind === 88 /* DefaultKeyword */;
152969
+ const isDefaultExport = referenceLocation.escapedText === "default" || exportSpecifier.name.escapedText === "default";
152912
152970
  const exportKind = isDefaultExport ? 1 /* Default */ : 0 /* Named */;
152913
152971
  const exportSymbol = Debug.checkDefined(exportSpecifier.symbol);
152914
152972
  const exportInfo = getExportInfo(exportSymbol, exportKind, state.checker);
@@ -159655,7 +159713,7 @@ function extractConstantInScope(node, scope, { substitutions }, rangeFacts, cont
159655
159713
  111551 /* Value */,
159656
159714
  /*excludeGlobals*/
159657
159715
  false
159658
- ) && !isPrivateIdentifier(node.name) && !isKeyword(node.name.originalKeywordKind) ? node.name.text : getUniqueName(isClassLike(scope) ? "newProperty" : "newLocal", file);
159716
+ ) && !isPrivateIdentifier(node.name) && !identifierToKeywordKind(node.name) ? node.name.text : getUniqueName(isClassLike(scope) ? "newProperty" : "newLocal", file);
159659
159717
  const isJS = isInJSFile(scope);
159660
159718
  let variableType = isJS || !checker.isContextSensitive(node) ? void 0 : checker.typeToTypeNode(checker.getContextualType(node), scope, 1 /* NoTruncation */);
159661
159719
  let initializer = transformConstantInitializer(skipParentheses(node), substitutions);
@@ -160525,7 +160583,7 @@ function getRenameInfoForNode(node, typeChecker, sourceFile, program, preference
160525
160583
  if (declarations.some((declaration) => isDefinedInLibraryFile(program, declaration))) {
160526
160584
  return getRenameInfoError(Diagnostics.You_cannot_rename_elements_that_are_defined_in_the_standard_TypeScript_library);
160527
160585
  }
160528
- if (isIdentifier(node) && node.originalKeywordKind === 88 /* DefaultKeyword */ && symbol.parent && symbol.parent.flags & 1536 /* Module */) {
160586
+ if (isIdentifier(node) && node.escapedText === "default" && symbol.parent && symbol.parent.flags & 1536 /* Module */) {
160529
160587
  return void 0;
160530
160588
  }
160531
160589
  if (isStringLiteralLike(node) && tryGetImportFromModuleSpecifier(node)) {
@@ -162733,7 +162791,6 @@ function updateJSDocHost(parent2) {
162733
162791
  }
162734
162792
  const jsDocNode = parent2.parent.kind === 169 /* PropertyDeclaration */ ? parent2.parent : parent2.parent.parent;
162735
162793
  jsDocNode.jsDoc = parent2.jsDoc;
162736
- jsDocNode.jsDocCache = parent2.jsDocCache;
162737
162794
  return jsDocNode;
162738
162795
  }
162739
162796
  function tryMergeJsdocTags(oldTag, newTag) {
@@ -166111,7 +166168,7 @@ function createDeprecation(name, options = {}) {
166111
166168
  const errorAfter = typeof options.errorAfter === "string" ? new Version(options.errorAfter) : options.errorAfter;
166112
166169
  const warnAfter = typeof options.warnAfter === "string" ? new Version(options.warnAfter) : options.warnAfter;
166113
166170
  const since = typeof options.since === "string" ? new Version(options.since) : (_b = options.since) != null ? _b : warnAfter;
166114
- const error = options.error || errorAfter && version2.compareTo(errorAfter) <= 0;
166171
+ const error = options.error || errorAfter && version2.compareTo(errorAfter) >= 0;
166115
166172
  const warn = !warnAfter || version2.compareTo(warnAfter) >= 0;
166116
166173
  return error ? createErrorDeprecation(name, errorAfter, since, options.message) : warn ? createWarningDeprecation(name, errorAfter, since, options.message) : noop;
166117
166174
  }
@@ -166488,8 +166545,6 @@ var createToken = deprecate(function createToken2(kind) {
166488
166545
  var createIdentifier = deprecate(function createIdentifier2(text) {
166489
166546
  return factory.createIdentifier(
166490
166547
  text,
166491
- /*typeArguments*/
166492
- void 0,
166493
166548
  /*originalKeywordKind*/
166494
166549
  void 0
166495
166550
  );
@@ -167442,6 +167497,37 @@ function patchNodeFactory4(factory2) {
167442
167497
  addNodeFactoryPatcher(patchNodeFactory4);
167443
167498
  patchNodeFactory4(factory);
167444
167499
 
167500
+ // src/deprecatedCompat/5.0/identifierProperties.ts
167501
+ addObjectAllocatorPatcher((objectAllocator2) => {
167502
+ const Identifier75 = objectAllocator2.getIdentifierConstructor();
167503
+ if (!hasProperty(Identifier75.prototype, "originalKeywordKind")) {
167504
+ Object.defineProperty(Identifier75.prototype, "originalKeywordKind", {
167505
+ get: deprecate(function() {
167506
+ return identifierToKeywordKind(this);
167507
+ }, {
167508
+ name: "originalKeywordKind",
167509
+ since: "5.0",
167510
+ warnAfter: "5.1",
167511
+ errorAfter: "5.2",
167512
+ message: "Use 'identifierToKeywordKind(identifier)' instead."
167513
+ })
167514
+ });
167515
+ }
167516
+ if (!hasProperty(Identifier75.prototype, "isInJSDocNamespace")) {
167517
+ Object.defineProperty(Identifier75.prototype, "isInJSDocNamespace", {
167518
+ get: deprecate(function() {
167519
+ return this.flags & 2048 /* IdentifierIsInJSDocNamespace */ ? true : void 0;
167520
+ }, {
167521
+ name: "isInJSDocNamespace",
167522
+ since: "5.0",
167523
+ warnAfter: "5.1",
167524
+ errorAfter: "5.2",
167525
+ message: "Use '.parent' or the surrounding context to determine this instead."
167526
+ })
167527
+ });
167528
+ }
167529
+ });
167530
+
167445
167531
  // src/server/utilitiesPublic.ts
167446
167532
  var LogLevel2 = /* @__PURE__ */ ((LogLevel3) => {
167447
167533
  LogLevel3[LogLevel3["terse"] = 0] = "terse";
@@ -178994,6 +179080,7 @@ start(initializeNodeSystem(), require("os").platform());
178994
179080
  addEmitHelper,
178995
179081
  addEmitHelpers,
178996
179082
  addNodeFactoryPatcher,
179083
+ addObjectAllocatorPatcher,
178997
179084
  addRange,
178998
179085
  addRelatedInfo,
178999
179086
  addSyntheticLeadingComment,
@@ -179762,6 +179849,9 @@ start(initializeNodeSystem(), require("os").platform());
179762
179849
  getGeneratedNameForNode,
179763
179850
  getHeritageClause,
179764
179851
  getHostSignatureFromJSDoc,
179852
+ getIdentifierAutoGenerate,
179853
+ getIdentifierGeneratedImportReference,
179854
+ getIdentifierTypeArguments,
179765
179855
  getImmediatelyInvokedFunctionExpression,
179766
179856
  getImpliedNodeFormatForFile,
179767
179857
  getImpliedNodeFormatForFileWorker,
@@ -180095,6 +180185,7 @@ start(initializeNodeSystem(), require("os").platform());
180095
180185
  hostUsesCaseSensitiveFileNames,
180096
180186
  idText,
180097
180187
  identifierIsThisKeyword,
180188
+ identifierToKeywordKind,
180098
180189
  identity,
180099
180190
  identitySourceMapConsumer,
180100
180191
  ignoreSourceNewlines,
@@ -180984,6 +181075,7 @@ start(initializeNodeSystem(), require("os").platform());
180984
181075
  sameMap,
180985
181076
  sameMapping,
180986
181077
  scanShebangTrivia,
181078
+ scanTokenAtPosition,
180987
181079
  scanner,
180988
181080
  screenStartingMessageCodes,
180989
181081
  semanticDiagnosticsOptionDeclarations,
@@ -180996,6 +181088,9 @@ start(initializeNodeSystem(), require("os").platform());
180996
181088
  setEachParent,
180997
181089
  setEmitFlags,
180998
181090
  setGetSourceFileAsHashVersioned,
181091
+ setIdentifierAutoGenerate,
181092
+ setIdentifierGeneratedImportReference,
181093
+ setIdentifierTypeArguments,
180999
181094
  setLocalizedDiagnosticMessages,
181000
181095
  setModuleDefaultHelper,
181001
181096
  setNodeFlags,