typescript 5.0.0-dev.20230221 → 5.0.0-dev.20230223

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/tsserver.js CHANGED
@@ -331,6 +331,7 @@ __export(server_exports, {
331
331
  consumesNodeCoreModules: () => consumesNodeCoreModules,
332
332
  contains: () => contains,
333
333
  containsIgnoredPath: () => containsIgnoredPath,
334
+ containsObjectRestOrSpread: () => containsObjectRestOrSpread,
334
335
  containsParseError: () => containsParseError,
335
336
  containsPath: () => containsPath,
336
337
  convertCompilerOptionsForTelemetry: () => convertCompilerOptionsForTelemetry,
@@ -2233,7 +2234,6 @@ __export(server_exports, {
2233
2234
  typeAcquisitionDeclarations: () => typeAcquisitionDeclarations,
2234
2235
  typeAliasNamePart: () => typeAliasNamePart,
2235
2236
  typeDirectiveIsEqualTo: () => typeDirectiveIsEqualTo,
2236
- typeHasCallOrConstructSignatures: () => typeHasCallOrConstructSignatures,
2237
2237
  typeKeywords: () => typeKeywords,
2238
2238
  typeParameterNamePart: () => typeParameterNamePart,
2239
2239
  typeReferenceResolutionNameAndModeGetter: () => typeReferenceResolutionNameAndModeGetter,
@@ -2288,7 +2288,7 @@ module.exports = __toCommonJS(server_exports);
2288
2288
 
2289
2289
  // src/compiler/corePublic.ts
2290
2290
  var versionMajorMinor = "5.0";
2291
- var version = `${versionMajorMinor}.0-dev.20230221`;
2291
+ var version = `${versionMajorMinor}.0-dev.20230223`;
2292
2292
  var Comparison = /* @__PURE__ */ ((Comparison3) => {
2293
2293
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
2294
2294
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -10360,7 +10360,7 @@ var Diagnostics = {
10360
10360
  Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler: diag(5098, 1 /* Error */, "Option_0_can_only_be_used_when_moduleResolution_is_set_to_node16_nodenext_or_bundler_5098", "Option '{0}' can only be used when 'moduleResolution' is set to 'node16', 'nodenext', or 'bundler'."),
10361
10361
  Import_assignment_is_not_allowed_when_moduleResolution_is_set_to_bundler_Consider_using_import_Asterisk_as_ns_from_mod_import_a_from_mod_import_d_from_mod_or_another_module_format_instead: diag(5099, 1 /* Error */, "Import_assignment_is_not_allowed_when_moduleResolution_is_set_to_bundler_Consider_using_import_Aster_5099", `Import assignment is not allowed when 'moduleResolution' is set to 'bundler'. Consider using 'import * as ns from "mod"', 'import {a} from "mod"', 'import d from "mod"', or another module format instead.`),
10362
10362
  Export_assignment_cannot_be_used_when_moduleResolution_is_set_to_bundler_Consider_using_export_default_or_another_module_format_instead: diag(5100, 1 /* Error */, "Export_assignment_cannot_be_used_when_moduleResolution_is_set_to_bundler_Consider_using_export_defau_5100", "Export assignment cannot be used when 'moduleResolution' is set to 'bundler'. Consider using 'export default' or another module format instead."),
10363
- Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_ignoreDeprecations_Colon_2_to_silence_this_error: diag(5101, 1 /* Error */, "Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_ignoreDeprecations_Colon_2_to_5101", `Flag '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify 'ignoreDeprecations: "{2}"' to silence this error.`),
10363
+ Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error: diag(5101, 1 /* Error */, "Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecat_5101", `Flag '{0}' is deprecated and will stop functioning in TypeScript {1}. Specify compilerOption '"ignoreDeprecations": "{2}"' to silence this error.`),
10364
10364
  Flag_0_is_deprecated_Please_remove_it_from_your_configuration: diag(5102, 1 /* Error */, "Flag_0_is_deprecated_Please_remove_it_from_your_configuration_5102", "Flag '{0}' is deprecated. Please remove it from your configuration."),
10365
10365
  Invalid_value_for_ignoreDeprecations: diag(5103, 1 /* Error */, "Invalid_value_for_ignoreDeprecations_5103", "Invalid value for '--ignoreDeprecations'."),
10366
10366
  Option_0_is_redundant_and_cannot_be_specified_with_option_1: diag(5104, 1 /* Error */, "Option_0_is_redundant_and_cannot_be_specified_with_option_1_5104", "Option '{0}' is redundant and cannot be specified with option '{1}'."),
@@ -14973,7 +14973,7 @@ function isTransientSymbol(symbol) {
14973
14973
  }
14974
14974
  var stringWriter = createSingleLineStringWriter();
14975
14975
  function createSingleLineStringWriter() {
14976
- let str = "";
14976
+ var str = "";
14977
14977
  const writeText = (text) => str += text;
14978
14978
  return {
14979
14979
  getText: () => str,
@@ -18516,12 +18516,12 @@ function isNightly() {
18516
18516
  return stringContains(version, "-dev") || stringContains(version, "-insiders");
18517
18517
  }
18518
18518
  function createTextWriter(newLine) {
18519
- let output;
18520
- let indent3;
18521
- let lineStart;
18522
- let lineCount;
18523
- let linePos;
18524
- let hasTrailingComment = false;
18519
+ var output;
18520
+ var indent3;
18521
+ var lineStart;
18522
+ var lineCount;
18523
+ var linePos;
18524
+ var hasTrailingComment = false;
18525
18525
  function updateLineCountAndPosFor(s) {
18526
18526
  const lineStartsOfS = computeLineStarts(s);
18527
18527
  if (lineStartsOfS.length > 1) {
@@ -19751,9 +19751,6 @@ function getClassLikeDeclarationOfSymbol(symbol) {
19751
19751
  function getObjectFlags(type) {
19752
19752
  return type.flags & 3899393 /* ObjectFlagsType */ ? type.objectFlags : 0;
19753
19753
  }
19754
- function typeHasCallOrConstructSignatures(type, checker) {
19755
- return checker.getSignaturesOfType(type, 0 /* Call */).length !== 0 || checker.getSignaturesOfType(type, 1 /* Construct */).length !== 0;
19756
- }
19757
19754
  function forSomeAncestorDirectory(directory, callback) {
19758
19755
  return !!forEachAncestorDirectory(directory, (d) => callback(d) ? true : void 0);
19759
19756
  }
@@ -23989,24 +23986,7 @@ function createNodeFactory(flags, baseFactory2) {
23989
23986
  return node;
23990
23987
  }
23991
23988
  function propagateAssignmentPatternFlags(node) {
23992
- if (node.transformFlags & 65536 /* ContainsObjectRestOrSpread */)
23993
- return 65536 /* ContainsObjectRestOrSpread */;
23994
- if (node.transformFlags & 128 /* ContainsES2018 */) {
23995
- for (const element of getElementsOfBindingOrAssignmentPattern(node)) {
23996
- const target = getTargetOfBindingOrAssignmentElement(element);
23997
- if (target && isAssignmentPattern(target)) {
23998
- if (target.transformFlags & 65536 /* ContainsObjectRestOrSpread */) {
23999
- return 65536 /* ContainsObjectRestOrSpread */;
24000
- }
24001
- if (target.transformFlags & 128 /* ContainsES2018 */) {
24002
- const flags2 = propagateAssignmentPatternFlags(target);
24003
- if (flags2)
24004
- return flags2;
24005
- }
24006
- }
24007
- }
24008
- }
24009
- return 0 /* None */;
23989
+ return containsObjectRestOrSpread(node) ? 65536 /* ContainsObjectRestOrSpread */ : 0 /* None */;
24010
23990
  }
24011
23991
  function updateBinaryExpression(node, left, operator, right) {
24012
23992
  return node.left !== left || node.operatorToken !== operator || node.right !== right ? update(createBinaryExpression(left, operator, right), node) : node;
@@ -29684,6 +29664,25 @@ function flattenCommaList(node) {
29684
29664
  flattenCommaListWorker(node, expressions);
29685
29665
  return expressions;
29686
29666
  }
29667
+ function containsObjectRestOrSpread(node) {
29668
+ if (node.transformFlags & 65536 /* ContainsObjectRestOrSpread */)
29669
+ return true;
29670
+ if (node.transformFlags & 128 /* ContainsES2018 */) {
29671
+ for (const element of getElementsOfBindingOrAssignmentPattern(node)) {
29672
+ const target = getTargetOfBindingOrAssignmentElement(element);
29673
+ if (target && isAssignmentPattern(target)) {
29674
+ if (target.transformFlags & 65536 /* ContainsObjectRestOrSpread */) {
29675
+ return true;
29676
+ }
29677
+ if (target.transformFlags & 128 /* ContainsES2018 */) {
29678
+ if (containsObjectRestOrSpread(target))
29679
+ return true;
29680
+ }
29681
+ }
29682
+ }
29683
+ }
29684
+ return false;
29685
+ }
29687
29686
 
29688
29687
  // src/compiler/factory/utilitiesPublic.ts
29689
29688
  function setTextRange(range, location) {
@@ -33946,7 +33945,7 @@ var Parser;
33946
33945
  return finishNode(factory2.createJsxJsxClosingFragment(), pos);
33947
33946
  }
33948
33947
  function parseTypeAssertion() {
33949
- Debug.assert(scriptKind === 3 /* TS */, "Type assertions should never be parsed outside of TS; they should either be comparisons or JSX.");
33948
+ Debug.assert(languageVariant !== 1 /* JSX */, "Type assertions should never be parsed in JSX; they should be parsed as comparisons or JSX elements/fragments.");
33950
33949
  const pos = getNodePos();
33951
33950
  parseExpected(29 /* LessThanToken */);
33952
33951
  const type = parseType();
@@ -43368,35 +43367,36 @@ function bindSourceFile(file, options) {
43368
43367
  measure("Bind", "beforeBind", "afterBind");
43369
43368
  }
43370
43369
  function createBinder() {
43371
- let file;
43372
- let options;
43373
- let languageVersion;
43374
- let parent2;
43375
- let container;
43376
- let thisParentContainer;
43377
- let blockScopeContainer;
43378
- let lastContainer;
43379
- let delayedTypeAliases;
43380
- let seenThisKeyword;
43381
- let currentFlow;
43382
- let currentBreakTarget;
43383
- let currentContinueTarget;
43384
- let currentReturnTarget;
43385
- let currentTrueTarget;
43386
- let currentFalseTarget;
43387
- let currentExceptionTarget;
43388
- let preSwitchCaseFlow;
43389
- let activeLabelList;
43390
- let hasExplicitReturn;
43391
- let emitFlags;
43392
- let inStrictMode;
43393
- let inAssignmentPattern = false;
43394
- let symbolCount = 0;
43395
- let Symbol46;
43396
- let classifiableNames;
43397
- const unreachableFlow = { flags: 1 /* Unreachable */ };
43398
- const reportedUnreachableFlow = { flags: 1 /* Unreachable */ };
43399
- const bindBinaryExpressionFlow = createBindBinaryExpressionFlow();
43370
+ var file;
43371
+ var options;
43372
+ var languageVersion;
43373
+ var parent2;
43374
+ var container;
43375
+ var thisParentContainer;
43376
+ var blockScopeContainer;
43377
+ var lastContainer;
43378
+ var delayedTypeAliases;
43379
+ var seenThisKeyword;
43380
+ var currentFlow;
43381
+ var currentBreakTarget;
43382
+ var currentContinueTarget;
43383
+ var currentReturnTarget;
43384
+ var currentTrueTarget;
43385
+ var currentFalseTarget;
43386
+ var currentExceptionTarget;
43387
+ var preSwitchCaseFlow;
43388
+ var activeLabelList;
43389
+ var hasExplicitReturn;
43390
+ var emitFlags;
43391
+ var inStrictMode;
43392
+ var inAssignmentPattern = false;
43393
+ var symbolCount = 0;
43394
+ var Symbol46;
43395
+ var classifiableNames;
43396
+ var unreachableFlow = { flags: 1 /* Unreachable */ };
43397
+ var reportedUnreachableFlow = { flags: 1 /* Unreachable */ };
43398
+ var bindBinaryExpressionFlow = createBindBinaryExpressionFlow();
43399
+ return bindSourceFile2;
43400
43400
  function createDiagnosticForNode2(node, message, arg0, arg1, arg2) {
43401
43401
  return createDiagnosticForNodeInSourceFile(getSourceFileOfNode(node) || file, node, message, arg0, arg1, arg2);
43402
43402
  }
@@ -43447,7 +43447,6 @@ function createBinder() {
43447
43447
  inAssignmentPattern = false;
43448
43448
  emitFlags = 0 /* None */;
43449
43449
  }
43450
- return bindSourceFile2;
43451
43450
  function bindInStrictMode(file2, opts) {
43452
43451
  if (getStrictOptionValue(opts, "alwaysStrict") && !file2.isDeclarationFile) {
43453
43452
  return true;
@@ -47156,8 +47155,8 @@ function isInstantiatedModule(node, preserveConstEnums) {
47156
47155
  return moduleState === 1 /* Instantiated */ || preserveConstEnums && moduleState === 2 /* ConstEnumOnly */;
47157
47156
  }
47158
47157
  function createTypeChecker(host) {
47159
- const getPackagesMap = memoize(() => {
47160
- const map2 = /* @__PURE__ */ new Map();
47158
+ var getPackagesMap = memoize(() => {
47159
+ var map2 = /* @__PURE__ */ new Map();
47161
47160
  host.getSourceFiles().forEach((sf) => {
47162
47161
  if (!sf.resolvedModules)
47163
47162
  return;
@@ -47168,58 +47167,58 @@ function createTypeChecker(host) {
47168
47167
  });
47169
47168
  return map2;
47170
47169
  });
47171
- let deferredDiagnosticsCallbacks = [];
47172
- let addLazyDiagnostic = (arg) => {
47170
+ var deferredDiagnosticsCallbacks = [];
47171
+ var addLazyDiagnostic = (arg) => {
47173
47172
  deferredDiagnosticsCallbacks.push(arg);
47174
47173
  };
47175
- let cancellationToken;
47176
- const requestedExternalEmitHelperNames = /* @__PURE__ */ new Set();
47177
- let requestedExternalEmitHelpers;
47178
- let externalHelpersModule;
47179
- const Symbol46 = objectAllocator.getSymbolConstructor();
47180
- const Type27 = objectAllocator.getTypeConstructor();
47181
- const Signature15 = objectAllocator.getSignatureConstructor();
47182
- let typeCount = 0;
47183
- let symbolCount = 0;
47184
- let totalInstantiationCount = 0;
47185
- let instantiationCount = 0;
47186
- let instantiationDepth = 0;
47187
- let inlineLevel = 0;
47188
- let currentNode;
47189
- let varianceTypeParameter;
47190
- let isInferencePartiallyBlocked = false;
47191
- const emptySymbols = createSymbolTable();
47192
- const arrayVariances = [1 /* Covariant */];
47193
- const compilerOptions = host.getCompilerOptions();
47194
- const languageVersion = getEmitScriptTarget(compilerOptions);
47195
- const moduleKind = getEmitModuleKind(compilerOptions);
47196
- const legacyDecorators = !!compilerOptions.experimentalDecorators;
47197
- const useDefineForClassFields = getUseDefineForClassFields(compilerOptions);
47198
- const allowSyntheticDefaultImports = getAllowSyntheticDefaultImports(compilerOptions);
47199
- const strictNullChecks = getStrictOptionValue(compilerOptions, "strictNullChecks");
47200
- const strictFunctionTypes = getStrictOptionValue(compilerOptions, "strictFunctionTypes");
47201
- const strictBindCallApply = getStrictOptionValue(compilerOptions, "strictBindCallApply");
47202
- const strictPropertyInitialization = getStrictOptionValue(compilerOptions, "strictPropertyInitialization");
47203
- const noImplicitAny = getStrictOptionValue(compilerOptions, "noImplicitAny");
47204
- const noImplicitThis = getStrictOptionValue(compilerOptions, "noImplicitThis");
47205
- const useUnknownInCatchVariables = getStrictOptionValue(compilerOptions, "useUnknownInCatchVariables");
47206
- const keyofStringsOnly = !!compilerOptions.keyofStringsOnly;
47207
- const freshObjectLiteralFlag = compilerOptions.suppressExcessPropertyErrors ? 0 : 8192 /* FreshLiteral */;
47208
- const exactOptionalPropertyTypes = compilerOptions.exactOptionalPropertyTypes;
47209
- const checkBinaryExpression = createCheckBinaryExpression();
47210
- const emitResolver = createResolver();
47211
- const nodeBuilder = createNodeBuilder();
47212
- const globals = createSymbolTable();
47213
- const undefinedSymbol = createSymbol(4 /* Property */, "undefined");
47174
+ var cancellationToken;
47175
+ var requestedExternalEmitHelperNames = /* @__PURE__ */ new Set();
47176
+ var requestedExternalEmitHelpers;
47177
+ var externalHelpersModule;
47178
+ var Symbol46 = objectAllocator.getSymbolConstructor();
47179
+ var Type27 = objectAllocator.getTypeConstructor();
47180
+ var Signature15 = objectAllocator.getSignatureConstructor();
47181
+ var typeCount = 0;
47182
+ var symbolCount = 0;
47183
+ var totalInstantiationCount = 0;
47184
+ var instantiationCount = 0;
47185
+ var instantiationDepth = 0;
47186
+ var inlineLevel = 0;
47187
+ var currentNode;
47188
+ var varianceTypeParameter;
47189
+ var isInferencePartiallyBlocked = false;
47190
+ var emptySymbols = createSymbolTable();
47191
+ var arrayVariances = [1 /* Covariant */];
47192
+ var compilerOptions = host.getCompilerOptions();
47193
+ var languageVersion = getEmitScriptTarget(compilerOptions);
47194
+ var moduleKind = getEmitModuleKind(compilerOptions);
47195
+ var legacyDecorators = !!compilerOptions.experimentalDecorators;
47196
+ var useDefineForClassFields = getUseDefineForClassFields(compilerOptions);
47197
+ var allowSyntheticDefaultImports = getAllowSyntheticDefaultImports(compilerOptions);
47198
+ var strictNullChecks = getStrictOptionValue(compilerOptions, "strictNullChecks");
47199
+ var strictFunctionTypes = getStrictOptionValue(compilerOptions, "strictFunctionTypes");
47200
+ var strictBindCallApply = getStrictOptionValue(compilerOptions, "strictBindCallApply");
47201
+ var strictPropertyInitialization = getStrictOptionValue(compilerOptions, "strictPropertyInitialization");
47202
+ var noImplicitAny = getStrictOptionValue(compilerOptions, "noImplicitAny");
47203
+ var noImplicitThis = getStrictOptionValue(compilerOptions, "noImplicitThis");
47204
+ var useUnknownInCatchVariables = getStrictOptionValue(compilerOptions, "useUnknownInCatchVariables");
47205
+ var keyofStringsOnly = !!compilerOptions.keyofStringsOnly;
47206
+ var freshObjectLiteralFlag = compilerOptions.suppressExcessPropertyErrors ? 0 : 8192 /* FreshLiteral */;
47207
+ var exactOptionalPropertyTypes = compilerOptions.exactOptionalPropertyTypes;
47208
+ var checkBinaryExpression = createCheckBinaryExpression();
47209
+ var emitResolver = createResolver();
47210
+ var nodeBuilder = createNodeBuilder();
47211
+ var globals = createSymbolTable();
47212
+ var undefinedSymbol = createSymbol(4 /* Property */, "undefined");
47214
47213
  undefinedSymbol.declarations = [];
47215
- const globalThisSymbol = createSymbol(1536 /* Module */, "globalThis", 8 /* Readonly */);
47214
+ var globalThisSymbol = createSymbol(1536 /* Module */, "globalThis", 8 /* Readonly */);
47216
47215
  globalThisSymbol.exports = globals;
47217
47216
  globalThisSymbol.declarations = [];
47218
47217
  globals.set(globalThisSymbol.escapedName, globalThisSymbol);
47219
- const argumentsSymbol = createSymbol(4 /* Property */, "arguments");
47220
- const requireSymbol = createSymbol(4 /* Property */, "require");
47221
- const isolatedModulesLikeFlagName = compilerOptions.verbatimModuleSyntax ? "verbatimModuleSyntax" : "isolatedModules";
47222
- let apparentArgumentCount;
47218
+ var argumentsSymbol = createSymbol(4 /* Property */, "arguments");
47219
+ var requireSymbol = createSymbol(4 /* Property */, "require");
47220
+ var isolatedModulesLikeFlagName = compilerOptions.verbatimModuleSyntax ? "verbatimModuleSyntax" : "isolatedModules";
47221
+ var apparentArgumentCount;
47223
47222
  const checker = {
47224
47223
  getNodeCount: () => reduceLeft(host.getSourceFiles(), (n, s) => n + s.nodeCount, 0),
47225
47224
  getIdentifierCount: () => reduceLeft(host.getSourceFiles(), (n, s) => n + s.identifierCount, 0),
@@ -47596,7 +47595,8 @@ function createTypeChecker(host) {
47596
47595
  isPropertyAccessible,
47597
47596
  getTypeOnlyAliasDeclaration,
47598
47597
  getMemberOverrideModifierStatus,
47599
- isTypeParameterPossiblyReferenced
47598
+ isTypeParameterPossiblyReferenced,
47599
+ typeHasCallOrConstructSignatures
47600
47600
  };
47601
47601
  function runWithoutResolvedSignatureCaching(node, fn) {
47602
47602
  const containingCall = findAncestor(node, isCallLikeExpression);
@@ -47638,50 +47638,50 @@ function createTypeChecker(host) {
47638
47638
  apparentArgumentCount = void 0;
47639
47639
  return res;
47640
47640
  }
47641
- const tupleTypes = /* @__PURE__ */ new Map();
47642
- const unionTypes = /* @__PURE__ */ new Map();
47643
- const intersectionTypes = /* @__PURE__ */ new Map();
47644
- const stringLiteralTypes = /* @__PURE__ */ new Map();
47645
- const numberLiteralTypes = /* @__PURE__ */ new Map();
47646
- const bigIntLiteralTypes = /* @__PURE__ */ new Map();
47647
- const enumLiteralTypes = /* @__PURE__ */ new Map();
47648
- const indexedAccessTypes = /* @__PURE__ */ new Map();
47649
- const templateLiteralTypes = /* @__PURE__ */ new Map();
47650
- const stringMappingTypes = /* @__PURE__ */ new Map();
47651
- const substitutionTypes = /* @__PURE__ */ new Map();
47652
- const subtypeReductionCache = /* @__PURE__ */ new Map();
47653
- const decoratorContextOverrideTypeCache = /* @__PURE__ */ new Map();
47654
- const cachedTypes = /* @__PURE__ */ new Map();
47655
- const evolvingArrayTypes = [];
47656
- const undefinedProperties = /* @__PURE__ */ new Map();
47657
- const markerTypes = /* @__PURE__ */ new Set();
47658
- const unknownSymbol = createSymbol(4 /* Property */, "unknown");
47659
- const resolvingSymbol = createSymbol(0, "__resolving__" /* Resolving */);
47660
- const unresolvedSymbols = /* @__PURE__ */ new Map();
47661
- const errorTypes = /* @__PURE__ */ new Map();
47662
- const anyType = createIntrinsicType(1 /* Any */, "any");
47663
- const autoType = createIntrinsicType(1 /* Any */, "any", 262144 /* NonInferrableType */);
47664
- const wildcardType = createIntrinsicType(1 /* Any */, "any");
47665
- const errorType = createIntrinsicType(1 /* Any */, "error");
47666
- const unresolvedType = createIntrinsicType(1 /* Any */, "unresolved");
47667
- const nonInferrableAnyType = createIntrinsicType(1 /* Any */, "any", 65536 /* ContainsWideningType */);
47668
- const intrinsicMarkerType = createIntrinsicType(1 /* Any */, "intrinsic");
47669
- const unknownType = createIntrinsicType(2 /* Unknown */, "unknown");
47670
- const nonNullUnknownType = createIntrinsicType(2 /* Unknown */, "unknown");
47671
- const undefinedType = createIntrinsicType(32768 /* Undefined */, "undefined");
47672
- const undefinedWideningType = strictNullChecks ? undefinedType : createIntrinsicType(32768 /* Undefined */, "undefined", 65536 /* ContainsWideningType */);
47673
- const missingType = createIntrinsicType(32768 /* Undefined */, "undefined");
47674
- const undefinedOrMissingType = exactOptionalPropertyTypes ? missingType : undefinedType;
47675
- const optionalType = createIntrinsicType(32768 /* Undefined */, "undefined");
47676
- const nullType = createIntrinsicType(65536 /* Null */, "null");
47677
- const nullWideningType = strictNullChecks ? nullType : createIntrinsicType(65536 /* Null */, "null", 65536 /* ContainsWideningType */);
47678
- const stringType = createIntrinsicType(4 /* String */, "string");
47679
- const numberType = createIntrinsicType(8 /* Number */, "number");
47680
- const bigintType = createIntrinsicType(64 /* BigInt */, "bigint");
47681
- const falseType = createIntrinsicType(512 /* BooleanLiteral */, "false");
47682
- const regularFalseType = createIntrinsicType(512 /* BooleanLiteral */, "false");
47683
- const trueType = createIntrinsicType(512 /* BooleanLiteral */, "true");
47684
- const regularTrueType = createIntrinsicType(512 /* BooleanLiteral */, "true");
47641
+ var tupleTypes = /* @__PURE__ */ new Map();
47642
+ var unionTypes = /* @__PURE__ */ new Map();
47643
+ var intersectionTypes = /* @__PURE__ */ new Map();
47644
+ var stringLiteralTypes = /* @__PURE__ */ new Map();
47645
+ var numberLiteralTypes = /* @__PURE__ */ new Map();
47646
+ var bigIntLiteralTypes = /* @__PURE__ */ new Map();
47647
+ var enumLiteralTypes = /* @__PURE__ */ new Map();
47648
+ var indexedAccessTypes = /* @__PURE__ */ new Map();
47649
+ var templateLiteralTypes = /* @__PURE__ */ new Map();
47650
+ var stringMappingTypes = /* @__PURE__ */ new Map();
47651
+ var substitutionTypes = /* @__PURE__ */ new Map();
47652
+ var subtypeReductionCache = /* @__PURE__ */ new Map();
47653
+ var decoratorContextOverrideTypeCache = /* @__PURE__ */ new Map();
47654
+ var cachedTypes = /* @__PURE__ */ new Map();
47655
+ var evolvingArrayTypes = [];
47656
+ var undefinedProperties = /* @__PURE__ */ new Map();
47657
+ var markerTypes = /* @__PURE__ */ new Set();
47658
+ var unknownSymbol = createSymbol(4 /* Property */, "unknown");
47659
+ var resolvingSymbol = createSymbol(0, "__resolving__" /* Resolving */);
47660
+ var unresolvedSymbols = /* @__PURE__ */ new Map();
47661
+ var errorTypes = /* @__PURE__ */ new Map();
47662
+ var anyType = createIntrinsicType(1 /* Any */, "any");
47663
+ var autoType = createIntrinsicType(1 /* Any */, "any", 262144 /* NonInferrableType */);
47664
+ var wildcardType = createIntrinsicType(1 /* Any */, "any");
47665
+ var errorType = createIntrinsicType(1 /* Any */, "error");
47666
+ var unresolvedType = createIntrinsicType(1 /* Any */, "unresolved");
47667
+ var nonInferrableAnyType = createIntrinsicType(1 /* Any */, "any", 65536 /* ContainsWideningType */);
47668
+ var intrinsicMarkerType = createIntrinsicType(1 /* Any */, "intrinsic");
47669
+ var unknownType = createIntrinsicType(2 /* Unknown */, "unknown");
47670
+ var nonNullUnknownType = createIntrinsicType(2 /* Unknown */, "unknown");
47671
+ var undefinedType = createIntrinsicType(32768 /* Undefined */, "undefined");
47672
+ var undefinedWideningType = strictNullChecks ? undefinedType : createIntrinsicType(32768 /* Undefined */, "undefined", 65536 /* ContainsWideningType */);
47673
+ var missingType = createIntrinsicType(32768 /* Undefined */, "undefined");
47674
+ var undefinedOrMissingType = exactOptionalPropertyTypes ? missingType : undefinedType;
47675
+ var optionalType = createIntrinsicType(32768 /* Undefined */, "undefined");
47676
+ var nullType = createIntrinsicType(65536 /* Null */, "null");
47677
+ var nullWideningType = strictNullChecks ? nullType : createIntrinsicType(65536 /* Null */, "null", 65536 /* ContainsWideningType */);
47678
+ var stringType = createIntrinsicType(4 /* String */, "string");
47679
+ var numberType = createIntrinsicType(8 /* Number */, "number");
47680
+ var bigintType = createIntrinsicType(64 /* BigInt */, "bigint");
47681
+ var falseType = createIntrinsicType(512 /* BooleanLiteral */, "false");
47682
+ var regularFalseType = createIntrinsicType(512 /* BooleanLiteral */, "false");
47683
+ var trueType = createIntrinsicType(512 /* BooleanLiteral */, "true");
47684
+ var regularTrueType = createIntrinsicType(512 /* BooleanLiteral */, "true");
47685
47685
  trueType.regularType = regularTrueType;
47686
47686
  trueType.freshType = trueType;
47687
47687
  regularTrueType.regularType = regularTrueType;
@@ -47690,26 +47690,26 @@ function createTypeChecker(host) {
47690
47690
  falseType.freshType = falseType;
47691
47691
  regularFalseType.regularType = regularFalseType;
47692
47692
  regularFalseType.freshType = falseType;
47693
- const booleanType = getUnionType([regularFalseType, regularTrueType]);
47694
- const esSymbolType = createIntrinsicType(4096 /* ESSymbol */, "symbol");
47695
- const voidType = createIntrinsicType(16384 /* Void */, "void");
47696
- const neverType = createIntrinsicType(131072 /* Never */, "never");
47697
- const silentNeverType = createIntrinsicType(131072 /* Never */, "never", 262144 /* NonInferrableType */);
47698
- const implicitNeverType = createIntrinsicType(131072 /* Never */, "never");
47699
- const unreachableNeverType = createIntrinsicType(131072 /* Never */, "never");
47700
- const nonPrimitiveType = createIntrinsicType(67108864 /* NonPrimitive */, "object");
47701
- const stringOrNumberType = getUnionType([stringType, numberType]);
47702
- const stringNumberSymbolType = getUnionType([stringType, numberType, esSymbolType]);
47703
- const keyofConstraintType = keyofStringsOnly ? stringType : stringNumberSymbolType;
47704
- const numberOrBigIntType = getUnionType([numberType, bigintType]);
47705
- const templateConstraintType = getUnionType([stringType, numberType, booleanType, bigintType, nullType, undefinedType]);
47706
- const numericStringType = getTemplateLiteralType(["", ""], [numberType]);
47707
- const restrictiveMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? getRestrictiveTypeParameter(t) : t, () => "(restrictive mapper)");
47708
- const permissiveMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? wildcardType : t, () => "(permissive mapper)");
47709
- const uniqueLiteralType = createIntrinsicType(131072 /* Never */, "never");
47710
- const uniqueLiteralMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? uniqueLiteralType : t, () => "(unique literal mapper)");
47711
- let outofbandVarianceMarkerHandler;
47712
- const reportUnreliableMapper = makeFunctionTypeMapper((t) => {
47693
+ var booleanType = getUnionType([regularFalseType, regularTrueType]);
47694
+ var esSymbolType = createIntrinsicType(4096 /* ESSymbol */, "symbol");
47695
+ var voidType = createIntrinsicType(16384 /* Void */, "void");
47696
+ var neverType = createIntrinsicType(131072 /* Never */, "never");
47697
+ var silentNeverType = createIntrinsicType(131072 /* Never */, "never", 262144 /* NonInferrableType */);
47698
+ var implicitNeverType = createIntrinsicType(131072 /* Never */, "never");
47699
+ var unreachableNeverType = createIntrinsicType(131072 /* Never */, "never");
47700
+ var nonPrimitiveType = createIntrinsicType(67108864 /* NonPrimitive */, "object");
47701
+ var stringOrNumberType = getUnionType([stringType, numberType]);
47702
+ var stringNumberSymbolType = getUnionType([stringType, numberType, esSymbolType]);
47703
+ var keyofConstraintType = keyofStringsOnly ? stringType : stringNumberSymbolType;
47704
+ var numberOrBigIntType = getUnionType([numberType, bigintType]);
47705
+ var templateConstraintType = getUnionType([stringType, numberType, booleanType, bigintType, nullType, undefinedType]);
47706
+ var numericStringType = getTemplateLiteralType(["", ""], [numberType]);
47707
+ var restrictiveMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? getRestrictiveTypeParameter(t) : t, () => "(restrictive mapper)");
47708
+ var permissiveMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? wildcardType : t, () => "(permissive mapper)");
47709
+ var uniqueLiteralType = createIntrinsicType(131072 /* Never */, "never");
47710
+ var uniqueLiteralMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? uniqueLiteralType : t, () => "(unique literal mapper)");
47711
+ var outofbandVarianceMarkerHandler;
47712
+ var reportUnreliableMapper = makeFunctionTypeMapper((t) => {
47713
47713
  if (outofbandVarianceMarkerHandler && (t === markerSuperType || t === markerSubType || t === markerOtherType)) {
47714
47714
  outofbandVarianceMarkerHandler(
47715
47715
  /*onlyUnreliable*/
@@ -47718,7 +47718,7 @@ function createTypeChecker(host) {
47718
47718
  }
47719
47719
  return t;
47720
47720
  }, () => "(unmeasurable reporter)");
47721
- const reportUnmeasurableMapper = makeFunctionTypeMapper((t) => {
47721
+ var reportUnmeasurableMapper = makeFunctionTypeMapper((t) => {
47722
47722
  if (outofbandVarianceMarkerHandler && (t === markerSuperType || t === markerSubType || t === markerOtherType)) {
47723
47723
  outofbandVarianceMarkerHandler(
47724
47724
  /*onlyUnreliable*/
@@ -47727,30 +47727,30 @@ function createTypeChecker(host) {
47727
47727
  }
47728
47728
  return t;
47729
47729
  }, () => "(unreliable reporter)");
47730
- const emptyObjectType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47731
- const emptyJsxObjectType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47730
+ var emptyObjectType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47731
+ var emptyJsxObjectType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47732
47732
  emptyJsxObjectType.objectFlags |= 2048 /* JsxAttributes */;
47733
- const emptyTypeLiteralSymbol = createSymbol(2048 /* TypeLiteral */, "__type" /* Type */);
47733
+ var emptyTypeLiteralSymbol = createSymbol(2048 /* TypeLiteral */, "__type" /* Type */);
47734
47734
  emptyTypeLiteralSymbol.members = createSymbolTable();
47735
- const emptyTypeLiteralType = createAnonymousType(emptyTypeLiteralSymbol, emptySymbols, emptyArray, emptyArray, emptyArray);
47736
- const unknownEmptyObjectType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47737
- const unknownUnionType = strictNullChecks ? getUnionType([undefinedType, nullType, unknownEmptyObjectType]) : unknownType;
47738
- const emptyGenericType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47735
+ var emptyTypeLiteralType = createAnonymousType(emptyTypeLiteralSymbol, emptySymbols, emptyArray, emptyArray, emptyArray);
47736
+ var unknownEmptyObjectType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47737
+ var unknownUnionType = strictNullChecks ? getUnionType([undefinedType, nullType, unknownEmptyObjectType]) : unknownType;
47738
+ var emptyGenericType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47739
47739
  emptyGenericType.instantiations = /* @__PURE__ */ new Map();
47740
- const anyFunctionType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47740
+ var anyFunctionType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47741
47741
  anyFunctionType.objectFlags |= 262144 /* NonInferrableType */;
47742
- const noConstraintType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47743
- const circularConstraintType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47744
- const resolvingDefaultType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47745
- const markerSuperType = createTypeParameter();
47746
- const markerSubType = createTypeParameter();
47742
+ var noConstraintType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47743
+ var circularConstraintType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47744
+ var resolvingDefaultType = createAnonymousType(void 0, emptySymbols, emptyArray, emptyArray, emptyArray);
47745
+ var markerSuperType = createTypeParameter();
47746
+ var markerSubType = createTypeParameter();
47747
47747
  markerSubType.constraint = markerSuperType;
47748
- const markerOtherType = createTypeParameter();
47749
- const markerSuperTypeForCheck = createTypeParameter();
47750
- const markerSubTypeForCheck = createTypeParameter();
47748
+ var markerOtherType = createTypeParameter();
47749
+ var markerSuperTypeForCheck = createTypeParameter();
47750
+ var markerSubTypeForCheck = createTypeParameter();
47751
47751
  markerSubTypeForCheck.constraint = markerSuperTypeForCheck;
47752
- const noTypePredicate = createTypePredicate(1 /* Identifier */, "<<unresolved>>", 0, anyType);
47753
- const anySignature = createSignature(
47752
+ var noTypePredicate = createTypePredicate(1 /* Identifier */, "<<unresolved>>", 0, anyType);
47753
+ var anySignature = createSignature(
47754
47754
  void 0,
47755
47755
  void 0,
47756
47756
  void 0,
@@ -47761,7 +47761,7 @@ function createTypeChecker(host) {
47761
47761
  0,
47762
47762
  0 /* None */
47763
47763
  );
47764
- const unknownSignature = createSignature(
47764
+ var unknownSignature = createSignature(
47765
47765
  void 0,
47766
47766
  void 0,
47767
47767
  void 0,
@@ -47772,7 +47772,7 @@ function createTypeChecker(host) {
47772
47772
  0,
47773
47773
  0 /* None */
47774
47774
  );
47775
- const resolvingSignature = createSignature(
47775
+ var resolvingSignature = createSignature(
47776
47776
  void 0,
47777
47777
  void 0,
47778
47778
  void 0,
@@ -47783,7 +47783,7 @@ function createTypeChecker(host) {
47783
47783
  0,
47784
47784
  0 /* None */
47785
47785
  );
47786
- const silentNeverSignature = createSignature(
47786
+ var silentNeverSignature = createSignature(
47787
47787
  void 0,
47788
47788
  void 0,
47789
47789
  void 0,
@@ -47794,14 +47794,14 @@ function createTypeChecker(host) {
47794
47794
  0,
47795
47795
  0 /* None */
47796
47796
  );
47797
- const enumNumberIndexInfo = createIndexInfo(
47797
+ var enumNumberIndexInfo = createIndexInfo(
47798
47798
  numberType,
47799
47799
  stringType,
47800
47800
  /*isReadonly*/
47801
47801
  true
47802
47802
  );
47803
- const iterationTypesCache = /* @__PURE__ */ new Map();
47804
- const noIterationTypes = {
47803
+ var iterationTypesCache = /* @__PURE__ */ new Map();
47804
+ var noIterationTypes = {
47805
47805
  get yieldType() {
47806
47806
  return Debug.fail("Not supported");
47807
47807
  },
@@ -47812,10 +47812,10 @@ function createTypeChecker(host) {
47812
47812
  return Debug.fail("Not supported");
47813
47813
  }
47814
47814
  };
47815
- const anyIterationTypes = createIterationTypes(anyType, anyType, anyType);
47816
- const anyIterationTypesExceptNext = createIterationTypes(anyType, anyType, unknownType);
47817
- const defaultIterationTypes = createIterationTypes(neverType, anyType, undefinedType);
47818
- const asyncIterationTypesResolver = {
47815
+ var anyIterationTypes = createIterationTypes(anyType, anyType, anyType);
47816
+ var anyIterationTypesExceptNext = createIterationTypes(anyType, anyType, unknownType);
47817
+ var defaultIterationTypes = createIterationTypes(neverType, anyType, undefinedType);
47818
+ var asyncIterationTypesResolver = {
47819
47819
  iterableCacheKey: "iterationTypesOfAsyncIterable",
47820
47820
  iteratorCacheKey: "iterationTypesOfAsyncIterator",
47821
47821
  iteratorSymbolName: "asyncIterator",
@@ -47828,7 +47828,7 @@ function createTypeChecker(host) {
47828
47828
  mustBeAMethodDiagnostic: Diagnostics.The_0_property_of_an_async_iterator_must_be_a_method,
47829
47829
  mustHaveAValueDiagnostic: Diagnostics.The_type_returned_by_the_0_method_of_an_async_iterator_must_be_a_promise_for_a_type_with_a_value_property
47830
47830
  };
47831
- const syncIterationTypesResolver = {
47831
+ var syncIterationTypesResolver = {
47832
47832
  iterableCacheKey: "iterationTypesOfIterable",
47833
47833
  iteratorCacheKey: "iterationTypesOfIterator",
47834
47834
  iteratorSymbolName: "iterator",
@@ -47841,118 +47841,118 @@ function createTypeChecker(host) {
47841
47841
  mustBeAMethodDiagnostic: Diagnostics.The_0_property_of_an_iterator_must_be_a_method,
47842
47842
  mustHaveAValueDiagnostic: Diagnostics.The_type_returned_by_the_0_method_of_an_iterator_must_have_a_value_property
47843
47843
  };
47844
- let amalgamatedDuplicates;
47845
- const reverseMappedCache = /* @__PURE__ */ new Map();
47846
- let inInferTypeForHomomorphicMappedType = false;
47847
- let ambientModulesCache;
47848
- let patternAmbientModules;
47849
- let patternAmbientModuleAugmentations;
47850
- let globalObjectType;
47851
- let globalFunctionType;
47852
- let globalCallableFunctionType;
47853
- let globalNewableFunctionType;
47854
- let globalArrayType;
47855
- let globalReadonlyArrayType;
47856
- let globalStringType;
47857
- let globalNumberType;
47858
- let globalBooleanType;
47859
- let globalRegExpType;
47860
- let globalThisType;
47861
- let anyArrayType;
47862
- let autoArrayType;
47863
- let anyReadonlyArrayType;
47864
- let deferredGlobalNonNullableTypeAlias;
47865
- let deferredGlobalESSymbolConstructorSymbol;
47866
- let deferredGlobalESSymbolConstructorTypeSymbol;
47867
- let deferredGlobalESSymbolType;
47868
- let deferredGlobalTypedPropertyDescriptorType;
47869
- let deferredGlobalPromiseType;
47870
- let deferredGlobalPromiseLikeType;
47871
- let deferredGlobalPromiseConstructorSymbol;
47872
- let deferredGlobalPromiseConstructorLikeType;
47873
- let deferredGlobalIterableType;
47874
- let deferredGlobalIteratorType;
47875
- let deferredGlobalIterableIteratorType;
47876
- let deferredGlobalGeneratorType;
47877
- let deferredGlobalIteratorYieldResultType;
47878
- let deferredGlobalIteratorReturnResultType;
47879
- let deferredGlobalAsyncIterableType;
47880
- let deferredGlobalAsyncIteratorType;
47881
- let deferredGlobalAsyncIterableIteratorType;
47882
- let deferredGlobalAsyncGeneratorType;
47883
- let deferredGlobalTemplateStringsArrayType;
47884
- let deferredGlobalImportMetaType;
47885
- let deferredGlobalImportMetaExpressionType;
47886
- let deferredGlobalImportCallOptionsType;
47887
- let deferredGlobalExtractSymbol;
47888
- let deferredGlobalOmitSymbol;
47889
- let deferredGlobalAwaitedSymbol;
47890
- let deferredGlobalBigIntType;
47891
- let deferredGlobalNaNSymbol;
47892
- let deferredGlobalRecordSymbol;
47893
- let deferredGlobalClassDecoratorContextType;
47894
- let deferredGlobalClassMethodDecoratorContextType;
47895
- let deferredGlobalClassGetterDecoratorContextType;
47896
- let deferredGlobalClassSetterDecoratorContextType;
47897
- let deferredGlobalClassAccessorDecoratorContextType;
47898
- let deferredGlobalClassAccessorDecoratorTargetType;
47899
- let deferredGlobalClassAccessorDecoratorResultType;
47900
- let deferredGlobalClassFieldDecoratorContextType;
47901
- const allPotentiallyUnusedIdentifiers = /* @__PURE__ */ new Map();
47902
- let flowLoopStart = 0;
47903
- let flowLoopCount = 0;
47904
- let sharedFlowCount = 0;
47905
- let flowAnalysisDisabled = false;
47906
- let flowInvocationCount = 0;
47907
- let lastFlowNode;
47908
- let lastFlowNodeReachable;
47909
- let flowTypeCache;
47910
- const contextualTypeNodes = [];
47911
- const contextualTypes = [];
47912
- const contextualIsCache = [];
47913
- let contextualTypeCount = 0;
47914
- const inferenceContextNodes = [];
47915
- const inferenceContexts = [];
47916
- let inferenceContextCount = 0;
47917
- const emptyStringType = getStringLiteralType("");
47918
- const zeroType = getNumberLiteralType(0);
47919
- const zeroBigIntType = getBigIntLiteralType({ negative: false, base10Value: "0" });
47920
- const resolutionTargets = [];
47921
- const resolutionResults = [];
47922
- const resolutionPropertyNames = [];
47923
- let suggestionCount = 0;
47924
- const maximumSuggestionCount = 10;
47925
- const mergedSymbols = [];
47926
- const symbolLinks = [];
47927
- const nodeLinks = [];
47928
- const flowLoopCaches = [];
47929
- const flowLoopNodes = [];
47930
- const flowLoopKeys = [];
47931
- const flowLoopTypes = [];
47932
- const sharedFlowNodes = [];
47933
- const sharedFlowTypes = [];
47934
- const flowNodeReachable = [];
47935
- const flowNodePostSuper = [];
47936
- const potentialThisCollisions = [];
47937
- const potentialNewTargetCollisions = [];
47938
- const potentialWeakMapSetCollisions = [];
47939
- const potentialReflectCollisions = [];
47940
- const potentialUnusedRenamedBindingElementsInTypes = [];
47941
- const awaitedTypeStack = [];
47942
- const diagnostics = createDiagnosticCollection();
47943
- const suggestionDiagnostics = createDiagnosticCollection();
47944
- const typeofType = createTypeofType();
47945
- let _jsxNamespace;
47946
- let _jsxFactoryEntity;
47947
- const subtypeRelation = /* @__PURE__ */ new Map();
47948
- const strictSubtypeRelation = /* @__PURE__ */ new Map();
47949
- const assignableRelation = /* @__PURE__ */ new Map();
47950
- const comparableRelation = /* @__PURE__ */ new Map();
47951
- const identityRelation = /* @__PURE__ */ new Map();
47952
- const enumRelation = /* @__PURE__ */ new Map();
47953
- const builtinGlobals = createSymbolTable();
47844
+ var amalgamatedDuplicates;
47845
+ var reverseMappedCache = /* @__PURE__ */ new Map();
47846
+ var inInferTypeForHomomorphicMappedType = false;
47847
+ var ambientModulesCache;
47848
+ var patternAmbientModules;
47849
+ var patternAmbientModuleAugmentations;
47850
+ var globalObjectType;
47851
+ var globalFunctionType;
47852
+ var globalCallableFunctionType;
47853
+ var globalNewableFunctionType;
47854
+ var globalArrayType;
47855
+ var globalReadonlyArrayType;
47856
+ var globalStringType;
47857
+ var globalNumberType;
47858
+ var globalBooleanType;
47859
+ var globalRegExpType;
47860
+ var globalThisType;
47861
+ var anyArrayType;
47862
+ var autoArrayType;
47863
+ var anyReadonlyArrayType;
47864
+ var deferredGlobalNonNullableTypeAlias;
47865
+ var deferredGlobalESSymbolConstructorSymbol;
47866
+ var deferredGlobalESSymbolConstructorTypeSymbol;
47867
+ var deferredGlobalESSymbolType;
47868
+ var deferredGlobalTypedPropertyDescriptorType;
47869
+ var deferredGlobalPromiseType;
47870
+ var deferredGlobalPromiseLikeType;
47871
+ var deferredGlobalPromiseConstructorSymbol;
47872
+ var deferredGlobalPromiseConstructorLikeType;
47873
+ var deferredGlobalIterableType;
47874
+ var deferredGlobalIteratorType;
47875
+ var deferredGlobalIterableIteratorType;
47876
+ var deferredGlobalGeneratorType;
47877
+ var deferredGlobalIteratorYieldResultType;
47878
+ var deferredGlobalIteratorReturnResultType;
47879
+ var deferredGlobalAsyncIterableType;
47880
+ var deferredGlobalAsyncIteratorType;
47881
+ var deferredGlobalAsyncIterableIteratorType;
47882
+ var deferredGlobalAsyncGeneratorType;
47883
+ var deferredGlobalTemplateStringsArrayType;
47884
+ var deferredGlobalImportMetaType;
47885
+ var deferredGlobalImportMetaExpressionType;
47886
+ var deferredGlobalImportCallOptionsType;
47887
+ var deferredGlobalExtractSymbol;
47888
+ var deferredGlobalOmitSymbol;
47889
+ var deferredGlobalAwaitedSymbol;
47890
+ var deferredGlobalBigIntType;
47891
+ var deferredGlobalNaNSymbol;
47892
+ var deferredGlobalRecordSymbol;
47893
+ var deferredGlobalClassDecoratorContextType;
47894
+ var deferredGlobalClassMethodDecoratorContextType;
47895
+ var deferredGlobalClassGetterDecoratorContextType;
47896
+ var deferredGlobalClassSetterDecoratorContextType;
47897
+ var deferredGlobalClassAccessorDecoratorContextType;
47898
+ var deferredGlobalClassAccessorDecoratorTargetType;
47899
+ var deferredGlobalClassAccessorDecoratorResultType;
47900
+ var deferredGlobalClassFieldDecoratorContextType;
47901
+ var allPotentiallyUnusedIdentifiers = /* @__PURE__ */ new Map();
47902
+ var flowLoopStart = 0;
47903
+ var flowLoopCount = 0;
47904
+ var sharedFlowCount = 0;
47905
+ var flowAnalysisDisabled = false;
47906
+ var flowInvocationCount = 0;
47907
+ var lastFlowNode;
47908
+ var lastFlowNodeReachable;
47909
+ var flowTypeCache;
47910
+ var contextualTypeNodes = [];
47911
+ var contextualTypes = [];
47912
+ var contextualIsCache = [];
47913
+ var contextualTypeCount = 0;
47914
+ var inferenceContextNodes = [];
47915
+ var inferenceContexts = [];
47916
+ var inferenceContextCount = 0;
47917
+ var emptyStringType = getStringLiteralType("");
47918
+ var zeroType = getNumberLiteralType(0);
47919
+ var zeroBigIntType = getBigIntLiteralType({ negative: false, base10Value: "0" });
47920
+ var resolutionTargets = [];
47921
+ var resolutionResults = [];
47922
+ var resolutionPropertyNames = [];
47923
+ var suggestionCount = 0;
47924
+ var maximumSuggestionCount = 10;
47925
+ var mergedSymbols = [];
47926
+ var symbolLinks = [];
47927
+ var nodeLinks = [];
47928
+ var flowLoopCaches = [];
47929
+ var flowLoopNodes = [];
47930
+ var flowLoopKeys = [];
47931
+ var flowLoopTypes = [];
47932
+ var sharedFlowNodes = [];
47933
+ var sharedFlowTypes = [];
47934
+ var flowNodeReachable = [];
47935
+ var flowNodePostSuper = [];
47936
+ var potentialThisCollisions = [];
47937
+ var potentialNewTargetCollisions = [];
47938
+ var potentialWeakMapSetCollisions = [];
47939
+ var potentialReflectCollisions = [];
47940
+ var potentialUnusedRenamedBindingElementsInTypes = [];
47941
+ var awaitedTypeStack = [];
47942
+ var diagnostics = createDiagnosticCollection();
47943
+ var suggestionDiagnostics = createDiagnosticCollection();
47944
+ var typeofType = createTypeofType();
47945
+ var _jsxNamespace;
47946
+ var _jsxFactoryEntity;
47947
+ var subtypeRelation = /* @__PURE__ */ new Map();
47948
+ var strictSubtypeRelation = /* @__PURE__ */ new Map();
47949
+ var assignableRelation = /* @__PURE__ */ new Map();
47950
+ var comparableRelation = /* @__PURE__ */ new Map();
47951
+ var identityRelation = /* @__PURE__ */ new Map();
47952
+ var enumRelation = /* @__PURE__ */ new Map();
47953
+ var builtinGlobals = createSymbolTable();
47954
47954
  builtinGlobals.set(undefinedSymbol.escapedName, undefinedSymbol);
47955
- const suggestedExtensions = [
47955
+ var suggestedExtensions = [
47956
47956
  [".mts", ".mjs"],
47957
47957
  [".ts", ".js"],
47958
47958
  [".cts", ".cjs"],
@@ -55103,7 +55103,7 @@ function createTypeChecker(host) {
55103
55103
  }
55104
55104
  function findResolutionCycleStartIndex(target, propertyName) {
55105
55105
  for (let i = resolutionTargets.length - 1; i >= 0; i--) {
55106
- if (hasType2(resolutionTargets[i], resolutionPropertyNames[i])) {
55106
+ if (resolutionTargetHasProperty(resolutionTargets[i], resolutionPropertyNames[i])) {
55107
55107
  return -1;
55108
55108
  }
55109
55109
  if (resolutionTargets[i] === target && resolutionPropertyNames[i] === propertyName) {
@@ -55112,7 +55112,7 @@ function createTypeChecker(host) {
55112
55112
  }
55113
55113
  return -1;
55114
55114
  }
55115
- function hasType2(target, propertyName) {
55115
+ function resolutionTargetHasProperty(target, propertyName) {
55116
55116
  switch (propertyName) {
55117
55117
  case 0 /* Type */:
55118
55118
  return !!getSymbolLinks(target).type;
@@ -59117,7 +59117,7 @@ function createTypeChecker(host) {
59117
59117
  const [childTypeParameter = declaration.parent, grandParent] = walkUpParenthesizedTypesAndGetParentAndChild(declaration.parent.parent);
59118
59118
  if (grandParent.kind === 180 /* TypeReference */ && !omitTypeReferences) {
59119
59119
  const typeReference = grandParent;
59120
- const typeParameters = getTypeParametersForTypeReference(typeReference);
59120
+ const typeParameters = getTypeParametersForTypeReferenceOrImport(typeReference);
59121
59121
  if (typeParameters) {
59122
59122
  const index = typeReference.typeArguments.indexOf(childTypeParameter);
59123
59123
  if (index < typeParameters.length) {
@@ -61520,7 +61520,7 @@ function createTypeChecker(host) {
61520
61520
  }
61521
61521
  function getActualTypeVariable(type) {
61522
61522
  if (type.flags & 33554432 /* Substitution */) {
61523
- return type.baseType;
61523
+ return getActualTypeVariable(type.baseType);
61524
61524
  }
61525
61525
  if (type.flags & 8388608 /* IndexedAccess */ && (type.objectType.flags & 33554432 /* Substitution */ || type.indexType.flags & 33554432 /* Substitution */)) {
61526
61526
  return getIndexedAccessType(getActualTypeVariable(type.objectType), getActualTypeVariable(type.indexType));
@@ -61780,13 +61780,6 @@ function createTypeChecker(host) {
61780
61780
  if (meaning === 111551 /* Value */) {
61781
61781
  return getInstantiationExpressionType(getTypeOfSymbol(symbol), node);
61782
61782
  } else {
61783
- const type = tryGetDeclaredTypeOfSymbol(resolvedSymbol);
61784
- const typeParameters = type && getTypeParametersForTypeAndSymbol(type, resolvedSymbol);
61785
- if (node.typeArguments && typeParameters) {
61786
- addLazyDiagnostic(() => {
61787
- checkTypeArgumentConstraints(node, typeParameters);
61788
- });
61789
- }
61790
61783
  return getTypeReferenceType(node, resolvedSymbol);
61791
61784
  }
61792
61785
  }
@@ -64013,7 +64006,7 @@ function createTypeChecker(host) {
64013
64006
  return 0 /* False */;
64014
64007
  }
64015
64008
  }
64016
- const isPerformingCommonPropertyChecks = (relation !== comparableRelation || isUnitType(source2)) && !(intersectionState & 2 /* Target */) && source2.flags & (134348796 /* Primitive */ | 524288 /* Object */ | 2097152 /* Intersection */) && source2 !== globalObjectType && target2.flags & (524288 /* Object */ | 2097152 /* Intersection */) && isWeakType(target2) && (getPropertiesOfType(source2).length > 0 || typeHasCallOrConstructSignatures2(source2));
64009
+ const isPerformingCommonPropertyChecks = (relation !== comparableRelation || isUnitType(source2)) && !(intersectionState & 2 /* Target */) && source2.flags & (134348796 /* Primitive */ | 524288 /* Object */ | 2097152 /* Intersection */) && source2 !== globalObjectType && target2.flags & (524288 /* Object */ | 2097152 /* Intersection */) && isWeakType(target2) && (getPropertiesOfType(source2).length > 0 || typeHasCallOrConstructSignatures(source2));
64017
64010
  const isComparingJsxAttributes = !!(getObjectFlags(source2) & 2048 /* JsxAttributes */);
64018
64011
  if (isPerformingCommonPropertyChecks && !hasCommonProperties(source2, target2, isComparingJsxAttributes)) {
64019
64012
  if (reportErrors2) {
@@ -66611,7 +66604,7 @@ function createTypeChecker(host) {
66611
66604
  }
66612
66605
  function isObjectTypeWithInferableIndex(type) {
66613
66606
  const objectFlags = getObjectFlags(type);
66614
- return type.flags & 2097152 /* Intersection */ ? every(type.types, isObjectTypeWithInferableIndex) : !!(type.symbol && (type.symbol.flags & (4096 /* ObjectLiteral */ | 2048 /* TypeLiteral */ | 384 /* Enum */ | 512 /* ValueModule */)) !== 0 && !(type.symbol.flags & 32 /* Class */) && !typeHasCallOrConstructSignatures2(type)) || !!(objectFlags & 4194304 /* ObjectRestType */) || !!(objectFlags & 1024 /* ReverseMapped */ && isObjectTypeWithInferableIndex(type.source));
66607
+ return type.flags & 2097152 /* Intersection */ ? every(type.types, isObjectTypeWithInferableIndex) : !!(type.symbol && (type.symbol.flags & (4096 /* ObjectLiteral */ | 2048 /* TypeLiteral */ | 384 /* Enum */ | 512 /* ValueModule */)) !== 0 && !(type.symbol.flags & 32 /* Class */) && !typeHasCallOrConstructSignatures(type)) || !!(objectFlags & 4194304 /* ObjectRestType */) || !!(objectFlags & 1024 /* ReverseMapped */ && isObjectTypeWithInferableIndex(type.source));
66615
66608
  }
66616
66609
  function createSymbolWithType(source, type) {
66617
66610
  const symbol = createSymbol(source.flags, source.escapedName, getCheckFlags(source) & 8 /* Readonly */);
@@ -77056,7 +77049,7 @@ function createTypeChecker(host) {
77056
77049
  if (!isTypeAny(leftType) && allTypesAssignableToKind(leftType, 134348796 /* Primitive */)) {
77057
77050
  error(left, Diagnostics.The_left_hand_side_of_an_instanceof_expression_must_be_of_type_any_an_object_type_or_a_type_parameter);
77058
77051
  }
77059
- if (!(isTypeAny(rightType) || typeHasCallOrConstructSignatures2(rightType) || isTypeSubtypeOf(rightType, globalFunctionType))) {
77052
+ if (!(isTypeAny(rightType) || typeHasCallOrConstructSignatures(rightType) || isTypeSubtypeOf(rightType, globalFunctionType))) {
77060
77053
  error(right, Diagnostics.The_right_hand_side_of_an_instanceof_expression_must_be_of_type_any_or_of_a_type_assignable_to_the_Function_interface_type);
77061
77054
  }
77062
77055
  return booleanType;
@@ -78503,7 +78496,7 @@ function createTypeChecker(host) {
78503
78496
  error(node.name, Diagnostics.constructor_cannot_be_used_as_a_parameter_property_name);
78504
78497
  }
78505
78498
  }
78506
- if ((node.questionToken || isJSDocOptionalParameter(node)) && isBindingPattern(node.name) && func.body) {
78499
+ if (!node.initializer && isOptionalDeclaration(node) && isBindingPattern(node.name) && func.body) {
78507
78500
  error(node, Diagnostics.A_binding_pattern_parameter_cannot_be_optional_in_an_implementation_signature);
78508
78501
  }
78509
78502
  if (node.name && isIdentifier(node.name) && (node.name.escapedText === "this" || node.name.escapedText === "new")) {
@@ -79025,8 +79018,8 @@ function createTypeChecker(host) {
79025
79018
  }
79026
79019
  return void 0;
79027
79020
  }
79028
- function getTypeParametersForTypeReference(node) {
79029
- const type = getTypeFromTypeReference(node);
79021
+ function getTypeParametersForTypeReferenceOrImport(node) {
79022
+ const type = getTypeFromTypeNode(node);
79030
79023
  if (!isErrorType(type)) {
79031
79024
  const symbol = getNodeLinks(node).resolvedSymbol;
79032
79025
  if (symbol) {
@@ -79044,11 +79037,14 @@ function createTypeChecker(host) {
79044
79037
  }
79045
79038
  }
79046
79039
  forEach(node.typeArguments, checkSourceElement);
79047
- const type = getTypeFromTypeReference(node);
79040
+ checkTypeReferenceOrImport(node);
79041
+ }
79042
+ function checkTypeReferenceOrImport(node) {
79043
+ const type = getTypeFromTypeNode(node);
79048
79044
  if (!isErrorType(type)) {
79049
79045
  if (node.typeArguments) {
79050
79046
  addLazyDiagnostic(() => {
79051
- const typeParameters = getTypeParametersForTypeReference(node);
79047
+ const typeParameters = getTypeParametersForTypeReferenceOrImport(node);
79052
79048
  if (typeParameters) {
79053
79049
  checkTypeArgumentConstraints(node, typeParameters);
79054
79050
  }
@@ -79070,7 +79066,7 @@ function createTypeChecker(host) {
79070
79066
  const typeReferenceNode = tryCast(node.parent, isTypeReferenceType);
79071
79067
  if (!typeReferenceNode)
79072
79068
  return void 0;
79073
- const typeParameters = getTypeParametersForTypeReference(typeReferenceNode);
79069
+ const typeParameters = getTypeParametersForTypeReferenceOrImport(typeReferenceNode);
79074
79070
  if (!typeParameters)
79075
79071
  return void 0;
79076
79072
  const constraint = getConstraintOfTypeParameter(typeParameters[typeReferenceNode.typeArguments.indexOf(node)]);
@@ -79250,7 +79246,7 @@ function createTypeChecker(host) {
79250
79246
  }
79251
79247
  }
79252
79248
  }
79253
- getTypeFromTypeNode(node);
79249
+ checkTypeReferenceOrImport(node);
79254
79250
  }
79255
79251
  function checkNamedTupleMember(node) {
79256
79252
  if (node.dotDotDotToken && node.questionToken) {
@@ -84727,8 +84723,8 @@ function createTypeChecker(host) {
84727
84723
  }
84728
84724
  return getNamedMembers(propsByName);
84729
84725
  }
84730
- function typeHasCallOrConstructSignatures2(type) {
84731
- return typeHasCallOrConstructSignatures(type, checker);
84726
+ function typeHasCallOrConstructSignatures(type) {
84727
+ return getSignaturesOfType(type, 0 /* Call */).length !== 0 || getSignaturesOfType(type, 1 /* Construct */).length !== 0;
84732
84728
  }
84733
84729
  function getRootSymbols(symbol) {
84734
84730
  const roots = getImmediateRootSymbols(symbol);
@@ -88689,31 +88685,31 @@ function extractSingleNode(nodes) {
88689
88685
 
88690
88686
  // src/compiler/sourcemap.ts
88691
88687
  function createSourceMapGenerator(host, file, sourceRoot, sourcesDirectoryPath, generatorOptions) {
88692
- const { enter, exit } = generatorOptions.extendedDiagnostics ? createTimer("Source Map", "beforeSourcemap", "afterSourcemap") : nullTimer;
88693
- const rawSources = [];
88694
- const sources = [];
88695
- const sourceToSourceIndexMap = /* @__PURE__ */ new Map();
88696
- let sourcesContent;
88697
- const names = [];
88698
- let nameToNameIndexMap;
88699
- const mappingCharCodes = [];
88700
- let mappings = "";
88701
- let lastGeneratedLine = 0;
88702
- let lastGeneratedCharacter = 0;
88703
- let lastSourceIndex = 0;
88704
- let lastSourceLine = 0;
88705
- let lastSourceCharacter = 0;
88706
- let lastNameIndex = 0;
88707
- let hasLast = false;
88708
- let pendingGeneratedLine = 0;
88709
- let pendingGeneratedCharacter = 0;
88710
- let pendingSourceIndex = 0;
88711
- let pendingSourceLine = 0;
88712
- let pendingSourceCharacter = 0;
88713
- let pendingNameIndex = 0;
88714
- let hasPending = false;
88715
- let hasPendingSource = false;
88716
- let hasPendingName = false;
88688
+ var { enter, exit } = generatorOptions.extendedDiagnostics ? createTimer("Source Map", "beforeSourcemap", "afterSourcemap") : nullTimer;
88689
+ var rawSources = [];
88690
+ var sources = [];
88691
+ var sourceToSourceIndexMap = /* @__PURE__ */ new Map();
88692
+ var sourcesContent;
88693
+ var names = [];
88694
+ var nameToNameIndexMap;
88695
+ var mappingCharCodes = [];
88696
+ var mappings = "";
88697
+ var lastGeneratedLine = 0;
88698
+ var lastGeneratedCharacter = 0;
88699
+ var lastSourceIndex = 0;
88700
+ var lastSourceLine = 0;
88701
+ var lastSourceCharacter = 0;
88702
+ var lastNameIndex = 0;
88703
+ var hasLast = false;
88704
+ var pendingGeneratedLine = 0;
88705
+ var pendingGeneratedCharacter = 0;
88706
+ var pendingSourceIndex = 0;
88707
+ var pendingSourceLine = 0;
88708
+ var pendingSourceCharacter = 0;
88709
+ var pendingNameIndex = 0;
88710
+ var hasPending = false;
88711
+ var hasPendingSource = false;
88712
+ var hasPendingName = false;
88717
88713
  return {
88718
88714
  getSources: () => rawSources,
88719
88715
  addSource,
@@ -97839,7 +97835,7 @@ function transformES2018(context) {
97839
97835
  );
97840
97836
  }
97841
97837
  function visitBinaryExpression(node, expressionResultIsUnused2) {
97842
- if (isDestructuringAssignment(node) && node.left.transformFlags & 65536 /* ContainsObjectRestOrSpread */) {
97838
+ if (isDestructuringAssignment(node) && containsObjectRestOrSpread(node.left)) {
97843
97839
  return flattenDestructuringAssignment(
97844
97840
  node,
97845
97841
  visitor,
@@ -97971,7 +97967,7 @@ function transformES2018(context) {
97971
97967
  }
97972
97968
  function visitForOfStatement(node, outermostLabeledStatement) {
97973
97969
  const ancestorFacts = enterSubtree(0 /* IterationStatementExcludes */, 2 /* IterationStatementIncludes */);
97974
- if (node.initializer.transformFlags & 65536 /* ContainsObjectRestOrSpread */) {
97970
+ if (node.initializer.transformFlags & 65536 /* ContainsObjectRestOrSpread */ || isAssignmentPattern(node.initializer) && containsObjectRestOrSpread(node.initializer)) {
97975
97971
  node = transformForOfStatementWithObjectRest(node);
97976
97972
  }
97977
97973
  const result = node.awaitModifier ? transformForAwaitOfStatement(node, outermostLabeledStatement, ancestorFacts) : factory2.restoreEnclosingLabel(visitEachChild(node, visitor, context), outermostLabeledStatement);
@@ -111219,15 +111215,15 @@ function getFirstProjectOutput(configFile, ignoreCase) {
111219
111215
  return Debug.fail(`project ${configFile.options.configFilePath} expected to have at least one output`);
111220
111216
  }
111221
111217
  function emitFiles(resolver, host, targetSourceFile, { scriptTransformers, declarationTransformers }, emitOnly, onlyBuildInfo, forceDtsEmit) {
111222
- const compilerOptions = host.getCompilerOptions();
111223
- const sourceMapDataList = compilerOptions.sourceMap || compilerOptions.inlineSourceMap || getAreDeclarationMapsEnabled(compilerOptions) ? [] : void 0;
111224
- const emittedFilesList = compilerOptions.listEmittedFiles ? [] : void 0;
111225
- const emitterDiagnostics = createDiagnosticCollection();
111226
- const newLine = getNewLineCharacter(compilerOptions);
111227
- const writer = createTextWriter(newLine);
111228
- const { enter, exit } = createTimer("printTime", "beforePrint", "afterPrint");
111229
- let bundleBuildInfo;
111230
- let emitSkipped = false;
111218
+ var compilerOptions = host.getCompilerOptions();
111219
+ var sourceMapDataList = compilerOptions.sourceMap || compilerOptions.inlineSourceMap || getAreDeclarationMapsEnabled(compilerOptions) ? [] : void 0;
111220
+ var emittedFilesList = compilerOptions.listEmittedFiles ? [] : void 0;
111221
+ var emitterDiagnostics = createDiagnosticCollection();
111222
+ var newLine = getNewLineCharacter(compilerOptions);
111223
+ var writer = createTextWriter(newLine);
111224
+ var { enter, exit } = createTimer("printTime", "beforePrint", "afterPrint");
111225
+ var bundleBuildInfo;
111226
+ var emitSkipped = false;
111231
111227
  enter();
111232
111228
  forEachEmittedFile(
111233
111229
  host,
@@ -111794,7 +111790,7 @@ var createPrinterWithRemoveComments = /* @__PURE__ */ memoize(() => createPrinte
111794
111790
  var createPrinterWithRemoveCommentsNeverAsciiEscape = /* @__PURE__ */ memoize(() => createPrinter({ removeComments: true, neverAsciiEscape: true }));
111795
111791
  var createPrinterWithRemoveCommentsOmitTrailingSemicolon = /* @__PURE__ */ memoize(() => createPrinter({ removeComments: true, omitTrailingSemicolon: true }));
111796
111792
  function createPrinter(printerOptions = {}, handlers = {}) {
111797
- const {
111793
+ var {
111798
111794
  hasGlobalName,
111799
111795
  onEmitNode = noEmitNotification,
111800
111796
  isEmitNotificationEnabled,
@@ -111806,57 +111802,57 @@ function createPrinter(printerOptions = {}, handlers = {}) {
111806
111802
  onBeforeEmitToken,
111807
111803
  onAfterEmitToken
111808
111804
  } = handlers;
111809
- const extendedDiagnostics = !!printerOptions.extendedDiagnostics;
111810
- const newLine = getNewLineCharacter(printerOptions);
111811
- const moduleKind = getEmitModuleKind(printerOptions);
111812
- const bundledHelpers = /* @__PURE__ */ new Map();
111813
- let currentSourceFile;
111814
- let nodeIdToGeneratedName;
111815
- let nodeIdToGeneratedPrivateName;
111816
- let autoGeneratedIdToGeneratedName;
111817
- let generatedNames;
111818
- let formattedNameTempFlagsStack;
111819
- let formattedNameTempFlags;
111820
- let privateNameTempFlagsStack;
111821
- let privateNameTempFlags;
111822
- let tempFlagsStack;
111823
- let tempFlags;
111824
- let reservedNamesStack;
111825
- let reservedNames;
111826
- let reservedPrivateNamesStack;
111827
- let reservedPrivateNames;
111828
- let preserveSourceNewlines = printerOptions.preserveSourceNewlines;
111829
- let nextListElementPos;
111830
- let writer;
111831
- let ownWriter;
111832
- let write = writeBase;
111833
- let isOwnFileEmit;
111834
- const bundleFileInfo = printerOptions.writeBundleFileInfo ? { sections: [] } : void 0;
111835
- const relativeToBuildInfo = bundleFileInfo ? Debug.checkDefined(printerOptions.relativeToBuildInfo) : void 0;
111836
- const recordInternalSection = printerOptions.recordInternalSection;
111837
- let sourceFileTextPos = 0;
111838
- let sourceFileTextKind = "text" /* Text */;
111839
- let sourceMapsDisabled = true;
111840
- let sourceMapGenerator;
111841
- let sourceMapSource;
111842
- let sourceMapSourceIndex = -1;
111843
- let mostRecentlyAddedSourceMapSource;
111844
- let mostRecentlyAddedSourceMapSourceIndex = -1;
111845
- let containerPos = -1;
111846
- let containerEnd = -1;
111847
- let declarationListContainerEnd = -1;
111848
- let currentLineMap;
111849
- let detachedCommentsInfo;
111850
- let hasWrittenComment = false;
111851
- let commentsDisabled = !!printerOptions.removeComments;
111852
- let lastSubstitution;
111853
- let currentParenthesizerRule;
111854
- const { enter: enterComment, exit: exitComment } = createTimerIf(extendedDiagnostics, "commentTime", "beforeComment", "afterComment");
111855
- const parenthesizer = factory.parenthesizer;
111856
- const typeArgumentParenthesizerRuleSelector = {
111805
+ var extendedDiagnostics = !!printerOptions.extendedDiagnostics;
111806
+ var newLine = getNewLineCharacter(printerOptions);
111807
+ var moduleKind = getEmitModuleKind(printerOptions);
111808
+ var bundledHelpers = /* @__PURE__ */ new Map();
111809
+ var currentSourceFile;
111810
+ var nodeIdToGeneratedName;
111811
+ var nodeIdToGeneratedPrivateName;
111812
+ var autoGeneratedIdToGeneratedName;
111813
+ var generatedNames;
111814
+ var formattedNameTempFlagsStack;
111815
+ var formattedNameTempFlags;
111816
+ var privateNameTempFlagsStack;
111817
+ var privateNameTempFlags;
111818
+ var tempFlagsStack;
111819
+ var tempFlags;
111820
+ var reservedNamesStack;
111821
+ var reservedNames;
111822
+ var reservedPrivateNamesStack;
111823
+ var reservedPrivateNames;
111824
+ var preserveSourceNewlines = printerOptions.preserveSourceNewlines;
111825
+ var nextListElementPos;
111826
+ var writer;
111827
+ var ownWriter;
111828
+ var write = writeBase;
111829
+ var isOwnFileEmit;
111830
+ var bundleFileInfo = printerOptions.writeBundleFileInfo ? { sections: [] } : void 0;
111831
+ var relativeToBuildInfo = bundleFileInfo ? Debug.checkDefined(printerOptions.relativeToBuildInfo) : void 0;
111832
+ var recordInternalSection = printerOptions.recordInternalSection;
111833
+ var sourceFileTextPos = 0;
111834
+ var sourceFileTextKind = "text" /* Text */;
111835
+ var sourceMapsDisabled = true;
111836
+ var sourceMapGenerator;
111837
+ var sourceMapSource;
111838
+ var sourceMapSourceIndex = -1;
111839
+ var mostRecentlyAddedSourceMapSource;
111840
+ var mostRecentlyAddedSourceMapSourceIndex = -1;
111841
+ var containerPos = -1;
111842
+ var containerEnd = -1;
111843
+ var declarationListContainerEnd = -1;
111844
+ var currentLineMap;
111845
+ var detachedCommentsInfo;
111846
+ var hasWrittenComment = false;
111847
+ var commentsDisabled = !!printerOptions.removeComments;
111848
+ var lastSubstitution;
111849
+ var currentParenthesizerRule;
111850
+ var { enter: enterComment, exit: exitComment } = createTimerIf(extendedDiagnostics, "commentTime", "beforeComment", "afterComment");
111851
+ var parenthesizer = factory.parenthesizer;
111852
+ var typeArgumentParenthesizerRuleSelector = {
111857
111853
  select: (index) => index === 0 ? parenthesizer.parenthesizeLeadingTypeArgument : void 0
111858
111854
  };
111859
- const emitBinaryExpression = createEmitBinaryExpression();
111855
+ var emitBinaryExpression = createEmitBinaryExpression();
111860
111856
  reset2();
111861
111857
  return {
111862
111858
  // public API
@@ -120273,7 +120269,7 @@ function createProgram(rootNamesOrOptions, _options, _host, _oldProgram, _config
120273
120269
  if (version2 === "6.0" /* v6_0 */) {
120274
120270
  createDiagnostic(Diagnostics.Flag_0_is_deprecated_Please_remove_it_from_your_configuration, value || name);
120275
120271
  } else {
120276
- createDiagnostic(Diagnostics.Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_ignoreDeprecations_Colon_2_to_silence_this_error, value || name, "5.5" /* v5_5 */, "5.0" /* v5_0 */);
120272
+ createDiagnostic(Diagnostics.Flag_0_is_deprecated_and_will_stop_functioning_in_TypeScript_1_Specify_compilerOption_ignoreDeprecations_Colon_2_to_silence_this_error, value || name, "5.5" /* v5_5 */, "5.0" /* v5_0 */);
120277
120273
  }
120278
120274
  }
120279
120275
  function createDiagnosticExplainingFile(file, fileProcessingReason, diagnostic, args) {
@@ -129593,7 +129589,7 @@ function needsParentheses(expression) {
129593
129589
  return isBinaryExpression(expression) && expression.operatorToken.kind === 27 /* CommaToken */ || isObjectLiteralExpression(expression) || isAsExpression(expression) && isObjectLiteralExpression(expression.expression);
129594
129590
  }
129595
129591
  function getContextualTypeFromParent(node, checker, contextFlags) {
129596
- const { parent: parent2 } = node;
129592
+ const parent2 = walkUpParenthesizedExpressions(node.parent);
129597
129593
  switch (parent2.kind) {
129598
129594
  case 211 /* NewExpression */:
129599
129595
  return checker.getContextualType(parent2, contextFlags);
@@ -129602,7 +129598,7 @@ function getContextualTypeFromParent(node, checker, contextFlags) {
129602
129598
  return isEqualityOperatorKind(operatorToken.kind) ? checker.getTypeAtLocation(node === right ? left : right) : checker.getContextualType(node, contextFlags);
129603
129599
  }
129604
129600
  case 292 /* CaseClause */:
129605
- return parent2.expression === node ? getSwitchedType(parent2, checker) : void 0;
129601
+ return getSwitchedType(parent2, checker);
129606
129602
  default:
129607
129603
  return checker.getContextualType(node, contextFlags);
129608
129604
  }
@@ -130162,8 +130158,8 @@ function newCaseClauseTracker(checker, clauses) {
130162
130158
  const existingBigInts = /* @__PURE__ */ new Set();
130163
130159
  for (const clause of clauses) {
130164
130160
  if (!isDefaultClause(clause)) {
130165
- if (isLiteralExpression(clause.expression)) {
130166
- const expression = clause.expression;
130161
+ const expression = skipParentheses(clause.expression);
130162
+ if (isLiteralExpression(expression)) {
130167
130163
  switch (expression.kind) {
130168
130164
  case 14 /* NoSubstitutionTemplateLiteral */:
130169
130165
  case 10 /* StringLiteral */:
@@ -151382,7 +151378,7 @@ function getPropertiesForObjectExpression(contextualType, completionsType, obj,
151382
151378
  function getApparentProperties(type, node, checker) {
151383
151379
  if (!type.isUnion())
151384
151380
  return type.getApparentProperties();
151385
- return checker.getAllPossiblePropertiesOfTypes(filter(type.types, (memberType) => !(memberType.flags & 134348796 /* Primitive */ || checker.isArrayLikeType(memberType) || checker.isTypeInvalidDueToUnionDiscriminant(memberType, node) || typeHasCallOrConstructSignatures(memberType, checker) || memberType.isClass() && containsNonPublicProperties(memberType.getApparentProperties()))));
151381
+ return checker.getAllPossiblePropertiesOfTypes(filter(type.types, (memberType) => !(memberType.flags & 134348796 /* Primitive */ || checker.isArrayLikeType(memberType) || checker.isTypeInvalidDueToUnionDiscriminant(memberType, node) || checker.typeHasCallOrConstructSignatures(memberType) || memberType.isClass() && containsNonPublicProperties(memberType.getApparentProperties()))));
151386
151382
  }
151387
151383
  function containsNonPublicProperties(props) {
151388
151384
  return some(props, (p) => !!(getDeclarationModifierFlagsFromSymbol(p) & 24 /* NonPublicAccessibilityModifier */));
@@ -151927,7 +151923,7 @@ function getStringLiteralCompletionEntries(sourceFile, node, position, typeCheck
151927
151923
  case 280 /* ExternalModuleReference */:
151928
151924
  return { kind: 0 /* Paths */, paths: getStringLiteralCompletionsFromModuleNames(sourceFile, node, compilerOptions, host, typeChecker, preferences) };
151929
151925
  case 292 /* CaseClause */:
151930
- const tracker = newCaseClauseTracker(typeChecker, node.parent.parent.clauses);
151926
+ const tracker = newCaseClauseTracker(typeChecker, parent2.parent.clauses);
151931
151927
  const literals = fromContextualType().types.filter((literal) => !tracker.hasValue(literal.value));
151932
151928
  return { kind: 2 /* Types */, types: literals, isNewIdentifier: false };
151933
151929
  default:
@@ -158542,12 +158538,7 @@ function filterImport(i, moduleSpecifier, keep) {
158542
158538
  return defaultImport || namedBindings ? factory.createImportDeclaration(
158543
158539
  /*modifiers*/
158544
158540
  void 0,
158545
- factory.createImportClause(
158546
- /*isTypeOnly*/
158547
- false,
158548
- defaultImport,
158549
- namedBindings
158550
- ),
158541
+ factory.createImportClause(clause.isTypeOnly, defaultImport, namedBindings),
158551
158542
  moduleSpecifier,
158552
158543
  /*assertClause*/
158553
158544
  void 0
@@ -167933,6 +167924,7 @@ __export(ts_exports3, {
167933
167924
  consumesNodeCoreModules: () => consumesNodeCoreModules,
167934
167925
  contains: () => contains,
167935
167926
  containsIgnoredPath: () => containsIgnoredPath,
167927
+ containsObjectRestOrSpread: () => containsObjectRestOrSpread,
167936
167928
  containsParseError: () => containsParseError,
167937
167929
  containsPath: () => containsPath,
167938
167930
  convertCompilerOptionsForTelemetry: () => convertCompilerOptionsForTelemetry,
@@ -169835,7 +169827,6 @@ __export(ts_exports3, {
169835
169827
  typeAcquisitionDeclarations: () => typeAcquisitionDeclarations,
169836
169828
  typeAliasNamePart: () => typeAliasNamePart,
169837
169829
  typeDirectiveIsEqualTo: () => typeDirectiveIsEqualTo,
169838
- typeHasCallOrConstructSignatures: () => typeHasCallOrConstructSignatures,
169839
169830
  typeKeywords: () => typeKeywords,
169840
169831
  typeParameterNamePart: () => typeParameterNamePart,
169841
169832
  typeReferenceResolutionNameAndModeGetter: () => typeReferenceResolutionNameAndModeGetter,
@@ -181883,6 +181874,7 @@ start(initializeNodeSystem(), require("os").platform());
181883
181874
  consumesNodeCoreModules,
181884
181875
  contains,
181885
181876
  containsIgnoredPath,
181877
+ containsObjectRestOrSpread,
181886
181878
  containsParseError,
181887
181879
  containsPath,
181888
181880
  convertCompilerOptionsForTelemetry,
@@ -183785,7 +183777,6 @@ start(initializeNodeSystem(), require("os").platform());
183785
183777
  typeAcquisitionDeclarations,
183786
183778
  typeAliasNamePart,
183787
183779
  typeDirectiveIsEqualTo,
183788
- typeHasCallOrConstructSignatures,
183789
183780
  typeKeywords,
183790
183781
  typeParameterNamePart,
183791
183782
  typeReferenceResolutionNameAndModeGetter,