@typescript-deploys/pr-build 5.0.0-pr-52282-27 → 5.0.0-pr-52667-13

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.
@@ -35,7 +35,7 @@ var ts = (() => {
35
35
  "src/compiler/corePublic.ts"() {
36
36
  "use strict";
37
37
  versionMajorMinor = "5.0";
38
- version = `${versionMajorMinor}.0-insiders.20230207`;
38
+ version = `${versionMajorMinor}.0-insiders.20230208`;
39
39
  Comparison = /* @__PURE__ */ ((Comparison3) => {
40
40
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
41
41
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -5492,7 +5492,7 @@ ${lanes.join("\n")}
5492
5492
  function createDirectoryWatcher(dirName, dirPath, fallbackOptions) {
5493
5493
  const watcher = fsWatch(
5494
5494
  dirName,
5495
- FileSystemEntryKind.Directory,
5495
+ 1 /* Directory */,
5496
5496
  (_eventName, relativeFileName, modifiedTime) => {
5497
5497
  if (!isString(relativeFileName))
5498
5498
  return;
@@ -5690,7 +5690,7 @@ ${lanes.join("\n")}
5690
5690
  }
5691
5691
  function nonSyncUpdateChildWatches(dirName, dirPath, fileName, options) {
5692
5692
  const parentWatcher = cache.get(dirPath);
5693
- if (parentWatcher && fileSystemEntryExists(dirName, FileSystemEntryKind.Directory)) {
5693
+ if (parentWatcher && fileSystemEntryExists(dirName, 1 /* Directory */)) {
5694
5694
  scheduleUpdateChildWatches(dirName, dirPath, fileName, options);
5695
5695
  return;
5696
5696
  }
@@ -5755,7 +5755,7 @@ ${lanes.join("\n")}
5755
5755
  return false;
5756
5756
  let newChildWatches;
5757
5757
  const hasChanges = enumerateInsertsAndDeletes(
5758
- fileSystemEntryExists(parentDir, FileSystemEntryKind.Directory) ? mapDefined(getAccessibleSortedChildDirectories(parentDir), (child) => {
5758
+ fileSystemEntryExists(parentDir, 1 /* Directory */) ? mapDefined(getAccessibleSortedChildDirectories(parentDir), (child) => {
5759
5759
  const childFullName = getNormalizedAbsolutePath(child, parentDir);
5760
5760
  return !isIgnoredPath(childFullName, options) && filePathComparer(childFullName, normalizePath(realpath(childFullName))) === 0 /* EqualTo */ ? childFullName : void 0;
5761
5761
  }) : emptyArray,
@@ -17055,10 +17055,10 @@ ${lanes.join("\n")}
17055
17055
  return symbol.exportSymbol ? symbol.exportSymbol.flags | symbol.flags : symbol.flags;
17056
17056
  }
17057
17057
  function isWriteOnlyAccess(node) {
17058
- return accessKind(node) === AccessKind.Write;
17058
+ return accessKind(node) === 1 /* Write */;
17059
17059
  }
17060
17060
  function isWriteAccess(node) {
17061
- return accessKind(node) !== AccessKind.Read;
17061
+ return accessKind(node) !== 0 /* Read */;
17062
17062
  }
17063
17063
  function accessKind(node) {
17064
17064
  const { parent: parent2 } = node;
@@ -18725,7 +18725,7 @@ ${lanes.join("\n")}
18725
18725
  const tag = getJSDocSatisfiesTag(node);
18726
18726
  return tag && tag.typeExpression && tag.typeExpression.type;
18727
18727
  }
18728
- var resolvingEmptyArray, externalHelpersModuleNameText, defaultMaximumTruncationLength, noTruncationMaximumTruncationLength, stringWriter, GetLiteralTextFlags, fullTripleSlashReferencePathRegEx, fullTripleSlashReferenceTypeReferenceDirectiveRegEx, fullTripleSlashAMDReferencePathRegEx, defaultLibReferenceRegEx, AssignmentKind, FunctionFlags, Associativity, OperatorPrecedence, templateSubstitutionRegExp, doubleQuoteEscapedCharsRegExp, singleQuoteEscapedCharsRegExp, backtickQuoteEscapedCharsRegExp, escapedCharsMap, nonAsciiCharacters, jsxDoubleQuoteEscapedCharsRegExp, jsxSingleQuoteEscapedCharsRegExp, jsxEscapedCharsMap, indentStrings, base64Digits, carriageReturnLineFeed, lineFeed, AccessKind, objectAllocator, objectAllocatorPatchers, localizedDiagnosticMessages, reservedCharacterPattern, wildcardCharCodes, commonPackageFolders, implicitExcludePathRegexPattern, filesMatcher, directoriesMatcher, excludeMatcher, wildcardMatchers, supportedTSExtensions, supportedTSExtensionsFlat, supportedTSExtensionsWithJson, supportedTSExtensionsForExtractExtension, supportedJSExtensions, supportedJSExtensionsFlat, allSupportedExtensions, allSupportedExtensionsWithJson, supportedDeclarationExtensions, supportedTSImplementationExtensions, ModuleSpecifierEnding, extensionsToRemove, emptyFileSystemEntries;
18728
+ var resolvingEmptyArray, externalHelpersModuleNameText, defaultMaximumTruncationLength, noTruncationMaximumTruncationLength, stringWriter, GetLiteralTextFlags, fullTripleSlashReferencePathRegEx, fullTripleSlashReferenceTypeReferenceDirectiveRegEx, fullTripleSlashAMDReferencePathRegEx, defaultLibReferenceRegEx, AssignmentKind, FunctionFlags, Associativity, OperatorPrecedence, templateSubstitutionRegExp, doubleQuoteEscapedCharsRegExp, singleQuoteEscapedCharsRegExp, backtickQuoteEscapedCharsRegExp, escapedCharsMap, nonAsciiCharacters, jsxDoubleQuoteEscapedCharsRegExp, jsxSingleQuoteEscapedCharsRegExp, jsxEscapedCharsMap, indentStrings, base64Digits, carriageReturnLineFeed, lineFeed, objectAllocator, objectAllocatorPatchers, localizedDiagnosticMessages, reservedCharacterPattern, wildcardCharCodes, commonPackageFolders, implicitExcludePathRegexPattern, filesMatcher, directoriesMatcher, excludeMatcher, wildcardMatchers, supportedTSExtensions, supportedTSExtensionsFlat, supportedTSExtensionsWithJson, supportedTSExtensionsForExtractExtension, supportedJSExtensions, supportedJSExtensionsFlat, allSupportedExtensions, allSupportedExtensionsWithJson, supportedDeclarationExtensions, supportedTSImplementationExtensions, ModuleSpecifierEnding, extensionsToRemove, emptyFileSystemEntries;
18729
18729
  var init_utilities = __esm({
18730
18730
  "src/compiler/utilities.ts"() {
18731
18731
  "use strict";
@@ -18829,12 +18829,6 @@ ${lanes.join("\n")}
18829
18829
  base64Digits = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
18830
18830
  carriageReturnLineFeed = "\r\n";
18831
18831
  lineFeed = "\n";
18832
- AccessKind = /* @__PURE__ */ ((AccessKind2) => {
18833
- AccessKind2[AccessKind2["Read"] = 0] = "Read";
18834
- AccessKind2[AccessKind2["Write"] = 1] = "Write";
18835
- AccessKind2[AccessKind2["ReadWrite"] = 2] = "ReadWrite";
18836
- return AccessKind2;
18837
- })(AccessKind || {});
18838
18832
  objectAllocator = {
18839
18833
  getNodeConstructor: () => Node4,
18840
18834
  getTokenConstructor: () => Token,
@@ -28302,7 +28296,7 @@ ${lanes.join("\n")}
28302
28296
  }
28303
28297
  sourceFlags = contextFlags;
28304
28298
  nextToken();
28305
- const statements = parseList(ParsingContext.SourceElements, parseStatement);
28299
+ const statements = parseList(0 /* SourceElements */, parseStatement);
28306
28300
  Debug.assert(token() === 1 /* EndOfFileToken */);
28307
28301
  const endOfFileToken = addJSDocComment(parseTokenNode());
28308
28302
  const sourceFile = createSourceFile2(fileName, languageVersion2, scriptKind2, isDeclarationFile, statements, endOfFileToken, sourceFlags, setExternalModuleIndicator2);
@@ -28365,7 +28359,7 @@ ${lanes.join("\n")}
28365
28359
  nextToken();
28366
28360
  while (token() !== 1 /* EndOfFileToken */) {
28367
28361
  const startPos = scanner2.getStartPos();
28368
- const statement = parseListElement(ParsingContext.SourceElements, parseStatement);
28362
+ const statement = parseListElement(0 /* SourceElements */, parseStatement);
28369
28363
  statements.push(statement);
28370
28364
  if (startPos === scanner2.getStartPos()) {
28371
28365
  nextToken();
@@ -29052,19 +29046,19 @@ ${lanes.join("\n")}
29052
29046
  return true;
29053
29047
  }
29054
29048
  switch (parsingContext2) {
29055
- case ParsingContext.SourceElements:
29056
- case ParsingContext.BlockStatements:
29057
- case ParsingContext.SwitchClauseStatements:
29049
+ case 0 /* SourceElements */:
29050
+ case 1 /* BlockStatements */:
29051
+ case 3 /* SwitchClauseStatements */:
29058
29052
  return !(token() === 26 /* SemicolonToken */ && inErrorRecovery) && isStartOfStatement();
29059
- case ParsingContext.SwitchClauses:
29053
+ case 2 /* SwitchClauses */:
29060
29054
  return token() === 82 /* CaseKeyword */ || token() === 88 /* DefaultKeyword */;
29061
- case ParsingContext.TypeMembers:
29055
+ case 4 /* TypeMembers */:
29062
29056
  return lookAhead(isTypeMemberStart);
29063
- case ParsingContext.ClassMembers:
29057
+ case 5 /* ClassMembers */:
29064
29058
  return lookAhead(isClassMemberStart) || token() === 26 /* SemicolonToken */ && !inErrorRecovery;
29065
- case ParsingContext.EnumMembers:
29059
+ case 6 /* EnumMembers */:
29066
29060
  return token() === 22 /* OpenBracketToken */ || isLiteralPropertyName();
29067
- case ParsingContext.ObjectLiteralMembers:
29061
+ case 12 /* ObjectLiteralMembers */:
29068
29062
  switch (token()) {
29069
29063
  case 22 /* OpenBracketToken */:
29070
29064
  case 41 /* AsteriskToken */:
@@ -29074,13 +29068,13 @@ ${lanes.join("\n")}
29074
29068
  default:
29075
29069
  return isLiteralPropertyName();
29076
29070
  }
29077
- case ParsingContext.RestProperties:
29071
+ case 18 /* RestProperties */:
29078
29072
  return isLiteralPropertyName();
29079
- case ParsingContext.ObjectBindingElements:
29073
+ case 9 /* ObjectBindingElements */:
29080
29074
  return token() === 22 /* OpenBracketToken */ || token() === 25 /* DotDotDotToken */ || isLiteralPropertyName();
29081
- case ParsingContext.AssertEntries:
29075
+ case 24 /* AssertEntries */:
29082
29076
  return isAssertionKey2();
29083
- case ParsingContext.HeritageClauseElement:
29077
+ case 7 /* HeritageClauseElement */:
29084
29078
  if (token() === 18 /* OpenBraceToken */) {
29085
29079
  return lookAhead(isValidHeritageClauseObjectLiteral);
29086
29080
  }
@@ -29089,40 +29083,40 @@ ${lanes.join("\n")}
29089
29083
  } else {
29090
29084
  return isIdentifier2() && !isHeritageClauseExtendsOrImplementsKeyword();
29091
29085
  }
29092
- case ParsingContext.VariableDeclarations:
29086
+ case 8 /* VariableDeclarations */:
29093
29087
  return isBindingIdentifierOrPrivateIdentifierOrPattern();
29094
- case ParsingContext.ArrayBindingElements:
29088
+ case 10 /* ArrayBindingElements */:
29095
29089
  return token() === 27 /* CommaToken */ || token() === 25 /* DotDotDotToken */ || isBindingIdentifierOrPrivateIdentifierOrPattern();
29096
- case ParsingContext.TypeParameters:
29090
+ case 19 /* TypeParameters */:
29097
29091
  return token() === 101 /* InKeyword */ || token() === 85 /* ConstKeyword */ || isIdentifier2();
29098
- case ParsingContext.ArrayLiteralMembers:
29092
+ case 15 /* ArrayLiteralMembers */:
29099
29093
  switch (token()) {
29100
29094
  case 27 /* CommaToken */:
29101
29095
  case 24 /* DotToken */:
29102
29096
  return true;
29103
29097
  }
29104
- case ParsingContext.ArgumentExpressions:
29098
+ case 11 /* ArgumentExpressions */:
29105
29099
  return token() === 25 /* DotDotDotToken */ || isStartOfExpression();
29106
- case ParsingContext.Parameters:
29100
+ case 16 /* Parameters */:
29107
29101
  return isStartOfParameter(
29108
29102
  /*isJSDocParameter*/
29109
29103
  false
29110
29104
  );
29111
- case ParsingContext.JSDocParameters:
29105
+ case 17 /* JSDocParameters */:
29112
29106
  return isStartOfParameter(
29113
29107
  /*isJSDocParameter*/
29114
29108
  true
29115
29109
  );
29116
- case ParsingContext.TypeArguments:
29117
- case ParsingContext.TupleElementTypes:
29110
+ case 20 /* TypeArguments */:
29111
+ case 21 /* TupleElementTypes */:
29118
29112
  return token() === 27 /* CommaToken */ || isStartOfType();
29119
- case ParsingContext.HeritageClauses:
29113
+ case 22 /* HeritageClauses */:
29120
29114
  return isHeritageClause2();
29121
- case ParsingContext.ImportOrExportSpecifiers:
29115
+ case 23 /* ImportOrExportSpecifiers */:
29122
29116
  return tokenIsIdentifierOrKeyword(token());
29123
- case ParsingContext.JsxAttributes:
29117
+ case 13 /* JsxAttributes */:
29124
29118
  return tokenIsIdentifierOrKeyword(token()) || token() === 18 /* OpenBraceToken */;
29125
- case ParsingContext.JsxChildren:
29119
+ case 14 /* JsxChildren */:
29126
29120
  return true;
29127
29121
  }
29128
29122
  return Debug.fail("Non-exhaustive case in 'isListElement'.");
@@ -29166,41 +29160,41 @@ ${lanes.join("\n")}
29166
29160
  return true;
29167
29161
  }
29168
29162
  switch (kind) {
29169
- case ParsingContext.BlockStatements:
29170
- case ParsingContext.SwitchClauses:
29171
- case ParsingContext.TypeMembers:
29172
- case ParsingContext.ClassMembers:
29173
- case ParsingContext.EnumMembers:
29174
- case ParsingContext.ObjectLiteralMembers:
29175
- case ParsingContext.ObjectBindingElements:
29176
- case ParsingContext.ImportOrExportSpecifiers:
29177
- case ParsingContext.AssertEntries:
29163
+ case 1 /* BlockStatements */:
29164
+ case 2 /* SwitchClauses */:
29165
+ case 4 /* TypeMembers */:
29166
+ case 5 /* ClassMembers */:
29167
+ case 6 /* EnumMembers */:
29168
+ case 12 /* ObjectLiteralMembers */:
29169
+ case 9 /* ObjectBindingElements */:
29170
+ case 23 /* ImportOrExportSpecifiers */:
29171
+ case 24 /* AssertEntries */:
29178
29172
  return token() === 19 /* CloseBraceToken */;
29179
- case ParsingContext.SwitchClauseStatements:
29173
+ case 3 /* SwitchClauseStatements */:
29180
29174
  return token() === 19 /* CloseBraceToken */ || token() === 82 /* CaseKeyword */ || token() === 88 /* DefaultKeyword */;
29181
- case ParsingContext.HeritageClauseElement:
29175
+ case 7 /* HeritageClauseElement */:
29182
29176
  return token() === 18 /* OpenBraceToken */ || token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
29183
- case ParsingContext.VariableDeclarations:
29177
+ case 8 /* VariableDeclarations */:
29184
29178
  return isVariableDeclaratorListTerminator();
29185
- case ParsingContext.TypeParameters:
29179
+ case 19 /* TypeParameters */:
29186
29180
  return token() === 31 /* GreaterThanToken */ || token() === 20 /* OpenParenToken */ || token() === 18 /* OpenBraceToken */ || token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
29187
- case ParsingContext.ArgumentExpressions:
29181
+ case 11 /* ArgumentExpressions */:
29188
29182
  return token() === 21 /* CloseParenToken */ || token() === 26 /* SemicolonToken */;
29189
- case ParsingContext.ArrayLiteralMembers:
29190
- case ParsingContext.TupleElementTypes:
29191
- case ParsingContext.ArrayBindingElements:
29183
+ case 15 /* ArrayLiteralMembers */:
29184
+ case 21 /* TupleElementTypes */:
29185
+ case 10 /* ArrayBindingElements */:
29192
29186
  return token() === 23 /* CloseBracketToken */;
29193
- case ParsingContext.JSDocParameters:
29194
- case ParsingContext.Parameters:
29195
- case ParsingContext.RestProperties:
29187
+ case 17 /* JSDocParameters */:
29188
+ case 16 /* Parameters */:
29189
+ case 18 /* RestProperties */:
29196
29190
  return token() === 21 /* CloseParenToken */ || token() === 23 /* CloseBracketToken */;
29197
- case ParsingContext.TypeArguments:
29191
+ case 20 /* TypeArguments */:
29198
29192
  return token() !== 27 /* CommaToken */;
29199
- case ParsingContext.HeritageClauses:
29193
+ case 22 /* HeritageClauses */:
29200
29194
  return token() === 18 /* OpenBraceToken */ || token() === 19 /* CloseBraceToken */;
29201
- case ParsingContext.JsxAttributes:
29195
+ case 13 /* JsxAttributes */:
29202
29196
  return token() === 31 /* GreaterThanToken */ || token() === 43 /* SlashToken */;
29203
- case ParsingContext.JsxChildren:
29197
+ case 14 /* JsxChildren */:
29204
29198
  return token() === 29 /* LessThanToken */ && lookAhead(nextTokenIsSlash);
29205
29199
  default:
29206
29200
  return false;
@@ -29219,7 +29213,7 @@ ${lanes.join("\n")}
29219
29213
  return false;
29220
29214
  }
29221
29215
  function isInSomeParsingContext() {
29222
- for (let kind = 0; kind < ParsingContext.Count; kind++) {
29216
+ for (let kind = 0; kind < 25 /* Count */; kind++) {
29223
29217
  if (parsingContext & 1 << kind) {
29224
29218
  if (isListElement2(
29225
29219
  kind,
@@ -29288,38 +29282,38 @@ ${lanes.join("\n")}
29288
29282
  }
29289
29283
  function isReusableParsingContext(parsingContext2) {
29290
29284
  switch (parsingContext2) {
29291
- case ParsingContext.ClassMembers:
29292
- case ParsingContext.SwitchClauses:
29293
- case ParsingContext.SourceElements:
29294
- case ParsingContext.BlockStatements:
29295
- case ParsingContext.SwitchClauseStatements:
29296
- case ParsingContext.EnumMembers:
29297
- case ParsingContext.TypeMembers:
29298
- case ParsingContext.VariableDeclarations:
29299
- case ParsingContext.JSDocParameters:
29300
- case ParsingContext.Parameters:
29285
+ case 5 /* ClassMembers */:
29286
+ case 2 /* SwitchClauses */:
29287
+ case 0 /* SourceElements */:
29288
+ case 1 /* BlockStatements */:
29289
+ case 3 /* SwitchClauseStatements */:
29290
+ case 6 /* EnumMembers */:
29291
+ case 4 /* TypeMembers */:
29292
+ case 8 /* VariableDeclarations */:
29293
+ case 17 /* JSDocParameters */:
29294
+ case 16 /* Parameters */:
29301
29295
  return true;
29302
29296
  }
29303
29297
  return false;
29304
29298
  }
29305
29299
  function canReuseNode(node, parsingContext2) {
29306
29300
  switch (parsingContext2) {
29307
- case ParsingContext.ClassMembers:
29301
+ case 5 /* ClassMembers */:
29308
29302
  return isReusableClassMember(node);
29309
- case ParsingContext.SwitchClauses:
29303
+ case 2 /* SwitchClauses */:
29310
29304
  return isReusableSwitchClause(node);
29311
- case ParsingContext.SourceElements:
29312
- case ParsingContext.BlockStatements:
29313
- case ParsingContext.SwitchClauseStatements:
29305
+ case 0 /* SourceElements */:
29306
+ case 1 /* BlockStatements */:
29307
+ case 3 /* SwitchClauseStatements */:
29314
29308
  return isReusableStatement(node);
29315
- case ParsingContext.EnumMembers:
29309
+ case 6 /* EnumMembers */:
29316
29310
  return isReusableEnumMember(node);
29317
- case ParsingContext.TypeMembers:
29311
+ case 4 /* TypeMembers */:
29318
29312
  return isReusableTypeMember(node);
29319
- case ParsingContext.VariableDeclarations:
29313
+ case 8 /* VariableDeclarations */:
29320
29314
  return isReusableVariableDeclaration(node);
29321
- case ParsingContext.JSDocParameters:
29322
- case ParsingContext.Parameters:
29315
+ case 17 /* JSDocParameters */:
29316
+ case 16 /* Parameters */:
29323
29317
  return isReusableParameter(node);
29324
29318
  }
29325
29319
  return false;
@@ -29429,56 +29423,56 @@ ${lanes.join("\n")}
29429
29423
  }
29430
29424
  function parsingContextErrors(context) {
29431
29425
  switch (context) {
29432
- case ParsingContext.SourceElements:
29426
+ case 0 /* SourceElements */:
29433
29427
  return token() === 88 /* DefaultKeyword */ ? parseErrorAtCurrentToken(Diagnostics._0_expected, tokenToString(93 /* ExportKeyword */)) : parseErrorAtCurrentToken(Diagnostics.Declaration_or_statement_expected);
29434
- case ParsingContext.BlockStatements:
29428
+ case 1 /* BlockStatements */:
29435
29429
  return parseErrorAtCurrentToken(Diagnostics.Declaration_or_statement_expected);
29436
- case ParsingContext.SwitchClauses:
29430
+ case 2 /* SwitchClauses */:
29437
29431
  return parseErrorAtCurrentToken(Diagnostics.case_or_default_expected);
29438
- case ParsingContext.SwitchClauseStatements:
29432
+ case 3 /* SwitchClauseStatements */:
29439
29433
  return parseErrorAtCurrentToken(Diagnostics.Statement_expected);
29440
- case ParsingContext.RestProperties:
29441
- case ParsingContext.TypeMembers:
29434
+ case 18 /* RestProperties */:
29435
+ case 4 /* TypeMembers */:
29442
29436
  return parseErrorAtCurrentToken(Diagnostics.Property_or_signature_expected);
29443
- case ParsingContext.ClassMembers:
29437
+ case 5 /* ClassMembers */:
29444
29438
  return parseErrorAtCurrentToken(Diagnostics.Unexpected_token_A_constructor_method_accessor_or_property_was_expected);
29445
- case ParsingContext.EnumMembers:
29439
+ case 6 /* EnumMembers */:
29446
29440
  return parseErrorAtCurrentToken(Diagnostics.Enum_member_expected);
29447
- case ParsingContext.HeritageClauseElement:
29441
+ case 7 /* HeritageClauseElement */:
29448
29442
  return parseErrorAtCurrentToken(Diagnostics.Expression_expected);
29449
- case ParsingContext.VariableDeclarations:
29443
+ case 8 /* VariableDeclarations */:
29450
29444
  return isKeyword(token()) ? parseErrorAtCurrentToken(Diagnostics._0_is_not_allowed_as_a_variable_declaration_name, tokenToString(token())) : parseErrorAtCurrentToken(Diagnostics.Variable_declaration_expected);
29451
- case ParsingContext.ObjectBindingElements:
29445
+ case 9 /* ObjectBindingElements */:
29452
29446
  return parseErrorAtCurrentToken(Diagnostics.Property_destructuring_pattern_expected);
29453
- case ParsingContext.ArrayBindingElements:
29447
+ case 10 /* ArrayBindingElements */:
29454
29448
  return parseErrorAtCurrentToken(Diagnostics.Array_element_destructuring_pattern_expected);
29455
- case ParsingContext.ArgumentExpressions:
29449
+ case 11 /* ArgumentExpressions */:
29456
29450
  return parseErrorAtCurrentToken(Diagnostics.Argument_expression_expected);
29457
- case ParsingContext.ObjectLiteralMembers:
29451
+ case 12 /* ObjectLiteralMembers */:
29458
29452
  return parseErrorAtCurrentToken(Diagnostics.Property_assignment_expected);
29459
- case ParsingContext.ArrayLiteralMembers:
29453
+ case 15 /* ArrayLiteralMembers */:
29460
29454
  return parseErrorAtCurrentToken(Diagnostics.Expression_or_comma_expected);
29461
- case ParsingContext.JSDocParameters:
29455
+ case 17 /* JSDocParameters */:
29462
29456
  return parseErrorAtCurrentToken(Diagnostics.Parameter_declaration_expected);
29463
- case ParsingContext.Parameters:
29457
+ case 16 /* Parameters */:
29464
29458
  return isKeyword(token()) ? parseErrorAtCurrentToken(Diagnostics._0_is_not_allowed_as_a_parameter_name, tokenToString(token())) : parseErrorAtCurrentToken(Diagnostics.Parameter_declaration_expected);
29465
- case ParsingContext.TypeParameters:
29459
+ case 19 /* TypeParameters */:
29466
29460
  return parseErrorAtCurrentToken(Diagnostics.Type_parameter_declaration_expected);
29467
- case ParsingContext.TypeArguments:
29461
+ case 20 /* TypeArguments */:
29468
29462
  return parseErrorAtCurrentToken(Diagnostics.Type_argument_expected);
29469
- case ParsingContext.TupleElementTypes:
29463
+ case 21 /* TupleElementTypes */:
29470
29464
  return parseErrorAtCurrentToken(Diagnostics.Type_expected);
29471
- case ParsingContext.HeritageClauses:
29465
+ case 22 /* HeritageClauses */:
29472
29466
  return parseErrorAtCurrentToken(Diagnostics.Unexpected_token_expected);
29473
- case ParsingContext.ImportOrExportSpecifiers:
29467
+ case 23 /* ImportOrExportSpecifiers */:
29474
29468
  return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
29475
- case ParsingContext.JsxAttributes:
29469
+ case 13 /* JsxAttributes */:
29476
29470
  return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
29477
- case ParsingContext.JsxChildren:
29471
+ case 14 /* JsxChildren */:
29478
29472
  return parseErrorAtCurrentToken(Diagnostics.Identifier_expected);
29479
- case ParsingContext.AssertEntries:
29473
+ case 24 /* AssertEntries */:
29480
29474
  return parseErrorAtCurrentToken(Diagnostics.Identifier_or_string_literal_expected);
29481
- case ParsingContext.Count:
29475
+ case 25 /* Count */:
29482
29476
  return Debug.fail("ParsingContext.Count used as a context");
29483
29477
  default:
29484
29478
  Debug.assertNever(context);
@@ -29537,7 +29531,7 @@ ${lanes.join("\n")}
29537
29531
  );
29538
29532
  }
29539
29533
  function getExpectedCommaDiagnostic(kind) {
29540
- return kind === ParsingContext.EnumMembers ? Diagnostics.An_enum_member_name_must_be_followed_by_a_or : void 0;
29534
+ return kind === 6 /* EnumMembers */ ? Diagnostics.An_enum_member_name_must_be_followed_by_a_or : void 0;
29541
29535
  }
29542
29536
  function createMissingList() {
29543
29537
  const list = createNodeArray([], getNodePos());
@@ -29731,7 +29725,7 @@ ${lanes.join("\n")}
29731
29725
  }
29732
29726
  function parseTypeArgumentsOfTypeReference() {
29733
29727
  if (!scanner2.hasPrecedingLineBreak() && reScanLessThanToken() === 29 /* LessThanToken */) {
29734
- return parseBracketedList(ParsingContext.TypeArguments, parseType, 29 /* LessThanToken */, 31 /* GreaterThanToken */);
29728
+ return parseBracketedList(20 /* TypeArguments */, parseType, 29 /* LessThanToken */, 31 /* GreaterThanToken */);
29735
29729
  }
29736
29730
  }
29737
29731
  function parseTypeReference() {
@@ -29913,7 +29907,7 @@ ${lanes.join("\n")}
29913
29907
  }
29914
29908
  function parseTypeParameters() {
29915
29909
  if (token() === 29 /* LessThanToken */) {
29916
- return parseBracketedList(ParsingContext.TypeParameters, parseTypeParameter, 29 /* LessThanToken */, 31 /* GreaterThanToken */);
29910
+ return parseBracketedList(19 /* TypeParameters */, parseTypeParameter, 29 /* LessThanToken */, 31 /* GreaterThanToken */);
29917
29911
  }
29918
29912
  }
29919
29913
  function isStartOfParameter(isJSDocParameter) {
@@ -30019,7 +30013,7 @@ ${lanes.join("\n")}
30019
30013
  const savedAwaitContext = inAwaitContext();
30020
30014
  setYieldContext(!!(flags & 1 /* Yield */));
30021
30015
  setAwaitContext(!!(flags & 2 /* Await */));
30022
- const parameters = flags & 32 /* JSDoc */ ? parseDelimitedList(ParsingContext.JSDocParameters, parseJSDocParameter) : parseDelimitedList(ParsingContext.Parameters, () => allowAmbiguity ? parseParameter(savedAwaitContext) : parseParameterForSpeculation(savedAwaitContext));
30016
+ const parameters = flags & 32 /* JSDoc */ ? parseDelimitedList(17 /* JSDocParameters */, parseJSDocParameter) : parseDelimitedList(16 /* Parameters */, () => allowAmbiguity ? parseParameter(savedAwaitContext) : parseParameterForSpeculation(savedAwaitContext));
30023
30017
  setYieldContext(savedYieldContext);
30024
30018
  setAwaitContext(savedAwaitContext);
30025
30019
  return parameters;
@@ -30087,7 +30081,7 @@ ${lanes.join("\n")}
30087
30081
  return token() === 58 /* ColonToken */ || token() === 27 /* CommaToken */ || token() === 23 /* CloseBracketToken */;
30088
30082
  }
30089
30083
  function parseIndexSignatureDeclaration(pos, hasJSDoc, modifiers) {
30090
- const parameters = parseBracketedList(ParsingContext.Parameters, () => parseParameter(
30084
+ const parameters = parseBracketedList(16 /* Parameters */, () => parseParameter(
30091
30085
  /*inOuterAwaitContext*/
30092
30086
  false
30093
30087
  ), 22 /* OpenBracketToken */, 23 /* CloseBracketToken */);
@@ -30186,7 +30180,7 @@ ${lanes.join("\n")}
30186
30180
  function parseObjectTypeMembers() {
30187
30181
  let members;
30188
30182
  if (parseExpected(18 /* OpenBraceToken */)) {
30189
- members = parseList(ParsingContext.TypeMembers, parseTypeMember);
30183
+ members = parseList(4 /* TypeMembers */, parseTypeMember);
30190
30184
  parseExpected(19 /* CloseBraceToken */);
30191
30185
  } else {
30192
30186
  members = createMissingList();
@@ -30240,7 +30234,7 @@ ${lanes.join("\n")}
30240
30234
  }
30241
30235
  const type = parseTypeAnnotation();
30242
30236
  parseSemicolon();
30243
- const members = parseList(ParsingContext.TypeMembers, parseTypeMember);
30237
+ const members = parseList(4 /* TypeMembers */, parseTypeMember);
30244
30238
  parseExpected(19 /* CloseBraceToken */);
30245
30239
  return finishNode(factory2.createMappedTypeNode(readonlyToken, typeParameter, nameType, questionToken, type, members), pos);
30246
30240
  }
@@ -30285,7 +30279,7 @@ ${lanes.join("\n")}
30285
30279
  const pos = getNodePos();
30286
30280
  return finishNode(
30287
30281
  factory2.createTupleTypeNode(
30288
- parseBracketedList(ParsingContext.TupleElementTypes, parseTupleElementNameOrTupleElementType, 22 /* OpenBracketToken */, 23 /* CloseBracketToken */)
30282
+ parseBracketedList(21 /* TupleElementTypes */, parseTupleElementNameOrTupleElementType, 22 /* OpenBracketToken */, 23 /* CloseBracketToken */)
30289
30283
  ),
30290
30284
  pos
30291
30285
  );
@@ -30913,10 +30907,10 @@ ${lanes.join("\n")}
30913
30907
  }
30914
30908
  function tryParseParenthesizedArrowFunctionExpression(allowReturnTypeInArrowFunction) {
30915
30909
  const triState = isParenthesizedArrowFunctionExpression();
30916
- if (triState === Tristate.False) {
30910
+ if (triState === 0 /* False */) {
30917
30911
  return void 0;
30918
30912
  }
30919
- return triState === Tristate.True ? parseParenthesizedArrowFunctionExpression(
30913
+ return triState === 1 /* True */ ? parseParenthesizedArrowFunctionExpression(
30920
30914
  /*allowAmbiguity*/
30921
30915
  true,
30922
30916
  /*allowReturnTypeInArrowFunction*/
@@ -30928,18 +30922,18 @@ ${lanes.join("\n")}
30928
30922
  return lookAhead(isParenthesizedArrowFunctionExpressionWorker);
30929
30923
  }
30930
30924
  if (token() === 38 /* EqualsGreaterThanToken */) {
30931
- return Tristate.True;
30925
+ return 1 /* True */;
30932
30926
  }
30933
- return Tristate.False;
30927
+ return 0 /* False */;
30934
30928
  }
30935
30929
  function isParenthesizedArrowFunctionExpressionWorker() {
30936
30930
  if (token() === 132 /* AsyncKeyword */) {
30937
30931
  nextToken();
30938
30932
  if (scanner2.hasPrecedingLineBreak()) {
30939
- return Tristate.False;
30933
+ return 0 /* False */;
30940
30934
  }
30941
30935
  if (token() !== 20 /* OpenParenToken */ && token() !== 29 /* LessThanToken */) {
30942
- return Tristate.False;
30936
+ return 0 /* False */;
30943
30937
  }
30944
30938
  }
30945
30939
  const first2 = token();
@@ -30951,45 +30945,45 @@ ${lanes.join("\n")}
30951
30945
  case 38 /* EqualsGreaterThanToken */:
30952
30946
  case 58 /* ColonToken */:
30953
30947
  case 18 /* OpenBraceToken */:
30954
- return Tristate.True;
30948
+ return 1 /* True */;
30955
30949
  default:
30956
- return Tristate.False;
30950
+ return 0 /* False */;
30957
30951
  }
30958
30952
  }
30959
30953
  if (second === 22 /* OpenBracketToken */ || second === 18 /* OpenBraceToken */) {
30960
- return Tristate.Unknown;
30954
+ return 2 /* Unknown */;
30961
30955
  }
30962
30956
  if (second === 25 /* DotDotDotToken */) {
30963
- return Tristate.True;
30957
+ return 1 /* True */;
30964
30958
  }
30965
30959
  if (isModifierKind(second) && second !== 132 /* AsyncKeyword */ && lookAhead(nextTokenIsIdentifier)) {
30966
30960
  if (nextToken() === 128 /* AsKeyword */) {
30967
- return Tristate.False;
30961
+ return 0 /* False */;
30968
30962
  }
30969
- return Tristate.True;
30963
+ return 1 /* True */;
30970
30964
  }
30971
30965
  if (!isIdentifier2() && second !== 108 /* ThisKeyword */) {
30972
- return Tristate.False;
30966
+ return 0 /* False */;
30973
30967
  }
30974
30968
  switch (nextToken()) {
30975
30969
  case 58 /* ColonToken */:
30976
- return Tristate.True;
30970
+ return 1 /* True */;
30977
30971
  case 57 /* QuestionToken */:
30978
30972
  nextToken();
30979
30973
  if (token() === 58 /* ColonToken */ || token() === 27 /* CommaToken */ || token() === 63 /* EqualsToken */ || token() === 21 /* CloseParenToken */) {
30980
- return Tristate.True;
30974
+ return 1 /* True */;
30981
30975
  }
30982
- return Tristate.False;
30976
+ return 0 /* False */;
30983
30977
  case 27 /* CommaToken */:
30984
30978
  case 63 /* EqualsToken */:
30985
30979
  case 21 /* CloseParenToken */:
30986
- return Tristate.Unknown;
30980
+ return 2 /* Unknown */;
30987
30981
  }
30988
- return Tristate.False;
30982
+ return 0 /* False */;
30989
30983
  } else {
30990
30984
  Debug.assert(first2 === 29 /* LessThanToken */);
30991
30985
  if (!isIdentifier2() && token() !== 85 /* ConstKeyword */) {
30992
- return Tristate.False;
30986
+ return 0 /* False */;
30993
30987
  }
30994
30988
  if (languageVariant === 1 /* JSX */) {
30995
30989
  const isArrowFunctionInJsx = lookAhead(() => {
@@ -31011,11 +31005,11 @@ ${lanes.join("\n")}
31011
31005
  return false;
31012
31006
  });
31013
31007
  if (isArrowFunctionInJsx) {
31014
- return Tristate.True;
31008
+ return 1 /* True */;
31015
31009
  }
31016
- return Tristate.False;
31010
+ return 0 /* False */;
31017
31011
  }
31018
- return Tristate.Unknown;
31012
+ return 2 /* Unknown */;
31019
31013
  }
31020
31014
  }
31021
31015
  function parsePossibleParenthesizedArrowFunctionExpression(allowReturnTypeInArrowFunction) {
@@ -31035,7 +31029,7 @@ ${lanes.join("\n")}
31035
31029
  }
31036
31030
  function tryParseAsyncSimpleArrowFunctionExpression(allowReturnTypeInArrowFunction) {
31037
31031
  if (token() === 132 /* AsyncKeyword */) {
31038
- if (lookAhead(isUnParenthesizedAsyncArrowFunctionWorker) === Tristate.True) {
31032
+ if (lookAhead(isUnParenthesizedAsyncArrowFunctionWorker) === 1 /* True */) {
31039
31033
  const pos = getNodePos();
31040
31034
  const asyncModifier = parseModifiersForArrowFunction();
31041
31035
  const expr = parseBinaryExpressionOrHigher(0 /* Lowest */);
@@ -31048,14 +31042,14 @@ ${lanes.join("\n")}
31048
31042
  if (token() === 132 /* AsyncKeyword */) {
31049
31043
  nextToken();
31050
31044
  if (scanner2.hasPrecedingLineBreak() || token() === 38 /* EqualsGreaterThanToken */) {
31051
- return Tristate.False;
31045
+ return 0 /* False */;
31052
31046
  }
31053
31047
  const expr = parseBinaryExpressionOrHigher(0 /* Lowest */);
31054
31048
  if (!scanner2.hasPrecedingLineBreak() && expr.kind === 79 /* Identifier */ && token() === 38 /* EqualsGreaterThanToken */) {
31055
- return Tristate.True;
31049
+ return 1 /* True */;
31056
31050
  }
31057
31051
  }
31058
- return Tristate.False;
31052
+ return 0 /* False */;
31059
31053
  }
31060
31054
  function parseParenthesizedArrowFunctionExpression(allowAmbiguity, allowReturnTypeInArrowFunction) {
31061
31055
  const pos = getNodePos();
@@ -31260,6 +31254,12 @@ ${lanes.join("\n")}
31260
31254
  case 114 /* VoidKeyword */:
31261
31255
  return parseVoidExpression();
31262
31256
  case 29 /* LessThanToken */:
31257
+ if (languageVariant === 1 /* JSX */ && token() === 29 /* LessThanToken */ && lookAhead(nextTokenIsIdentifierOrKeywordOrGreaterThan)) {
31258
+ return parseJsxElementOrSelfClosingElementOrFragment(
31259
+ /*inExpressionContext*/
31260
+ true
31261
+ );
31262
+ }
31263
31263
  return parseTypeAssertion();
31264
31264
  case 133 /* AwaitKeyword */:
31265
31265
  if (isAwaitExpression2()) {
@@ -31463,7 +31463,7 @@ ${lanes.join("\n")}
31463
31463
  const list = [];
31464
31464
  const listPos = getNodePos();
31465
31465
  const saveParsingContext = parsingContext;
31466
- parsingContext |= 1 << ParsingContext.JsxChildren;
31466
+ parsingContext |= 1 << 14 /* JsxChildren */;
31467
31467
  while (true) {
31468
31468
  const child = parseJsxChild(openingTag, currentToken = scanner2.reScanJsxToken());
31469
31469
  if (!child)
@@ -31478,7 +31478,7 @@ ${lanes.join("\n")}
31478
31478
  }
31479
31479
  function parseJsxAttributes() {
31480
31480
  const pos = getNodePos();
31481
- return finishNode(factory2.createJsxAttributes(parseList(ParsingContext.JsxAttributes, parseJsxAttribute)), pos);
31481
+ return finishNode(factory2.createJsxAttributes(parseList(13 /* JsxAttributes */, parseJsxAttribute)), pos);
31482
31482
  }
31483
31483
  function parseJsxOpeningOrSelfClosingElementOrOpeningFragment(inExpressionContext) {
31484
31484
  const pos = getNodePos();
@@ -31631,6 +31631,7 @@ ${lanes.join("\n")}
31631
31631
  return finishNode(factory2.createJsxJsxClosingFragment(), pos);
31632
31632
  }
31633
31633
  function parseTypeAssertion() {
31634
+ Debug.assert(scriptKind === 3 /* TS */ || scriptKind === 4 /* TSX */, "Type assertions should never be parsed outside of TS/TSX; they should either be comparisons or JSX.");
31634
31635
  const pos = getNodePos();
31635
31636
  parseExpected(29 /* LessThanToken */);
31636
31637
  const type = parseType();
@@ -31806,7 +31807,7 @@ ${lanes.join("\n")}
31806
31807
  }
31807
31808
  function parseArgumentList() {
31808
31809
  parseExpected(20 /* OpenParenToken */);
31809
- const result = parseDelimitedList(ParsingContext.ArgumentExpressions, parseArgumentExpression);
31810
+ const result = parseDelimitedList(11 /* ArgumentExpressions */, parseArgumentExpression);
31810
31811
  parseExpected(21 /* CloseParenToken */);
31811
31812
  return result;
31812
31813
  }
@@ -31818,7 +31819,7 @@ ${lanes.join("\n")}
31818
31819
  return void 0;
31819
31820
  }
31820
31821
  nextToken();
31821
- const typeArguments = parseDelimitedList(ParsingContext.TypeArguments, parseType);
31822
+ const typeArguments = parseDelimitedList(20 /* TypeArguments */, parseType);
31822
31823
  if (reScanGreaterToken() !== 31 /* GreaterThanToken */) {
31823
31824
  return void 0;
31824
31825
  }
@@ -31918,7 +31919,7 @@ ${lanes.join("\n")}
31918
31919
  const openBracketPosition = scanner2.getTokenPos();
31919
31920
  const openBracketParsed = parseExpected(22 /* OpenBracketToken */);
31920
31921
  const multiLine = scanner2.hasPrecedingLineBreak();
31921
- const elements = parseDelimitedList(ParsingContext.ArrayLiteralMembers, parseArgumentOrArrayLiteralElement);
31922
+ const elements = parseDelimitedList(15 /* ArrayLiteralMembers */, parseArgumentOrArrayLiteralElement);
31922
31923
  parseExpectedMatchingBrackets(22 /* OpenBracketToken */, 23 /* CloseBracketToken */, openBracketParsed, openBracketPosition);
31923
31924
  return finishNode(factory2.createArrayLiteralExpression(elements, multiLine), pos);
31924
31925
  }
@@ -31979,7 +31980,7 @@ ${lanes.join("\n")}
31979
31980
  const openBraceParsed = parseExpected(18 /* OpenBraceToken */);
31980
31981
  const multiLine = scanner2.hasPrecedingLineBreak();
31981
31982
  const properties = parseDelimitedList(
31982
- ParsingContext.ObjectLiteralMembers,
31983
+ 12 /* ObjectLiteralMembers */,
31983
31984
  parseObjectLiteralElement,
31984
31985
  /*considerSemicolonAsDelimiter*/
31985
31986
  true
@@ -32051,7 +32052,7 @@ ${lanes.join("\n")}
32051
32052
  const openBraceParsed = parseExpected(18 /* OpenBraceToken */, diagnosticMessage);
32052
32053
  if (openBraceParsed || ignoreMissingOpenBrace) {
32053
32054
  const multiLine = scanner2.hasPrecedingLineBreak();
32054
- const statements = parseList(ParsingContext.BlockStatements, parseStatement);
32055
+ const statements = parseList(1 /* BlockStatements */, parseStatement);
32055
32056
  parseExpectedMatchingBrackets(18 /* OpenBraceToken */, 19 /* CloseBraceToken */, openBraceParsed, openBracePosition);
32056
32057
  const result = withJSDoc(finishNode(factory2.createBlock(statements, multiLine), pos), hasJSDoc);
32057
32058
  if (token() === 63 /* EqualsToken */) {
@@ -32209,14 +32210,14 @@ ${lanes.join("\n")}
32209
32210
  parseExpected(82 /* CaseKeyword */);
32210
32211
  const expression = allowInAnd(parseExpression);
32211
32212
  parseExpected(58 /* ColonToken */);
32212
- const statements = parseList(ParsingContext.SwitchClauseStatements, parseStatement);
32213
+ const statements = parseList(3 /* SwitchClauseStatements */, parseStatement);
32213
32214
  return withJSDoc(finishNode(factory2.createCaseClause(expression, statements), pos), hasJSDoc);
32214
32215
  }
32215
32216
  function parseDefaultClause() {
32216
32217
  const pos = getNodePos();
32217
32218
  parseExpected(88 /* DefaultKeyword */);
32218
32219
  parseExpected(58 /* ColonToken */);
32219
- const statements = parseList(ParsingContext.SwitchClauseStatements, parseStatement);
32220
+ const statements = parseList(3 /* SwitchClauseStatements */, parseStatement);
32220
32221
  return finishNode(factory2.createDefaultClause(statements), pos);
32221
32222
  }
32222
32223
  function parseCaseOrDefaultClause() {
@@ -32225,7 +32226,7 @@ ${lanes.join("\n")}
32225
32226
  function parseCaseBlock() {
32226
32227
  const pos = getNodePos();
32227
32228
  parseExpected(18 /* OpenBraceToken */);
32228
- const clauses = parseList(ParsingContext.SwitchClauses, parseCaseOrDefaultClause);
32229
+ const clauses = parseList(2 /* SwitchClauses */, parseCaseOrDefaultClause);
32229
32230
  parseExpected(19 /* CloseBraceToken */);
32230
32231
  return finishNode(factory2.createCaseBlock(clauses), pos);
32231
32232
  }
@@ -32666,14 +32667,14 @@ ${lanes.join("\n")}
32666
32667
  function parseObjectBindingPattern() {
32667
32668
  const pos = getNodePos();
32668
32669
  parseExpected(18 /* OpenBraceToken */);
32669
- const elements = parseDelimitedList(ParsingContext.ObjectBindingElements, parseObjectBindingElement);
32670
+ const elements = parseDelimitedList(9 /* ObjectBindingElements */, parseObjectBindingElement);
32670
32671
  parseExpected(19 /* CloseBraceToken */);
32671
32672
  return finishNode(factory2.createObjectBindingPattern(elements), pos);
32672
32673
  }
32673
32674
  function parseArrayBindingPattern() {
32674
32675
  const pos = getNodePos();
32675
32676
  parseExpected(22 /* OpenBracketToken */);
32676
- const elements = parseDelimitedList(ParsingContext.ArrayBindingElements, parseArrayBindingElement);
32677
+ const elements = parseDelimitedList(10 /* ArrayBindingElements */, parseArrayBindingElement);
32677
32678
  parseExpected(23 /* CloseBracketToken */);
32678
32679
  return finishNode(factory2.createArrayBindingPattern(elements), pos);
32679
32680
  }
@@ -32731,7 +32732,7 @@ ${lanes.join("\n")}
32731
32732
  const savedDisallowIn = inDisallowInContext();
32732
32733
  setDisallowInContext(inForStatementInitializer);
32733
32734
  declarations = parseDelimitedList(
32734
- ParsingContext.VariableDeclarations,
32735
+ 8 /* VariableDeclarations */,
32735
32736
  inForStatementInitializer ? parseVariableDeclaration : parseVariableDeclarationAllowExclamation
32736
32737
  );
32737
32738
  setDisallowInContext(savedDisallowIn);
@@ -33134,7 +33135,7 @@ ${lanes.join("\n")}
33134
33135
  }
33135
33136
  function parseHeritageClauses() {
33136
33137
  if (isHeritageClause2()) {
33137
- return parseList(ParsingContext.HeritageClauses, parseHeritageClause);
33138
+ return parseList(22 /* HeritageClauses */, parseHeritageClause);
33138
33139
  }
33139
33140
  return void 0;
33140
33141
  }
@@ -33143,7 +33144,7 @@ ${lanes.join("\n")}
33143
33144
  const tok = token();
33144
33145
  Debug.assert(tok === 94 /* ExtendsKeyword */ || tok === 117 /* ImplementsKeyword */);
33145
33146
  nextToken();
33146
- const types = parseDelimitedList(ParsingContext.HeritageClauseElement, parseExpressionWithTypeArguments);
33147
+ const types = parseDelimitedList(7 /* HeritageClauseElement */, parseExpressionWithTypeArguments);
33147
33148
  return finishNode(factory2.createHeritageClause(tok, types), pos);
33148
33149
  }
33149
33150
  function parseExpressionWithTypeArguments() {
@@ -33156,13 +33157,13 @@ ${lanes.join("\n")}
33156
33157
  return finishNode(factory2.createExpressionWithTypeArguments(expression, typeArguments), pos);
33157
33158
  }
33158
33159
  function tryParseTypeArguments() {
33159
- return token() === 29 /* LessThanToken */ ? parseBracketedList(ParsingContext.TypeArguments, parseType, 29 /* LessThanToken */, 31 /* GreaterThanToken */) : void 0;
33160
+ return token() === 29 /* LessThanToken */ ? parseBracketedList(20 /* TypeArguments */, parseType, 29 /* LessThanToken */, 31 /* GreaterThanToken */) : void 0;
33160
33161
  }
33161
33162
  function isHeritageClause2() {
33162
33163
  return token() === 94 /* ExtendsKeyword */ || token() === 117 /* ImplementsKeyword */;
33163
33164
  }
33164
33165
  function parseClassMembers() {
33165
- return parseList(ParsingContext.ClassMembers, parseClassElement);
33166
+ return parseList(5 /* ClassMembers */, parseClassElement);
33166
33167
  }
33167
33168
  function parseInterfaceDeclaration(pos, hasJSDoc, modifiers) {
33168
33169
  parseExpected(118 /* InterfaceKeyword */);
@@ -33195,7 +33196,7 @@ ${lanes.join("\n")}
33195
33196
  const name = parseIdentifier();
33196
33197
  let members;
33197
33198
  if (parseExpected(18 /* OpenBraceToken */)) {
33198
- members = doOutsideOfYieldAndAwaitContext(() => parseDelimitedList(ParsingContext.EnumMembers, parseEnumMember));
33199
+ members = doOutsideOfYieldAndAwaitContext(() => parseDelimitedList(6 /* EnumMembers */, parseEnumMember));
33199
33200
  parseExpected(19 /* CloseBraceToken */);
33200
33201
  } else {
33201
33202
  members = createMissingList();
@@ -33207,7 +33208,7 @@ ${lanes.join("\n")}
33207
33208
  const pos = getNodePos();
33208
33209
  let statements;
33209
33210
  if (parseExpected(18 /* OpenBraceToken */)) {
33210
- statements = parseList(ParsingContext.BlockStatements, parseStatement);
33211
+ statements = parseList(1 /* BlockStatements */, parseStatement);
33211
33212
  parseExpected(19 /* CloseBraceToken */);
33212
33213
  } else {
33213
33214
  statements = createMissingList();
@@ -33332,7 +33333,7 @@ ${lanes.join("\n")}
33332
33333
  if (parseExpected(18 /* OpenBraceToken */)) {
33333
33334
  const multiLine = scanner2.hasPrecedingLineBreak();
33334
33335
  const elements = parseDelimitedList(
33335
- ParsingContext.AssertEntries,
33336
+ 24 /* AssertEntries */,
33336
33337
  parseAssertEntry,
33337
33338
  /*considerSemicolonAsDelimiter*/
33338
33339
  true
@@ -33416,7 +33417,7 @@ ${lanes.join("\n")}
33416
33417
  }
33417
33418
  function parseNamedImportsOrExports(kind) {
33418
33419
  const pos = getNodePos();
33419
- const node = kind === 272 /* NamedImports */ ? factory2.createNamedImports(parseBracketedList(ParsingContext.ImportOrExportSpecifiers, parseImportSpecifier, 18 /* OpenBraceToken */, 19 /* CloseBraceToken */)) : factory2.createNamedExports(parseBracketedList(ParsingContext.ImportOrExportSpecifiers, parseExportSpecifier, 18 /* OpenBraceToken */, 19 /* CloseBraceToken */));
33420
+ const node = kind === 272 /* NamedImports */ ? factory2.createNamedImports(parseBracketedList(23 /* ImportOrExportSpecifiers */, parseImportSpecifier, 18 /* OpenBraceToken */, 19 /* CloseBraceToken */)) : factory2.createNamedExports(parseBracketedList(23 /* ImportOrExportSpecifiers */, parseExportSpecifier, 18 /* OpenBraceToken */, 19 /* CloseBraceToken */));
33420
33421
  return finishNode(node, pos);
33421
33422
  }
33422
33423
  function parseExportSpecifier() {
@@ -34865,7 +34866,7 @@ ${lanes.join("\n")}
34865
34866
  let currentArrayIndex = 0;
34866
34867
  Debug.assert(currentArrayIndex < currentArray.length);
34867
34868
  let current = currentArray[currentArrayIndex];
34868
- let lastQueriedPosition = InvalidPosition.Value;
34869
+ let lastQueriedPosition = -1 /* Value */;
34869
34870
  return {
34870
34871
  currentNode(position) {
34871
34872
  if (position !== lastQueriedPosition) {
@@ -34884,7 +34885,7 @@ ${lanes.join("\n")}
34884
34885
  };
34885
34886
  function findHighestListElementThatStartsAtPosition(position) {
34886
34887
  currentArray = void 0;
34887
- currentArrayIndex = InvalidPosition.Value;
34888
+ currentArrayIndex = -1 /* Value */;
34888
34889
  current = void 0;
34889
34890
  forEachChild(sourceFile, visitNode3, visitArray2);
34890
34891
  return;
@@ -38471,9 +38472,9 @@ ${lanes.join("\n")}
38471
38472
  const affectingLocations = [];
38472
38473
  let features = getNodeResolutionFeatures(options);
38473
38474
  if (resolutionMode === 99 /* ESNext */ && (getEmitModuleResolutionKind(options) === 3 /* Node16 */ || getEmitModuleResolutionKind(options) === 99 /* NodeNext */)) {
38474
- features |= NodeResolutionFeatures.EsmMode;
38475
+ features |= 32 /* EsmMode */;
38475
38476
  }
38476
- const conditions = features & NodeResolutionFeatures.Exports ? getConditions(options, !!(features & NodeResolutionFeatures.EsmMode)) : [];
38477
+ const conditions = features & 8 /* Exports */ ? getConditions(options, !!(features & 32 /* EsmMode */)) : [];
38477
38478
  const diagnostics = [];
38478
38479
  const moduleResolutionState = {
38479
38480
  compilerOptions: options,
@@ -38606,27 +38607,27 @@ ${lanes.join("\n")}
38606
38607
  }
38607
38608
  }
38608
38609
  function getNodeResolutionFeatures(options) {
38609
- let features = NodeResolutionFeatures.None;
38610
+ let features = 0 /* None */;
38610
38611
  switch (getEmitModuleResolutionKind(options)) {
38611
38612
  case 3 /* Node16 */:
38612
- features = NodeResolutionFeatures.Node16Default;
38613
+ features = 30 /* Node16Default */;
38613
38614
  break;
38614
38615
  case 99 /* NodeNext */:
38615
- features = NodeResolutionFeatures.NodeNextDefault;
38616
+ features = 30 /* NodeNextDefault */;
38616
38617
  break;
38617
38618
  case 100 /* Bundler */:
38618
- features = NodeResolutionFeatures.BundlerDefault;
38619
+ features = 30 /* BundlerDefault */;
38619
38620
  break;
38620
38621
  }
38621
38622
  if (options.resolvePackageJsonExports) {
38622
- features |= NodeResolutionFeatures.Exports;
38623
+ features |= 8 /* Exports */;
38623
38624
  } else if (options.resolvePackageJsonExports === false) {
38624
- features &= ~NodeResolutionFeatures.Exports;
38625
+ features &= ~8 /* Exports */;
38625
38626
  }
38626
38627
  if (options.resolvePackageJsonImports) {
38627
- features |= NodeResolutionFeatures.Imports;
38628
+ features |= 2 /* Imports */;
38628
38629
  } else if (options.resolvePackageJsonImports === false) {
38629
- features &= ~NodeResolutionFeatures.Imports;
38630
+ features &= ~2 /* Imports */;
38630
38631
  }
38631
38632
  return features;
38632
38633
  }
@@ -60603,24 +60604,16 @@ ${lanes.join("\n")}
60603
60604
  void 0
60604
60605
  ) !== 0 /* False */;
60605
60606
  }
60606
- function isTopSignature(s) {
60607
- if (!s.typeParameters && (!s.thisParameter || isTypeAny(getTypeOfParameter(s.thisParameter))) && s.parameters.length === 1 && signatureHasRestParameter(s)) {
60608
- const paramType = getTypeOfParameter(s.parameters[0]);
60609
- const restType = isArrayType(paramType) ? getTypeArguments(paramType)[0] : paramType;
60610
- return !!(restType.flags & (1 /* Any */ | 131072 /* Never */) && getReturnTypeOfSignature(s).flags & 3 /* AnyOrUnknown */);
60611
- }
60612
- return false;
60607
+ function isAnySignature(s) {
60608
+ return !s.typeParameters && (!s.thisParameter || isTypeAny(getTypeOfParameter(s.thisParameter))) && s.parameters.length === 1 && signatureHasRestParameter(s) && (getTypeOfParameter(s.parameters[0]) === anyArrayType || isTypeAny(getTypeOfParameter(s.parameters[0]))) && isTypeAny(getReturnTypeOfSignature(s));
60613
60609
  }
60614
60610
  function compareSignaturesRelated(source, target, checkMode, reportErrors2, errorReporter, incompatibleErrorReporter, compareTypes, reportUnreliableMarkers) {
60615
60611
  if (source === target) {
60616
60612
  return -1 /* True */;
60617
60613
  }
60618
- if (!(checkMode & 16 /* StrictTopSignature */ && isTopSignature(source)) && isTopSignature(target)) {
60614
+ if (isAnySignature(target)) {
60619
60615
  return -1 /* True */;
60620
60616
  }
60621
- if (checkMode & 16 /* StrictTopSignature */ && isTopSignature(source) && !isTopSignature(target)) {
60622
- return 0 /* False */;
60623
- }
60624
60617
  const targetCount = getParameterCount(target);
60625
60618
  const sourceHasMoreParameters = !hasEffectiveRestParameter(target) && (checkMode & 8 /* StrictArity */ ? hasEffectiveRestParameter(source) || getParameterCount(source) > targetCount : getMinArgumentCount(source) > targetCount);
60626
60619
  if (sourceHasMoreParameters) {
@@ -60838,9 +60831,7 @@ ${lanes.join("\n")}
60838
60831
  function isSimpleTypeRelatedTo(source, target, relation, errorReporter) {
60839
60832
  const s = source.flags;
60840
60833
  const t = target.flags;
60841
- if (t & 1 /* Any */ || s & 131072 /* Never */ || source === wildcardType)
60842
- return true;
60843
- if (t & 2 /* Unknown */ && !(relation === strictSubtypeRelation && s & 1 /* Any */))
60834
+ if (t & 3 /* AnyOrUnknown */ || s & 131072 /* Never */ || source === wildcardType)
60844
60835
  return true;
60845
60836
  if (t & 131072 /* Never */)
60846
60837
  return false;
@@ -63080,11 +63071,10 @@ ${lanes.join("\n")}
63080
63071
  return (source2, target2) => reportIncompatibleError(Diagnostics.Construct_signature_return_types_0_and_1_are_incompatible, typeToString(source2), typeToString(target2));
63081
63072
  }
63082
63073
  function signatureRelatedTo(source2, target2, erase, reportErrors2, intersectionState, incompatibleReporter) {
63083
- const checkMode = relation === subtypeRelation ? 16 /* StrictTopSignature */ : relation === strictSubtypeRelation ? 16 /* StrictTopSignature */ | 8 /* StrictArity */ : 0 /* None */;
63084
63074
  return compareSignaturesRelated(
63085
63075
  erase ? getErasedSignature(source2) : source2,
63086
63076
  erase ? getErasedSignature(target2) : target2,
63087
- checkMode,
63077
+ relation === strictSubtypeRelation ? 8 /* StrictArity */ : 0,
63088
63078
  reportErrors2,
63089
63079
  reportError,
63090
63080
  incompatibleReporter,
@@ -63209,7 +63199,7 @@ ${lanes.join("\n")}
63209
63199
  if (sourceInfo) {
63210
63200
  return indexInfoRelatedTo(sourceInfo, targetInfo, reportErrors2, intersectionState);
63211
63201
  }
63212
- if (!(intersectionState & 1 /* Source */) && (relation !== strictSubtypeRelation || getObjectFlags(source2) & 8192 /* FreshLiteral */) && isObjectTypeWithInferableIndex(source2)) {
63202
+ if (!(intersectionState & 1 /* Source */) && isObjectTypeWithInferableIndex(source2)) {
63213
63203
  return membersRelatedToIndexInfo(source2, targetInfo, reportErrors2, intersectionState);
63214
63204
  }
63215
63205
  if (reportErrors2) {
@@ -63739,7 +63729,17 @@ ${lanes.join("\n")}
63739
63729
  return propType;
63740
63730
  }
63741
63731
  if (everyType(type, isTupleType)) {
63742
- return mapType(type, (t) => getRestTypeOfTupleType(t) || undefinedType);
63732
+ return mapType(type, (t) => {
63733
+ const tupleType = t;
63734
+ const restType = getRestTypeOfTupleType(tupleType);
63735
+ if (!restType) {
63736
+ return undefinedType;
63737
+ }
63738
+ if (compilerOptions.noUncheckedIndexedAccess && index >= tupleType.target.fixedLength + getEndElementCount(tupleType.target, 3 /* Fixed */)) {
63739
+ return getUnionType([restType, undefinedType]);
63740
+ }
63741
+ return restType;
63742
+ });
63743
63743
  }
63744
63744
  return void 0;
63745
63745
  }
@@ -66381,7 +66381,7 @@ ${lanes.join("\n")}
66381
66381
  }
66382
66382
  return declaredType;
66383
66383
  }
66384
- if (isVariableDeclaration(node) && node.parent.parent.kind === 246 /* ForInStatement */ && isMatchingReference(reference, node.parent.parent.expression)) {
66384
+ if (isVariableDeclaration(node) && node.parent.parent.kind === 246 /* ForInStatement */ && (isMatchingReference(reference, node.parent.parent.expression) || optionalChainContainsReference(node.parent.parent.expression, reference))) {
66385
66385
  return getNonNullableTypeIfNeeded(finalizeEvolvingArrayType(getTypeFromFlowType(getTypeAtFlowNode(flow.antecedent))));
66386
66386
  }
66387
66387
  return void 0;
@@ -67096,29 +67096,18 @@ ${lanes.join("\n")}
67096
67096
  return (_a3 = getCachedType(key2)) != null ? _a3 : setCachedType(key2, getNarrowedTypeWorker(type, candidate, assumeTrue, checkDerived));
67097
67097
  }
67098
67098
  function getNarrowedTypeWorker(type, candidate, assumeTrue, checkDerived) {
67099
+ const isRelated = checkDerived ? isTypeDerivedFrom : isTypeSubtypeOf;
67099
67100
  if (!assumeTrue) {
67100
- if (checkDerived) {
67101
- return filterType(type, (t) => !isTypeDerivedFrom(t, candidate));
67102
- }
67103
- const trueType2 = getNarrowedType(
67104
- type,
67105
- candidate,
67106
- /*assumeTrue*/
67107
- true,
67108
- /*checkDerived*/
67109
- false
67110
- );
67111
- return filterType(type, (t) => !isTypeSubsetOf(t, trueType2));
67101
+ return filterType(type, (t) => !isRelated(t, candidate));
67112
67102
  }
67113
67103
  if (type.flags & 3 /* AnyOrUnknown */) {
67114
67104
  return candidate;
67115
67105
  }
67116
- const isRelated = checkDerived ? isTypeDerivedFrom : isTypeSubtypeOf;
67117
67106
  const keyPropertyName = type.flags & 1048576 /* Union */ ? getKeyPropertyName(type) : void 0;
67118
67107
  const narrowedType = mapType(candidate, (c) => {
67119
67108
  const discriminant = keyPropertyName && getTypeOfPropertyOfType(c, keyPropertyName);
67120
67109
  const matching = discriminant && getConstituentTypeForKeyType(type, discriminant);
67121
- const directlyRelated = mapType(matching || type, checkDerived ? (t) => isTypeDerivedFrom(t, c) ? t : isTypeDerivedFrom(c, t) ? c : neverType : (t) => isTypeSubtypeOf(c, t) && !isTypeIdenticalTo(c, t) ? c : isTypeSubtypeOf(t, c) ? t : neverType);
67110
+ const directlyRelated = mapType(matching || type, checkDerived ? (t) => isTypeDerivedFrom(t, c) ? t : isTypeDerivedFrom(c, t) ? c : neverType : (t) => isTypeSubtypeOf(c, t) ? c : isTypeSubtypeOf(t, c) ? t : neverType);
67122
67111
  return directlyRelated.flags & 131072 /* Never */ ? mapType(type, (t) => maybeTypeOfKind(t, 465829888 /* Instantiable */) && isRelated(c, getBaseConstraintOfType(t) || unknownType) ? getIntersectionType([t, c]) : neverType) : directlyRelated;
67123
67112
  });
67124
67113
  return !(narrowedType.flags & 131072 /* Never */) ? narrowedType : isTypeSubtypeOf(candidate, type) ? candidate : isTypeAssignableTo(type, candidate) ? type : isTypeAssignableTo(candidate, type) ? candidate : getIntersectionType([type, candidate]);
@@ -74874,7 +74863,7 @@ ${lanes.join("\n")}
74874
74863
  return leftType;
74875
74864
  } else {
74876
74865
  checkAssignmentOperator(rightType);
74877
- return rightType;
74866
+ return getRegularTypeOfObjectLiteral(rightType);
74878
74867
  }
74879
74868
  case 27 /* CommaToken */:
74880
74869
  if (!compilerOptions.allowUnreachableCode && isSideEffectFree(left) && !isIndirectCall(left.parent)) {
@@ -84593,7 +84582,6 @@ ${lanes.join("\n")}
84593
84582
  SignatureCheckMode3[SignatureCheckMode3["StrictCallback"] = 2] = "StrictCallback";
84594
84583
  SignatureCheckMode3[SignatureCheckMode3["IgnoreReturnTypes"] = 4] = "IgnoreReturnTypes";
84595
84584
  SignatureCheckMode3[SignatureCheckMode3["StrictArity"] = 8] = "StrictArity";
84596
- SignatureCheckMode3[SignatureCheckMode3["StrictTopSignature"] = 16] = "StrictTopSignature";
84597
84585
  SignatureCheckMode3[SignatureCheckMode3["Callback"] = 3] = "Callback";
84598
84586
  return SignatureCheckMode3;
84599
84587
  })(SignatureCheckMode || {});
@@ -103260,6 +103248,9 @@ ${lanes.join("\n")}
103260
103248
  return visitEachChild(node, visitor, context);
103261
103249
  }
103262
103250
  function visitImportCallExpression(node) {
103251
+ if (moduleKind === 0 /* None */ && languageVersion >= 7 /* ES2020 */) {
103252
+ return visitEachChild(node, visitor, context);
103253
+ }
103263
103254
  const externalModuleName = getExternalModuleNameLiteral(factory2, node, currentSourceFile, host, resolver, compilerOptions);
103264
103255
  const firstArgument = visitNode(firstOrUndefined(node.arguments), visitor, isExpression);
103265
103256
  const argument = externalModuleName && (!firstArgument || !isStringLiteral(firstArgument) || firstArgument.text !== externalModuleName.text) ? externalModuleName : firstArgument;
@@ -109563,9 +109554,9 @@ ${lanes.join("\n")}
109563
109554
  formattedNameTempFlagsStack = [];
109564
109555
  formattedNameTempFlags = /* @__PURE__ */ new Map();
109565
109556
  privateNameTempFlagsStack = [];
109566
- privateNameTempFlags = TempFlags.Auto;
109557
+ privateNameTempFlags = 0 /* Auto */;
109567
109558
  tempFlagsStack = [];
109568
- tempFlags = TempFlags.Auto;
109559
+ tempFlags = 0 /* Auto */;
109569
109560
  reservedNamesStack = [];
109570
109561
  reservedNames = void 0;
109571
109562
  reservedPrivateNamesStack = [];
@@ -110534,7 +110525,7 @@ ${lanes.join("\n")}
110534
110525
  }
110535
110526
  function emitTypeLiteral(node) {
110536
110527
  pushPrivateNameGenerationScope(
110537
- TempFlags.Auto,
110528
+ 0 /* Auto */,
110538
110529
  /*newReservedMemberNames*/
110539
110530
  void 0
110540
110531
  );
@@ -110723,7 +110714,7 @@ ${lanes.join("\n")}
110723
110714
  }
110724
110715
  function emitObjectLiteralExpression(node) {
110725
110716
  pushPrivateNameGenerationScope(
110726
- TempFlags.Auto,
110717
+ 0 /* Auto */,
110727
110718
  /*newReservedMemberNames*/
110728
110719
  void 0
110729
110720
  );
@@ -111489,7 +111480,7 @@ ${lanes.join("\n")}
111489
111480
  }
111490
111481
  function emitClassDeclarationOrExpression(node) {
111491
111482
  pushPrivateNameGenerationScope(
111492
- TempFlags.Auto,
111483
+ 0 /* Auto */,
111493
111484
  /*newReservedMemberNames*/
111494
111485
  void 0
111495
111486
  );
@@ -111522,7 +111513,7 @@ ${lanes.join("\n")}
111522
111513
  }
111523
111514
  function emitInterfaceDeclaration(node) {
111524
111515
  pushPrivateNameGenerationScope(
111525
- TempFlags.Auto,
111516
+ 0 /* Auto */,
111526
111517
  /*newReservedMemberNames*/
111527
111518
  void 0
111528
111519
  );
@@ -112965,7 +112956,7 @@ ${lanes.join("\n")}
112965
112956
  return;
112966
112957
  }
112967
112958
  tempFlagsStack.push(tempFlags);
112968
- tempFlags = TempFlags.Auto;
112959
+ tempFlags = 0 /* Auto */;
112969
112960
  formattedNameTempFlagsStack.push(formattedNameTempFlags);
112970
112961
  formattedNameTempFlags = void 0;
112971
112962
  reservedNamesStack.push(reservedNames);
@@ -113151,7 +113142,7 @@ ${lanes.join("\n")}
113151
113142
  case "#":
113152
113143
  return privateNameTempFlags;
113153
113144
  default:
113154
- return (_a2 = formattedNameTempFlags == null ? void 0 : formattedNameTempFlags.get(formattedNameKey)) != null ? _a2 : TempFlags.Auto;
113145
+ return (_a2 = formattedNameTempFlags == null ? void 0 : formattedNameTempFlags.get(formattedNameKey)) != null ? _a2 : 0 /* Auto */;
113155
113146
  }
113156
113147
  }
113157
113148
  function setTempFlags(formattedNameKey, flags) {
@@ -113175,7 +113166,7 @@ ${lanes.join("\n")}
113175
113166
  const key = formatGeneratedName(privateName, prefix, "", suffix);
113176
113167
  let tempFlags2 = getTempFlags(key);
113177
113168
  if (flags && !(tempFlags2 & flags)) {
113178
- const name = flags === TempFlags._i ? "_i" : "_n";
113169
+ const name = flags === 268435456 /* _i */ ? "_i" : "_n";
113179
113170
  const fullName = formatGeneratedName(privateName, prefix, name, suffix);
113180
113171
  if (isUniqueName(fullName, privateName)) {
113181
113172
  tempFlags2 |= flags;
@@ -113189,7 +113180,7 @@ ${lanes.join("\n")}
113189
113180
  }
113190
113181
  }
113191
113182
  while (true) {
113192
- const count = tempFlags2 & TempFlags.CountMask;
113183
+ const count = tempFlags2 & 268435455 /* CountMask */;
113193
113184
  tempFlags2++;
113194
113185
  if (count !== 8 && count !== 13) {
113195
113186
  const name = count < 26 ? "_" + String.fromCharCode(97 /* a */ + count) : "_" + (count - 26);
@@ -113333,7 +113324,7 @@ ${lanes.join("\n")}
113333
113324
  return generateNameCached(node.name, privateName);
113334
113325
  }
113335
113326
  return makeTempVariableName(
113336
- TempFlags.Auto,
113327
+ 0 /* Auto */,
113337
113328
  /*reservedInNestedScopes*/
113338
113329
  false,
113339
113330
  privateName,
@@ -113390,7 +113381,7 @@ ${lanes.join("\n")}
113390
113381
  return generateNameForMethodOrAccessor(node, privateName, prefix, suffix);
113391
113382
  case 164 /* ComputedPropertyName */:
113392
113383
  return makeTempVariableName(
113393
- TempFlags.Auto,
113384
+ 0 /* Auto */,
113394
113385
  /*reserveInNestedScopes*/
113395
113386
  true,
113396
113387
  privateName,
@@ -113399,7 +113390,7 @@ ${lanes.join("\n")}
113399
113390
  );
113400
113391
  default:
113401
113392
  return makeTempVariableName(
113402
- TempFlags.Auto,
113393
+ 0 /* Auto */,
113403
113394
  /*reserveInNestedScopes*/
113404
113395
  false,
113405
113396
  privateName,
@@ -113414,11 +113405,11 @@ ${lanes.join("\n")}
113414
113405
  const suffix = formatGeneratedNamePart(autoGenerate.suffix);
113415
113406
  switch (autoGenerate.flags & 7 /* KindMask */) {
113416
113407
  case 1 /* Auto */:
113417
- return makeTempVariableName(TempFlags.Auto, !!(autoGenerate.flags & 8 /* ReservedInNestedScopes */), isPrivateIdentifier(name), prefix, suffix);
113408
+ return makeTempVariableName(0 /* Auto */, !!(autoGenerate.flags & 8 /* ReservedInNestedScopes */), isPrivateIdentifier(name), prefix, suffix);
113418
113409
  case 2 /* Loop */:
113419
113410
  Debug.assertNode(name, isIdentifier);
113420
113411
  return makeTempVariableName(
113421
- TempFlags._i,
113412
+ 268435456 /* _i */,
113422
113413
  !!(autoGenerate.flags & 8 /* ReservedInNestedScopes */),
113423
113414
  /*privateName*/
113424
113415
  false,
@@ -113900,7 +113891,7 @@ ${lanes.join("\n")}
113900
113891
  function getEmitListItem(emit, parenthesizerRule) {
113901
113892
  return emit.length === 1 ? emitListItemNoParenthesizer : typeof parenthesizerRule === "object" ? emitListItemWithParenthesizerRuleSelector : emitListItemWithParenthesizerRule;
113902
113893
  }
113903
- var brackets, notImplementedResolver, createPrinterWithDefaults, createPrinterWithRemoveComments, createPrinterWithRemoveCommentsNeverAsciiEscape, createPrinterWithRemoveCommentsOmitTrailingSemicolon, TempFlags;
113894
+ var brackets, notImplementedResolver, createPrinterWithDefaults, createPrinterWithRemoveComments, createPrinterWithRemoveCommentsNeverAsciiEscape, createPrinterWithRemoveCommentsOmitTrailingSemicolon;
113904
113895
  var init_emitter = __esm({
113905
113896
  "src/compiler/emitter.ts"() {
113906
113897
  "use strict";
@@ -113955,12 +113946,6 @@ ${lanes.join("\n")}
113955
113946
  createPrinterWithRemoveComments = /* @__PURE__ */ memoize(() => createPrinter({ removeComments: true }));
113956
113947
  createPrinterWithRemoveCommentsNeverAsciiEscape = /* @__PURE__ */ memoize(() => createPrinter({ removeComments: true, neverAsciiEscape: true }));
113957
113948
  createPrinterWithRemoveCommentsOmitTrailingSemicolon = /* @__PURE__ */ memoize(() => createPrinter({ removeComments: true, omitTrailingSemicolon: true }));
113958
- TempFlags = /* @__PURE__ */ ((TempFlags2) => {
113959
- TempFlags2[TempFlags2["Auto"] = 0] = "Auto";
113960
- TempFlags2[TempFlags2["CountMask"] = 268435455] = "CountMask";
113961
- TempFlags2[TempFlags2["_i"] = 268435456] = "_i";
113962
- return TempFlags2;
113963
- })(TempFlags || {});
113964
113949
  }
113965
113950
  });
113966
113951
 
@@ -126632,7 +126617,7 @@ ${lanes.join("\n")}
126632
126617
  );
126633
126618
  }
126634
126619
  function makeStringLiteral(text, quotePreference) {
126635
- return factory.createStringLiteral(text, quotePreference === QuotePreference.Single);
126620
+ return factory.createStringLiteral(text, quotePreference === 0 /* Single */);
126636
126621
  }
126637
126622
  function quotePreferenceFromString(str, sourceFile) {
126638
126623
  return isStringDoubleQuoted(str, sourceFile) ? 1 /* Double */ : 0 /* Single */;
@@ -139383,13 +139368,13 @@ ${lanes.join("\n")}
139383
139368
  var _a2, _b;
139384
139369
  const { fix, symbolName: symbolName2 } = info;
139385
139370
  switch (fix.kind) {
139386
- case ImportFixKind.UseNamespace:
139371
+ case 0 /* UseNamespace */:
139387
139372
  addToNamespace.push(fix);
139388
139373
  break;
139389
- case ImportFixKind.JsdocTypeImport:
139374
+ case 1 /* JsdocTypeImport */:
139390
139375
  importType.push(fix);
139391
139376
  break;
139392
- case ImportFixKind.AddToExisting: {
139377
+ case 2 /* AddToExisting */: {
139393
139378
  const { importClauseOrBindingPattern, importKind, addAsTypeOnly } = fix;
139394
139379
  const key = String(getNodeId(importClauseOrBindingPattern));
139395
139380
  let entry = addToExisting.get(key);
@@ -139408,7 +139393,7 @@ ${lanes.join("\n")}
139408
139393
  }
139409
139394
  break;
139410
139395
  }
139411
- case ImportFixKind.AddNew: {
139396
+ case 3 /* AddNew */: {
139412
139397
  const { moduleSpecifier, importKind, useRequire, addAsTypeOnly } = fix;
139413
139398
  const entry = getNewImportEntry(moduleSpecifier, importKind, useRequire, addAsTypeOnly);
139414
139399
  Debug.assert(entry.useRequire === useRequire, "(Add new) Tried to add an `import` and a `require` for the same module");
@@ -139429,7 +139414,7 @@ ${lanes.join("\n")}
139429
139414
  }
139430
139415
  break;
139431
139416
  }
139432
- case ImportFixKind.PromoteTypeOnly:
139417
+ case 4 /* PromoteTypeOnly */:
139433
139418
  break;
139434
139419
  default:
139435
139420
  Debug.assertNever(fix, `fix wasn't never - got kind ${fix.kind}`);
@@ -139456,13 +139441,13 @@ ${lanes.join("\n")}
139456
139441
  namespaceLikeImport: void 0,
139457
139442
  useRequire
139458
139443
  };
139459
- if (importKind === 1 /* Default */ && addAsTypeOnly === AddAsTypeOnly.Required) {
139444
+ if (importKind === 1 /* Default */ && addAsTypeOnly === 2 /* Required */) {
139460
139445
  if (typeOnlyEntry)
139461
139446
  return typeOnlyEntry;
139462
139447
  newImports.set(typeOnlyKey, newEntry);
139463
139448
  return newEntry;
139464
139449
  }
139465
- if (addAsTypeOnly === AddAsTypeOnly.Allowed && (typeOnlyEntry || nonTypeOnlyEntry)) {
139450
+ if (addAsTypeOnly === 1 /* Allowed */ && (typeOnlyEntry || nonTypeOnlyEntry)) {
139466
139451
  return typeOnlyEntry || nonTypeOnlyEntry;
139467
139452
  }
139468
139453
  if (nonTypeOnlyEntry) {
@@ -140469,7 +140454,7 @@ ${lanes.join("\n")}
140469
140454
  }
140470
140455
  return !isStringANonContextualKeyword(res) ? res || "_" : `_${res}`;
140471
140456
  }
140472
- var importFixName, importFixId, errorCodes17, ImportFixKind, AddAsTypeOnly;
140457
+ var importFixName, importFixId, errorCodes17;
140473
140458
  var init_importFixes = __esm({
140474
140459
  "src/services/codefixes/importFixes.ts"() {
140475
140460
  "use strict";
@@ -140528,20 +140513,6 @@ ${lanes.join("\n")}
140528
140513
  return createCombinedCodeActions(ts_textChanges_exports.ChangeTracker.with(context, importAdder.writeFixes));
140529
140514
  }
140530
140515
  });
140531
- ImportFixKind = /* @__PURE__ */ ((ImportFixKind2) => {
140532
- ImportFixKind2[ImportFixKind2["UseNamespace"] = 0] = "UseNamespace";
140533
- ImportFixKind2[ImportFixKind2["JsdocTypeImport"] = 1] = "JsdocTypeImport";
140534
- ImportFixKind2[ImportFixKind2["AddToExisting"] = 2] = "AddToExisting";
140535
- ImportFixKind2[ImportFixKind2["AddNew"] = 3] = "AddNew";
140536
- ImportFixKind2[ImportFixKind2["PromoteTypeOnly"] = 4] = "PromoteTypeOnly";
140537
- return ImportFixKind2;
140538
- })(ImportFixKind || {});
140539
- AddAsTypeOnly = /* @__PURE__ */ ((AddAsTypeOnly2) => {
140540
- AddAsTypeOnly2[AddAsTypeOnly2["Allowed"] = 1] = "Allowed";
140541
- AddAsTypeOnly2[AddAsTypeOnly2["Required"] = 2] = "Required";
140542
- AddAsTypeOnly2[AddAsTypeOnly2["NotAllowed"] = 4] = "NotAllowed";
140543
- return AddAsTypeOnly2;
140544
- })(AddAsTypeOnly || {});
140545
140516
  }
140546
140517
  });
140547
140518
 
@@ -146845,19 +146816,19 @@ ${lanes.join("\n")}
146845
146816
  return void 0;
146846
146817
  }
146847
146818
  switch (completionData.kind) {
146848
- case CompletionDataKind.Data:
146819
+ case 0 /* Data */:
146849
146820
  const response = completionInfoFromData(sourceFile, host, program, compilerOptions, log, completionData, preferences, formatContext, position);
146850
146821
  if (response == null ? void 0 : response.isIncomplete) {
146851
146822
  incompleteCompletionsCache == null ? void 0 : incompleteCompletionsCache.set(response);
146852
146823
  }
146853
146824
  return response;
146854
- case CompletionDataKind.JsDocTagName:
146825
+ case 1 /* JsDocTagName */:
146855
146826
  return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocTagNameCompletions());
146856
- case CompletionDataKind.JsDocTag:
146827
+ case 2 /* JsDocTag */:
146857
146828
  return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocTagCompletions());
146858
- case CompletionDataKind.JsDocParameterName:
146829
+ case 3 /* JsDocParameterName */:
146859
146830
  return jsdocCompletionInfo(ts_JsDoc_exports.getJSDocParameterNameCompletions(completionData.tag));
146860
- case CompletionDataKind.Keywords:
146831
+ case 4 /* Keywords */:
146861
146832
  return specificKeywordCompletionInfo(completionData.keywordCompletions, completionData.isNewIdentifierLocation);
146862
146833
  default:
146863
146834
  return Debug.assertNever(completionData);
@@ -146960,7 +146931,7 @@ ${lanes.join("\n")}
146960
146931
  }
146961
146932
  function keywordCompletionData(keywordFilters, filterOutTsOnlyKeywords, isNewIdentifierLocation) {
146962
146933
  return {
146963
- kind: CompletionDataKind.Keywords,
146934
+ kind: 4 /* Keywords */,
146964
146935
  keywordCompletions: getKeywordCompletions(keywordFilters, filterOutTsOnlyKeywords),
146965
146936
  isNewIdentifierLocation
146966
146937
  };
@@ -147237,9 +147208,9 @@ ${lanes.join("\n")}
147237
147208
  }
147238
147209
  function isMemberCompletionKind(kind) {
147239
147210
  switch (kind) {
147240
- case CompletionKind.ObjectPropertyDeclaration:
147241
- case CompletionKind.MemberLike:
147242
- case CompletionKind.PropertyAccess:
147211
+ case 0 /* ObjectPropertyDeclaration */:
147212
+ case 3 /* MemberLike */:
147213
+ case 2 /* PropertyAccess */:
147243
147214
  return true;
147244
147215
  default:
147245
147216
  return false;
@@ -147355,7 +147326,7 @@ ${lanes.join("\n")}
147355
147326
  if ((origin == null ? void 0 : origin.kind) === 64 /* TypeOnlyAlias */) {
147356
147327
  hasAction = true;
147357
147328
  }
147358
- if (preferences.includeCompletionsWithClassMemberSnippets && preferences.includeCompletionsWithInsertText && completionKind === CompletionKind.MemberLike && isClassLikeMemberCompletion(symbol, location, sourceFile)) {
147329
+ if (preferences.includeCompletionsWithClassMemberSnippets && preferences.includeCompletionsWithInsertText && completionKind === 3 /* MemberLike */ && isClassLikeMemberCompletion(symbol, location, sourceFile)) {
147359
147330
  let importAdder;
147360
147331
  ({ insertText, isSnippet, importAdder, replacementSpan } = getEntryForMemberCompletion(host, program, options, preferences, name, symbol, location, position, contextToken, formatContext));
147361
147332
  sortText = SortText.ClassMemberSnippets;
@@ -147890,7 +147861,7 @@ ${lanes.join("\n")}
147890
147861
  const symbol = symbols[i];
147891
147862
  const origin = symbolToOriginInfoMap == null ? void 0 : symbolToOriginInfoMap[i];
147892
147863
  const info = getCompletionEntryDisplayNameForSymbol(symbol, target, origin, kind, !!jsxIdentifierExpected);
147893
- if (!info || uniques.get(info.name) && (!origin || !originIsObjectLiteralMethod(origin)) || kind === CompletionKind.Global && symbolToSortTextMap && !shouldIncludeSymbol(symbol, symbolToSortTextMap)) {
147864
+ if (!info || uniques.get(info.name) && (!origin || !originIsObjectLiteralMethod(origin)) || kind === 1 /* Global */ && symbolToSortTextMap && !shouldIncludeSymbol(symbol, symbolToSortTextMap)) {
147894
147865
  continue;
147895
147866
  }
147896
147867
  const { name, needsConvertPropertyAccess } = info;
@@ -148029,7 +148000,7 @@ ${lanes.join("\n")}
148029
148000
  if (!completionData) {
148030
148001
  return { type: "none" };
148031
148002
  }
148032
- if (completionData.kind !== CompletionDataKind.Data) {
148003
+ if (completionData.kind !== 0 /* Data */) {
148033
148004
  return { type: "request", request: completionData };
148034
148005
  }
148035
148006
  const { symbols, literals, location, completionKind, symbolToOriginInfoMap, contextToken, previousToken, isJsxInitializer, isTypeOnlyLocation } = completionData;
@@ -148055,13 +148026,13 @@ ${lanes.join("\n")}
148055
148026
  case "request": {
148056
148027
  const { request } = symbolCompletion;
148057
148028
  switch (request.kind) {
148058
- case CompletionDataKind.JsDocTagName:
148029
+ case 1 /* JsDocTagName */:
148059
148030
  return ts_JsDoc_exports.getJSDocTagNameCompletionDetails(name);
148060
- case CompletionDataKind.JsDocTag:
148031
+ case 2 /* JsDocTag */:
148061
148032
  return ts_JsDoc_exports.getJSDocTagCompletionDetails(name);
148062
- case CompletionDataKind.JsDocParameterName:
148033
+ case 3 /* JsDocParameterName */:
148063
148034
  return ts_JsDoc_exports.getJSDocParameterNameCompletionDetails(name);
148064
- case CompletionDataKind.Keywords:
148035
+ case 4 /* Keywords */:
148065
148036
  return some(request.keywordCompletions, (c) => c.name === name) ? createSimpleDetails(name, "keyword" /* keyword */, 5 /* keyword */) : void 0;
148066
148037
  default:
148067
148038
  return Debug.assertNever(request);
@@ -150067,7 +150038,7 @@ ${lanes.join("\n")}
150067
150038
  }
150068
150039
  return charCode;
150069
150040
  }
150070
- var moduleSpecifierResolutionLimit, moduleSpecifierResolutionCacheAttemptLimit, SortText, CompletionSource, SymbolOriginInfoKind, CompletionDataKind, CompletionKind, _keywordCompletions, allKeywordsCompletions;
150041
+ var moduleSpecifierResolutionLimit, moduleSpecifierResolutionCacheAttemptLimit, SortText, CompletionSource, SymbolOriginInfoKind, CompletionKind, _keywordCompletions, allKeywordsCompletions;
150071
150042
  var init_completions = __esm({
150072
150043
  "src/services/completions.ts"() {
150073
150044
  "use strict";
@@ -150119,14 +150090,6 @@ ${lanes.join("\n")}
150119
150090
  SymbolOriginInfoKind2[SymbolOriginInfoKind2["SymbolMemberExport"] = 6] = "SymbolMemberExport";
150120
150091
  return SymbolOriginInfoKind2;
150121
150092
  })(SymbolOriginInfoKind || {});
150122
- CompletionDataKind = /* @__PURE__ */ ((CompletionDataKind2) => {
150123
- CompletionDataKind2[CompletionDataKind2["Data"] = 0] = "Data";
150124
- CompletionDataKind2[CompletionDataKind2["JsDocTagName"] = 1] = "JsDocTagName";
150125
- CompletionDataKind2[CompletionDataKind2["JsDocTag"] = 2] = "JsDocTag";
150126
- CompletionDataKind2[CompletionDataKind2["JsDocParameterName"] = 3] = "JsDocParameterName";
150127
- CompletionDataKind2[CompletionDataKind2["Keywords"] = 4] = "Keywords";
150128
- return CompletionDataKind2;
150129
- })(CompletionDataKind || {});
150130
150093
  CompletionKind = /* @__PURE__ */ ((CompletionKind2) => {
150131
150094
  CompletionKind2[CompletionKind2["ObjectPropertyDeclaration"] = 0] = "ObjectPropertyDeclaration";
150132
150095
  CompletionKind2[CompletionKind2["Global"] = 1] = "Global";
@@ -150185,9 +150148,9 @@ ${lanes.join("\n")}
150185
150148
  }
150186
150149
  const optionalReplacementSpan = createTextSpanFromStringLiteralLikeContent(contextToken);
150187
150150
  switch (completion.kind) {
150188
- case StringLiteralCompletionKind.Paths:
150151
+ case 0 /* Paths */:
150189
150152
  return convertPathCompletions(completion.paths);
150190
- case StringLiteralCompletionKind.Properties: {
150153
+ case 1 /* Properties */: {
150191
150154
  const entries = createSortedArray();
150192
150155
  getCompletionEntriesFromSymbols(
150193
150156
  completion.symbols,
@@ -150209,7 +150172,7 @@ ${lanes.join("\n")}
150209
150172
  );
150210
150173
  return { isGlobalCompletion: false, isMemberCompletion: true, isNewIdentifierLocation: completion.hasIndexSignature, optionalReplacementSpan, entries };
150211
150174
  }
150212
- case StringLiteralCompletionKind.Types: {
150175
+ case 2 /* Types */: {
150213
150176
  const entries = completion.types.map((type) => ({
150214
150177
  name: type.value,
150215
150178
  kindModifiers: "" /* none */,
@@ -150231,15 +150194,15 @@ ${lanes.join("\n")}
150231
150194
  }
150232
150195
  function stringLiteralCompletionDetails(name, location, completion, sourceFile, checker, cancellationToken) {
150233
150196
  switch (completion.kind) {
150234
- case StringLiteralCompletionKind.Paths: {
150197
+ case 0 /* Paths */: {
150235
150198
  const match = find(completion.paths, (p) => p.name === name);
150236
150199
  return match && createCompletionDetails(name, kindModifiersFromExtension(match.extension), match.kind, [textPart(name)]);
150237
150200
  }
150238
- case StringLiteralCompletionKind.Properties: {
150201
+ case 1 /* Properties */: {
150239
150202
  const match = find(completion.symbols, (s) => s.name === name);
150240
150203
  return match && createCompletionDetailsForSymbol(match, checker, sourceFile, location, cancellationToken);
150241
150204
  }
150242
- case StringLiteralCompletionKind.Types:
150205
+ case 2 /* Types */:
150243
150206
  return find(completion.types, (t) => t.value === name) ? createCompletionDetails(name, "" /* none */, "string" /* string */, [textPart(name)]) : void 0;
150244
150207
  default:
150245
150208
  return Debug.assertNever(completion);
@@ -150441,7 +150404,7 @@ ${lanes.join("\n")}
150441
150404
  const mode = isStringLiteralLike(node) ? getModeForUsageLocation(sourceFile, node) : void 0;
150442
150405
  const scriptPath = sourceFile.path;
150443
150406
  const scriptDirectory = getDirectoryPath(scriptPath);
150444
- const extensionOptions = getExtensionOptions(compilerOptions, ReferenceKind.ModuleSpecifier, sourceFile, typeChecker, preferences, mode);
150407
+ const extensionOptions = getExtensionOptions(compilerOptions, 1 /* ModuleSpecifier */, sourceFile, typeChecker, preferences, mode);
150445
150408
  return isPathRelativeToScript(literalValue) || !compilerOptions.baseUrl && (isRootedDiskPath(literalValue) || isUrl(literalValue)) ? getCompletionEntriesForRelativeModules(literalValue, scriptDirectory, compilerOptions, host, scriptPath, extensionOptions) : getCompletionEntriesForNonRelativeModules(literalValue, scriptDirectory, mode, compilerOptions, host, extensionOptions, typeChecker);
150446
150409
  }
150447
150410
  function getExtensionOptions(compilerOptions, referenceKind, importingSourceFile, typeChecker, preferences, resolutionMode) {
@@ -150957,7 +150920,7 @@ ${lanes.join("\n")}
150957
150920
  function isRequireCallArgument(node) {
150958
150921
  return isCallExpression(node.parent) && firstOrUndefined(node.parent.arguments) === node && isIdentifier(node.parent.expression) && node.parent.expression.escapedText === "require";
150959
150922
  }
150960
- var kindPrecedence, StringLiteralCompletionKind, ReferenceKind, tripleSlashDirectiveFragmentRegex, nodeModulesDependencyKeys;
150923
+ var kindPrecedence, tripleSlashDirectiveFragmentRegex, nodeModulesDependencyKeys;
150961
150924
  var init_stringCompletions = __esm({
150962
150925
  "src/services/stringCompletions.ts"() {
150963
150926
  "use strict";
@@ -150968,17 +150931,6 @@ ${lanes.join("\n")}
150968
150931
  ["script" /* scriptElement */]: 1,
150969
150932
  ["external module name" /* externalModuleName */]: 2
150970
150933
  };
150971
- StringLiteralCompletionKind = /* @__PURE__ */ ((StringLiteralCompletionKind2) => {
150972
- StringLiteralCompletionKind2[StringLiteralCompletionKind2["Paths"] = 0] = "Paths";
150973
- StringLiteralCompletionKind2[StringLiteralCompletionKind2["Properties"] = 1] = "Properties";
150974
- StringLiteralCompletionKind2[StringLiteralCompletionKind2["Types"] = 2] = "Types";
150975
- return StringLiteralCompletionKind2;
150976
- })(StringLiteralCompletionKind || {});
150977
- ReferenceKind = /* @__PURE__ */ ((ReferenceKind2) => {
150978
- ReferenceKind2[ReferenceKind2["Filename"] = 0] = "Filename";
150979
- ReferenceKind2[ReferenceKind2["ModuleSpecifier"] = 1] = "ModuleSpecifier";
150980
- return ReferenceKind2;
150981
- })(ReferenceKind || {});
150982
150934
  tripleSlashDirectiveFragmentRegex = /^(\/\/\/\s*<reference\s+(path|types)\s*=\s*(?:'|"))([^\3"]*)$/;
150983
150935
  nodeModulesDependencyKeys = ["dependencies", "devDependencies", "peerDependencies", "optionalDependencies"];
150984
150936
  }
@@ -152329,7 +152281,7 @@ ${lanes.join("\n")}
152329
152281
  ) || originalSymbol;
152330
152282
  const searchMeaning = node ? getIntersectingMeaningFromDeclarations(node, symbol) : 7 /* All */;
152331
152283
  const result = [];
152332
- const state = new State(sourceFiles, sourceFilesSet, node ? getSpecialSearchKind(node) : SpecialSearchKind.None, checker, cancellationToken, searchMeaning, options, result);
152284
+ const state = new State(sourceFiles, sourceFilesSet, node ? getSpecialSearchKind(node) : 0 /* None */, checker, cancellationToken, searchMeaning, options, result);
152333
152285
  const exportSpecifier = !isForRenameWithPrefixAndSuffixText(options) || !symbol.declarations ? void 0 : find(symbol.declarations, isExportSpecifier);
152334
152286
  if (exportSpecifier) {
152335
152287
  getReferencesAtExportSpecifier(
@@ -152385,14 +152337,14 @@ ${lanes.join("\n")}
152385
152337
  switch (node.kind) {
152386
152338
  case 173 /* Constructor */:
152387
152339
  case 135 /* ConstructorKeyword */:
152388
- return SpecialSearchKind.Constructor;
152340
+ return 1 /* Constructor */;
152389
152341
  case 79 /* Identifier */:
152390
152342
  if (isClassLike(node.parent)) {
152391
152343
  Debug.assert(node.parent.name === node);
152392
- return SpecialSearchKind.Class;
152344
+ return 2 /* Class */;
152393
152345
  }
152394
152346
  default:
152395
- return SpecialSearchKind.None;
152347
+ return 0 /* None */;
152396
152348
  }
152397
152349
  }
152398
152350
  function skipPastExportOrImportSpecifierOrUnion(symbol, node, checker, useLocalSymbolForExportSpecifier) {
@@ -159458,10 +159410,10 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
159458
159410
  const scopeDescription = isFunctionLikeDeclaration(scope) ? getDescriptionForFunctionLikeDeclaration(scope) : isClassLike(scope) ? getDescriptionForClassLikeDeclaration(scope) : getDescriptionForModuleLikeDeclaration(scope);
159459
159411
  let functionDescription;
159460
159412
  let constantDescription;
159461
- if (scopeDescription === SpecialScope.Global) {
159413
+ if (scopeDescription === 1 /* Global */) {
159462
159414
  functionDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [functionDescriptionPart, "global"]);
159463
159415
  constantDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [constantDescriptionPart, "global"]);
159464
- } else if (scopeDescription === SpecialScope.Module) {
159416
+ } else if (scopeDescription === 0 /* Module */) {
159465
159417
  functionDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [functionDescriptionPart, "module"]);
159466
159418
  constantDescription = formatStringFromArgs(getLocaleSpecificMessage(Diagnostics.Extract_to_0_in_1_scope), [constantDescriptionPart, "module"]);
159467
159419
  } else {
@@ -159527,7 +159479,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
159527
159479
  return scope.kind === 260 /* ClassDeclaration */ ? scope.name ? `class '${scope.name.text}'` : "anonymous class declaration" : scope.name ? `class expression '${scope.name.text}'` : "anonymous class expression";
159528
159480
  }
159529
159481
  function getDescriptionForModuleLikeDeclaration(scope) {
159530
- return scope.kind === 265 /* ModuleBlock */ ? `namespace '${scope.parent.name.getText()}'` : scope.externalModuleIndicator ? SpecialScope.Module : SpecialScope.Global;
159482
+ return scope.kind === 265 /* ModuleBlock */ ? `namespace '${scope.parent.name.getText()}'` : scope.externalModuleIndicator ? 0 /* Module */ : 1 /* Global */;
159531
159483
  }
159532
159484
  function extractFunctionInScope(node, scope, { usages: usagesInScope, typeParameterUsages, substitutions }, exposedVariableDeclarations, range, context) {
159533
159485
  const checker = context.program.getTypeChecker();
@@ -159560,7 +159512,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
159560
159512
  typeNode
159561
159513
  );
159562
159514
  parameters.push(paramDecl);
159563
- if (usage.usage === Usage.Write) {
159515
+ if (usage.usage === 2 /* Write */) {
159564
159516
  (writes || (writes = [])).push(usage);
159565
159517
  }
159566
159518
  callArguments.push(factory.createIdentifier(name));
@@ -160518,7 +160470,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
160518
160470
  function isStringLiteralJsxAttribute(node) {
160519
160471
  return isStringLiteral(node) && node.parent && isJsxAttribute(node.parent);
160520
160472
  }
160521
- var refactorName11, extractConstantAction, extractFunctionAction, Messages, RangeFacts, SpecialScope, Usage;
160473
+ var refactorName11, extractConstantAction, extractFunctionAction, Messages, RangeFacts;
160522
160474
  var init_extractSymbol = __esm({
160523
160475
  "src/services/refactors/extractSymbol.ts"() {
160524
160476
  "use strict";
@@ -160581,16 +160533,6 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
160581
160533
  RangeFacts2[RangeFacts2["InStaticRegion"] = 32] = "InStaticRegion";
160582
160534
  return RangeFacts2;
160583
160535
  })(RangeFacts || {});
160584
- SpecialScope = /* @__PURE__ */ ((SpecialScope2) => {
160585
- SpecialScope2[SpecialScope2["Module"] = 0] = "Module";
160586
- SpecialScope2[SpecialScope2["Global"] = 1] = "Global";
160587
- return SpecialScope2;
160588
- })(SpecialScope || {});
160589
- Usage = /* @__PURE__ */ ((Usage2) => {
160590
- Usage2[Usage2["Read"] = 1] = "Read";
160591
- Usage2[Usage2["Write"] = 2] = "Write";
160592
- return Usage2;
160593
- })(Usage || {});
160594
160536
  }
160595
160537
  });
160596
160538
 
@@ -161022,7 +160964,7 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
161022
160964
  if (!candidateInfo) {
161023
160965
  return isSourceFileJS(sourceFile) ? createJSSignatureHelpItems(argumentInfo, program, cancellationToken) : void 0;
161024
160966
  }
161025
- return typeChecker.runWithCancellationToken(cancellationToken, (typeChecker2) => candidateInfo.kind === CandidateOrTypeKind.Candidate ? createSignatureHelpItems(candidateInfo.candidates, candidateInfo.resolvedSignature, argumentInfo, sourceFile, typeChecker2) : createTypeHelpItems(candidateInfo.symbol, argumentInfo, sourceFile, typeChecker2));
160967
+ return typeChecker.runWithCancellationToken(cancellationToken, (typeChecker2) => candidateInfo.kind === 0 /* Candidate */ ? createSignatureHelpItems(candidateInfo.candidates, candidateInfo.resolvedSignature, argumentInfo, sourceFile, typeChecker2) : createTypeHelpItems(candidateInfo.symbol, argumentInfo, sourceFile, typeChecker2));
161026
160968
  }
161027
160969
  function getCandidateOrTypeInfo({ invocation, argumentCount }, checker, sourceFile, startingToken, onlyUseSyntacticOwners) {
161028
160970
  switch (invocation.kind) {
@@ -161494,16 +161436,11 @@ ${newComment.split("\n").map((c) => ` * ${c}`).join("\n")}
161494
161436
  });
161495
161437
  return { name: typeParameter.symbol.name, documentation: typeParameter.symbol.getDocumentationComment(checker), displayParts, isOptional: false, isRest: false };
161496
161438
  }
161497
- var CandidateOrTypeKind, signatureHelpNodeBuilderFlags, separatorDisplayParts;
161439
+ var signatureHelpNodeBuilderFlags, separatorDisplayParts;
161498
161440
  var init_signatureHelp = __esm({
161499
161441
  "src/services/signatureHelp.ts"() {
161500
161442
  "use strict";
161501
161443
  init_ts4();
161502
- CandidateOrTypeKind = /* @__PURE__ */ ((CandidateOrTypeKind2) => {
161503
- CandidateOrTypeKind2[CandidateOrTypeKind2["Candidate"] = 0] = "Candidate";
161504
- CandidateOrTypeKind2[CandidateOrTypeKind2["Type"] = 1] = "Type";
161505
- return CandidateOrTypeKind2;
161506
- })(CandidateOrTypeKind || {});
161507
161444
  signatureHelpNodeBuilderFlags = 8192 /* OmitParameterModifiers */ | 70221824 /* IgnoreErrors */ | 16384 /* UseAliasDefinedOutsideCurrentScope */;
161508
161445
  separatorDisplayParts = [punctuationPart(27 /* CommaToken */), spacePart()];
161509
161446
  }
@@ -165508,7 +165445,7 @@ ${options.prefix}` : "\n" : options.prefix
165508
165445
  if (currentTokenInfo.leadingTrivia) {
165509
165446
  processTrivia(currentTokenInfo.leadingTrivia, parent2, childContextNode, dynamicIndentation);
165510
165447
  }
165511
- let lineAction = LineAction.None;
165448
+ let lineAction = 0 /* None */;
165512
165449
  const isTokenInRange = rangeContainsRange(originalRange, currentTokenInfo.token);
165513
165450
  const tokenStart = sourceFile.getLineAndCharacterOfPosition(currentTokenInfo.token.pos);
165514
165451
  if (isTokenInRange) {
@@ -165516,11 +165453,11 @@ ${options.prefix}` : "\n" : options.prefix
165516
165453
  const savePreviousRange = previousRange;
165517
165454
  lineAction = processRange(currentTokenInfo.token, tokenStart, parent2, childContextNode, dynamicIndentation);
165518
165455
  if (!rangeHasError) {
165519
- if (lineAction === LineAction.None) {
165456
+ if (lineAction === 0 /* None */) {
165520
165457
  const prevEndLine = savePreviousRange && sourceFile.getLineAndCharacterOfPosition(savePreviousRange.end).line;
165521
165458
  indentToken = lastTriviaWasNewLine && tokenStart.line !== prevEndLine;
165522
165459
  } else {
165523
- indentToken = lineAction === LineAction.LineAdded;
165460
+ indentToken = lineAction === 1 /* LineAdded */;
165524
165461
  }
165525
165462
  }
165526
165463
  }
@@ -165546,7 +165483,7 @@ ${options.prefix}` : "\n" : options.prefix
165546
165483
  );
165547
165484
  }
165548
165485
  if (tokenIndentation !== -1 /* Unknown */ && indentNextTokenOrTrivia) {
165549
- insertIndentation(currentTokenInfo.token.pos, tokenIndentation, lineAction === LineAction.LineAdded);
165486
+ insertIndentation(currentTokenInfo.token.pos, tokenIndentation, lineAction === 1 /* LineAdded */);
165550
165487
  lastIndentedLine = tokenStart.line;
165551
165488
  indentationOnLastIndentedLine = tokenIndentation;
165552
165489
  }
@@ -165593,7 +165530,7 @@ ${options.prefix}` : "\n" : options.prefix
165593
165530
  }
165594
165531
  function processRange(range, rangeStart, parent2, contextNode, dynamicIndentation) {
165595
165532
  const rangeHasError = rangeContainsError(range);
165596
- let lineAction = LineAction.None;
165533
+ let lineAction = 0 /* None */;
165597
165534
  if (!rangeHasError) {
165598
165535
  if (!previousRange) {
165599
165536
  const originalStart = sourceFile.getLineAndCharacterOfPosition(originalRange.pos);
@@ -165612,13 +165549,13 @@ ${options.prefix}` : "\n" : options.prefix
165612
165549
  formattingContext.updateContext(previousItem, previousParent2, currentItem, currentParent, contextNode);
165613
165550
  const rules = getRules(formattingContext);
165614
165551
  let trimTrailingWhitespaces = formattingContext.options.trimTrailingWhitespace !== false;
165615
- let lineAction = LineAction.None;
165552
+ let lineAction = 0 /* None */;
165616
165553
  if (rules) {
165617
165554
  forEachRight(rules, (rule2) => {
165618
165555
  lineAction = applyRuleEdits(rule2, previousItem, previousStartLine, currentItem, currentStartLine);
165619
165556
  if (dynamicIndentation) {
165620
165557
  switch (lineAction) {
165621
- case LineAction.LineRemoved:
165558
+ case 2 /* LineRemoved */:
165622
165559
  if (currentParent.getStart(sourceFile) === currentItem.pos) {
165623
165560
  dynamicIndentation.recomputeIndentation(
165624
165561
  /*lineAddedByFormatting*/
@@ -165627,7 +165564,7 @@ ${options.prefix}` : "\n" : options.prefix
165627
165564
  );
165628
165565
  }
165629
165566
  break;
165630
- case LineAction.LineAdded:
165567
+ case 1 /* LineAdded */:
165631
165568
  if (currentParent.getStart(sourceFile) === currentItem.pos) {
165632
165569
  dynamicIndentation.recomputeIndentation(
165633
165570
  /*lineAddedByFormatting*/
@@ -165637,7 +165574,7 @@ ${options.prefix}` : "\n" : options.prefix
165637
165574
  }
165638
165575
  break;
165639
165576
  default:
165640
- Debug.assert(lineAction === LineAction.None);
165577
+ Debug.assert(lineAction === 0 /* None */);
165641
165578
  }
165642
165579
  }
165643
165580
  trimTrailingWhitespaces = trimTrailingWhitespaces && !(rule2.action & 16 /* DeleteSpace */) && rule2.flags !== 1 /* CanDeleteNewLines */;
@@ -165784,11 +165721,11 @@ ${options.prefix}` : "\n" : options.prefix
165784
165721
  const onLaterLine = currentStartLine !== previousStartLine;
165785
165722
  switch (rule2.action) {
165786
165723
  case 1 /* StopProcessingSpaceActions */:
165787
- return LineAction.None;
165724
+ return 0 /* None */;
165788
165725
  case 16 /* DeleteSpace */:
165789
165726
  if (previousRange2.end !== currentRange.pos) {
165790
165727
  recordDelete(previousRange2.end, currentRange.pos - previousRange2.end);
165791
- return onLaterLine ? LineAction.LineRemoved : LineAction.None;
165728
+ return onLaterLine ? 2 /* LineRemoved */ : 0 /* None */;
165792
165729
  }
165793
165730
  break;
165794
165731
  case 32 /* DeleteToken */:
@@ -165796,28 +165733,28 @@ ${options.prefix}` : "\n" : options.prefix
165796
165733
  break;
165797
165734
  case 8 /* InsertNewLine */:
165798
165735
  if (rule2.flags !== 1 /* CanDeleteNewLines */ && previousStartLine !== currentStartLine) {
165799
- return LineAction.None;
165736
+ return 0 /* None */;
165800
165737
  }
165801
165738
  const lineDelta = currentStartLine - previousStartLine;
165802
165739
  if (lineDelta !== 1) {
165803
165740
  recordReplace(previousRange2.end, currentRange.pos - previousRange2.end, getNewLineOrDefaultFromHost(host, options));
165804
- return onLaterLine ? LineAction.None : LineAction.LineAdded;
165741
+ return onLaterLine ? 0 /* None */ : 1 /* LineAdded */;
165805
165742
  }
165806
165743
  break;
165807
165744
  case 4 /* InsertSpace */:
165808
165745
  if (rule2.flags !== 1 /* CanDeleteNewLines */ && previousStartLine !== currentStartLine) {
165809
- return LineAction.None;
165746
+ return 0 /* None */;
165810
165747
  }
165811
165748
  const posDelta = currentRange.pos - previousRange2.end;
165812
165749
  if (posDelta !== 1 || sourceFile.text.charCodeAt(previousRange2.end) !== 32 /* space */) {
165813
165750
  recordReplace(previousRange2.end, currentRange.pos - previousRange2.end, " ");
165814
- return onLaterLine ? LineAction.LineRemoved : LineAction.None;
165751
+ return onLaterLine ? 2 /* LineRemoved */ : 0 /* None */;
165815
165752
  }
165816
165753
  break;
165817
165754
  case 64 /* InsertTrailingSemicolon */:
165818
165755
  recordInsert(previousRange2.end, ";");
165819
165756
  }
165820
- return LineAction.None;
165757
+ return 0 /* None */;
165821
165758
  }
165822
165759
  }
165823
165760
  function getRangeOfEnclosingComment(sourceFile, position, precedingToken, tokenAtPosition = getTokenAtPosition(sourceFile, position)) {
@@ -165943,18 +165880,12 @@ ${options.prefix}` : "\n" : options.prefix
165943
165880
  return remainder ? spacesString + repeatString(" ", remainder) : spacesString;
165944
165881
  }
165945
165882
  }
165946
- var LineAction, internedSizes, internedTabsIndentation, internedSpacesIndentation;
165883
+ var internedSizes, internedTabsIndentation, internedSpacesIndentation;
165947
165884
  var init_formatting = __esm({
165948
165885
  "src/services/formatting/formatting.ts"() {
165949
165886
  "use strict";
165950
165887
  init_ts4();
165951
165888
  init_ts_formatting();
165952
- LineAction = /* @__PURE__ */ ((LineAction2) => {
165953
- LineAction2[LineAction2["None"] = 0] = "None";
165954
- LineAction2[LineAction2["LineAdded"] = 1] = "LineAdded";
165955
- LineAction2[LineAction2["LineRemoved"] = 2] = "LineRemoved";
165956
- return LineAction2;
165957
- })(LineAction || {});
165958
165889
  }
165959
165890
  });
165960
165891
 
@@ -166058,7 +165989,7 @@ ${options.prefix}` : "\n" : options.prefix
166058
165989
  )) {
166059
165990
  const currentStart = getStartLineAndCharacterForNode(current, sourceFile);
166060
165991
  const nextTokenKind = nextTokenIsCurlyBraceOnSameLineAsCursor(precedingToken, current, lineAtPosition, sourceFile);
166061
- const indentationDelta = nextTokenKind !== NextTokenKind.Unknown ? assumeNewLineBeforeCloseBrace && nextTokenKind === NextTokenKind.CloseBrace ? options.indentSize : 0 : lineAtPosition !== currentStart.line ? options.indentSize : 0;
165992
+ const indentationDelta = nextTokenKind !== 0 /* Unknown */ ? assumeNewLineBeforeCloseBrace && nextTokenKind === 2 /* CloseBrace */ ? options.indentSize : 0 : lineAtPosition !== currentStart.line ? options.indentSize : 0;
166062
165993
  return getIndentationForNodeWorker(
166063
165994
  current,
166064
165995
  currentStart,