typescript 5.3.0-dev.20230913 → 5.3.0-dev.20230914

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
@@ -1332,6 +1332,7 @@ __export(server_exports, {
1332
1332
  isExclamationToken: () => isExclamationToken,
1333
1333
  isExcludedFile: () => isExcludedFile,
1334
1334
  isExclusivelyTypeOnlyImportOrExport: () => isExclusivelyTypeOnlyImportOrExport,
1335
+ isExpandoPropertyDeclaration: () => isExpandoPropertyDeclaration,
1335
1336
  isExportAssignment: () => isExportAssignment,
1336
1337
  isExportDeclaration: () => isExportDeclaration,
1337
1338
  isExportModifier: () => isExportModifier,
@@ -2327,7 +2328,7 @@ module.exports = __toCommonJS(server_exports);
2327
2328
 
2328
2329
  // src/compiler/corePublic.ts
2329
2330
  var versionMajorMinor = "5.3";
2330
- var version = `${versionMajorMinor}.0-dev.20230913`;
2331
+ var version = `${versionMajorMinor}.0-dev.20230914`;
2331
2332
  var Comparison = /* @__PURE__ */ ((Comparison3) => {
2332
2333
  Comparison3[Comparison3["LessThan"] = -1] = "LessThan";
2333
2334
  Comparison3[Comparison3["EqualTo"] = 0] = "EqualTo";
@@ -4468,7 +4469,7 @@ Node ${formatSyntaxKind(node.kind)} was unexpected.`,
4468
4469
  // for use with vscode-js-debug's new customDescriptionGenerator in launch.json
4469
4470
  __tsDebuggerDisplay: {
4470
4471
  value() {
4471
- const typeHeader = this.flags & 98304 /* Nullable */ ? "NullableType" : this.flags & 384 /* StringOrNumberLiteral */ ? `LiteralType ${JSON.stringify(this.value)}` : this.flags & 2048 /* BigIntLiteral */ ? `LiteralType ${this.value.negative ? "-" : ""}${this.value.base10Value}n` : this.flags & 8192 /* UniqueESSymbol */ ? "UniqueESSymbolType" : this.flags & 32 /* Enum */ ? "EnumType" : this.flags & 67359327 /* Intrinsic */ ? `IntrinsicType ${this.intrinsicName}` : this.flags & 1048576 /* Union */ ? "UnionType" : this.flags & 2097152 /* Intersection */ ? "IntersectionType" : this.flags & 4194304 /* Index */ ? "IndexType" : this.flags & 8388608 /* IndexedAccess */ ? "IndexedAccessType" : this.flags & 16777216 /* Conditional */ ? "ConditionalType" : this.flags & 33554432 /* Substitution */ ? "SubstitutionType" : this.flags & 262144 /* TypeParameter */ ? "TypeParameter" : this.flags & 524288 /* Object */ ? this.objectFlags & 3 /* ClassOrInterface */ ? "InterfaceType" : this.objectFlags & 4 /* Reference */ ? "TypeReference" : this.objectFlags & 8 /* Tuple */ ? "TupleType" : this.objectFlags & 16 /* Anonymous */ ? "AnonymousType" : this.objectFlags & 32 /* Mapped */ ? "MappedType" : this.objectFlags & 1024 /* ReverseMapped */ ? "ReverseMappedType" : this.objectFlags & 256 /* EvolvingArray */ ? "EvolvingArrayType" : "ObjectType" : "Type";
4472
+ const typeHeader = this.flags & 67359327 /* Intrinsic */ ? `IntrinsicType ${this.intrinsicName}${this.debugIntrinsicName ? ` (${this.debugIntrinsicName})` : ""}` : this.flags & 98304 /* Nullable */ ? "NullableType" : this.flags & 384 /* StringOrNumberLiteral */ ? `LiteralType ${JSON.stringify(this.value)}` : this.flags & 2048 /* BigIntLiteral */ ? `LiteralType ${this.value.negative ? "-" : ""}${this.value.base10Value}n` : this.flags & 8192 /* UniqueESSymbol */ ? "UniqueESSymbolType" : this.flags & 32 /* Enum */ ? "EnumType" : this.flags & 1048576 /* Union */ ? "UnionType" : this.flags & 2097152 /* Intersection */ ? "IntersectionType" : this.flags & 4194304 /* Index */ ? "IndexType" : this.flags & 8388608 /* IndexedAccess */ ? "IndexedAccessType" : this.flags & 16777216 /* Conditional */ ? "ConditionalType" : this.flags & 33554432 /* Substitution */ ? "SubstitutionType" : this.flags & 262144 /* TypeParameter */ ? "TypeParameter" : this.flags & 524288 /* Object */ ? this.objectFlags & 3 /* ClassOrInterface */ ? "InterfaceType" : this.objectFlags & 4 /* Reference */ ? "TypeReference" : this.objectFlags & 8 /* Tuple */ ? "TupleType" : this.objectFlags & 16 /* Anonymous */ ? "AnonymousType" : this.objectFlags & 32 /* Mapped */ ? "MappedType" : this.objectFlags & 1024 /* ReverseMapped */ ? "ReverseMappedType" : this.objectFlags & 256 /* EvolvingArray */ ? "EvolvingArrayType" : "ObjectType" : "Type";
4472
4473
  const remainingObjectFlags = this.flags & 524288 /* Object */ ? this.objectFlags & ~1343 /* ObjectTypeKindMask */ : 0;
4473
4474
  return `${typeHeader}${this.symbol ? ` '${symbolName(this.symbol)}'` : ""}${remainingObjectFlags ? ` (${formatObjectFlags(remainingObjectFlags)})` : ""}`;
4474
4475
  }
@@ -11452,6 +11453,7 @@ var unicodeESNextIdentifierStart = [65, 90, 97, 122, 170, 170, 181, 181, 186, 18
11452
11453
  var unicodeESNextIdentifierPart = [48, 57, 65, 90, 95, 95, 97, 122, 170, 170, 181, 181, 183, 183, 186, 186, 192, 214, 216, 246, 248, 705, 710, 721, 736, 740, 748, 748, 750, 750, 768, 884, 886, 887, 890, 893, 895, 895, 902, 906, 908, 908, 910, 929, 931, 1013, 1015, 1153, 1155, 1159, 1162, 1327, 1329, 1366, 1369, 1369, 1376, 1416, 1425, 1469, 1471, 1471, 1473, 1474, 1476, 1477, 1479, 1479, 1488, 1514, 1519, 1522, 1552, 1562, 1568, 1641, 1646, 1747, 1749, 1756, 1759, 1768, 1770, 1788, 1791, 1791, 1808, 1866, 1869, 1969, 1984, 2037, 2042, 2042, 2045, 2045, 2048, 2093, 2112, 2139, 2144, 2154, 2208, 2228, 2230, 2237, 2259, 2273, 2275, 2403, 2406, 2415, 2417, 2435, 2437, 2444, 2447, 2448, 2451, 2472, 2474, 2480, 2482, 2482, 2486, 2489, 2492, 2500, 2503, 2504, 2507, 2510, 2519, 2519, 2524, 2525, 2527, 2531, 2534, 2545, 2556, 2556, 2558, 2558, 2561, 2563, 2565, 2570, 2575, 2576, 2579, 2600, 2602, 2608, 2610, 2611, 2613, 2614, 2616, 2617, 2620, 2620, 2622, 2626, 2631, 2632, 2635, 2637, 2641, 2641, 2649, 2652, 2654, 2654, 2662, 2677, 2689, 2691, 2693, 2701, 2703, 2705, 2707, 2728, 2730, 2736, 2738, 2739, 2741, 2745, 2748, 2757, 2759, 2761, 2763, 2765, 2768, 2768, 2784, 2787, 2790, 2799, 2809, 2815, 2817, 2819, 2821, 2828, 2831, 2832, 2835, 2856, 2858, 2864, 2866, 2867, 2869, 2873, 2876, 2884, 2887, 2888, 2891, 2893, 2902, 2903, 2908, 2909, 2911, 2915, 2918, 2927, 2929, 2929, 2946, 2947, 2949, 2954, 2958, 2960, 2962, 2965, 2969, 2970, 2972, 2972, 2974, 2975, 2979, 2980, 2984, 2986, 2990, 3001, 3006, 3010, 3014, 3016, 3018, 3021, 3024, 3024, 3031, 3031, 3046, 3055, 3072, 3084, 3086, 3088, 3090, 3112, 3114, 3129, 3133, 3140, 3142, 3144, 3146, 3149, 3157, 3158, 3160, 3162, 3168, 3171, 3174, 3183, 3200, 3203, 3205, 3212, 3214, 3216, 3218, 3240, 3242, 3251, 3253, 3257, 3260, 3268, 3270, 3272, 3274, 3277, 3285, 3286, 3294, 3294, 3296, 3299, 3302, 3311, 3313, 3314, 3328, 3331, 3333, 3340, 3342, 3344, 3346, 3396, 3398, 3400, 3402, 3406, 3412, 3415, 3423, 3427, 3430, 3439, 3450, 3455, 3458, 3459, 3461, 3478, 3482, 3505, 3507, 3515, 3517, 3517, 3520, 3526, 3530, 3530, 3535, 3540, 3542, 3542, 3544, 3551, 3558, 3567, 3570, 3571, 3585, 3642, 3648, 3662, 3664, 3673, 3713, 3714, 3716, 3716, 3718, 3722, 3724, 3747, 3749, 3749, 3751, 3773, 3776, 3780, 3782, 3782, 3784, 3789, 3792, 3801, 3804, 3807, 3840, 3840, 3864, 3865, 3872, 3881, 3893, 3893, 3895, 3895, 3897, 3897, 3902, 3911, 3913, 3948, 3953, 3972, 3974, 3991, 3993, 4028, 4038, 4038, 4096, 4169, 4176, 4253, 4256, 4293, 4295, 4295, 4301, 4301, 4304, 4346, 4348, 4680, 4682, 4685, 4688, 4694, 4696, 4696, 4698, 4701, 4704, 4744, 4746, 4749, 4752, 4784, 4786, 4789, 4792, 4798, 4800, 4800, 4802, 4805, 4808, 4822, 4824, 4880, 4882, 4885, 4888, 4954, 4957, 4959, 4969, 4977, 4992, 5007, 5024, 5109, 5112, 5117, 5121, 5740, 5743, 5759, 5761, 5786, 5792, 5866, 5870, 5880, 5888, 5900, 5902, 5908, 5920, 5940, 5952, 5971, 5984, 5996, 5998, 6e3, 6002, 6003, 6016, 6099, 6103, 6103, 6108, 6109, 6112, 6121, 6155, 6157, 6160, 6169, 6176, 6264, 6272, 6314, 6320, 6389, 6400, 6430, 6432, 6443, 6448, 6459, 6470, 6509, 6512, 6516, 6528, 6571, 6576, 6601, 6608, 6618, 6656, 6683, 6688, 6750, 6752, 6780, 6783, 6793, 6800, 6809, 6823, 6823, 6832, 6845, 6912, 6987, 6992, 7001, 7019, 7027, 7040, 7155, 7168, 7223, 7232, 7241, 7245, 7293, 7296, 7304, 7312, 7354, 7357, 7359, 7376, 7378, 7380, 7418, 7424, 7673, 7675, 7957, 7960, 7965, 7968, 8005, 8008, 8013, 8016, 8023, 8025, 8025, 8027, 8027, 8029, 8029, 8031, 8061, 8064, 8116, 8118, 8124, 8126, 8126, 8130, 8132, 8134, 8140, 8144, 8147, 8150, 8155, 8160, 8172, 8178, 8180, 8182, 8188, 8255, 8256, 8276, 8276, 8305, 8305, 8319, 8319, 8336, 8348, 8400, 8412, 8417, 8417, 8421, 8432, 8450, 8450, 8455, 8455, 8458, 8467, 8469, 8469, 8472, 8477, 8484, 8484, 8486, 8486, 8488, 8488, 8490, 8505, 8508, 8511, 8517, 8521, 8526, 8526, 8544, 8584, 11264, 11310, 11312, 11358, 11360, 11492, 11499, 11507, 11520, 11557, 11559, 11559, 11565, 11565, 11568, 11623, 11631, 11631, 11647, 11670, 11680, 11686, 11688, 11694, 11696, 11702, 11704, 11710, 11712, 11718, 11720, 11726, 11728, 11734, 11736, 11742, 11744, 11775, 12293, 12295, 12321, 12335, 12337, 12341, 12344, 12348, 12353, 12438, 12441, 12447, 12449, 12538, 12540, 12543, 12549, 12591, 12593, 12686, 12704, 12730, 12784, 12799, 13312, 19893, 19968, 40943, 40960, 42124, 42192, 42237, 42240, 42508, 42512, 42539, 42560, 42607, 42612, 42621, 42623, 42737, 42775, 42783, 42786, 42888, 42891, 42943, 42946, 42950, 42999, 43047, 43072, 43123, 43136, 43205, 43216, 43225, 43232, 43255, 43259, 43259, 43261, 43309, 43312, 43347, 43360, 43388, 43392, 43456, 43471, 43481, 43488, 43518, 43520, 43574, 43584, 43597, 43600, 43609, 43616, 43638, 43642, 43714, 43739, 43741, 43744, 43759, 43762, 43766, 43777, 43782, 43785, 43790, 43793, 43798, 43808, 43814, 43816, 43822, 43824, 43866, 43868, 43879, 43888, 44010, 44012, 44013, 44016, 44025, 44032, 55203, 55216, 55238, 55243, 55291, 63744, 64109, 64112, 64217, 64256, 64262, 64275, 64279, 64285, 64296, 64298, 64310, 64312, 64316, 64318, 64318, 64320, 64321, 64323, 64324, 64326, 64433, 64467, 64829, 64848, 64911, 64914, 64967, 65008, 65019, 65024, 65039, 65056, 65071, 65075, 65076, 65101, 65103, 65136, 65140, 65142, 65276, 65296, 65305, 65313, 65338, 65343, 65343, 65345, 65370, 65382, 65470, 65474, 65479, 65482, 65487, 65490, 65495, 65498, 65500, 65536, 65547, 65549, 65574, 65576, 65594, 65596, 65597, 65599, 65613, 65616, 65629, 65664, 65786, 65856, 65908, 66045, 66045, 66176, 66204, 66208, 66256, 66272, 66272, 66304, 66335, 66349, 66378, 66384, 66426, 66432, 66461, 66464, 66499, 66504, 66511, 66513, 66517, 66560, 66717, 66720, 66729, 66736, 66771, 66776, 66811, 66816, 66855, 66864, 66915, 67072, 67382, 67392, 67413, 67424, 67431, 67584, 67589, 67592, 67592, 67594, 67637, 67639, 67640, 67644, 67644, 67647, 67669, 67680, 67702, 67712, 67742, 67808, 67826, 67828, 67829, 67840, 67861, 67872, 67897, 67968, 68023, 68030, 68031, 68096, 68099, 68101, 68102, 68108, 68115, 68117, 68119, 68121, 68149, 68152, 68154, 68159, 68159, 68192, 68220, 68224, 68252, 68288, 68295, 68297, 68326, 68352, 68405, 68416, 68437, 68448, 68466, 68480, 68497, 68608, 68680, 68736, 68786, 68800, 68850, 68864, 68903, 68912, 68921, 69376, 69404, 69415, 69415, 69424, 69456, 69600, 69622, 69632, 69702, 69734, 69743, 69759, 69818, 69840, 69864, 69872, 69881, 69888, 69940, 69942, 69951, 69956, 69958, 69968, 70003, 70006, 70006, 70016, 70084, 70089, 70092, 70096, 70106, 70108, 70108, 70144, 70161, 70163, 70199, 70206, 70206, 70272, 70278, 70280, 70280, 70282, 70285, 70287, 70301, 70303, 70312, 70320, 70378, 70384, 70393, 70400, 70403, 70405, 70412, 70415, 70416, 70419, 70440, 70442, 70448, 70450, 70451, 70453, 70457, 70459, 70468, 70471, 70472, 70475, 70477, 70480, 70480, 70487, 70487, 70493, 70499, 70502, 70508, 70512, 70516, 70656, 70730, 70736, 70745, 70750, 70751, 70784, 70853, 70855, 70855, 70864, 70873, 71040, 71093, 71096, 71104, 71128, 71133, 71168, 71232, 71236, 71236, 71248, 71257, 71296, 71352, 71360, 71369, 71424, 71450, 71453, 71467, 71472, 71481, 71680, 71738, 71840, 71913, 71935, 71935, 72096, 72103, 72106, 72151, 72154, 72161, 72163, 72164, 72192, 72254, 72263, 72263, 72272, 72345, 72349, 72349, 72384, 72440, 72704, 72712, 72714, 72758, 72760, 72768, 72784, 72793, 72818, 72847, 72850, 72871, 72873, 72886, 72960, 72966, 72968, 72969, 72971, 73014, 73018, 73018, 73020, 73021, 73023, 73031, 73040, 73049, 73056, 73061, 73063, 73064, 73066, 73102, 73104, 73105, 73107, 73112, 73120, 73129, 73440, 73462, 73728, 74649, 74752, 74862, 74880, 75075, 77824, 78894, 82944, 83526, 92160, 92728, 92736, 92766, 92768, 92777, 92880, 92909, 92912, 92916, 92928, 92982, 92992, 92995, 93008, 93017, 93027, 93047, 93053, 93071, 93760, 93823, 93952, 94026, 94031, 94087, 94095, 94111, 94176, 94177, 94179, 94179, 94208, 100343, 100352, 101106, 110592, 110878, 110928, 110930, 110948, 110951, 110960, 111355, 113664, 113770, 113776, 113788, 113792, 113800, 113808, 113817, 113821, 113822, 119141, 119145, 119149, 119154, 119163, 119170, 119173, 119179, 119210, 119213, 119362, 119364, 119808, 119892, 119894, 119964, 119966, 119967, 119970, 119970, 119973, 119974, 119977, 119980, 119982, 119993, 119995, 119995, 119997, 120003, 120005, 120069, 120071, 120074, 120077, 120084, 120086, 120092, 120094, 120121, 120123, 120126, 120128, 120132, 120134, 120134, 120138, 120144, 120146, 120485, 120488, 120512, 120514, 120538, 120540, 120570, 120572, 120596, 120598, 120628, 120630, 120654, 120656, 120686, 120688, 120712, 120714, 120744, 120746, 120770, 120772, 120779, 120782, 120831, 121344, 121398, 121403, 121452, 121461, 121461, 121476, 121476, 121499, 121503, 121505, 121519, 122880, 122886, 122888, 122904, 122907, 122913, 122915, 122916, 122918, 122922, 123136, 123180, 123184, 123197, 123200, 123209, 123214, 123214, 123584, 123641, 124928, 125124, 125136, 125142, 125184, 125259, 125264, 125273, 126464, 126467, 126469, 126495, 126497, 126498, 126500, 126500, 126503, 126503, 126505, 126514, 126516, 126519, 126521, 126521, 126523, 126523, 126530, 126530, 126535, 126535, 126537, 126537, 126539, 126539, 126541, 126543, 126545, 126546, 126548, 126548, 126551, 126551, 126553, 126553, 126555, 126555, 126557, 126557, 126559, 126559, 126561, 126562, 126564, 126564, 126567, 126570, 126572, 126578, 126580, 126583, 126585, 126588, 126590, 126590, 126592, 126601, 126603, 126619, 126625, 126627, 126629, 126633, 126635, 126651, 131072, 173782, 173824, 177972, 177984, 178205, 178208, 183969, 183984, 191456, 194560, 195101, 917760, 917999];
11453
11454
  var commentDirectiveRegExSingleLine = /^\/\/\/?\s*@(ts-expect-error|ts-ignore)/;
11454
11455
  var commentDirectiveRegExMultiLine = /^(?:\/|\*)*\s*@(ts-expect-error|ts-ignore)/;
11456
+ var semanticJSDocTagRegEx = /@(?:see|link)/i;
11455
11457
  function lookupInUnicodeMap(code, map2) {
11456
11458
  if (code < map2[0]) {
11457
11459
  return false;
@@ -11958,6 +11960,7 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
11958
11960
  var tokenFlags;
11959
11961
  var commentDirectives;
11960
11962
  var inJSDocType = 0;
11963
+ var skipNonSemanticJSDoc = false;
11961
11964
  setText(text, start2, length2);
11962
11965
  var scanner2 = {
11963
11966
  getTokenFullStart: () => fullStartPos,
@@ -12007,7 +12010,8 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
12007
12010
  setInJSDocType,
12008
12011
  tryScan,
12009
12012
  lookAhead,
12010
- scanRange
12013
+ scanRange,
12014
+ setSkipNonSemanticJSDoc
12011
12015
  };
12012
12016
  if (Debug.isDebugging) {
12013
12017
  Object.defineProperty(scanner2, "__debugShowCurrentPositionInText", {
@@ -12779,9 +12783,7 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
12779
12783
  }
12780
12784
  if (text.charCodeAt(pos + 1) === 42 /* asterisk */) {
12781
12785
  pos += 2;
12782
- if (text.charCodeAt(pos) === 42 /* asterisk */ && text.charCodeAt(pos + 1) !== 47 /* slash */) {
12783
- tokenFlags |= 2 /* PrecedingJSDocComment */;
12784
- }
12786
+ const isJSDoc2 = text.charCodeAt(pos) === 42 /* asterisk */ && text.charCodeAt(pos + 1) !== 47 /* slash */;
12785
12787
  let commentClosed = false;
12786
12788
  let lastLineStart = tokenStart;
12787
12789
  while (pos < end) {
@@ -12797,6 +12799,9 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
12797
12799
  tokenFlags |= 1 /* PrecedingLineBreak */;
12798
12800
  }
12799
12801
  }
12802
+ if (isJSDoc2 && (!skipNonSemanticJSDoc || semanticJSDocTagRegEx.test(text.slice(fullStartPos, pos)))) {
12803
+ tokenFlags |= 2 /* PrecedingJSDocComment */;
12804
+ }
12800
12805
  commentDirectives = appendIfCommentDirective(commentDirectives, text.slice(lastLineStart, pos), commentDirectiveRegExMultiLine, lastLineStart);
12801
12806
  if (!commentClosed) {
12802
12807
  error2(Diagnostics.Asterisk_Slash_expected);
@@ -13467,6 +13472,9 @@ function createScanner(languageVersion, skipTrivia2, languageVariant = 0 /* Stan
13467
13472
  function setLanguageVariant(variant) {
13468
13473
  languageVariant = variant;
13469
13474
  }
13475
+ function setSkipNonSemanticJSDoc(skip) {
13476
+ skipNonSemanticJSDoc = skip;
13477
+ }
13470
13478
  function resetTokenState(position) {
13471
13479
  Debug.assert(position >= 0);
13472
13480
  pos = position;
@@ -19541,7 +19549,7 @@ function isRightSideOfQualifiedNameOrPropertyAccess(node) {
19541
19549
  return node.parent.kind === 166 /* QualifiedName */ && node.parent.right === node || node.parent.kind === 211 /* PropertyAccessExpression */ && node.parent.name === node || node.parent.kind === 236 /* MetaProperty */ && node.parent.name === node;
19542
19550
  }
19543
19551
  function isRightSideOfAccessExpression(node) {
19544
- return isPropertyAccessExpression(node.parent) && node.parent.name === node || isElementAccessExpression(node.parent) && node.parent.argumentExpression === node;
19552
+ return !!node.parent && (isPropertyAccessExpression(node.parent) && node.parent.name === node || isElementAccessExpression(node.parent) && node.parent.argumentExpression === node);
19545
19553
  }
19546
19554
  function isRightSideOfQualifiedNameOrPropertyAccessOrJSDocMemberName(node) {
19547
19555
  return isQualifiedName(node.parent) && node.parent.right === node || isPropertyAccessExpression(node.parent) && node.parent.name === node || isJSDocMemberName(node.parent) && node.parent.right === node;
@@ -21634,6 +21642,9 @@ function getPropertyNameFromType(type) {
21634
21642
  }
21635
21643
  return Debug.fail();
21636
21644
  }
21645
+ function isExpandoPropertyDeclaration(declaration) {
21646
+ return !!declaration && (isPropertyAccessExpression(declaration) || isElementAccessExpression(declaration) || isBinaryExpression(declaration));
21647
+ }
21637
21648
 
21638
21649
  // src/compiler/factory/baseNodeFactory.ts
21639
21650
  function createBaseNodeFactory() {
@@ -30656,7 +30667,7 @@ function gatherPossibleChildren(node) {
30656
30667
  function setExternalModuleIndicator(sourceFile) {
30657
30668
  sourceFile.externalModuleIndicator = isFileProbablyExternalModule(sourceFile);
30658
30669
  }
30659
- function createSourceFile(fileName, sourceText, languageVersionOrOptions, setParentNodes = false, scriptKind) {
30670
+ function createSourceFile(fileName, sourceText, languageVersionOrOptions, setParentNodes = false, scriptKind, skipNonSemanticJSDoc) {
30660
30671
  var _a, _b, _c, _d;
30661
30672
  (_a = tracing) == null ? void 0 : _a.push(
30662
30673
  tracing.Phase.Parse,
@@ -30682,7 +30693,8 @@ function createSourceFile(fileName, sourceText, languageVersionOrOptions, setPar
30682
30693
  void 0,
30683
30694
  setParentNodes,
30684
30695
  6 /* JSON */,
30685
- noop
30696
+ noop,
30697
+ skipNonSemanticJSDoc
30686
30698
  );
30687
30699
  } else {
30688
30700
  const setIndicator = format === void 0 ? overrideSetExternalModuleIndicator : (file) => {
@@ -30697,7 +30709,8 @@ function createSourceFile(fileName, sourceText, languageVersionOrOptions, setPar
30697
30709
  void 0,
30698
30710
  setParentNodes,
30699
30711
  scriptKind,
30700
- setIndicator
30712
+ setIndicator,
30713
+ skipNonSemanticJSDoc
30701
30714
  );
30702
30715
  }
30703
30716
  (_c = perfLogger) == null ? void 0 : _c.logStopParseSourceFile();
@@ -30831,7 +30844,7 @@ var Parser;
30831
30844
  var contextFlags;
30832
30845
  var topLevel = true;
30833
30846
  var parseErrorBeforeNextFinishedNode = false;
30834
- function parseSourceFile(fileName2, sourceText2, languageVersion2, syntaxCursor2, setParentNodes = false, scriptKind2, setExternalModuleIndicatorOverride) {
30847
+ function parseSourceFile(fileName2, sourceText2, languageVersion2, syntaxCursor2, setParentNodes = false, scriptKind2, setExternalModuleIndicatorOverride, skipNonSemanticJSDoc) {
30835
30848
  var _a;
30836
30849
  scriptKind2 = ensureScriptKind(fileName2, scriptKind2);
30837
30850
  if (scriptKind2 === 6 /* JSON */) {
@@ -30853,8 +30866,9 @@ var Parser;
30853
30866
  result2.pragmas = emptyMap;
30854
30867
  return result2;
30855
30868
  }
30856
- initializeState(fileName2, sourceText2, languageVersion2, syntaxCursor2, scriptKind2);
30857
- const result = parseSourceFileWorker(languageVersion2, setParentNodes, scriptKind2, setExternalModuleIndicatorOverride || setExternalModuleIndicator);
30869
+ skipNonSemanticJSDoc = !!skipNonSemanticJSDoc && scriptKind2 !== 1 /* JS */ && scriptKind2 !== 2 /* JSX */;
30870
+ initializeState(fileName2, sourceText2, languageVersion2, syntaxCursor2, scriptKind2, skipNonSemanticJSDoc);
30871
+ const result = parseSourceFileWorker(languageVersion2, setParentNodes, scriptKind2, setExternalModuleIndicatorOverride || setExternalModuleIndicator, skipNonSemanticJSDoc);
30858
30872
  clearState();
30859
30873
  return result;
30860
30874
  }
@@ -30866,7 +30880,9 @@ var Parser;
30866
30880
  languageVersion2,
30867
30881
  /*syntaxCursor*/
30868
30882
  void 0,
30869
- 1 /* JS */
30883
+ 1 /* JS */,
30884
+ /*skipNonSemanticJSDoc*/
30885
+ false
30870
30886
  );
30871
30887
  nextToken();
30872
30888
  const entityName = parseEntityName(
@@ -30879,7 +30895,15 @@ var Parser;
30879
30895
  }
30880
30896
  Parser2.parseIsolatedEntityName = parseIsolatedEntityName2;
30881
30897
  function parseJsonText2(fileName2, sourceText2, languageVersion2 = 2 /* ES2015 */, syntaxCursor2, setParentNodes = false) {
30882
- initializeState(fileName2, sourceText2, languageVersion2, syntaxCursor2, 6 /* JSON */);
30898
+ initializeState(
30899
+ fileName2,
30900
+ sourceText2,
30901
+ languageVersion2,
30902
+ syntaxCursor2,
30903
+ 6 /* JSON */,
30904
+ /*skipNonSemanticJSDoc*/
30905
+ false
30906
+ );
30883
30907
  sourceFlags = contextFlags;
30884
30908
  nextToken();
30885
30909
  const pos = getNodePos();
@@ -30960,7 +30984,7 @@ var Parser;
30960
30984
  return result;
30961
30985
  }
30962
30986
  Parser2.parseJsonText = parseJsonText2;
30963
- function initializeState(_fileName, _sourceText, _languageVersion, _syntaxCursor, _scriptKind) {
30987
+ function initializeState(_fileName, _sourceText, _languageVersion, _syntaxCursor, _scriptKind, _skipNonSemanticJSDoc) {
30964
30988
  NodeConstructor2 = objectAllocator.getNodeConstructor();
30965
30989
  TokenConstructor2 = objectAllocator.getTokenConstructor();
30966
30990
  IdentifierConstructor2 = objectAllocator.getIdentifierConstructor();
@@ -30996,11 +31020,13 @@ var Parser;
30996
31020
  scanner2.setOnError(scanError);
30997
31021
  scanner2.setScriptTarget(languageVersion);
30998
31022
  scanner2.setLanguageVariant(languageVariant);
31023
+ scanner2.setSkipNonSemanticJSDoc(_skipNonSemanticJSDoc);
30999
31024
  }
31000
31025
  function clearState() {
31001
31026
  scanner2.clearCommentDirectives();
31002
31027
  scanner2.setText("");
31003
31028
  scanner2.setOnError(void 0);
31029
+ scanner2.setSkipNonSemanticJSDoc(false);
31004
31030
  sourceText = void 0;
31005
31031
  languageVersion = void 0;
31006
31032
  syntaxCursor = void 0;
@@ -31014,7 +31040,7 @@ var Parser;
31014
31040
  notParenthesizedArrow = void 0;
31015
31041
  topLevel = true;
31016
31042
  }
31017
- function parseSourceFileWorker(languageVersion2, setParentNodes, scriptKind2, setExternalModuleIndicator2) {
31043
+ function parseSourceFileWorker(languageVersion2, setParentNodes, scriptKind2, setExternalModuleIndicator2, skipNonSemanticJSDoc) {
31018
31044
  const isDeclarationFile = isDeclarationFileName(fileName);
31019
31045
  if (isDeclarationFile) {
31020
31046
  contextFlags |= 33554432 /* Ambient */;
@@ -31033,6 +31059,7 @@ var Parser;
31033
31059
  sourceFile.identifierCount = identifierCount;
31034
31060
  sourceFile.identifiers = identifiers;
31035
31061
  sourceFile.parseDiagnostics = attachFileToDiagnostics(parseDiagnostics, sourceFile);
31062
+ sourceFile.skipNonSemanticJSDoc = skipNonSemanticJSDoc;
31036
31063
  if (jsDocDiagnostics) {
31037
31064
  sourceFile.jsDocDiagnostics = attachFileToDiagnostics(jsDocDiagnostics, sourceFile);
31038
31065
  }
@@ -36466,7 +36493,9 @@ var Parser;
36466
36493
  99 /* Latest */,
36467
36494
  /*syntaxCursor*/
36468
36495
  void 0,
36469
- 1 /* JS */
36496
+ 1 /* JS */,
36497
+ /*skipNonSemanticJSDoc*/
36498
+ false
36470
36499
  );
36471
36500
  scanner2.setText(content, start2, length2);
36472
36501
  currentToken = scanner2.scan();
@@ -36530,7 +36559,9 @@ var Parser;
36530
36559
  99 /* Latest */,
36531
36560
  /*syntaxCursor*/
36532
36561
  void 0,
36533
- 1 /* JS */
36562
+ 1 /* JS */,
36563
+ /*skipNonSemanticJSDoc*/
36564
+ false
36534
36565
  );
36535
36566
  const jsDoc = doInsideOfContext(16777216 /* JSDoc */, () => parseJSDocCommentWorker(start2, length2));
36536
36567
  const sourceFile = { languageVariant: 0 /* Standard */, text: content };
@@ -37486,7 +37517,8 @@ var IncrementalParser;
37486
37517
  /*setParentNodes*/
37487
37518
  true,
37488
37519
  sourceFile.scriptKind,
37489
- sourceFile.setExternalModuleIndicator
37520
+ sourceFile.setExternalModuleIndicator,
37521
+ sourceFile.skipNonSemanticJSDoc
37490
37522
  );
37491
37523
  }
37492
37524
  const incrementalSourceFile = sourceFile;
@@ -37510,7 +37542,8 @@ var IncrementalParser;
37510
37542
  /*setParentNodes*/
37511
37543
  true,
37512
37544
  sourceFile.scriptKind,
37513
- sourceFile.setExternalModuleIndicator
37545
+ sourceFile.setExternalModuleIndicator,
37546
+ sourceFile.skipNonSemanticJSDoc
37514
37547
  );
37515
37548
  result.commentDirectives = getNewCommentDirectives(
37516
37549
  sourceFile.commentDirectives,
@@ -48166,20 +48199,30 @@ function createTypeChecker(host) {
48166
48199
  typeHasCallOrConstructSignatures
48167
48200
  };
48168
48201
  function runWithoutResolvedSignatureCaching(node, fn) {
48169
- const cachedSignatures = [];
48202
+ const cachedResolvedSignatures = [];
48203
+ const cachedTypes2 = [];
48170
48204
  while (node) {
48171
- if (isCallLikeExpression(node)) {
48205
+ if (isCallLikeExpression(node) || isFunctionLike(node)) {
48172
48206
  const nodeLinks2 = getNodeLinks(node);
48173
48207
  const resolvedSignature = nodeLinks2.resolvedSignature;
48174
- cachedSignatures.push([nodeLinks2, resolvedSignature]);
48208
+ cachedResolvedSignatures.push([nodeLinks2, resolvedSignature]);
48175
48209
  nodeLinks2.resolvedSignature = void 0;
48176
48210
  }
48211
+ if (isFunctionLike(node)) {
48212
+ const symbolLinks2 = getSymbolLinks(getSymbolOfDeclaration(node));
48213
+ const type = symbolLinks2.type;
48214
+ cachedTypes2.push([symbolLinks2, type]);
48215
+ symbolLinks2.type = void 0;
48216
+ }
48177
48217
  node = node.parent;
48178
48218
  }
48179
48219
  const result = fn();
48180
- for (const [nodeLinks2, resolvedSignature] of cachedSignatures) {
48220
+ for (const [nodeLinks2, resolvedSignature] of cachedResolvedSignatures) {
48181
48221
  nodeLinks2.resolvedSignature = resolvedSignature;
48182
48222
  }
48223
+ for (const [symbolLinks2, type] of cachedTypes2) {
48224
+ symbolLinks2.type = type;
48225
+ }
48183
48226
  return result;
48184
48227
  }
48185
48228
  function runWithInferenceBlockedFromSourceNode(node, fn) {
@@ -48232,29 +48275,72 @@ function createTypeChecker(host) {
48232
48275
  var resolvingSymbol = createSymbol(0, "__resolving__" /* Resolving */);
48233
48276
  var unresolvedSymbols = /* @__PURE__ */ new Map();
48234
48277
  var errorTypes = /* @__PURE__ */ new Map();
48278
+ var seenIntrinsicNames = /* @__PURE__ */ new Set();
48235
48279
  var anyType = createIntrinsicType(1 /* Any */, "any");
48236
- var autoType = createIntrinsicType(1 /* Any */, "any", 262144 /* NonInferrableType */);
48237
- var wildcardType = createIntrinsicType(1 /* Any */, "any");
48238
- var blockedStringType = createIntrinsicType(1 /* Any */, "any");
48280
+ var autoType = createIntrinsicType(1 /* Any */, "any", 262144 /* NonInferrableType */, "auto");
48281
+ var wildcardType = createIntrinsicType(
48282
+ 1 /* Any */,
48283
+ "any",
48284
+ /*objectFlags*/
48285
+ void 0,
48286
+ "wildcard"
48287
+ );
48288
+ var blockedStringType = createIntrinsicType(
48289
+ 1 /* Any */,
48290
+ "any",
48291
+ /*objectFlags*/
48292
+ void 0,
48293
+ "blocked string"
48294
+ );
48239
48295
  var errorType = createIntrinsicType(1 /* Any */, "error");
48240
48296
  var unresolvedType = createIntrinsicType(1 /* Any */, "unresolved");
48241
- var nonInferrableAnyType = createIntrinsicType(1 /* Any */, "any", 65536 /* ContainsWideningType */);
48297
+ var nonInferrableAnyType = createIntrinsicType(1 /* Any */, "any", 65536 /* ContainsWideningType */, "non-inferrable");
48242
48298
  var intrinsicMarkerType = createIntrinsicType(1 /* Any */, "intrinsic");
48243
48299
  var unknownType = createIntrinsicType(2 /* Unknown */, "unknown");
48244
- var nonNullUnknownType = createIntrinsicType(2 /* Unknown */, "unknown");
48300
+ var nonNullUnknownType = createIntrinsicType(
48301
+ 2 /* Unknown */,
48302
+ "unknown",
48303
+ /*objectFlags*/
48304
+ void 0,
48305
+ "non-null"
48306
+ );
48245
48307
  var undefinedType = createIntrinsicType(32768 /* Undefined */, "undefined");
48246
- var undefinedWideningType = strictNullChecks ? undefinedType : createIntrinsicType(32768 /* Undefined */, "undefined", 65536 /* ContainsWideningType */);
48247
- var missingType = createIntrinsicType(32768 /* Undefined */, "undefined");
48308
+ var undefinedWideningType = strictNullChecks ? undefinedType : createIntrinsicType(32768 /* Undefined */, "undefined", 65536 /* ContainsWideningType */, "widening");
48309
+ var missingType = createIntrinsicType(
48310
+ 32768 /* Undefined */,
48311
+ "undefined",
48312
+ /*objectFlags*/
48313
+ void 0,
48314
+ "missing"
48315
+ );
48248
48316
  var undefinedOrMissingType = exactOptionalPropertyTypes ? missingType : undefinedType;
48249
- var optionalType = createIntrinsicType(32768 /* Undefined */, "undefined");
48317
+ var optionalType = createIntrinsicType(
48318
+ 32768 /* Undefined */,
48319
+ "undefined",
48320
+ /*objectFlags*/
48321
+ void 0,
48322
+ "optional"
48323
+ );
48250
48324
  var nullType = createIntrinsicType(65536 /* Null */, "null");
48251
- var nullWideningType = strictNullChecks ? nullType : createIntrinsicType(65536 /* Null */, "null", 65536 /* ContainsWideningType */);
48325
+ var nullWideningType = strictNullChecks ? nullType : createIntrinsicType(65536 /* Null */, "null", 65536 /* ContainsWideningType */, "widening");
48252
48326
  var stringType = createIntrinsicType(4 /* String */, "string");
48253
48327
  var numberType = createIntrinsicType(8 /* Number */, "number");
48254
48328
  var bigintType = createIntrinsicType(64 /* BigInt */, "bigint");
48255
- var falseType = createIntrinsicType(512 /* BooleanLiteral */, "false");
48329
+ var falseType = createIntrinsicType(
48330
+ 512 /* BooleanLiteral */,
48331
+ "false",
48332
+ /*objectFlags*/
48333
+ void 0,
48334
+ "fresh"
48335
+ );
48256
48336
  var regularFalseType = createIntrinsicType(512 /* BooleanLiteral */, "false");
48257
- var trueType = createIntrinsicType(512 /* BooleanLiteral */, "true");
48337
+ var trueType = createIntrinsicType(
48338
+ 512 /* BooleanLiteral */,
48339
+ "true",
48340
+ /*objectFlags*/
48341
+ void 0,
48342
+ "fresh"
48343
+ );
48258
48344
  var regularTrueType = createIntrinsicType(512 /* BooleanLiteral */, "true");
48259
48345
  trueType.regularType = regularTrueType;
48260
48346
  trueType.freshType = trueType;
@@ -48268,9 +48354,21 @@ function createTypeChecker(host) {
48268
48354
  var esSymbolType = createIntrinsicType(4096 /* ESSymbol */, "symbol");
48269
48355
  var voidType = createIntrinsicType(16384 /* Void */, "void");
48270
48356
  var neverType = createIntrinsicType(131072 /* Never */, "never");
48271
- var silentNeverType = createIntrinsicType(131072 /* Never */, "never", 262144 /* NonInferrableType */);
48272
- var implicitNeverType = createIntrinsicType(131072 /* Never */, "never");
48273
- var unreachableNeverType = createIntrinsicType(131072 /* Never */, "never");
48357
+ var silentNeverType = createIntrinsicType(131072 /* Never */, "never", 262144 /* NonInferrableType */, "silent");
48358
+ var implicitNeverType = createIntrinsicType(
48359
+ 131072 /* Never */,
48360
+ "never",
48361
+ /*objectFlags*/
48362
+ void 0,
48363
+ "implicit"
48364
+ );
48365
+ var unreachableNeverType = createIntrinsicType(
48366
+ 131072 /* Never */,
48367
+ "never",
48368
+ /*objectFlags*/
48369
+ void 0,
48370
+ "unreachable"
48371
+ );
48274
48372
  var nonPrimitiveType = createIntrinsicType(67108864 /* NonPrimitive */, "object");
48275
48373
  var stringOrNumberType = getUnionType([stringType, numberType]);
48276
48374
  var stringNumberSymbolType = getUnionType([stringType, numberType, esSymbolType]);
@@ -48280,7 +48378,13 @@ function createTypeChecker(host) {
48280
48378
  var numericStringType = getTemplateLiteralType(["", ""], [numberType]);
48281
48379
  var restrictiveMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? getRestrictiveTypeParameter(t) : t, () => "(restrictive mapper)");
48282
48380
  var permissiveMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? wildcardType : t, () => "(permissive mapper)");
48283
- var uniqueLiteralType = createIntrinsicType(131072 /* Never */, "never");
48381
+ var uniqueLiteralType = createIntrinsicType(
48382
+ 131072 /* Never */,
48383
+ "never",
48384
+ /*objectFlags*/
48385
+ void 0,
48386
+ "unique literal"
48387
+ );
48284
48388
  var uniqueLiteralMapper = makeFunctionTypeMapper((t) => t.flags & 262144 /* TypeParameter */ ? uniqueLiteralType : t, () => "(unique literal mapper)");
48285
48389
  var outofbandVarianceMarkerHandler;
48286
48390
  var reportUnreliableMapper = makeFunctionTypeMapper((t) => {
@@ -51524,12 +51628,21 @@ function createTypeChecker(host) {
51524
51628
  function createOriginType(flags) {
51525
51629
  return new Type27(checker, flags);
51526
51630
  }
51527
- function createIntrinsicType(kind, intrinsicName, objectFlags = 0 /* None */) {
51631
+ function createIntrinsicType(kind, intrinsicName, objectFlags = 0 /* None */, debugIntrinsicName) {
51632
+ checkIntrinsicName(intrinsicName, debugIntrinsicName);
51528
51633
  const type = createType(kind);
51529
51634
  type.intrinsicName = intrinsicName;
51635
+ type.debugIntrinsicName = debugIntrinsicName;
51530
51636
  type.objectFlags = objectFlags | 524288 /* CouldContainTypeVariablesComputed */ | 2097152 /* IsGenericTypeComputed */ | 33554432 /* IsUnknownLikeUnionComputed */ | 16777216 /* IsNeverIntersectionComputed */;
51531
51637
  return type;
51532
51638
  }
51639
+ function checkIntrinsicName(name, debug) {
51640
+ const key = `${name},${debug ?? ""}`;
51641
+ if (seenIntrinsicNames.has(key)) {
51642
+ Debug.fail(`Duplicate intrinsic type name ${name}${debug ? ` (${debug})` : ""}; you may need to pass a name to createIntrinsicType.`);
51643
+ }
51644
+ seenIntrinsicNames.add(key);
51645
+ }
51533
51646
  function createObjectType(objectFlags, symbol) {
51534
51647
  const type = createTypeWithSymbol(524288 /* Object */, symbol);
51535
51648
  type.objectFlags = objectFlags;
@@ -53826,6 +53939,10 @@ function createTypeChecker(host) {
53826
53939
  const type = checkExpression(name.expression);
53827
53940
  return !!(type.flags & 402653316 /* StringLike */);
53828
53941
  }
53942
+ if (isElementAccessExpression(name)) {
53943
+ const type = checkExpression(name.argumentExpression);
53944
+ return !!(type.flags & 402653316 /* StringLike */);
53945
+ }
53829
53946
  return isStringLiteral(name);
53830
53947
  }
53831
53948
  function isSingleQuotedStringNamed(d) {
@@ -55261,6 +55378,7 @@ function createTypeChecker(host) {
55261
55378
  if (isTypeRepresentableAsFunctionNamespaceMerge(typeToSerialize, symbol)) {
55262
55379
  serializeAsFunctionNamespaceMerge(typeToSerialize, symbol, varName, isExportAssignmentCompatibleSymbolName ? 0 /* None */ : 1 /* Export */);
55263
55380
  } else {
55381
+ const flags = ((_a2 = context.enclosingDeclaration) == null ? void 0 : _a2.kind) === 267 /* ModuleDeclaration */ && (!(symbol.flags & 98304 /* Accessor */) || symbol.flags & 65536 /* SetAccessor */) ? 1 /* Let */ : 2 /* Const */;
55264
55382
  const statement = factory.createVariableStatement(
55265
55383
  /*modifiers*/
55266
55384
  void 0,
@@ -55271,7 +55389,7 @@ function createTypeChecker(host) {
55271
55389
  void 0,
55272
55390
  serializeTypeForDeclaration(context, typeToSerialize, symbol, enclosingDeclaration, includePrivateSymbol, bundled)
55273
55391
  )
55274
- ], ((_a2 = context.enclosingDeclaration) == null ? void 0 : _a2.kind) === 267 /* ModuleDeclaration */ ? 1 /* Let */ : 2 /* Const */)
55392
+ ], flags)
55275
55393
  );
55276
55394
  addResult(
55277
55395
  statement,
@@ -58191,13 +58309,14 @@ function createTypeChecker(host) {
58191
58309
  const paramName = leftName === rightName ? leftName : !leftName ? rightName : !rightName ? leftName : void 0;
58192
58310
  const paramSymbol = createSymbol(
58193
58311
  1 /* FunctionScopedVariable */ | (isOptional && !isRestParam ? 16777216 /* Optional */ : 0),
58194
- paramName || `arg${i}`
58312
+ paramName || `arg${i}`,
58313
+ isRestParam ? 32768 /* RestParameter */ : isOptional ? 16384 /* OptionalParameter */ : 0
58195
58314
  );
58196
58315
  paramSymbol.links.type = isRestParam ? createArrayType(unionParamType) : unionParamType;
58197
58316
  params[i] = paramSymbol;
58198
58317
  }
58199
58318
  if (needsExtraRestElement) {
58200
- const restParamSymbol = createSymbol(1 /* FunctionScopedVariable */, "args");
58319
+ const restParamSymbol = createSymbol(1 /* FunctionScopedVariable */, "args", 32768 /* RestParameter */);
58201
58320
  restParamSymbol.links.type = createArrayType(getTypeAtPosition(shorter, longestCount));
58202
58321
  if (shorter === right) {
58203
58322
  restParamSymbol.links.type = instantiateType(restParamSymbol.links.type, mapper);
@@ -58565,7 +58684,9 @@ function createTypeChecker(host) {
58565
58684
  } else if (isValidIndexKeyType(propNameType) || propNameType.flags & (1 /* Any */ | 32 /* Enum */)) {
58566
58685
  const indexKeyType = propNameType.flags & (1 /* Any */ | 4 /* String */) ? stringType : propNameType.flags & (8 /* Number */ | 32 /* Enum */) ? numberType : propNameType;
58567
58686
  const propType = instantiateType(templateType, appendTypeMapping(type.mapper, typeParameter, keyType));
58568
- const indexInfo = createIndexInfo(indexKeyType, propType, !!(templateModifiers & 1 /* IncludeReadonly */));
58687
+ const modifiersIndexInfo = getApplicableIndexInfo(modifiersType, propNameType);
58688
+ const isReadonly = !!(templateModifiers & 1 /* IncludeReadonly */ || !(templateModifiers & 2 /* ExcludeReadonly */) && (modifiersIndexInfo == null ? void 0 : modifiersIndexInfo.isReadonly));
58689
+ const indexInfo = createIndexInfo(indexKeyType, propType, isReadonly);
58569
58690
  indexInfos = appendIndexInfo(
58570
58691
  indexInfos,
58571
58692
  indexInfo,
@@ -60163,7 +60284,13 @@ function createTypeChecker(host) {
60163
60284
  const id = getAliasId(symbol, typeArguments);
60164
60285
  let errorType2 = errorTypes.get(id);
60165
60286
  if (!errorType2) {
60166
- errorType2 = createIntrinsicType(1 /* Any */, "error");
60287
+ errorType2 = createIntrinsicType(
60288
+ 1 /* Any */,
60289
+ "error",
60290
+ /*objectFlags*/
60291
+ void 0,
60292
+ `alias ${id}`
60293
+ );
60167
60294
  errorType2.aliasSymbol = symbol;
60168
60295
  errorType2.aliasTypeArguments = typeArguments;
60169
60296
  errorTypes.set(id, errorType2);
@@ -62006,7 +62133,7 @@ function createTypeChecker(host) {
62006
62133
  return autoType;
62007
62134
  }
62008
62135
  }
62009
- const propType = getTypeOfSymbol(prop);
62136
+ const propType = accessFlags & 4 /* Writing */ ? getWriteTypeOfSymbol(prop) : getTypeOfSymbol(prop);
62010
62137
  return accessExpression && getAssignmentTargetKind(accessExpression) !== 1 /* Definite */ ? getFlowTypeOfReference(accessExpression, propType) : accessNode && isIndexedAccessTypeNode(accessNode) && containsMissingType(propType) ? getUnionType([propType, undefinedType]) : propType;
62011
62138
  }
62012
62139
  if (everyType(objectType, isTupleType) && isNumericLiteralName(propName)) {
@@ -69147,7 +69274,7 @@ function createTypeChecker(host) {
69147
69274
  function hasMatchingArgument(expression, reference) {
69148
69275
  if (expression.arguments) {
69149
69276
  for (const argument of expression.arguments) {
69150
- if (isOrContainsMatchingReference(reference, argument)) {
69277
+ if (isOrContainsMatchingReference(reference, argument) || optionalChainContainsReference(argument, reference)) {
69151
69278
  return true;
69152
69279
  }
69153
69280
  }
@@ -70787,7 +70914,7 @@ function createTypeChecker(host) {
70787
70914
  false
70788
70915
  );
70789
70916
  }
70790
- if (strictNullChecks && assumeTrue && optionalChainContainsReference(predicateArgument, reference) && !hasTypeFacts(predicate.type, 65536 /* EQUndefined */)) {
70917
+ if (strictNullChecks && optionalChainContainsReference(predicateArgument, reference) && (assumeTrue && !hasTypeFacts(predicate.type, 65536 /* EQUndefined */) || !assumeTrue && everyType(predicate.type, isNullableType))) {
70791
70918
  type = getAdjustedTypeWithFacts(type, 2097152 /* NEUndefinedOrNull */);
70792
70919
  }
70793
70920
  const access = getDiscriminantPropertyAccess(predicateArgument, type);
@@ -70877,7 +71004,7 @@ function createTypeChecker(host) {
70877
71004
  if (isDeclarationName(location) && isSetAccessor(location.parent) && getAnnotatedAccessorTypeNode(location.parent)) {
70878
71005
  return getWriteTypeOfAccessors(location.parent.symbol);
70879
71006
  }
70880
- return getNonMissingTypeOfSymbol(symbol);
71007
+ return isRightSideOfAccessExpression(location) && isWriteAccess(location.parent) ? getWriteTypeOfSymbol(symbol) : getNonMissingTypeOfSymbol(symbol);
70881
71008
  }
70882
71009
  function getControlFlowContainer(node) {
70883
71010
  return findAncestor(node.parent, (node2) => isFunctionLike(node2) && !getImmediatelyInvokedFunctionExpression(node2) || node2.kind === 268 /* ModuleBlock */ || node2.kind === 312 /* SourceFile */ || node2.kind === 172 /* PropertyDeclaration */);
@@ -86149,7 +86276,7 @@ function createTypeChecker(host) {
86149
86276
  if (!symbol || !(symbol.flags & 16 /* Function */)) {
86150
86277
  return false;
86151
86278
  }
86152
- return !!forEachEntry(getExportsOfSymbol(symbol), (p) => p.flags & 111551 /* Value */ && p.valueDeclaration && isPropertyAccessExpression(p.valueDeclaration));
86279
+ return !!forEachEntry(getExportsOfSymbol(symbol), (p) => p.flags & 111551 /* Value */ && isExpandoPropertyDeclaration(p.valueDeclaration));
86153
86280
  }
86154
86281
  function getPropertiesOfContainerFunction(node) {
86155
86282
  const declaration = getParseTreeNode(node, isFunctionDeclaration);
@@ -86656,11 +86783,11 @@ function createTypeChecker(host) {
86656
86783
  if (fileToDirective.has(file.path))
86657
86784
  return;
86658
86785
  fileToDirective.set(file.path, [key, mode]);
86659
- for (const { fileName, resolutionMode } of file.referencedFiles) {
86786
+ for (const { fileName } of file.referencedFiles) {
86660
86787
  const resolvedFile = resolveTripleslashReference(fileName, file.fileName);
86661
86788
  const referencedFile = host.getSourceFile(resolvedFile);
86662
86789
  if (referencedFile) {
86663
- addReferencedFilesToTypeDirective(referencedFile, key, resolutionMode || file.impliedNodeFormat);
86790
+ addReferencedFilesToTypeDirective(referencedFile, key, mode || file.impliedNodeFormat);
86664
86791
  }
86665
86792
  }
86666
86793
  }
@@ -112650,7 +112777,7 @@ function transformDeclarations(context) {
112650
112777
  fakespace.symbol = props[0].parent;
112651
112778
  const exportMappings = [];
112652
112779
  let declarations = mapDefined(props, (p) => {
112653
- if (!p.valueDeclaration || !(isPropertyAccessExpression(p.valueDeclaration) || isElementAccessExpression(p.valueDeclaration) || isBinaryExpression(p.valueDeclaration))) {
112780
+ if (!isExpandoPropertyDeclaration(p.valueDeclaration)) {
112654
112781
  return void 0;
112655
112782
  }
112656
112783
  const nameStr = unescapeLeadingUnderscores(p.escapedName);
@@ -119598,7 +119725,7 @@ function computeCommonSourceDirectoryOfFilenames(fileNames, currentDirectory, ge
119598
119725
  function createCompilerHost(options, setParentNodes) {
119599
119726
  return createCompilerHostWorker(options, setParentNodes);
119600
119727
  }
119601
- function createGetSourceFile(readFile, getCompilerOptions, setParentNodes) {
119728
+ function createGetSourceFile(readFile, getCompilerOptions, setParentNodes, skipNonSemanticJSDocParsing) {
119602
119729
  return (fileName, languageVersionOrOptions, onError) => {
119603
119730
  let text;
119604
119731
  try {
@@ -119612,7 +119739,15 @@ function createGetSourceFile(readFile, getCompilerOptions, setParentNodes) {
119612
119739
  }
119613
119740
  text = "";
119614
119741
  }
119615
- return text !== void 0 ? createSourceFile(fileName, text, languageVersionOrOptions, setParentNodes) : void 0;
119742
+ return text !== void 0 ? createSourceFile(
119743
+ fileName,
119744
+ text,
119745
+ languageVersionOrOptions,
119746
+ setParentNodes,
119747
+ /*scriptKind*/
119748
+ void 0,
119749
+ skipNonSemanticJSDocParsing
119750
+ ) : void 0;
119616
119751
  };
119617
119752
  }
119618
119753
  function createWriteFileMeasuringIO(actualWriteFile, createDirectory, directoryExists) {
@@ -119636,7 +119771,7 @@ function createWriteFileMeasuringIO(actualWriteFile, createDirectory, directoryE
119636
119771
  }
119637
119772
  };
119638
119773
  }
119639
- function createCompilerHostWorker(options, setParentNodes, system = sys) {
119774
+ function createCompilerHostWorker(options, setParentNodes, skipNonSemanticJSDocParsing, system = sys) {
119640
119775
  const existingDirectories = /* @__PURE__ */ new Map();
119641
119776
  const getCanonicalFileName = createGetCanonicalFileName(system.useCaseSensitiveFileNames);
119642
119777
  function directoryExists(directoryPath) {
@@ -119655,7 +119790,7 @@ function createCompilerHostWorker(options, setParentNodes, system = sys) {
119655
119790
  const newLine = getNewLineCharacter(options);
119656
119791
  const realpath = system.realpath && ((path) => system.realpath(path));
119657
119792
  const compilerHost = {
119658
- getSourceFile: createGetSourceFile((fileName) => compilerHost.readFile(fileName), () => options, setParentNodes),
119793
+ getSourceFile: createGetSourceFile((fileName) => compilerHost.readFile(fileName), () => options, setParentNodes, skipNonSemanticJSDocParsing),
119659
119794
  getDefaultLibLocation,
119660
119795
  getDefaultLibFileName: (options2) => combinePaths(getDefaultLibLocation(), getDefaultLibFileName(options2)),
119661
119796
  writeFile: createWriteFileMeasuringIO(
@@ -126792,7 +126927,8 @@ function createCompilerHostFromProgramHost(host, getCompilerOptions, directorySt
126792
126927
  (fileName, encoding) => !encoding ? compilerHost.readFile(fileName) : host.readFile(fileName, encoding),
126793
126928
  getCompilerOptions,
126794
126929
  /*setParentNodes*/
126795
- void 0
126930
+ void 0,
126931
+ host.skipNonSemanticJSDocParsing
126796
126932
  ),
126797
126933
  getDefaultLibLocation: maybeBind(host, host.getDefaultLibLocation),
126798
126934
  getDefaultLibFileName: (options) => host.getDefaultLibFileName(options),
@@ -126978,11 +127114,12 @@ function readBuilderProgram(compilerOptions, host) {
126978
127114
  return void 0;
126979
127115
  return createBuilderProgramUsingProgramBuildInfo(buildInfo, buildInfoPath, host);
126980
127116
  }
126981
- function createIncrementalCompilerHost(options, system = sys) {
127117
+ function createIncrementalCompilerHost(options, system = sys, skipNonSemanticJSDocParsing) {
126982
127118
  const host = createCompilerHostWorker(
126983
127119
  options,
126984
127120
  /*setParentNodes*/
126985
127121
  void 0,
127122
+ skipNonSemanticJSDocParsing,
126986
127123
  system
126987
127124
  );
126988
127125
  host.createHash = maybeBind(system, system.createHash);
@@ -133323,7 +133460,7 @@ function createCacheableExportInfoMap(host) {
133323
133460
  }
133324
133461
  };
133325
133462
  if (Debug.isDebugging) {
133326
- Object.defineProperty(cache, "__cache", { get: () => exportInfo });
133463
+ Object.defineProperty(cache, "__cache", { value: exportInfo });
133327
133464
  }
133328
133465
  return cache;
133329
133466
  function rehydrateCachedInfo(info) {
@@ -133361,11 +133498,15 @@ function createCacheableExportInfoMap(host) {
133361
133498
  }
133362
133499
  function key(importedName, symbol, ambientModuleName, checker) {
133363
133500
  const moduleKey = ambientModuleName || "";
133364
- return `${importedName}|${getSymbolId(skipAlias(symbol, checker))}|${moduleKey}`;
133501
+ return `${importedName.length} ${getSymbolId(skipAlias(symbol, checker))} ${importedName} ${moduleKey}`;
133365
133502
  }
133366
133503
  function parseKey(key2) {
133367
- const symbolName2 = key2.substring(0, key2.indexOf("|"));
133368
- const moduleKey = key2.substring(key2.lastIndexOf("|") + 1);
133504
+ const firstSpace = key2.indexOf(" ");
133505
+ const secondSpace = key2.indexOf(" ", firstSpace + 1);
133506
+ const symbolNameLength = parseInt(key2.substring(0, firstSpace), 10);
133507
+ const data = key2.substring(secondSpace + 1);
133508
+ const symbolName2 = data.substring(0, symbolNameLength);
133509
+ const moduleKey = data.substring(symbolNameLength + 1);
133369
133510
  const ambientModuleName = moduleKey === "" ? void 0 : moduleKey;
133370
133511
  return { symbolName: symbolName2, ambientModuleName };
133371
133512
  }
@@ -136723,7 +136864,14 @@ function addNodeWithRecursiveInitializer(node) {
136723
136864
  }
136724
136865
  }
136725
136866
  function hasNavigationBarName(node) {
136726
- return !hasDynamicName(node) || node.kind !== 226 /* BinaryExpression */ && isPropertyAccessExpression(node.name.expression) && isIdentifier(node.name.expression.expression) && idText(node.name.expression.expression) === "Symbol";
136867
+ const name = getNameOfDeclaration(node);
136868
+ if (name === void 0)
136869
+ return false;
136870
+ if (isComputedPropertyName(name)) {
136871
+ const expression = name.expression;
136872
+ return isEntityNameExpression(expression) || isNumericLiteral(expression) || isStringOrNumericLiteralLike(expression);
136873
+ }
136874
+ return !!name;
136727
136875
  }
136728
136876
  function addChildrenRecursively(node) {
136729
136877
  curCancellationToken.throwIfCancellationRequested();
@@ -173302,6 +173450,7 @@ __export(ts_exports2, {
173302
173450
  isExclamationToken: () => isExclamationToken,
173303
173451
  isExcludedFile: () => isExcludedFile,
173304
173452
  isExclusivelyTypeOnlyImportOrExport: () => isExclusivelyTypeOnlyImportOrExport,
173453
+ isExpandoPropertyDeclaration: () => isExpandoPropertyDeclaration,
173305
173454
  isExportAssignment: () => isExportAssignment,
173306
173455
  isExportDeclaration: () => isExportDeclaration,
173307
173456
  isExportModifier: () => isExportModifier,
@@ -187863,6 +188012,7 @@ start(initializeNodeSystem(), require("os").platform());
187863
188012
  isExclamationToken,
187864
188013
  isExcludedFile,
187865
188014
  isExclusivelyTypeOnlyImportOrExport,
188015
+ isExpandoPropertyDeclaration,
187866
188016
  isExportAssignment,
187867
188017
  isExportDeclaration,
187868
188018
  isExportModifier,