typescript 4.9.0-dev.20220819 → 4.9.0-dev.20220822

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/typescript.js CHANGED
@@ -99,7 +99,7 @@ var ts;
99
99
  // The following is baselined as a literal template type without intervention
100
100
  /** The version of the TypeScript compiler release */
101
101
  // eslint-disable-next-line @typescript-eslint/no-inferrable-types
102
- ts.version = ts.versionMajorMinor + ".0-dev.20220819";
102
+ ts.version = ts.versionMajorMinor + ".0-dev.20220822";
103
103
  /* @internal */
104
104
  var Comparison;
105
105
  (function (Comparison) {
@@ -2488,6 +2488,7 @@ var ts;
2488
2488
  var currentAssertionLevel = 0 /* None */;
2489
2489
  Debug.currentLogLevel = LogLevel.Warning;
2490
2490
  Debug.isDebugging = false;
2491
+ Debug.enableDeprecationWarnings = true;
2491
2492
  function getTypeScriptVersion() {
2492
2493
  return typeScriptVersion !== null && typeScriptVersion !== void 0 ? typeScriptVersion : (typeScriptVersion = new ts.Version(ts.version));
2493
2494
  }
@@ -3111,7 +3112,7 @@ var ts;
3111
3112
  function createWarningDeprecation(name, errorAfter, since, message) {
3112
3113
  var hasWrittenDeprecation = false;
3113
3114
  return function () {
3114
- if (!hasWrittenDeprecation) {
3115
+ if (Debug.enableDeprecationWarnings && !hasWrittenDeprecation) {
3115
3116
  log.warn(formatDeprecationMessage(name, /*error*/ false, errorAfter, since, message));
3116
3117
  hasWrittenDeprecation = true;
3117
3118
  }
@@ -21390,7 +21391,7 @@ var ts;
21390
21391
  case 165 /* Decorator */: {
21391
21392
  var parent_2 = node.parent;
21392
21393
  return ts.canHaveDecorators(parent_2) ? parent_2.modifiers :
21393
- ts.canHaveIllegalDecorators(parent_2) ? parent_2.decorators :
21394
+ ts.canHaveIllegalDecorators(parent_2) ? parent_2.illegalDecorators :
21394
21395
  undefined;
21395
21396
  }
21396
21397
  case 291 /* HeritageClause */:
@@ -23467,7 +23468,7 @@ var ts;
23467
23468
  node.body = body;
23468
23469
  node.transformFlags = propagateChildFlags(body) | 16777216 /* ContainsClassFields */;
23469
23470
  // The following properties are used only to report grammar errors
23470
- node.decorators = undefined;
23471
+ node.illegalDecorators = undefined;
23471
23472
  node.modifiers = undefined;
23472
23473
  return node;
23473
23474
  }
@@ -23479,7 +23480,7 @@ var ts;
23479
23480
  }
23480
23481
  function finishUpdateClassStaticBlockDeclaration(updated, original) {
23481
23482
  if (updated !== original) {
23482
- updated.decorators = original.decorators;
23483
+ updated.illegalDecorators = original.illegalDecorators;
23483
23484
  updated.modifiers = original.modifiers;
23484
23485
  }
23485
23486
  return update(updated, original);
@@ -23492,7 +23493,7 @@ var ts;
23492
23493
  /*type*/ undefined, body);
23493
23494
  node.transformFlags |= 1024 /* ContainsES2015 */;
23494
23495
  // The following properties are used only to report grammar errors
23495
- node.decorators = undefined;
23496
+ node.illegalDecorators = undefined;
23496
23497
  node.typeParameters = undefined;
23497
23498
  node.type = undefined;
23498
23499
  return node;
@@ -23507,7 +23508,7 @@ var ts;
23507
23508
  }
23508
23509
  function finishUpdateConstructorDeclaration(updated, original) {
23509
23510
  if (updated !== original) {
23510
- updated.decorators = original.decorators;
23511
+ updated.illegalDecorators = original.illegalDecorators;
23511
23512
  updated.typeParameters = original.typeParameters;
23512
23513
  updated.type = original.type;
23513
23514
  }
@@ -25255,7 +25256,7 @@ var ts;
25255
25256
  }
25256
25257
  }
25257
25258
  // The following properties are used only to report grammar errors
25258
- node.decorators = undefined;
25259
+ node.illegalDecorators = undefined;
25259
25260
  return node;
25260
25261
  }
25261
25262
  // @api
@@ -25273,7 +25274,7 @@ var ts;
25273
25274
  function finishUpdateFunctionDeclaration(updated, original) {
25274
25275
  if (updated !== original) {
25275
25276
  // copy children used only for error reporting
25276
- updated.decorators = original.decorators;
25277
+ updated.illegalDecorators = original.illegalDecorators;
25277
25278
  }
25278
25279
  return finishUpdateBaseSignatureDeclaration(updated, original);
25279
25280
  }
@@ -25307,7 +25308,7 @@ var ts;
25307
25308
  node.members = createNodeArray(members);
25308
25309
  node.transformFlags = 1 /* ContainsTypeScript */;
25309
25310
  // The following properties are used only to report grammar errors
25310
- node.decorators = undefined;
25311
+ node.illegalDecorators = undefined;
25311
25312
  return node;
25312
25313
  }
25313
25314
  // @api
@@ -25322,7 +25323,7 @@ var ts;
25322
25323
  }
25323
25324
  function finishUpdateInterfaceDeclaration(updated, original) {
25324
25325
  if (updated !== original) {
25325
- updated.decorators = original.decorators;
25326
+ updated.illegalDecorators = original.illegalDecorators;
25326
25327
  }
25327
25328
  return update(updated, original);
25328
25329
  }
@@ -25332,7 +25333,7 @@ var ts;
25332
25333
  node.type = type;
25333
25334
  node.transformFlags = 1 /* ContainsTypeScript */;
25334
25335
  // The following properties are used only to report grammar errors
25335
- node.decorators = undefined;
25336
+ node.illegalDecorators = undefined;
25336
25337
  return node;
25337
25338
  }
25338
25339
  // @api
@@ -25346,7 +25347,7 @@ var ts;
25346
25347
  }
25347
25348
  function finishUpdateTypeAliasDeclaration(updated, original) {
25348
25349
  if (updated !== original) {
25349
- updated.decorators = original.decorators;
25350
+ updated.illegalDecorators = original.illegalDecorators;
25350
25351
  }
25351
25352
  return update(updated, original);
25352
25353
  }
@@ -25359,7 +25360,7 @@ var ts;
25359
25360
  1 /* ContainsTypeScript */;
25360
25361
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // Enum declarations cannot contain `await`
25361
25362
  // The following properties are used only to report grammar errors
25362
- node.decorators = undefined;
25363
+ node.illegalDecorators = undefined;
25363
25364
  return node;
25364
25365
  }
25365
25366
  // @api
@@ -25372,7 +25373,7 @@ var ts;
25372
25373
  }
25373
25374
  function finishUpdateEnumDeclaration(updated, original) {
25374
25375
  if (updated !== original) {
25375
- updated.decorators = original.decorators;
25376
+ updated.illegalDecorators = original.illegalDecorators;
25376
25377
  }
25377
25378
  return update(updated, original);
25378
25379
  }
@@ -25396,7 +25397,7 @@ var ts;
25396
25397
  }
25397
25398
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // Module declarations cannot contain `await`.
25398
25399
  // The following properties are used only to report grammar errors
25399
- node.decorators = undefined;
25400
+ node.illegalDecorators = undefined;
25400
25401
  return node;
25401
25402
  }
25402
25403
  // @api
@@ -25409,7 +25410,7 @@ var ts;
25409
25410
  }
25410
25411
  function finishUpdateModuleDeclaration(updated, original) {
25411
25412
  if (updated !== original) {
25412
- updated.decorators = original.decorators;
25413
+ updated.illegalDecorators = original.illegalDecorators;
25413
25414
  }
25414
25415
  return update(updated, original);
25415
25416
  }
@@ -25445,7 +25446,7 @@ var ts;
25445
25446
  /*modifiers*/ undefined, name);
25446
25447
  node.transformFlags = 1 /* ContainsTypeScript */;
25447
25448
  // The following properties are used only to report grammar errors
25448
- node.decorators = undefined;
25449
+ node.illegalDecorators = undefined;
25449
25450
  node.modifiers = undefined;
25450
25451
  return node;
25451
25452
  }
@@ -25457,7 +25458,7 @@ var ts;
25457
25458
  }
25458
25459
  function finishUpdateNamespaceExportDeclaration(updated, original) {
25459
25460
  if (updated !== original) {
25460
- updated.decorators = original.decorators;
25461
+ updated.illegalDecorators = original.illegalDecorators;
25461
25462
  updated.modifiers = original.modifiers;
25462
25463
  }
25463
25464
  return update(updated, original);
@@ -25472,7 +25473,7 @@ var ts;
25472
25473
  node.transformFlags |= 1 /* ContainsTypeScript */;
25473
25474
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // Import= declaration is always parsed in an Await context
25474
25475
  // The following properties are used only to report grammar errors
25475
- node.decorators = undefined;
25476
+ node.illegalDecorators = undefined;
25476
25477
  return node;
25477
25478
  }
25478
25479
  // @api
@@ -25486,7 +25487,7 @@ var ts;
25486
25487
  }
25487
25488
  function finishUpdateImportEqualsDeclaration(updated, original) {
25488
25489
  if (updated !== original) {
25489
- updated.decorators = original.decorators;
25490
+ updated.illegalDecorators = original.illegalDecorators;
25490
25491
  }
25491
25492
  return update(updated, original);
25492
25493
  }
@@ -25502,7 +25503,7 @@ var ts;
25502
25503
  propagateChildFlags(node.moduleSpecifier);
25503
25504
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // always parsed in an Await context
25504
25505
  // The following properties are used only to report grammar errors
25505
- node.decorators = undefined;
25506
+ node.illegalDecorators = undefined;
25506
25507
  return node;
25507
25508
  }
25508
25509
  // @api
@@ -25516,7 +25517,7 @@ var ts;
25516
25517
  }
25517
25518
  function finishUpdateImportDeclaration(updated, original) {
25518
25519
  if (updated !== original) {
25519
- updated.decorators = original.decorators;
25520
+ updated.illegalDecorators = original.illegalDecorators;
25520
25521
  }
25521
25522
  return update(updated, original);
25522
25523
  }
@@ -25662,7 +25663,7 @@ var ts;
25662
25663
  node.transformFlags |= propagateChildrenFlags(node.modifiers) | propagateChildFlags(node.expression);
25663
25664
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // always parsed in an Await context
25664
25665
  // The following properties are used only to report grammar errors
25665
- node.decorators = undefined;
25666
+ node.illegalDecorators = undefined;
25666
25667
  return node;
25667
25668
  }
25668
25669
  // @api
@@ -25674,7 +25675,7 @@ var ts;
25674
25675
  }
25675
25676
  function finishUpdateExportAssignment(updated, original) {
25676
25677
  if (updated !== original) {
25677
- updated.decorators = original.decorators;
25678
+ updated.illegalDecorators = original.illegalDecorators;
25678
25679
  }
25679
25680
  return update(updated, original);
25680
25681
  }
@@ -25692,7 +25693,7 @@ var ts;
25692
25693
  propagateChildFlags(node.moduleSpecifier);
25693
25694
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // always parsed in an Await context
25694
25695
  // The following properties are used only to report grammar errors
25695
- node.decorators = undefined;
25696
+ node.illegalDecorators = undefined;
25696
25697
  return node;
25697
25698
  }
25698
25699
  // @api
@@ -25707,7 +25708,7 @@ var ts;
25707
25708
  }
25708
25709
  function finishUpdateExportDeclaration(updated, original) {
25709
25710
  if (updated !== original) {
25710
- updated.decorators = original.decorators;
25711
+ updated.illegalDecorators = original.illegalDecorators;
25711
25712
  }
25712
25713
  return update(updated, original);
25713
25714
  }
@@ -26471,7 +26472,7 @@ var ts;
26471
26472
  propagateChildFlags(node.name) |
26472
26473
  propagateChildFlags(node.initializer);
26473
26474
  // The following properties are used only to report grammar errors
26474
- node.decorators = undefined;
26475
+ node.illegalDecorators = undefined;
26475
26476
  node.modifiers = undefined;
26476
26477
  node.questionToken = undefined;
26477
26478
  node.exclamationToken = undefined;
@@ -26487,7 +26488,7 @@ var ts;
26487
26488
  function finishUpdatePropertyAssignment(updated, original) {
26488
26489
  // copy children used only for error reporting
26489
26490
  if (updated !== original) {
26490
- updated.decorators = original.decorators;
26491
+ updated.illegalDecorators = original.illegalDecorators;
26491
26492
  updated.modifiers = original.modifiers;
26492
26493
  updated.questionToken = original.questionToken;
26493
26494
  updated.exclamationToken = original.exclamationToken;
@@ -26504,7 +26505,7 @@ var ts;
26504
26505
  1024 /* ContainsES2015 */;
26505
26506
  // The following properties are used only to report grammar errors
26506
26507
  node.equalsToken = undefined;
26507
- node.decorators = undefined;
26508
+ node.illegalDecorators = undefined;
26508
26509
  node.modifiers = undefined;
26509
26510
  node.questionToken = undefined;
26510
26511
  node.exclamationToken = undefined;
@@ -26521,7 +26522,7 @@ var ts;
26521
26522
  if (updated !== original) {
26522
26523
  // copy children used only for error reporting
26523
26524
  updated.equalsToken = original.equalsToken;
26524
- updated.decorators = original.decorators;
26525
+ updated.illegalDecorators = original.illegalDecorators;
26525
26526
  updated.modifiers = original.modifiers;
26526
26527
  updated.questionToken = original.questionToken;
26527
26528
  updated.exclamationToken = original.exclamationToken;
@@ -30885,6 +30886,7 @@ var ts;
30885
30886
  })(ts || (ts = {}));
30886
30887
  var ts;
30887
30888
  (function (ts) {
30889
+ var _a;
30888
30890
  var SignatureFlags;
30889
30891
  (function (SignatureFlags) {
30890
30892
  SignatureFlags[SignatureFlags["None"] = 0] = "None";
@@ -30972,6 +30974,715 @@ var ts;
30972
30974
  function isImportMeta(node) {
30973
30975
  return ts.isMetaProperty(node) && node.keywordToken === 100 /* ImportKeyword */ && node.name.escapedText === "meta";
30974
30976
  }
30977
+ var forEachChildTable = (_a = {},
30978
+ _a[161 /* QualifiedName */] = function forEachChildInQualifiedName(node, cbNode, _cbNodes) {
30979
+ return visitNode(cbNode, node.left) ||
30980
+ visitNode(cbNode, node.right);
30981
+ },
30982
+ _a[163 /* TypeParameter */] = function forEachChildInTypeParameter(node, cbNode, cbNodes) {
30983
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
30984
+ visitNode(cbNode, node.name) ||
30985
+ visitNode(cbNode, node.constraint) ||
30986
+ visitNode(cbNode, node.default) ||
30987
+ visitNode(cbNode, node.expression);
30988
+ },
30989
+ _a[297 /* ShorthandPropertyAssignment */] = function forEachChildInShorthandPropertyAssignment(node, cbNode, cbNodes) {
30990
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
30991
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
30992
+ visitNode(cbNode, node.name) ||
30993
+ visitNode(cbNode, node.questionToken) ||
30994
+ visitNode(cbNode, node.exclamationToken) ||
30995
+ visitNode(cbNode, node.equalsToken) ||
30996
+ visitNode(cbNode, node.objectAssignmentInitializer);
30997
+ },
30998
+ _a[298 /* SpreadAssignment */] = function forEachChildInSpreadAssignment(node, cbNode, _cbNodes) {
30999
+ return visitNode(cbNode, node.expression);
31000
+ },
31001
+ _a[164 /* Parameter */] = function forEachChildInParameter(node, cbNode, cbNodes) {
31002
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31003
+ visitNode(cbNode, node.dotDotDotToken) ||
31004
+ visitNode(cbNode, node.name) ||
31005
+ visitNode(cbNode, node.questionToken) ||
31006
+ visitNode(cbNode, node.type) ||
31007
+ visitNode(cbNode, node.initializer);
31008
+ },
31009
+ _a[167 /* PropertyDeclaration */] = function forEachChildInPropertyDeclaration(node, cbNode, cbNodes) {
31010
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31011
+ visitNode(cbNode, node.name) ||
31012
+ visitNode(cbNode, node.questionToken) ||
31013
+ visitNode(cbNode, node.exclamationToken) ||
31014
+ visitNode(cbNode, node.type) ||
31015
+ visitNode(cbNode, node.initializer);
31016
+ },
31017
+ _a[166 /* PropertySignature */] = function forEachChildInPropertySignature(node, cbNode, cbNodes) {
31018
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31019
+ visitNode(cbNode, node.name) ||
31020
+ visitNode(cbNode, node.questionToken) ||
31021
+ visitNode(cbNode, node.type) ||
31022
+ visitNode(cbNode, node.initializer);
31023
+ },
31024
+ _a[296 /* PropertyAssignment */] = function forEachChildInPropertyAssignment(node, cbNode, cbNodes) {
31025
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31026
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31027
+ visitNode(cbNode, node.name) ||
31028
+ visitNode(cbNode, node.questionToken) ||
31029
+ visitNode(cbNode, node.exclamationToken) ||
31030
+ visitNode(cbNode, node.initializer);
31031
+ },
31032
+ _a[254 /* VariableDeclaration */] = function forEachChildInVariableDeclaration(node, cbNode, _cbNodes) {
31033
+ return visitNode(cbNode, node.name) ||
31034
+ visitNode(cbNode, node.exclamationToken) ||
31035
+ visitNode(cbNode, node.type) ||
31036
+ visitNode(cbNode, node.initializer);
31037
+ },
31038
+ _a[203 /* BindingElement */] = function forEachChildInBindingElement(node, cbNode, _cbNodes) {
31039
+ return visitNode(cbNode, node.dotDotDotToken) ||
31040
+ visitNode(cbNode, node.propertyName) ||
31041
+ visitNode(cbNode, node.name) ||
31042
+ visitNode(cbNode, node.initializer);
31043
+ },
31044
+ _a[176 /* IndexSignature */] = function forEachChildInIndexSignature(node, cbNode, cbNodes) {
31045
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31046
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31047
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31048
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31049
+ visitNode(cbNode, node.type);
31050
+ },
31051
+ _a[180 /* ConstructorType */] = function forEachChildInConstructorType(node, cbNode, cbNodes) {
31052
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31053
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31054
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31055
+ visitNode(cbNode, node.type);
31056
+ },
31057
+ _a[179 /* FunctionType */] = function forEachChildInFunctionType(node, cbNode, cbNodes) {
31058
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31059
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31060
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31061
+ visitNode(cbNode, node.type);
31062
+ },
31063
+ _a[174 /* CallSignature */] = forEachChildInCallOrConstructSignature,
31064
+ _a[175 /* ConstructSignature */] = forEachChildInCallOrConstructSignature,
31065
+ _a[169 /* MethodDeclaration */] = function forEachChildInMethodDeclaration(node, cbNode, cbNodes) {
31066
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31067
+ visitNode(cbNode, node.asteriskToken) ||
31068
+ visitNode(cbNode, node.name) ||
31069
+ visitNode(cbNode, node.questionToken) ||
31070
+ visitNode(cbNode, node.exclamationToken) ||
31071
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31072
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31073
+ visitNode(cbNode, node.type) ||
31074
+ visitNode(cbNode, node.body);
31075
+ },
31076
+ _a[168 /* MethodSignature */] = function forEachChildInMethodSignature(node, cbNode, cbNodes) {
31077
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31078
+ visitNode(cbNode, node.name) ||
31079
+ visitNode(cbNode, node.questionToken) ||
31080
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31081
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31082
+ visitNode(cbNode, node.type);
31083
+ },
31084
+ _a[171 /* Constructor */] = function forEachChildInConstructor(node, cbNode, cbNodes) {
31085
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31086
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31087
+ visitNode(cbNode, node.name) ||
31088
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31089
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31090
+ visitNode(cbNode, node.type) ||
31091
+ visitNode(cbNode, node.body);
31092
+ },
31093
+ _a[172 /* GetAccessor */] = function forEachChildInGetAccessor(node, cbNode, cbNodes) {
31094
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31095
+ visitNode(cbNode, node.name) ||
31096
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31097
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31098
+ visitNode(cbNode, node.type) ||
31099
+ visitNode(cbNode, node.body);
31100
+ },
31101
+ _a[173 /* SetAccessor */] = function forEachChildInSetAccessor(node, cbNode, cbNodes) {
31102
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31103
+ visitNode(cbNode, node.name) ||
31104
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31105
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31106
+ visitNode(cbNode, node.type) ||
31107
+ visitNode(cbNode, node.body);
31108
+ },
31109
+ _a[256 /* FunctionDeclaration */] = function forEachChildInFunctionDeclaration(node, cbNode, cbNodes) {
31110
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31111
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31112
+ visitNode(cbNode, node.asteriskToken) ||
31113
+ visitNode(cbNode, node.name) ||
31114
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31115
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31116
+ visitNode(cbNode, node.type) ||
31117
+ visitNode(cbNode, node.body);
31118
+ },
31119
+ _a[213 /* FunctionExpression */] = function forEachChildInFunctionExpression(node, cbNode, cbNodes) {
31120
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31121
+ visitNode(cbNode, node.asteriskToken) ||
31122
+ visitNode(cbNode, node.name) ||
31123
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31124
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31125
+ visitNode(cbNode, node.type) ||
31126
+ visitNode(cbNode, node.body);
31127
+ },
31128
+ _a[214 /* ArrowFunction */] = function forEachChildInArrowFunction(node, cbNode, cbNodes) {
31129
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31130
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31131
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31132
+ visitNode(cbNode, node.type) ||
31133
+ visitNode(cbNode, node.equalsGreaterThanToken) ||
31134
+ visitNode(cbNode, node.body);
31135
+ },
31136
+ _a[170 /* ClassStaticBlockDeclaration */] = function forEachChildInClassStaticBlockDeclaration(node, cbNode, cbNodes) {
31137
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31138
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31139
+ visitNode(cbNode, node.body);
31140
+ },
31141
+ _a[178 /* TypeReference */] = function forEachChildInTypeReference(node, cbNode, cbNodes) {
31142
+ return visitNode(cbNode, node.typeName) ||
31143
+ visitNodes(cbNode, cbNodes, node.typeArguments);
31144
+ },
31145
+ _a[177 /* TypePredicate */] = function forEachChildInTypePredicate(node, cbNode, _cbNodes) {
31146
+ return visitNode(cbNode, node.assertsModifier) ||
31147
+ visitNode(cbNode, node.parameterName) ||
31148
+ visitNode(cbNode, node.type);
31149
+ },
31150
+ _a[181 /* TypeQuery */] = function forEachChildInTypeQuery(node, cbNode, cbNodes) {
31151
+ return visitNode(cbNode, node.exprName) ||
31152
+ visitNodes(cbNode, cbNodes, node.typeArguments);
31153
+ },
31154
+ _a[182 /* TypeLiteral */] = function forEachChildInTypeLiteral(node, cbNode, cbNodes) {
31155
+ return visitNodes(cbNode, cbNodes, node.members);
31156
+ },
31157
+ _a[183 /* ArrayType */] = function forEachChildInArrayType(node, cbNode, _cbNodes) {
31158
+ return visitNode(cbNode, node.elementType);
31159
+ },
31160
+ _a[184 /* TupleType */] = function forEachChildInTupleType(node, cbNode, cbNodes) {
31161
+ return visitNodes(cbNode, cbNodes, node.elements);
31162
+ },
31163
+ _a[187 /* UnionType */] = forEachChildInUnionOrIntersectionType,
31164
+ _a[188 /* IntersectionType */] = forEachChildInUnionOrIntersectionType,
31165
+ _a[189 /* ConditionalType */] = function forEachChildInConditionalType(node, cbNode, _cbNodes) {
31166
+ return visitNode(cbNode, node.checkType) ||
31167
+ visitNode(cbNode, node.extendsType) ||
31168
+ visitNode(cbNode, node.trueType) ||
31169
+ visitNode(cbNode, node.falseType);
31170
+ },
31171
+ _a[190 /* InferType */] = function forEachChildInInferType(node, cbNode, _cbNodes) {
31172
+ return visitNode(cbNode, node.typeParameter);
31173
+ },
31174
+ _a[200 /* ImportType */] = function forEachChildInImportType(node, cbNode, cbNodes) {
31175
+ return visitNode(cbNode, node.argument) ||
31176
+ visitNode(cbNode, node.assertions) ||
31177
+ visitNode(cbNode, node.qualifier) ||
31178
+ visitNodes(cbNode, cbNodes, node.typeArguments);
31179
+ },
31180
+ _a[295 /* ImportTypeAssertionContainer */] = function forEachChildInImportTypeAssertionContainer(node, cbNode, _cbNodes) {
31181
+ return visitNode(cbNode, node.assertClause);
31182
+ },
31183
+ _a[191 /* ParenthesizedType */] = forEachChildInParenthesizedTypeOrTypeOperator,
31184
+ _a[193 /* TypeOperator */] = forEachChildInParenthesizedTypeOrTypeOperator,
31185
+ _a[194 /* IndexedAccessType */] = function forEachChildInIndexedAccessType(node, cbNode, _cbNodes) {
31186
+ return visitNode(cbNode, node.objectType) ||
31187
+ visitNode(cbNode, node.indexType);
31188
+ },
31189
+ _a[195 /* MappedType */] = function forEachChildInMappedType(node, cbNode, cbNodes) {
31190
+ return visitNode(cbNode, node.readonlyToken) ||
31191
+ visitNode(cbNode, node.typeParameter) ||
31192
+ visitNode(cbNode, node.nameType) ||
31193
+ visitNode(cbNode, node.questionToken) ||
31194
+ visitNode(cbNode, node.type) ||
31195
+ visitNodes(cbNode, cbNodes, node.members);
31196
+ },
31197
+ _a[196 /* LiteralType */] = function forEachChildInLiteralType(node, cbNode, _cbNodes) {
31198
+ return visitNode(cbNode, node.literal);
31199
+ },
31200
+ _a[197 /* NamedTupleMember */] = function forEachChildInNamedTupleMember(node, cbNode, _cbNodes) {
31201
+ return visitNode(cbNode, node.dotDotDotToken) ||
31202
+ visitNode(cbNode, node.name) ||
31203
+ visitNode(cbNode, node.questionToken) ||
31204
+ visitNode(cbNode, node.type);
31205
+ },
31206
+ _a[201 /* ObjectBindingPattern */] = forEachChildInObjectOrArrayBindingPattern,
31207
+ _a[202 /* ArrayBindingPattern */] = forEachChildInObjectOrArrayBindingPattern,
31208
+ _a[204 /* ArrayLiteralExpression */] = function forEachChildInArrayLiteralExpression(node, cbNode, cbNodes) {
31209
+ return visitNodes(cbNode, cbNodes, node.elements);
31210
+ },
31211
+ _a[205 /* ObjectLiteralExpression */] = function forEachChildInObjectLiteralExpression(node, cbNode, cbNodes) {
31212
+ return visitNodes(cbNode, cbNodes, node.properties);
31213
+ },
31214
+ _a[206 /* PropertyAccessExpression */] = function forEachChildInPropertyAccessExpression(node, cbNode, _cbNodes) {
31215
+ return visitNode(cbNode, node.expression) ||
31216
+ visitNode(cbNode, node.questionDotToken) ||
31217
+ visitNode(cbNode, node.name);
31218
+ },
31219
+ _a[207 /* ElementAccessExpression */] = function forEachChildInElementAccessExpression(node, cbNode, _cbNodes) {
31220
+ return visitNode(cbNode, node.expression) ||
31221
+ visitNode(cbNode, node.questionDotToken) ||
31222
+ visitNode(cbNode, node.argumentExpression);
31223
+ },
31224
+ _a[208 /* CallExpression */] = forEachChildInCallOrNewExpression,
31225
+ _a[209 /* NewExpression */] = forEachChildInCallOrNewExpression,
31226
+ _a[210 /* TaggedTemplateExpression */] = function forEachChildInTaggedTemplateExpression(node, cbNode, cbNodes) {
31227
+ return visitNode(cbNode, node.tag) ||
31228
+ visitNode(cbNode, node.questionDotToken) ||
31229
+ visitNodes(cbNode, cbNodes, node.typeArguments) ||
31230
+ visitNode(cbNode, node.template);
31231
+ },
31232
+ _a[211 /* TypeAssertionExpression */] = function forEachChildInTypeAssertionExpression(node, cbNode, _cbNodes) {
31233
+ return visitNode(cbNode, node.type) ||
31234
+ visitNode(cbNode, node.expression);
31235
+ },
31236
+ _a[212 /* ParenthesizedExpression */] = function forEachChildInParenthesizedExpression(node, cbNode, _cbNodes) {
31237
+ return visitNode(cbNode, node.expression);
31238
+ },
31239
+ _a[215 /* DeleteExpression */] = function forEachChildInDeleteExpression(node, cbNode, _cbNodes) {
31240
+ return visitNode(cbNode, node.expression);
31241
+ },
31242
+ _a[216 /* TypeOfExpression */] = function forEachChildInTypeOfExpression(node, cbNode, _cbNodes) {
31243
+ return visitNode(cbNode, node.expression);
31244
+ },
31245
+ _a[217 /* VoidExpression */] = function forEachChildInVoidExpression(node, cbNode, _cbNodes) {
31246
+ return visitNode(cbNode, node.expression);
31247
+ },
31248
+ _a[219 /* PrefixUnaryExpression */] = function forEachChildInPrefixUnaryExpression(node, cbNode, _cbNodes) {
31249
+ return visitNode(cbNode, node.operand);
31250
+ },
31251
+ _a[224 /* YieldExpression */] = function forEachChildInYieldExpression(node, cbNode, _cbNodes) {
31252
+ return visitNode(cbNode, node.asteriskToken) ||
31253
+ visitNode(cbNode, node.expression);
31254
+ },
31255
+ _a[218 /* AwaitExpression */] = function forEachChildInAwaitExpression(node, cbNode, _cbNodes) {
31256
+ return visitNode(cbNode, node.expression);
31257
+ },
31258
+ _a[220 /* PostfixUnaryExpression */] = function forEachChildInPostfixUnaryExpression(node, cbNode, _cbNodes) {
31259
+ return visitNode(cbNode, node.operand);
31260
+ },
31261
+ _a[221 /* BinaryExpression */] = function forEachChildInBinaryExpression(node, cbNode, _cbNodes) {
31262
+ return visitNode(cbNode, node.left) ||
31263
+ visitNode(cbNode, node.operatorToken) ||
31264
+ visitNode(cbNode, node.right);
31265
+ },
31266
+ _a[229 /* AsExpression */] = function forEachChildInAsExpression(node, cbNode, _cbNodes) {
31267
+ return visitNode(cbNode, node.expression) ||
31268
+ visitNode(cbNode, node.type);
31269
+ },
31270
+ _a[230 /* NonNullExpression */] = function forEachChildInNonNullExpression(node, cbNode, _cbNodes) {
31271
+ return visitNode(cbNode, node.expression);
31272
+ },
31273
+ _a[231 /* MetaProperty */] = function forEachChildInMetaProperty(node, cbNode, _cbNodes) {
31274
+ return visitNode(cbNode, node.name);
31275
+ },
31276
+ _a[222 /* ConditionalExpression */] = function forEachChildInConditionalExpression(node, cbNode, _cbNodes) {
31277
+ return visitNode(cbNode, node.condition) ||
31278
+ visitNode(cbNode, node.questionToken) ||
31279
+ visitNode(cbNode, node.whenTrue) ||
31280
+ visitNode(cbNode, node.colonToken) ||
31281
+ visitNode(cbNode, node.whenFalse);
31282
+ },
31283
+ _a[225 /* SpreadElement */] = function forEachChildInSpreadElement(node, cbNode, _cbNodes) {
31284
+ return visitNode(cbNode, node.expression);
31285
+ },
31286
+ _a[235 /* Block */] = forEachChildInBlock,
31287
+ _a[262 /* ModuleBlock */] = forEachChildInBlock,
31288
+ _a[305 /* SourceFile */] = function forEachChildInSourceFile(node, cbNode, cbNodes) {
31289
+ return visitNodes(cbNode, cbNodes, node.statements) ||
31290
+ visitNode(cbNode, node.endOfFileToken);
31291
+ },
31292
+ _a[237 /* VariableStatement */] = function forEachChildInVariableStatement(node, cbNode, cbNodes) {
31293
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31294
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31295
+ visitNode(cbNode, node.declarationList);
31296
+ },
31297
+ _a[255 /* VariableDeclarationList */] = function forEachChildInVariableDeclarationList(node, cbNode, cbNodes) {
31298
+ return visitNodes(cbNode, cbNodes, node.declarations);
31299
+ },
31300
+ _a[238 /* ExpressionStatement */] = function forEachChildInExpressionStatement(node, cbNode, _cbNodes) {
31301
+ return visitNode(cbNode, node.expression);
31302
+ },
31303
+ _a[239 /* IfStatement */] = function forEachChildInIfStatement(node, cbNode, _cbNodes) {
31304
+ return visitNode(cbNode, node.expression) ||
31305
+ visitNode(cbNode, node.thenStatement) ||
31306
+ visitNode(cbNode, node.elseStatement);
31307
+ },
31308
+ _a[240 /* DoStatement */] = function forEachChildInDoStatement(node, cbNode, _cbNodes) {
31309
+ return visitNode(cbNode, node.statement) ||
31310
+ visitNode(cbNode, node.expression);
31311
+ },
31312
+ _a[241 /* WhileStatement */] = function forEachChildInWhileStatement(node, cbNode, _cbNodes) {
31313
+ return visitNode(cbNode, node.expression) ||
31314
+ visitNode(cbNode, node.statement);
31315
+ },
31316
+ _a[242 /* ForStatement */] = function forEachChildInForStatement(node, cbNode, _cbNodes) {
31317
+ return visitNode(cbNode, node.initializer) ||
31318
+ visitNode(cbNode, node.condition) ||
31319
+ visitNode(cbNode, node.incrementor) ||
31320
+ visitNode(cbNode, node.statement);
31321
+ },
31322
+ _a[243 /* ForInStatement */] = function forEachChildInForInStatement(node, cbNode, _cbNodes) {
31323
+ return visitNode(cbNode, node.initializer) ||
31324
+ visitNode(cbNode, node.expression) ||
31325
+ visitNode(cbNode, node.statement);
31326
+ },
31327
+ _a[244 /* ForOfStatement */] = function forEachChildInForOfStatement(node, cbNode, _cbNodes) {
31328
+ return visitNode(cbNode, node.awaitModifier) ||
31329
+ visitNode(cbNode, node.initializer) ||
31330
+ visitNode(cbNode, node.expression) ||
31331
+ visitNode(cbNode, node.statement);
31332
+ },
31333
+ _a[245 /* ContinueStatement */] = forEachChildInContinueOrBreakStatement,
31334
+ _a[246 /* BreakStatement */] = forEachChildInContinueOrBreakStatement,
31335
+ _a[247 /* ReturnStatement */] = function forEachChildInReturnStatement(node, cbNode, _cbNodes) {
31336
+ return visitNode(cbNode, node.expression);
31337
+ },
31338
+ _a[248 /* WithStatement */] = function forEachChildInWithStatement(node, cbNode, _cbNodes) {
31339
+ return visitNode(cbNode, node.expression) ||
31340
+ visitNode(cbNode, node.statement);
31341
+ },
31342
+ _a[249 /* SwitchStatement */] = function forEachChildInSwitchStatement(node, cbNode, _cbNodes) {
31343
+ return visitNode(cbNode, node.expression) ||
31344
+ visitNode(cbNode, node.caseBlock);
31345
+ },
31346
+ _a[263 /* CaseBlock */] = function forEachChildInCaseBlock(node, cbNode, cbNodes) {
31347
+ return visitNodes(cbNode, cbNodes, node.clauses);
31348
+ },
31349
+ _a[289 /* CaseClause */] = function forEachChildInCaseClause(node, cbNode, cbNodes) {
31350
+ return visitNode(cbNode, node.expression) ||
31351
+ visitNodes(cbNode, cbNodes, node.statements);
31352
+ },
31353
+ _a[290 /* DefaultClause */] = function forEachChildInDefaultClause(node, cbNode, cbNodes) {
31354
+ return visitNodes(cbNode, cbNodes, node.statements);
31355
+ },
31356
+ _a[250 /* LabeledStatement */] = function forEachChildInLabeledStatement(node, cbNode, _cbNodes) {
31357
+ return visitNode(cbNode, node.label) ||
31358
+ visitNode(cbNode, node.statement);
31359
+ },
31360
+ _a[251 /* ThrowStatement */] = function forEachChildInThrowStatement(node, cbNode, _cbNodes) {
31361
+ return visitNode(cbNode, node.expression);
31362
+ },
31363
+ _a[252 /* TryStatement */] = function forEachChildInTryStatement(node, cbNode, _cbNodes) {
31364
+ return visitNode(cbNode, node.tryBlock) ||
31365
+ visitNode(cbNode, node.catchClause) ||
31366
+ visitNode(cbNode, node.finallyBlock);
31367
+ },
31368
+ _a[292 /* CatchClause */] = function forEachChildInCatchClause(node, cbNode, _cbNodes) {
31369
+ return visitNode(cbNode, node.variableDeclaration) ||
31370
+ visitNode(cbNode, node.block);
31371
+ },
31372
+ _a[165 /* Decorator */] = function forEachChildInDecorator(node, cbNode, _cbNodes) {
31373
+ return visitNode(cbNode, node.expression);
31374
+ },
31375
+ _a[257 /* ClassDeclaration */] = forEachChildInClassDeclarationOrExpression,
31376
+ _a[226 /* ClassExpression */] = forEachChildInClassDeclarationOrExpression,
31377
+ _a[258 /* InterfaceDeclaration */] = function forEachChildInInterfaceDeclaration(node, cbNode, cbNodes) {
31378
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31379
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31380
+ visitNode(cbNode, node.name) ||
31381
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31382
+ visitNodes(cbNode, cbNodes, node.heritageClauses) ||
31383
+ visitNodes(cbNode, cbNodes, node.members);
31384
+ },
31385
+ _a[259 /* TypeAliasDeclaration */] = function forEachChildInTypeAliasDeclaration(node, cbNode, cbNodes) {
31386
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31387
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31388
+ visitNode(cbNode, node.name) ||
31389
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31390
+ visitNode(cbNode, node.type);
31391
+ },
31392
+ _a[260 /* EnumDeclaration */] = function forEachChildInEnumDeclaration(node, cbNode, cbNodes) {
31393
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31394
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31395
+ visitNode(cbNode, node.name) ||
31396
+ visitNodes(cbNode, cbNodes, node.members);
31397
+ },
31398
+ _a[299 /* EnumMember */] = function forEachChildInEnumMember(node, cbNode, _cbNodes) {
31399
+ return visitNode(cbNode, node.name) ||
31400
+ visitNode(cbNode, node.initializer);
31401
+ },
31402
+ _a[261 /* ModuleDeclaration */] = function forEachChildInModuleDeclaration(node, cbNode, cbNodes) {
31403
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31404
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31405
+ visitNode(cbNode, node.name) ||
31406
+ visitNode(cbNode, node.body);
31407
+ },
31408
+ _a[265 /* ImportEqualsDeclaration */] = function forEachChildInImportEqualsDeclaration(node, cbNode, cbNodes) {
31409
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31410
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31411
+ visitNode(cbNode, node.name) ||
31412
+ visitNode(cbNode, node.moduleReference);
31413
+ },
31414
+ _a[266 /* ImportDeclaration */] = function forEachChildInImportDeclaration(node, cbNode, cbNodes) {
31415
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31416
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31417
+ visitNode(cbNode, node.importClause) ||
31418
+ visitNode(cbNode, node.moduleSpecifier) ||
31419
+ visitNode(cbNode, node.assertClause);
31420
+ },
31421
+ _a[267 /* ImportClause */] = function forEachChildInImportClause(node, cbNode, _cbNodes) {
31422
+ return visitNode(cbNode, node.name) ||
31423
+ visitNode(cbNode, node.namedBindings);
31424
+ },
31425
+ _a[293 /* AssertClause */] = function forEachChildInAssertClause(node, cbNode, cbNodes) {
31426
+ return visitNodes(cbNode, cbNodes, node.elements);
31427
+ },
31428
+ _a[294 /* AssertEntry */] = function forEachChildInAssertEntry(node, cbNode, _cbNodes) {
31429
+ return visitNode(cbNode, node.name) ||
31430
+ visitNode(cbNode, node.value);
31431
+ },
31432
+ _a[264 /* NamespaceExportDeclaration */] = function forEachChildInNamespaceExportDeclaration(node, cbNode, cbNodes) {
31433
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31434
+ visitNode(cbNode, node.name);
31435
+ },
31436
+ _a[268 /* NamespaceImport */] = function forEachChildInNamespaceImport(node, cbNode, _cbNodes) {
31437
+ return visitNode(cbNode, node.name);
31438
+ },
31439
+ _a[274 /* NamespaceExport */] = function forEachChildInNamespaceExport(node, cbNode, _cbNodes) {
31440
+ return visitNode(cbNode, node.name);
31441
+ },
31442
+ _a[269 /* NamedImports */] = forEachChildInNamedImportsOrExports,
31443
+ _a[273 /* NamedExports */] = forEachChildInNamedImportsOrExports,
31444
+ _a[272 /* ExportDeclaration */] = function forEachChildInExportDeclaration(node, cbNode, cbNodes) {
31445
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31446
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31447
+ visitNode(cbNode, node.exportClause) ||
31448
+ visitNode(cbNode, node.moduleSpecifier) ||
31449
+ visitNode(cbNode, node.assertClause);
31450
+ },
31451
+ _a[270 /* ImportSpecifier */] = forEachChildInImportOrExportSpecifier,
31452
+ _a[275 /* ExportSpecifier */] = forEachChildInImportOrExportSpecifier,
31453
+ _a[271 /* ExportAssignment */] = function forEachChildInExportAssignment(node, cbNode, cbNodes) {
31454
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31455
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31456
+ visitNode(cbNode, node.expression);
31457
+ },
31458
+ _a[223 /* TemplateExpression */] = function forEachChildInTemplateExpression(node, cbNode, cbNodes) {
31459
+ return visitNode(cbNode, node.head) ||
31460
+ visitNodes(cbNode, cbNodes, node.templateSpans);
31461
+ },
31462
+ _a[233 /* TemplateSpan */] = function forEachChildInTemplateSpan(node, cbNode, _cbNodes) {
31463
+ return visitNode(cbNode, node.expression) ||
31464
+ visitNode(cbNode, node.literal);
31465
+ },
31466
+ _a[198 /* TemplateLiteralType */] = function forEachChildInTemplateLiteralType(node, cbNode, cbNodes) {
31467
+ return visitNode(cbNode, node.head) ||
31468
+ visitNodes(cbNode, cbNodes, node.templateSpans);
31469
+ },
31470
+ _a[199 /* TemplateLiteralTypeSpan */] = function forEachChildInTemplateLiteralTypeSpan(node, cbNode, _cbNodes) {
31471
+ return visitNode(cbNode, node.type) ||
31472
+ visitNode(cbNode, node.literal);
31473
+ },
31474
+ _a[162 /* ComputedPropertyName */] = function forEachChildInComputedPropertyName(node, cbNode, _cbNodes) {
31475
+ return visitNode(cbNode, node.expression);
31476
+ },
31477
+ _a[291 /* HeritageClause */] = function forEachChildInHeritageClause(node, cbNode, cbNodes) {
31478
+ return visitNodes(cbNode, cbNodes, node.types);
31479
+ },
31480
+ _a[228 /* ExpressionWithTypeArguments */] = function forEachChildInExpressionWithTypeArguments(node, cbNode, cbNodes) {
31481
+ return visitNode(cbNode, node.expression) ||
31482
+ visitNodes(cbNode, cbNodes, node.typeArguments);
31483
+ },
31484
+ _a[277 /* ExternalModuleReference */] = function forEachChildInExternalModuleReference(node, cbNode, _cbNodes) {
31485
+ return visitNode(cbNode, node.expression);
31486
+ },
31487
+ _a[276 /* MissingDeclaration */] = function forEachChildInMissingDeclaration(node, cbNode, cbNodes) {
31488
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31489
+ visitNodes(cbNode, cbNodes, node.modifiers);
31490
+ },
31491
+ _a[351 /* CommaListExpression */] = function forEachChildInCommaListExpression(node, cbNode, cbNodes) {
31492
+ return visitNodes(cbNode, cbNodes, node.elements);
31493
+ },
31494
+ _a[278 /* JsxElement */] = function forEachChildInJsxElement(node, cbNode, cbNodes) {
31495
+ return visitNode(cbNode, node.openingElement) ||
31496
+ visitNodes(cbNode, cbNodes, node.children) ||
31497
+ visitNode(cbNode, node.closingElement);
31498
+ },
31499
+ _a[282 /* JsxFragment */] = function forEachChildInJsxFragment(node, cbNode, cbNodes) {
31500
+ return visitNode(cbNode, node.openingFragment) ||
31501
+ visitNodes(cbNode, cbNodes, node.children) ||
31502
+ visitNode(cbNode, node.closingFragment);
31503
+ },
31504
+ _a[279 /* JsxSelfClosingElement */] = forEachChildInJsxOpeningOrSelfClosingElement,
31505
+ _a[280 /* JsxOpeningElement */] = forEachChildInJsxOpeningOrSelfClosingElement,
31506
+ _a[286 /* JsxAttributes */] = function forEachChildInJsxAttributes(node, cbNode, cbNodes) {
31507
+ return visitNodes(cbNode, cbNodes, node.properties);
31508
+ },
31509
+ _a[285 /* JsxAttribute */] = function forEachChildInJsxAttribute(node, cbNode, _cbNodes) {
31510
+ return visitNode(cbNode, node.name) ||
31511
+ visitNode(cbNode, node.initializer);
31512
+ },
31513
+ _a[287 /* JsxSpreadAttribute */] = function forEachChildInJsxSpreadAttribute(node, cbNode, _cbNodes) {
31514
+ return visitNode(cbNode, node.expression);
31515
+ },
31516
+ _a[288 /* JsxExpression */] = function forEachChildInJsxExpression(node, cbNode, _cbNodes) {
31517
+ return visitNode(cbNode, node.dotDotDotToken) ||
31518
+ visitNode(cbNode, node.expression);
31519
+ },
31520
+ _a[281 /* JsxClosingElement */] = function forEachChildInJsxClosingElement(node, cbNode, _cbNodes) {
31521
+ return visitNode(cbNode, node.tagName);
31522
+ },
31523
+ _a[185 /* OptionalType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31524
+ _a[186 /* RestType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31525
+ _a[309 /* JSDocTypeExpression */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31526
+ _a[315 /* JSDocNonNullableType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31527
+ _a[314 /* JSDocNullableType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31528
+ _a[316 /* JSDocOptionalType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31529
+ _a[318 /* JSDocVariadicType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31530
+ _a[317 /* JSDocFunctionType */] = function forEachChildInJSDocFunctionType(node, cbNode, cbNodes) {
31531
+ return visitNodes(cbNode, cbNodes, node.parameters) ||
31532
+ visitNode(cbNode, node.type);
31533
+ },
31534
+ _a[320 /* JSDoc */] = function forEachChildInJSDoc(node, cbNode, cbNodes) {
31535
+ return (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31536
+ || visitNodes(cbNode, cbNodes, node.tags);
31537
+ },
31538
+ _a[346 /* JSDocSeeTag */] = function forEachChildInJSDocSeeTag(node, cbNode, cbNodes) {
31539
+ return visitNode(cbNode, node.tagName) ||
31540
+ visitNode(cbNode, node.name) ||
31541
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31542
+ },
31543
+ _a[310 /* JSDocNameReference */] = function forEachChildInJSDocNameReference(node, cbNode, _cbNodes) {
31544
+ return visitNode(cbNode, node.name);
31545
+ },
31546
+ _a[311 /* JSDocMemberName */] = function forEachChildInJSDocMemberName(node, cbNode, _cbNodes) {
31547
+ return visitNode(cbNode, node.left) ||
31548
+ visitNode(cbNode, node.right);
31549
+ },
31550
+ _a[340 /* JSDocParameterTag */] = forEachChildInJSDocParameterOrPropertyTag,
31551
+ _a[347 /* JSDocPropertyTag */] = forEachChildInJSDocParameterOrPropertyTag,
31552
+ _a[330 /* JSDocAuthorTag */] = function forEachChildInJSDocAuthorTag(node, cbNode, cbNodes) {
31553
+ return visitNode(cbNode, node.tagName) ||
31554
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31555
+ },
31556
+ _a[329 /* JSDocImplementsTag */] = function forEachChildInJSDocImplementsTag(node, cbNode, cbNodes) {
31557
+ return visitNode(cbNode, node.tagName) ||
31558
+ visitNode(cbNode, node.class) ||
31559
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31560
+ },
31561
+ _a[328 /* JSDocAugmentsTag */] = function forEachChildInJSDocAugmentsTag(node, cbNode, cbNodes) {
31562
+ return visitNode(cbNode, node.tagName) ||
31563
+ visitNode(cbNode, node.class) ||
31564
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31565
+ },
31566
+ _a[344 /* JSDocTemplateTag */] = function forEachChildInJSDocTemplateTag(node, cbNode, cbNodes) {
31567
+ return visitNode(cbNode, node.tagName) ||
31568
+ visitNode(cbNode, node.constraint) ||
31569
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31570
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31571
+ },
31572
+ _a[345 /* JSDocTypedefTag */] = function forEachChildInJSDocTypedefTag(node, cbNode, cbNodes) {
31573
+ return visitNode(cbNode, node.tagName) ||
31574
+ (node.typeExpression &&
31575
+ node.typeExpression.kind === 309 /* JSDocTypeExpression */
31576
+ ? visitNode(cbNode, node.typeExpression) ||
31577
+ visitNode(cbNode, node.fullName) ||
31578
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31579
+ : visitNode(cbNode, node.fullName) ||
31580
+ visitNode(cbNode, node.typeExpression) ||
31581
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment)));
31582
+ },
31583
+ _a[338 /* JSDocCallbackTag */] = function forEachChildInJSDocCallbackTag(node, cbNode, cbNodes) {
31584
+ return visitNode(cbNode, node.tagName) ||
31585
+ visitNode(cbNode, node.fullName) ||
31586
+ visitNode(cbNode, node.typeExpression) ||
31587
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31588
+ },
31589
+ _a[341 /* JSDocReturnTag */] = forEachChildInJSDocReturnTag,
31590
+ _a[343 /* JSDocTypeTag */] = forEachChildInJSDocReturnTag,
31591
+ _a[342 /* JSDocThisTag */] = forEachChildInJSDocReturnTag,
31592
+ _a[339 /* JSDocEnumTag */] = forEachChildInJSDocReturnTag,
31593
+ _a[323 /* JSDocSignature */] = function forEachChildInJSDocSignature(node, cbNode, _cbNodes) {
31594
+ return ts.forEach(node.typeParameters, cbNode) ||
31595
+ ts.forEach(node.parameters, cbNode) ||
31596
+ visitNode(cbNode, node.type);
31597
+ },
31598
+ _a[324 /* JSDocLink */] = forEachChildInJSDocLinkCodeOrPlain,
31599
+ _a[325 /* JSDocLinkCode */] = forEachChildInJSDocLinkCodeOrPlain,
31600
+ _a[326 /* JSDocLinkPlain */] = forEachChildInJSDocLinkCodeOrPlain,
31601
+ _a[322 /* JSDocTypeLiteral */] = function forEachChildInJSDocTypeLiteral(node, cbNode, _cbNodes) {
31602
+ return ts.forEach(node.jsDocPropertyTags, cbNode);
31603
+ },
31604
+ _a[327 /* JSDocTag */] = forEachChildInJSDocTag,
31605
+ _a[332 /* JSDocClassTag */] = forEachChildInJSDocTag,
31606
+ _a[333 /* JSDocPublicTag */] = forEachChildInJSDocTag,
31607
+ _a[334 /* JSDocPrivateTag */] = forEachChildInJSDocTag,
31608
+ _a[335 /* JSDocProtectedTag */] = forEachChildInJSDocTag,
31609
+ _a[336 /* JSDocReadonlyTag */] = forEachChildInJSDocTag,
31610
+ _a[331 /* JSDocDeprecatedTag */] = forEachChildInJSDocTag,
31611
+ _a[350 /* PartiallyEmittedExpression */] = forEachChildInPartiallyEmittedExpression,
31612
+ _a);
31613
+ // shared
31614
+ function forEachChildInCallOrConstructSignature(node, cbNode, cbNodes) {
31615
+ return visitNodes(cbNode, cbNodes, node.typeParameters) ||
31616
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31617
+ visitNode(cbNode, node.type);
31618
+ }
31619
+ ;
31620
+ function forEachChildInUnionOrIntersectionType(node, cbNode, cbNodes) {
31621
+ return visitNodes(cbNode, cbNodes, node.types);
31622
+ }
31623
+ function forEachChildInParenthesizedTypeOrTypeOperator(node, cbNode, _cbNodes) {
31624
+ return visitNode(cbNode, node.type);
31625
+ }
31626
+ function forEachChildInObjectOrArrayBindingPattern(node, cbNode, cbNodes) {
31627
+ return visitNodes(cbNode, cbNodes, node.elements);
31628
+ }
31629
+ function forEachChildInCallOrNewExpression(node, cbNode, cbNodes) {
31630
+ return visitNode(cbNode, node.expression) ||
31631
+ // TODO: should we separate these branches out?
31632
+ visitNode(cbNode, node.questionDotToken) ||
31633
+ visitNodes(cbNode, cbNodes, node.typeArguments) ||
31634
+ visitNodes(cbNode, cbNodes, node.arguments);
31635
+ }
31636
+ function forEachChildInBlock(node, cbNode, cbNodes) {
31637
+ return visitNodes(cbNode, cbNodes, node.statements);
31638
+ }
31639
+ function forEachChildInContinueOrBreakStatement(node, cbNode, _cbNodes) {
31640
+ return visitNode(cbNode, node.label);
31641
+ }
31642
+ function forEachChildInClassDeclarationOrExpression(node, cbNode, cbNodes) {
31643
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31644
+ visitNode(cbNode, node.name) ||
31645
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31646
+ visitNodes(cbNode, cbNodes, node.heritageClauses) ||
31647
+ visitNodes(cbNode, cbNodes, node.members);
31648
+ }
31649
+ function forEachChildInNamedImportsOrExports(node, cbNode, cbNodes) {
31650
+ return visitNodes(cbNode, cbNodes, node.elements);
31651
+ }
31652
+ function forEachChildInImportOrExportSpecifier(node, cbNode, _cbNodes) {
31653
+ return visitNode(cbNode, node.propertyName) ||
31654
+ visitNode(cbNode, node.name);
31655
+ }
31656
+ function forEachChildInJsxOpeningOrSelfClosingElement(node, cbNode, cbNodes) {
31657
+ return visitNode(cbNode, node.tagName) ||
31658
+ visitNodes(cbNode, cbNodes, node.typeArguments) ||
31659
+ visitNode(cbNode, node.attributes);
31660
+ }
31661
+ function forEachChildInOptionalRestOrJSDocParameterModifier(node, cbNode, _cbNodes) {
31662
+ return visitNode(cbNode, node.type);
31663
+ }
31664
+ function forEachChildInJSDocParameterOrPropertyTag(node, cbNode, cbNodes) {
31665
+ return visitNode(cbNode, node.tagName) ||
31666
+ (node.isNameFirst
31667
+ ? visitNode(cbNode, node.name) || visitNode(cbNode, node.typeExpression)
31668
+ : visitNode(cbNode, node.typeExpression) || visitNode(cbNode, node.name)) ||
31669
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31670
+ }
31671
+ function forEachChildInJSDocReturnTag(node, cbNode, cbNodes) {
31672
+ return visitNode(cbNode, node.tagName) ||
31673
+ visitNode(cbNode, node.typeExpression) ||
31674
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31675
+ }
31676
+ function forEachChildInJSDocLinkCodeOrPlain(node, cbNode, _cbNodes) {
31677
+ return visitNode(cbNode, node.name);
31678
+ }
31679
+ function forEachChildInJSDocTag(node, cbNode, cbNodes) {
31680
+ return visitNode(cbNode, node.tagName)
31681
+ || (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31682
+ }
31683
+ function forEachChildInPartiallyEmittedExpression(node, cbNode, _cbNodes) {
31684
+ return visitNode(cbNode, node.expression);
31685
+ }
30975
31686
  /**
30976
31687
  * Invokes a callback for each child of the given node. The 'cbNode' callback is invoked for all child nodes
30977
31688
  * stored in properties. If a 'cbNodes' callback is specified, it is invoked for embedded arrays; otherwise,
@@ -30986,562 +31697,11 @@ var ts;
30986
31697
  * that they appear in the source code. The language service depends on this property to locate nodes by position.
30987
31698
  */
30988
31699
  function forEachChild(node, cbNode, cbNodes) {
30989
- if (!node || node.kind <= 160 /* LastToken */) {
31700
+ if (node === undefined || node.kind <= 160 /* LastToken */) {
30990
31701
  return;
30991
31702
  }
30992
- switch (node.kind) {
30993
- case 161 /* QualifiedName */:
30994
- return visitNode(cbNode, node.left) ||
30995
- visitNode(cbNode, node.right);
30996
- case 163 /* TypeParameter */:
30997
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
30998
- visitNode(cbNode, node.name) ||
30999
- visitNode(cbNode, node.constraint) ||
31000
- visitNode(cbNode, node.default) ||
31001
- visitNode(cbNode, node.expression);
31002
- case 297 /* ShorthandPropertyAssignment */:
31003
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31004
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31005
- visitNode(cbNode, node.name) ||
31006
- visitNode(cbNode, node.questionToken) ||
31007
- visitNode(cbNode, node.exclamationToken) ||
31008
- visitNode(cbNode, node.equalsToken) ||
31009
- visitNode(cbNode, node.objectAssignmentInitializer);
31010
- case 298 /* SpreadAssignment */:
31011
- return visitNode(cbNode, node.expression);
31012
- case 164 /* Parameter */:
31013
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31014
- visitNode(cbNode, node.dotDotDotToken) ||
31015
- visitNode(cbNode, node.name) ||
31016
- visitNode(cbNode, node.questionToken) ||
31017
- visitNode(cbNode, node.type) ||
31018
- visitNode(cbNode, node.initializer);
31019
- case 167 /* PropertyDeclaration */:
31020
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31021
- visitNode(cbNode, node.name) ||
31022
- visitNode(cbNode, node.questionToken) ||
31023
- visitNode(cbNode, node.exclamationToken) ||
31024
- visitNode(cbNode, node.type) ||
31025
- visitNode(cbNode, node.initializer);
31026
- case 166 /* PropertySignature */:
31027
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31028
- visitNode(cbNode, node.name) ||
31029
- visitNode(cbNode, node.questionToken) ||
31030
- visitNode(cbNode, node.type) ||
31031
- visitNode(cbNode, node.initializer);
31032
- case 296 /* PropertyAssignment */:
31033
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31034
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31035
- visitNode(cbNode, node.name) ||
31036
- visitNode(cbNode, node.questionToken) ||
31037
- visitNode(cbNode, node.exclamationToken) ||
31038
- visitNode(cbNode, node.initializer);
31039
- case 254 /* VariableDeclaration */:
31040
- return visitNode(cbNode, node.name) ||
31041
- visitNode(cbNode, node.exclamationToken) ||
31042
- visitNode(cbNode, node.type) ||
31043
- visitNode(cbNode, node.initializer);
31044
- case 203 /* BindingElement */:
31045
- return visitNode(cbNode, node.dotDotDotToken) ||
31046
- visitNode(cbNode, node.propertyName) ||
31047
- visitNode(cbNode, node.name) ||
31048
- visitNode(cbNode, node.initializer);
31049
- case 176 /* IndexSignature */:
31050
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31051
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31052
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31053
- visitNodes(cbNode, cbNodes, node.parameters) ||
31054
- visitNode(cbNode, node.type);
31055
- case 180 /* ConstructorType */:
31056
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31057
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31058
- visitNodes(cbNode, cbNodes, node.parameters) ||
31059
- visitNode(cbNode, node.type);
31060
- case 179 /* FunctionType */:
31061
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31062
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31063
- visitNodes(cbNode, cbNodes, node.parameters) ||
31064
- visitNode(cbNode, node.type);
31065
- case 174 /* CallSignature */:
31066
- case 175 /* ConstructSignature */:
31067
- return visitNodes(cbNode, cbNodes, node.typeParameters) ||
31068
- visitNodes(cbNode, cbNodes, node.parameters) ||
31069
- visitNode(cbNode, node.type);
31070
- case 169 /* MethodDeclaration */:
31071
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31072
- visitNode(cbNode, node.asteriskToken) ||
31073
- visitNode(cbNode, node.name) ||
31074
- visitNode(cbNode, node.questionToken) ||
31075
- visitNode(cbNode, node.exclamationToken) ||
31076
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31077
- visitNodes(cbNode, cbNodes, node.parameters) ||
31078
- visitNode(cbNode, node.type) ||
31079
- visitNode(cbNode, node.body);
31080
- case 168 /* MethodSignature */:
31081
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31082
- visitNode(cbNode, node.name) ||
31083
- visitNode(cbNode, node.questionToken) ||
31084
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31085
- visitNodes(cbNode, cbNodes, node.parameters) ||
31086
- visitNode(cbNode, node.type);
31087
- case 171 /* Constructor */:
31088
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31089
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31090
- visitNode(cbNode, node.name) ||
31091
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31092
- visitNodes(cbNode, cbNodes, node.parameters) ||
31093
- visitNode(cbNode, node.type) ||
31094
- visitNode(cbNode, node.body);
31095
- case 172 /* GetAccessor */:
31096
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31097
- visitNode(cbNode, node.name) ||
31098
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31099
- visitNodes(cbNode, cbNodes, node.parameters) ||
31100
- visitNode(cbNode, node.type) ||
31101
- visitNode(cbNode, node.body);
31102
- case 173 /* SetAccessor */:
31103
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31104
- visitNode(cbNode, node.name) ||
31105
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31106
- visitNodes(cbNode, cbNodes, node.parameters) ||
31107
- visitNode(cbNode, node.type) ||
31108
- visitNode(cbNode, node.body);
31109
- case 256 /* FunctionDeclaration */:
31110
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31111
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31112
- visitNode(cbNode, node.asteriskToken) ||
31113
- visitNode(cbNode, node.name) ||
31114
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31115
- visitNodes(cbNode, cbNodes, node.parameters) ||
31116
- visitNode(cbNode, node.type) ||
31117
- visitNode(cbNode, node.body);
31118
- case 213 /* FunctionExpression */:
31119
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31120
- visitNode(cbNode, node.asteriskToken) ||
31121
- visitNode(cbNode, node.name) ||
31122
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31123
- visitNodes(cbNode, cbNodes, node.parameters) ||
31124
- visitNode(cbNode, node.type) ||
31125
- visitNode(cbNode, node.body);
31126
- case 214 /* ArrowFunction */:
31127
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31128
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31129
- visitNodes(cbNode, cbNodes, node.parameters) ||
31130
- visitNode(cbNode, node.type) ||
31131
- visitNode(cbNode, node.equalsGreaterThanToken) ||
31132
- visitNode(cbNode, node.body);
31133
- case 170 /* ClassStaticBlockDeclaration */:
31134
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31135
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31136
- visitNode(cbNode, node.body);
31137
- case 178 /* TypeReference */:
31138
- return visitNode(cbNode, node.typeName) ||
31139
- visitNodes(cbNode, cbNodes, node.typeArguments);
31140
- case 177 /* TypePredicate */:
31141
- return visitNode(cbNode, node.assertsModifier) ||
31142
- visitNode(cbNode, node.parameterName) ||
31143
- visitNode(cbNode, node.type);
31144
- case 181 /* TypeQuery */:
31145
- return visitNode(cbNode, node.exprName) ||
31146
- visitNodes(cbNode, cbNodes, node.typeArguments);
31147
- case 182 /* TypeLiteral */:
31148
- return visitNodes(cbNode, cbNodes, node.members);
31149
- case 183 /* ArrayType */:
31150
- return visitNode(cbNode, node.elementType);
31151
- case 184 /* TupleType */:
31152
- return visitNodes(cbNode, cbNodes, node.elements);
31153
- case 187 /* UnionType */:
31154
- case 188 /* IntersectionType */:
31155
- return visitNodes(cbNode, cbNodes, node.types);
31156
- case 189 /* ConditionalType */:
31157
- return visitNode(cbNode, node.checkType) ||
31158
- visitNode(cbNode, node.extendsType) ||
31159
- visitNode(cbNode, node.trueType) ||
31160
- visitNode(cbNode, node.falseType);
31161
- case 190 /* InferType */:
31162
- return visitNode(cbNode, node.typeParameter);
31163
- case 200 /* ImportType */:
31164
- return visitNode(cbNode, node.argument) ||
31165
- visitNode(cbNode, node.assertions) ||
31166
- visitNode(cbNode, node.qualifier) ||
31167
- visitNodes(cbNode, cbNodes, node.typeArguments);
31168
- case 295 /* ImportTypeAssertionContainer */:
31169
- return visitNode(cbNode, node.assertClause);
31170
- case 191 /* ParenthesizedType */:
31171
- case 193 /* TypeOperator */:
31172
- return visitNode(cbNode, node.type);
31173
- case 194 /* IndexedAccessType */:
31174
- return visitNode(cbNode, node.objectType) ||
31175
- visitNode(cbNode, node.indexType);
31176
- case 195 /* MappedType */:
31177
- return visitNode(cbNode, node.readonlyToken) ||
31178
- visitNode(cbNode, node.typeParameter) ||
31179
- visitNode(cbNode, node.nameType) ||
31180
- visitNode(cbNode, node.questionToken) ||
31181
- visitNode(cbNode, node.type) ||
31182
- visitNodes(cbNode, cbNodes, node.members);
31183
- case 196 /* LiteralType */:
31184
- return visitNode(cbNode, node.literal);
31185
- case 197 /* NamedTupleMember */:
31186
- return visitNode(cbNode, node.dotDotDotToken) ||
31187
- visitNode(cbNode, node.name) ||
31188
- visitNode(cbNode, node.questionToken) ||
31189
- visitNode(cbNode, node.type);
31190
- case 201 /* ObjectBindingPattern */:
31191
- case 202 /* ArrayBindingPattern */:
31192
- return visitNodes(cbNode, cbNodes, node.elements);
31193
- case 204 /* ArrayLiteralExpression */:
31194
- return visitNodes(cbNode, cbNodes, node.elements);
31195
- case 205 /* ObjectLiteralExpression */:
31196
- return visitNodes(cbNode, cbNodes, node.properties);
31197
- case 206 /* PropertyAccessExpression */:
31198
- return visitNode(cbNode, node.expression) ||
31199
- visitNode(cbNode, node.questionDotToken) ||
31200
- visitNode(cbNode, node.name);
31201
- case 207 /* ElementAccessExpression */:
31202
- return visitNode(cbNode, node.expression) ||
31203
- visitNode(cbNode, node.questionDotToken) ||
31204
- visitNode(cbNode, node.argumentExpression);
31205
- case 208 /* CallExpression */:
31206
- case 209 /* NewExpression */:
31207
- return visitNode(cbNode, node.expression) ||
31208
- visitNode(cbNode, node.questionDotToken) ||
31209
- visitNodes(cbNode, cbNodes, node.typeArguments) ||
31210
- visitNodes(cbNode, cbNodes, node.arguments);
31211
- case 210 /* TaggedTemplateExpression */:
31212
- return visitNode(cbNode, node.tag) ||
31213
- visitNode(cbNode, node.questionDotToken) ||
31214
- visitNodes(cbNode, cbNodes, node.typeArguments) ||
31215
- visitNode(cbNode, node.template);
31216
- case 211 /* TypeAssertionExpression */:
31217
- return visitNode(cbNode, node.type) ||
31218
- visitNode(cbNode, node.expression);
31219
- case 212 /* ParenthesizedExpression */:
31220
- return visitNode(cbNode, node.expression);
31221
- case 215 /* DeleteExpression */:
31222
- return visitNode(cbNode, node.expression);
31223
- case 216 /* TypeOfExpression */:
31224
- return visitNode(cbNode, node.expression);
31225
- case 217 /* VoidExpression */:
31226
- return visitNode(cbNode, node.expression);
31227
- case 219 /* PrefixUnaryExpression */:
31228
- return visitNode(cbNode, node.operand);
31229
- case 224 /* YieldExpression */:
31230
- return visitNode(cbNode, node.asteriskToken) ||
31231
- visitNode(cbNode, node.expression);
31232
- case 218 /* AwaitExpression */:
31233
- return visitNode(cbNode, node.expression);
31234
- case 220 /* PostfixUnaryExpression */:
31235
- return visitNode(cbNode, node.operand);
31236
- case 221 /* BinaryExpression */:
31237
- return visitNode(cbNode, node.left) ||
31238
- visitNode(cbNode, node.operatorToken) ||
31239
- visitNode(cbNode, node.right);
31240
- case 229 /* AsExpression */:
31241
- return visitNode(cbNode, node.expression) ||
31242
- visitNode(cbNode, node.type);
31243
- case 230 /* NonNullExpression */:
31244
- return visitNode(cbNode, node.expression);
31245
- case 231 /* MetaProperty */:
31246
- return visitNode(cbNode, node.name);
31247
- case 222 /* ConditionalExpression */:
31248
- return visitNode(cbNode, node.condition) ||
31249
- visitNode(cbNode, node.questionToken) ||
31250
- visitNode(cbNode, node.whenTrue) ||
31251
- visitNode(cbNode, node.colonToken) ||
31252
- visitNode(cbNode, node.whenFalse);
31253
- case 225 /* SpreadElement */:
31254
- return visitNode(cbNode, node.expression);
31255
- case 235 /* Block */:
31256
- case 262 /* ModuleBlock */:
31257
- return visitNodes(cbNode, cbNodes, node.statements);
31258
- case 305 /* SourceFile */:
31259
- return visitNodes(cbNode, cbNodes, node.statements) ||
31260
- visitNode(cbNode, node.endOfFileToken);
31261
- case 237 /* VariableStatement */:
31262
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31263
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31264
- visitNode(cbNode, node.declarationList);
31265
- case 255 /* VariableDeclarationList */:
31266
- return visitNodes(cbNode, cbNodes, node.declarations);
31267
- case 238 /* ExpressionStatement */:
31268
- return visitNode(cbNode, node.expression);
31269
- case 239 /* IfStatement */:
31270
- return visitNode(cbNode, node.expression) ||
31271
- visitNode(cbNode, node.thenStatement) ||
31272
- visitNode(cbNode, node.elseStatement);
31273
- case 240 /* DoStatement */:
31274
- return visitNode(cbNode, node.statement) ||
31275
- visitNode(cbNode, node.expression);
31276
- case 241 /* WhileStatement */:
31277
- return visitNode(cbNode, node.expression) ||
31278
- visitNode(cbNode, node.statement);
31279
- case 242 /* ForStatement */:
31280
- return visitNode(cbNode, node.initializer) ||
31281
- visitNode(cbNode, node.condition) ||
31282
- visitNode(cbNode, node.incrementor) ||
31283
- visitNode(cbNode, node.statement);
31284
- case 243 /* ForInStatement */:
31285
- return visitNode(cbNode, node.initializer) ||
31286
- visitNode(cbNode, node.expression) ||
31287
- visitNode(cbNode, node.statement);
31288
- case 244 /* ForOfStatement */:
31289
- return visitNode(cbNode, node.awaitModifier) ||
31290
- visitNode(cbNode, node.initializer) ||
31291
- visitNode(cbNode, node.expression) ||
31292
- visitNode(cbNode, node.statement);
31293
- case 245 /* ContinueStatement */:
31294
- case 246 /* BreakStatement */:
31295
- return visitNode(cbNode, node.label);
31296
- case 247 /* ReturnStatement */:
31297
- return visitNode(cbNode, node.expression);
31298
- case 248 /* WithStatement */:
31299
- return visitNode(cbNode, node.expression) ||
31300
- visitNode(cbNode, node.statement);
31301
- case 249 /* SwitchStatement */:
31302
- return visitNode(cbNode, node.expression) ||
31303
- visitNode(cbNode, node.caseBlock);
31304
- case 263 /* CaseBlock */:
31305
- return visitNodes(cbNode, cbNodes, node.clauses);
31306
- case 289 /* CaseClause */:
31307
- return visitNode(cbNode, node.expression) ||
31308
- visitNodes(cbNode, cbNodes, node.statements);
31309
- case 290 /* DefaultClause */:
31310
- return visitNodes(cbNode, cbNodes, node.statements);
31311
- case 250 /* LabeledStatement */:
31312
- return visitNode(cbNode, node.label) ||
31313
- visitNode(cbNode, node.statement);
31314
- case 251 /* ThrowStatement */:
31315
- return visitNode(cbNode, node.expression);
31316
- case 252 /* TryStatement */:
31317
- return visitNode(cbNode, node.tryBlock) ||
31318
- visitNode(cbNode, node.catchClause) ||
31319
- visitNode(cbNode, node.finallyBlock);
31320
- case 292 /* CatchClause */:
31321
- return visitNode(cbNode, node.variableDeclaration) ||
31322
- visitNode(cbNode, node.block);
31323
- case 165 /* Decorator */:
31324
- return visitNode(cbNode, node.expression);
31325
- case 257 /* ClassDeclaration */:
31326
- case 226 /* ClassExpression */:
31327
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31328
- visitNode(cbNode, node.name) ||
31329
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31330
- visitNodes(cbNode, cbNodes, node.heritageClauses) ||
31331
- visitNodes(cbNode, cbNodes, node.members);
31332
- case 258 /* InterfaceDeclaration */:
31333
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31334
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31335
- visitNode(cbNode, node.name) ||
31336
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31337
- visitNodes(cbNode, cbNodes, node.heritageClauses) ||
31338
- visitNodes(cbNode, cbNodes, node.members);
31339
- case 259 /* TypeAliasDeclaration */:
31340
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31341
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31342
- visitNode(cbNode, node.name) ||
31343
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31344
- visitNode(cbNode, node.type);
31345
- case 260 /* EnumDeclaration */:
31346
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31347
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31348
- visitNode(cbNode, node.name) ||
31349
- visitNodes(cbNode, cbNodes, node.members);
31350
- case 299 /* EnumMember */:
31351
- return visitNode(cbNode, node.name) ||
31352
- visitNode(cbNode, node.initializer);
31353
- case 261 /* ModuleDeclaration */:
31354
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31355
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31356
- visitNode(cbNode, node.name) ||
31357
- visitNode(cbNode, node.body);
31358
- case 265 /* ImportEqualsDeclaration */:
31359
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31360
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31361
- visitNode(cbNode, node.name) ||
31362
- visitNode(cbNode, node.moduleReference);
31363
- case 266 /* ImportDeclaration */:
31364
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31365
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31366
- visitNode(cbNode, node.importClause) ||
31367
- visitNode(cbNode, node.moduleSpecifier) ||
31368
- visitNode(cbNode, node.assertClause);
31369
- case 267 /* ImportClause */:
31370
- return visitNode(cbNode, node.name) ||
31371
- visitNode(cbNode, node.namedBindings);
31372
- case 293 /* AssertClause */:
31373
- return visitNodes(cbNode, cbNodes, node.elements);
31374
- case 294 /* AssertEntry */:
31375
- return visitNode(cbNode, node.name) ||
31376
- visitNode(cbNode, node.value);
31377
- case 264 /* NamespaceExportDeclaration */:
31378
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31379
- visitNode(cbNode, node.name);
31380
- case 268 /* NamespaceImport */:
31381
- return visitNode(cbNode, node.name);
31382
- case 274 /* NamespaceExport */:
31383
- return visitNode(cbNode, node.name);
31384
- case 269 /* NamedImports */:
31385
- case 273 /* NamedExports */:
31386
- return visitNodes(cbNode, cbNodes, node.elements);
31387
- case 272 /* ExportDeclaration */:
31388
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31389
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31390
- visitNode(cbNode, node.exportClause) ||
31391
- visitNode(cbNode, node.moduleSpecifier) ||
31392
- visitNode(cbNode, node.assertClause);
31393
- case 270 /* ImportSpecifier */:
31394
- case 275 /* ExportSpecifier */:
31395
- return visitNode(cbNode, node.propertyName) ||
31396
- visitNode(cbNode, node.name);
31397
- case 271 /* ExportAssignment */:
31398
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31399
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31400
- visitNode(cbNode, node.expression);
31401
- case 223 /* TemplateExpression */:
31402
- return visitNode(cbNode, node.head) ||
31403
- visitNodes(cbNode, cbNodes, node.templateSpans);
31404
- case 233 /* TemplateSpan */:
31405
- return visitNode(cbNode, node.expression) ||
31406
- visitNode(cbNode, node.literal);
31407
- case 198 /* TemplateLiteralType */:
31408
- return visitNode(cbNode, node.head) ||
31409
- visitNodes(cbNode, cbNodes, node.templateSpans);
31410
- case 199 /* TemplateLiteralTypeSpan */:
31411
- return visitNode(cbNode, node.type) ||
31412
- visitNode(cbNode, node.literal);
31413
- case 162 /* ComputedPropertyName */:
31414
- return visitNode(cbNode, node.expression);
31415
- case 291 /* HeritageClause */:
31416
- return visitNodes(cbNode, cbNodes, node.types);
31417
- case 228 /* ExpressionWithTypeArguments */:
31418
- return visitNode(cbNode, node.expression) ||
31419
- visitNodes(cbNode, cbNodes, node.typeArguments);
31420
- case 277 /* ExternalModuleReference */:
31421
- return visitNode(cbNode, node.expression);
31422
- case 276 /* MissingDeclaration */:
31423
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31424
- visitNodes(cbNode, cbNodes, node.modifiers);
31425
- case 351 /* CommaListExpression */:
31426
- return visitNodes(cbNode, cbNodes, node.elements);
31427
- case 278 /* JsxElement */:
31428
- return visitNode(cbNode, node.openingElement) ||
31429
- visitNodes(cbNode, cbNodes, node.children) ||
31430
- visitNode(cbNode, node.closingElement);
31431
- case 282 /* JsxFragment */:
31432
- return visitNode(cbNode, node.openingFragment) ||
31433
- visitNodes(cbNode, cbNodes, node.children) ||
31434
- visitNode(cbNode, node.closingFragment);
31435
- case 279 /* JsxSelfClosingElement */:
31436
- case 280 /* JsxOpeningElement */:
31437
- return visitNode(cbNode, node.tagName) ||
31438
- visitNodes(cbNode, cbNodes, node.typeArguments) ||
31439
- visitNode(cbNode, node.attributes);
31440
- case 286 /* JsxAttributes */:
31441
- return visitNodes(cbNode, cbNodes, node.properties);
31442
- case 285 /* JsxAttribute */:
31443
- return visitNode(cbNode, node.name) ||
31444
- visitNode(cbNode, node.initializer);
31445
- case 287 /* JsxSpreadAttribute */:
31446
- return visitNode(cbNode, node.expression);
31447
- case 288 /* JsxExpression */:
31448
- return visitNode(cbNode, node.dotDotDotToken) ||
31449
- visitNode(cbNode, node.expression);
31450
- case 281 /* JsxClosingElement */:
31451
- return visitNode(cbNode, node.tagName);
31452
- case 185 /* OptionalType */:
31453
- case 186 /* RestType */:
31454
- case 309 /* JSDocTypeExpression */:
31455
- case 315 /* JSDocNonNullableType */:
31456
- case 314 /* JSDocNullableType */:
31457
- case 316 /* JSDocOptionalType */:
31458
- case 318 /* JSDocVariadicType */:
31459
- return visitNode(cbNode, node.type);
31460
- case 317 /* JSDocFunctionType */:
31461
- return visitNodes(cbNode, cbNodes, node.parameters) ||
31462
- visitNode(cbNode, node.type);
31463
- case 320 /* JSDoc */:
31464
- return (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31465
- || visitNodes(cbNode, cbNodes, node.tags);
31466
- case 346 /* JSDocSeeTag */:
31467
- return visitNode(cbNode, node.tagName) ||
31468
- visitNode(cbNode, node.name) ||
31469
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31470
- case 310 /* JSDocNameReference */:
31471
- return visitNode(cbNode, node.name);
31472
- case 311 /* JSDocMemberName */:
31473
- return visitNode(cbNode, node.left) ||
31474
- visitNode(cbNode, node.right);
31475
- case 340 /* JSDocParameterTag */:
31476
- case 347 /* JSDocPropertyTag */:
31477
- return visitNode(cbNode, node.tagName) ||
31478
- (node.isNameFirst
31479
- ? visitNode(cbNode, node.name) ||
31480
- visitNode(cbNode, node.typeExpression) ||
31481
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31482
- : visitNode(cbNode, node.typeExpression) ||
31483
- visitNode(cbNode, node.name) ||
31484
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment)));
31485
- case 330 /* JSDocAuthorTag */:
31486
- return visitNode(cbNode, node.tagName) ||
31487
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31488
- case 329 /* JSDocImplementsTag */:
31489
- return visitNode(cbNode, node.tagName) ||
31490
- visitNode(cbNode, node.class) ||
31491
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31492
- case 328 /* JSDocAugmentsTag */:
31493
- return visitNode(cbNode, node.tagName) ||
31494
- visitNode(cbNode, node.class) ||
31495
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31496
- case 344 /* JSDocTemplateTag */:
31497
- return visitNode(cbNode, node.tagName) ||
31498
- visitNode(cbNode, node.constraint) ||
31499
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31500
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31501
- case 345 /* JSDocTypedefTag */:
31502
- return visitNode(cbNode, node.tagName) ||
31503
- (node.typeExpression &&
31504
- node.typeExpression.kind === 309 /* JSDocTypeExpression */
31505
- ? visitNode(cbNode, node.typeExpression) ||
31506
- visitNode(cbNode, node.fullName) ||
31507
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31508
- : visitNode(cbNode, node.fullName) ||
31509
- visitNode(cbNode, node.typeExpression) ||
31510
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment)));
31511
- case 338 /* JSDocCallbackTag */:
31512
- return visitNode(cbNode, node.tagName) ||
31513
- visitNode(cbNode, node.fullName) ||
31514
- visitNode(cbNode, node.typeExpression) ||
31515
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31516
- case 341 /* JSDocReturnTag */:
31517
- case 343 /* JSDocTypeTag */:
31518
- case 342 /* JSDocThisTag */:
31519
- case 339 /* JSDocEnumTag */:
31520
- return visitNode(cbNode, node.tagName) ||
31521
- visitNode(cbNode, node.typeExpression) ||
31522
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31523
- case 323 /* JSDocSignature */:
31524
- return ts.forEach(node.typeParameters, cbNode) ||
31525
- ts.forEach(node.parameters, cbNode) ||
31526
- visitNode(cbNode, node.type);
31527
- case 324 /* JSDocLink */:
31528
- case 325 /* JSDocLinkCode */:
31529
- case 326 /* JSDocLinkPlain */:
31530
- return visitNode(cbNode, node.name);
31531
- case 322 /* JSDocTypeLiteral */:
31532
- return ts.forEach(node.jsDocPropertyTags, cbNode);
31533
- case 327 /* JSDocTag */:
31534
- case 332 /* JSDocClassTag */:
31535
- case 333 /* JSDocPublicTag */:
31536
- case 334 /* JSDocPrivateTag */:
31537
- case 335 /* JSDocProtectedTag */:
31538
- case 336 /* JSDocReadonlyTag */:
31539
- case 331 /* JSDocDeprecatedTag */:
31540
- return visitNode(cbNode, node.tagName)
31541
- || (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31542
- case 350 /* PartiallyEmittedExpression */:
31543
- return visitNode(cbNode, node.expression);
31544
- }
31703
+ var fn = forEachChildTable[node.kind];
31704
+ return fn === undefined ? undefined : fn(node, cbNode, cbNodes);
31545
31705
  }
31546
31706
  ts.forEachChild = forEachChild;
31547
31707
  /** @internal */
@@ -33971,7 +34131,7 @@ var ts;
33971
34131
  var type = parseTypeAnnotation();
33972
34132
  parseTypeMemberSemicolon();
33973
34133
  var node = factory.createIndexSignature(modifiers, parameters, type);
33974
- node.decorators = decorators;
34134
+ node.illegalDecorators = decorators;
33975
34135
  return withJSDoc(finishNode(node, pos), hasJSDoc);
33976
34136
  }
33977
34137
  function parsePropertyOrMethodSignature(pos, hasJSDoc, modifiers) {
@@ -36131,7 +36291,7 @@ var ts;
36131
36291
  node = factory.createPropertyAssignment(name, initializer);
36132
36292
  }
36133
36293
  // Decorators, Modifiers, questionToken, and exclamationToken are not supported by property assignments and are reported in the grammar checker
36134
- node.decorators = decorators;
36294
+ node.illegalDecorators = decorators;
36135
36295
  node.modifiers = modifiers;
36136
36296
  node.questionToken = questionToken;
36137
36297
  node.exclamationToken = exclamationToken;
@@ -36779,7 +36939,7 @@ var ts;
36779
36939
  // would follow. For recovery and error reporting purposes, return an incomplete declaration.
36780
36940
  var missing = createMissingNode(276 /* MissingDeclaration */, /*reportAtCurrentPosition*/ true, ts.Diagnostics.Declaration_expected);
36781
36941
  ts.setTextRangePos(missing, pos);
36782
- missing.decorators = decorators;
36942
+ missing.illegalDecorators = decorators;
36783
36943
  missing.modifiers = modifiers;
36784
36944
  return missing;
36785
36945
  }
@@ -36922,7 +37082,7 @@ var ts;
36922
37082
  parseSemicolon();
36923
37083
  var node = factory.createVariableStatement(modifiers, declarationList);
36924
37084
  // Decorators are not allowed on a variable statement, so we keep track of them to report them in the grammar checker.
36925
- node.decorators = decorators;
37085
+ node.illegalDecorators = decorators;
36926
37086
  return withJSDoc(finishNode(node, pos), hasJSDoc);
36927
37087
  }
36928
37088
  function parseFunctionDeclaration(pos, hasJSDoc, decorators, modifiers) {
@@ -36942,7 +37102,7 @@ var ts;
36942
37102
  var body = parseFunctionBlockOrSemicolon(isGenerator | isAsync, ts.Diagnostics.or_expected);
36943
37103
  setAwaitContext(savedAwaitContext);
36944
37104
  var node = factory.createFunctionDeclaration(modifiers, asteriskToken, name, typeParameters, parameters, type, body);
36945
- node.decorators = decorators;
37105
+ node.illegalDecorators = decorators;
36946
37106
  return withJSDoc(finishNode(node, pos), hasJSDoc);
36947
37107
  }
36948
37108
  function parseConstructorName() {
@@ -36965,7 +37125,7 @@ var ts;
36965
37125
  var body = parseFunctionBlockOrSemicolon(0 /* None */, ts.Diagnostics.or_expected);
36966
37126
  var node = factory.createConstructorDeclaration(modifiers, parameters, body);
36967
37127
  // Attach invalid nodes if they exist so that we can report them in the grammar checker.
36968
- node.decorators = decorators;
37128
+ node.illegalDecorators = decorators;
36969
37129
  node.typeParameters = typeParameters;
36970
37130
  node.type = type;
36971
37131
  return withJSDoc(finishNode(node, pos), hasJSDoc);
@@ -37081,7 +37241,7 @@ var ts;
37081
37241
  parseExpectedToken(124 /* StaticKeyword */);
37082
37242
  var body = parseClassStaticBlockBody();
37083
37243
  var node = withJSDoc(finishNode(factory.createClassStaticBlockDeclaration(body), pos), hasJSDoc);
37084
- node.decorators = decorators;
37244
+ node.illegalDecorators = decorators;
37085
37245
  node.modifiers = modifiers;
37086
37246
  return node;
37087
37247
  }
@@ -37322,7 +37482,7 @@ var ts;
37322
37482
  var heritageClauses = parseHeritageClauses();
37323
37483
  var members = parseObjectTypeMembers();
37324
37484
  var node = factory.createInterfaceDeclaration(modifiers, name, typeParameters, heritageClauses, members);
37325
- node.decorators = decorators;
37485
+ node.illegalDecorators = decorators;
37326
37486
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37327
37487
  }
37328
37488
  function parseTypeAliasDeclaration(pos, hasJSDoc, decorators, modifiers) {
@@ -37333,7 +37493,7 @@ var ts;
37333
37493
  var type = token() === 138 /* IntrinsicKeyword */ && tryParse(parseKeywordAndNoDot) || parseType();
37334
37494
  parseSemicolon();
37335
37495
  var node = factory.createTypeAliasDeclaration(modifiers, name, typeParameters, type);
37336
- node.decorators = decorators;
37496
+ node.illegalDecorators = decorators;
37337
37497
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37338
37498
  }
37339
37499
  // In an ambient declaration, the grammar only allows integer literals as initializers.
@@ -37359,7 +37519,7 @@ var ts;
37359
37519
  members = createMissingList();
37360
37520
  }
37361
37521
  var node = factory.createEnumDeclaration(modifiers, name, members);
37362
- node.decorators = decorators;
37522
+ node.illegalDecorators = decorators;
37363
37523
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37364
37524
  }
37365
37525
  function parseModuleBlock() {
@@ -37383,7 +37543,7 @@ var ts;
37383
37543
  ? parseModuleOrNamespaceDeclaration(getNodePos(), /*hasJSDoc*/ false, /*decorators*/ undefined, /*modifiers*/ undefined, 4 /* NestedNamespace */ | namespaceFlag)
37384
37544
  : parseModuleBlock();
37385
37545
  var node = factory.createModuleDeclaration(modifiers, name, body, flags);
37386
- node.decorators = decorators;
37546
+ node.illegalDecorators = decorators;
37387
37547
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37388
37548
  }
37389
37549
  function parseAmbientExternalModuleDeclaration(pos, hasJSDoc, decorators, modifiers) {
@@ -37406,7 +37566,7 @@ var ts;
37406
37566
  parseSemicolon();
37407
37567
  }
37408
37568
  var node = factory.createModuleDeclaration(modifiers, name, body, flags);
37409
- node.decorators = decorators;
37569
+ node.illegalDecorators = decorators;
37410
37570
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37411
37571
  }
37412
37572
  function parseModuleDeclaration(pos, hasJSDoc, decorators, modifiers) {
@@ -37446,7 +37606,7 @@ var ts;
37446
37606
  parseSemicolon();
37447
37607
  var node = factory.createNamespaceExportDeclaration(name);
37448
37608
  // NamespaceExportDeclaration nodes cannot have decorators or modifiers, so we attach them here so we can report them in the grammar checker
37449
- node.decorators = decorators;
37609
+ node.illegalDecorators = decorators;
37450
37610
  node.modifiers = modifiers;
37451
37611
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37452
37612
  }
@@ -37486,7 +37646,7 @@ var ts;
37486
37646
  }
37487
37647
  parseSemicolon();
37488
37648
  var node = factory.createImportDeclaration(modifiers, importClause, moduleSpecifier, assertClause);
37489
- node.decorators = decorators;
37649
+ node.illegalDecorators = decorators;
37490
37650
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37491
37651
  }
37492
37652
  function parseAssertEntry() {
@@ -37531,7 +37691,7 @@ var ts;
37531
37691
  var moduleReference = parseModuleReference();
37532
37692
  parseSemicolon();
37533
37693
  var node = factory.createImportEqualsDeclaration(modifiers, isTypeOnly, identifier, moduleReference);
37534
- node.decorators = decorators;
37694
+ node.illegalDecorators = decorators;
37535
37695
  var finished = withJSDoc(finishNode(node, pos), hasJSDoc);
37536
37696
  return finished;
37537
37697
  }
@@ -37721,7 +37881,7 @@ var ts;
37721
37881
  parseSemicolon();
37722
37882
  setAwaitContext(savedAwaitContext);
37723
37883
  var node = factory.createExportDeclaration(modifiers, isTypeOnly, exportClause, moduleSpecifier, assertClause);
37724
- node.decorators = decorators;
37884
+ node.illegalDecorators = decorators;
37725
37885
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37726
37886
  }
37727
37887
  function parseExportAssignment(pos, hasJSDoc, decorators, modifiers) {
@@ -37738,7 +37898,7 @@ var ts;
37738
37898
  parseSemicolon();
37739
37899
  setAwaitContext(savedAwaitContext);
37740
37900
  var node = factory.createExportAssignment(modifiers, isExportEquals, expression);
37741
- node.decorators = decorators;
37901
+ node.illegalDecorators = decorators;
37742
37902
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37743
37903
  }
37744
37904
  var ParsingContext;
@@ -51036,41 +51196,61 @@ var ts;
51036
51196
  return typeof file.externalModuleIndicator !== "object" && !resolveExportByName(moduleSymbol, ts.escapeLeadingUnderscores("__esModule"), /*sourceNode*/ undefined, dontResolveAlias);
51037
51197
  }
51038
51198
  function getTargetOfImportClause(node, dontResolveAlias) {
51039
- var _a;
51040
51199
  var moduleSymbol = resolveExternalModuleName(node, node.parent.moduleSpecifier);
51041
51200
  if (moduleSymbol) {
51042
- var exportDefaultSymbol = void 0;
51043
- if (ts.isShorthandAmbientModuleSymbol(moduleSymbol)) {
51044
- exportDefaultSymbol = moduleSymbol;
51045
- }
51046
- else {
51047
- exportDefaultSymbol = resolveExportByName(moduleSymbol, "default" /* Default */, node, dontResolveAlias);
51048
- }
51049
- var file = (_a = moduleSymbol.declarations) === null || _a === void 0 ? void 0 : _a.find(ts.isSourceFile);
51050
- var hasDefaultOnly = isOnlyImportedAsDefault(node.parent.moduleSpecifier);
51051
- var hasSyntheticDefault = canHaveSyntheticDefault(file, moduleSymbol, dontResolveAlias, node.parent.moduleSpecifier);
51052
- if (!exportDefaultSymbol && !hasSyntheticDefault && !hasDefaultOnly) {
51053
- if (hasExportAssignmentSymbol(moduleSymbol)) {
51054
- var compilerOptionName = moduleKind >= ts.ModuleKind.ES2015 ? "allowSyntheticDefaultImports" : "esModuleInterop";
51055
- var exportEqualsSymbol = moduleSymbol.exports.get("export=" /* ExportEquals */);
51056
- var exportAssignment = exportEqualsSymbol.valueDeclaration;
51057
- var err = error(node.name, ts.Diagnostics.Module_0_can_only_be_default_imported_using_the_1_flag, symbolToString(moduleSymbol), compilerOptionName);
51058
- if (exportAssignment) {
51059
- ts.addRelatedInfo(err, ts.createDiagnosticForNode(exportAssignment, ts.Diagnostics.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag, compilerOptionName));
51060
- }
51061
- }
51062
- else {
51063
- reportNonDefaultExport(moduleSymbol, node);
51201
+ return getTargetofModuleDefault(moduleSymbol, node, dontResolveAlias);
51202
+ }
51203
+ }
51204
+ function getTargetofModuleDefault(moduleSymbol, node, dontResolveAlias) {
51205
+ var _a;
51206
+ var exportDefaultSymbol;
51207
+ if (ts.isShorthandAmbientModuleSymbol(moduleSymbol)) {
51208
+ exportDefaultSymbol = moduleSymbol;
51209
+ }
51210
+ else {
51211
+ exportDefaultSymbol = resolveExportByName(moduleSymbol, "default" /* Default */, node, dontResolveAlias);
51212
+ }
51213
+ var file = (_a = moduleSymbol.declarations) === null || _a === void 0 ? void 0 : _a.find(ts.isSourceFile);
51214
+ var specifier = getModuleSpecifierForImportOrExport(node);
51215
+ if (!specifier) {
51216
+ return exportDefaultSymbol;
51217
+ }
51218
+ var hasDefaultOnly = isOnlyImportedAsDefault(specifier);
51219
+ var hasSyntheticDefault = canHaveSyntheticDefault(file, moduleSymbol, dontResolveAlias, specifier);
51220
+ if (!exportDefaultSymbol && !hasSyntheticDefault && !hasDefaultOnly) {
51221
+ if (hasExportAssignmentSymbol(moduleSymbol)) {
51222
+ var compilerOptionName = moduleKind >= ts.ModuleKind.ES2015 ? "allowSyntheticDefaultImports" : "esModuleInterop";
51223
+ var exportEqualsSymbol = moduleSymbol.exports.get("export=" /* ExportEquals */);
51224
+ var exportAssignment = exportEqualsSymbol.valueDeclaration;
51225
+ var err = error(node.name, ts.Diagnostics.Module_0_can_only_be_default_imported_using_the_1_flag, symbolToString(moduleSymbol), compilerOptionName);
51226
+ if (exportAssignment) {
51227
+ ts.addRelatedInfo(err, ts.createDiagnosticForNode(exportAssignment, ts.Diagnostics.This_module_is_declared_with_export_and_can_only_be_used_with_a_default_import_when_using_the_0_flag, compilerOptionName));
51064
51228
  }
51065
51229
  }
51066
- else if (hasSyntheticDefault || hasDefaultOnly) {
51067
- // per emit behavior, a synthetic default overrides a "real" .default member if `__esModule` is not present
51068
- var resolved = resolveExternalModuleSymbol(moduleSymbol, dontResolveAlias) || resolveSymbol(moduleSymbol, dontResolveAlias);
51069
- markSymbolOfAliasDeclarationIfTypeOnly(node, moduleSymbol, resolved, /*overwriteTypeOnly*/ false);
51070
- return resolved;
51230
+ else if (ts.isImportClause(node)) {
51231
+ reportNonDefaultExport(moduleSymbol, node);
51071
51232
  }
51072
- markSymbolOfAliasDeclarationIfTypeOnly(node, exportDefaultSymbol, /*finalTarget*/ undefined, /*overwriteTypeOnly*/ false);
51073
- return exportDefaultSymbol;
51233
+ else {
51234
+ errorNoModuleMemberSymbol(moduleSymbol, moduleSymbol, node, ts.isImportOrExportSpecifier(node) && node.propertyName || node.name);
51235
+ }
51236
+ }
51237
+ else if (hasSyntheticDefault || hasDefaultOnly) {
51238
+ // per emit behavior, a synthetic default overrides a "real" .default member if `__esModule` is not present
51239
+ var resolved = resolveExternalModuleSymbol(moduleSymbol, dontResolveAlias) || resolveSymbol(moduleSymbol, dontResolveAlias);
51240
+ markSymbolOfAliasDeclarationIfTypeOnly(node, moduleSymbol, resolved, /*overwriteTypeOnly*/ false);
51241
+ return resolved;
51242
+ }
51243
+ markSymbolOfAliasDeclarationIfTypeOnly(node, exportDefaultSymbol, /*finalTarget*/ undefined, /*overwriteTypeOnly*/ false);
51244
+ return exportDefaultSymbol;
51245
+ }
51246
+ function getModuleSpecifierForImportOrExport(node) {
51247
+ switch (node.kind) {
51248
+ case 267 /* ImportClause */: return node.parent.moduleSpecifier;
51249
+ case 265 /* ImportEqualsDeclaration */: return ts.isExternalModuleReference(node.moduleReference) ? node.moduleReference.expression : undefined;
51250
+ case 268 /* NamespaceImport */: return node.parent.parent.moduleSpecifier;
51251
+ case 270 /* ImportSpecifier */: return node.parent.parent.parent.moduleSpecifier;
51252
+ case 275 /* ExportSpecifier */: return node.parent.parent.moduleSpecifier;
51253
+ default: return ts.Debug.assertNever(node);
51074
51254
  }
51075
51255
  }
51076
51256
  function reportNonDefaultExport(moduleSymbol, node) {
@@ -51160,7 +51340,7 @@ var ts;
51160
51340
  }
51161
51341
  }
51162
51342
  function getExternalModuleMember(node, specifier, dontResolveAlias) {
51163
- var _a, _b;
51343
+ var _a;
51164
51344
  if (dontResolveAlias === void 0) { dontResolveAlias = false; }
51165
51345
  var moduleSpecifier = ts.getExternalModuleRequireArgument(node) || node.moduleSpecifier;
51166
51346
  var moduleSymbol = resolveExternalModuleName(node, moduleSpecifier); // TODO: GH#18217
@@ -51196,29 +51376,33 @@ var ts;
51196
51376
  combineValueAndTypeSymbols(symbolFromVariable, symbolFromModule) :
51197
51377
  symbolFromModule || symbolFromVariable;
51198
51378
  if (!symbol) {
51199
- var moduleName = getFullyQualifiedName(moduleSymbol, node);
51200
- var declarationName = ts.declarationNameToString(name);
51201
- var suggestion = getSuggestedSymbolForNonexistentModule(name, targetSymbol);
51202
- if (suggestion !== undefined) {
51203
- var suggestionName = symbolToString(suggestion);
51204
- var diagnostic = error(name, ts.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2, moduleName, declarationName, suggestionName);
51205
- if (suggestion.valueDeclaration) {
51206
- ts.addRelatedInfo(diagnostic, ts.createDiagnosticForNode(suggestion.valueDeclaration, ts.Diagnostics._0_is_declared_here, suggestionName));
51207
- }
51208
- }
51209
- else {
51210
- if ((_b = moduleSymbol.exports) === null || _b === void 0 ? void 0 : _b.has("default" /* Default */)) {
51211
- error(name, ts.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead, moduleName, declarationName);
51212
- }
51213
- else {
51214
- reportNonExportedMember(node, name, declarationName, moduleSymbol, moduleName);
51215
- }
51216
- }
51379
+ errorNoModuleMemberSymbol(moduleSymbol, targetSymbol, node, name);
51217
51380
  }
51218
51381
  return symbol;
51219
51382
  }
51220
51383
  }
51221
51384
  }
51385
+ function errorNoModuleMemberSymbol(moduleSymbol, targetSymbol, node, name) {
51386
+ var _a;
51387
+ var moduleName = getFullyQualifiedName(moduleSymbol, node);
51388
+ var declarationName = ts.declarationNameToString(name);
51389
+ var suggestion = getSuggestedSymbolForNonexistentModule(name, targetSymbol);
51390
+ if (suggestion !== undefined) {
51391
+ var suggestionName = symbolToString(suggestion);
51392
+ var diagnostic = error(name, ts.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2, moduleName, declarationName, suggestionName);
51393
+ if (suggestion.valueDeclaration) {
51394
+ ts.addRelatedInfo(diagnostic, ts.createDiagnosticForNode(suggestion.valueDeclaration, ts.Diagnostics._0_is_declared_here, suggestionName));
51395
+ }
51396
+ }
51397
+ else {
51398
+ if ((_a = moduleSymbol.exports) === null || _a === void 0 ? void 0 : _a.has("default" /* Default */)) {
51399
+ error(name, ts.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead, moduleName, declarationName);
51400
+ }
51401
+ else {
51402
+ reportNonExportedMember(node, name, declarationName, moduleSymbol, moduleName);
51403
+ }
51404
+ }
51405
+ }
51222
51406
  function reportNonExportedMember(node, name, declarationName, moduleSymbol, moduleName) {
51223
51407
  var _a, _b;
51224
51408
  var localSymbol = (_b = (_a = moduleSymbol.valueDeclaration) === null || _a === void 0 ? void 0 : _a.locals) === null || _b === void 0 ? void 0 : _b.get(name.escapedText);
@@ -51264,6 +51448,13 @@ var ts;
51264
51448
  }
51265
51449
  }
51266
51450
  function getTargetOfImportSpecifier(node, dontResolveAlias) {
51451
+ if (ts.isImportSpecifier(node) && ts.idText(node.propertyName || node.name) === "default" /* Default */) {
51452
+ var specifier = getModuleSpecifierForImportOrExport(node);
51453
+ var moduleSymbol = specifier && resolveExternalModuleName(node, specifier);
51454
+ if (moduleSymbol) {
51455
+ return getTargetofModuleDefault(moduleSymbol, node, dontResolveAlias);
51456
+ }
51457
+ }
51267
51458
  var root = ts.isBindingElement(node) ? ts.getRootDeclaration(node) : node.parent.parent.parent;
51268
51459
  var commonJSPropertyAccess = getCommonJSPropertyAccess(root);
51269
51460
  var resolved = getExternalModuleMember(root, commonJSPropertyAccess || node, dontResolveAlias);
@@ -51285,6 +51476,13 @@ var ts;
51285
51476
  return resolved;
51286
51477
  }
51287
51478
  function getTargetOfExportSpecifier(node, meaning, dontResolveAlias) {
51479
+ if (ts.idText(node.propertyName || node.name) === "default" /* Default */) {
51480
+ var specifier = getModuleSpecifierForImportOrExport(node);
51481
+ var moduleSymbol = specifier && resolveExternalModuleName(node, specifier);
51482
+ if (moduleSymbol) {
51483
+ return getTargetofModuleDefault(moduleSymbol, node, !!dontResolveAlias);
51484
+ }
51485
+ }
51288
51486
  var resolved = node.parent.parent.moduleSpecifier ?
51289
51487
  getExternalModuleMember(node.parent.parent, node, dontResolveAlias) :
51290
51488
  resolveEntityName(node.propertyName || node.name, meaning, /*ignoreErrors*/ false, dontResolveAlias);
@@ -55733,7 +55931,7 @@ var ts;
55733
55931
  // This is an else/if as accessors and properties can't merge in TS, but might in JS
55734
55932
  // If this happens, we assume the accessor takes priority, as it imposes more constraints
55735
55933
  else if (p.flags & (4 /* Property */ | 3 /* Variable */ | 98304 /* Accessor */)) {
55736
- return ts.setTextRange(createProperty(ts.factory.createModifiersFromModifierFlags((isReadonlySymbol(p) ? 64 /* Readonly */ : 0) | flag), name, p.flags & 16777216 /* Optional */ ? ts.factory.createToken(57 /* QuestionToken */) : undefined, isPrivate ? undefined : serializeTypeForDeclaration(context, getTypeOfSymbol(p), p, enclosingDeclaration, includePrivateSymbol, bundled),
55934
+ return ts.setTextRange(createProperty(ts.factory.createModifiersFromModifierFlags((isReadonlySymbol(p) ? 64 /* Readonly */ : 0) | flag), name, p.flags & 16777216 /* Optional */ ? ts.factory.createToken(57 /* QuestionToken */) : undefined, isPrivate ? undefined : serializeTypeForDeclaration(context, getWriteTypeOfSymbol(p), p, enclosingDeclaration, includePrivateSymbol, bundled),
55737
55935
  // TODO: https://github.com/microsoft/TypeScript/pull/32372#discussion_r328386357
55738
55936
  // interface members can't have initializers, however class members _can_
55739
55937
  /*initializer*/ undefined), ((_d = p.declarations) === null || _d === void 0 ? void 0 : _d.find(ts.or(ts.isPropertyDeclaration, ts.isVariableDeclaration))) || firstPropertyLikeDecl);
@@ -88757,7 +88955,7 @@ var ts;
88757
88955
  return checkGrammarDecorators(node) || checkGrammarModifiers(node);
88758
88956
  }
88759
88957
  function checkGrammarDecorators(node) {
88760
- if (ts.canHaveIllegalDecorators(node) && ts.some(node.decorators)) {
88958
+ if (ts.canHaveIllegalDecorators(node) && ts.some(node.illegalDecorators)) {
88761
88959
  return grammarErrorOnFirstToken(node, ts.Diagnostics.Decorators_are_not_valid_here);
88762
88960
  }
88763
88961
  if (!ts.canHaveDecorators(node) || !ts.hasDecorators(node)) {
@@ -171619,9 +171817,9 @@ var ts;
171619
171817
  // - error: 5.0
171620
171818
  var ts;
171621
171819
  (function (ts) {
171622
- var MUST_MERGE = { since: "4.8", warnAfter: "4.9.0-0", message: "Decorators have been combined with modifiers. Callers should switch to an overload without a 'decorators' parameter." };
171623
- var DISALLOW_DECORATORS = { since: "4.8", warnAfter: "4.9.0-0", message: "Decorators are no longer supported for this function. Callers should switch to an overload without a 'decorators' parameter." };
171624
- var DISALLOW_DECORATORS_AND_MODIFIERS = { since: "4.8", warnAfter: "4.9.0-0", message: "Decorators and modifiers are no longer supported for this function. Callers should switch to an overload without the 'decorators' or 'modifiers' parameters." };
171820
+ var MUST_MERGE = { since: "4.8", warnAfter: "4.9.0-0", message: "Decorators have been combined with modifiers. Callers should switch to an overload that does not accept a 'decorators' parameter." };
171821
+ var DISALLOW_DECORATORS = { since: "4.8", warnAfter: "4.9.0-0", message: "Decorators are no longer supported for this function. Callers should switch to an overload that does not accept a 'decorators' parameter." };
171822
+ var DISALLOW_DECORATORS_AND_MODIFIERS = { since: "4.8", warnAfter: "4.9.0-0", message: "Decorators and modifiers are no longer supported for this function. Callers should switch to an overload that does not accept the 'decorators' and 'modifiers' parameters." };
171625
171823
  function patchNodeFactory(factory) {
171626
171824
  var createParameterDeclaration = factory.createParameterDeclaration, updateParameterDeclaration = factory.updateParameterDeclaration, createPropertyDeclaration = factory.createPropertyDeclaration, updatePropertyDeclaration = factory.updatePropertyDeclaration, createMethodDeclaration = factory.createMethodDeclaration, updateMethodDeclaration = factory.updateMethodDeclaration, createConstructorDeclaration = factory.createConstructorDeclaration, updateConstructorDeclaration = factory.updateConstructorDeclaration, createGetAccessorDeclaration = factory.createGetAccessorDeclaration, updateGetAccessorDeclaration = factory.updateGetAccessorDeclaration, createSetAccessorDeclaration = factory.createSetAccessorDeclaration, updateSetAccessorDeclaration = factory.updateSetAccessorDeclaration, createIndexSignature = factory.createIndexSignature, updateIndexSignature = factory.updateIndexSignature, createClassStaticBlockDeclaration = factory.createClassStaticBlockDeclaration, updateClassStaticBlockDeclaration = factory.updateClassStaticBlockDeclaration, createClassExpression = factory.createClassExpression, updateClassExpression = factory.updateClassExpression, createFunctionDeclaration = factory.createFunctionDeclaration, updateFunctionDeclaration = factory.updateFunctionDeclaration, createClassDeclaration = factory.createClassDeclaration, updateClassDeclaration = factory.updateClassDeclaration, createInterfaceDeclaration = factory.createInterfaceDeclaration, updateInterfaceDeclaration = factory.updateInterfaceDeclaration, createTypeAliasDeclaration = factory.createTypeAliasDeclaration, updateTypeAliasDeclaration = factory.updateTypeAliasDeclaration, createEnumDeclaration = factory.createEnumDeclaration, updateEnumDeclaration = factory.updateEnumDeclaration, createModuleDeclaration = factory.createModuleDeclaration, updateModuleDeclaration = factory.updateModuleDeclaration, createImportEqualsDeclaration = factory.createImportEqualsDeclaration, updateImportEqualsDeclaration = factory.updateImportEqualsDeclaration, createImportDeclaration = factory.createImportDeclaration, updateImportDeclaration = factory.updateImportDeclaration, createExportAssignment = factory.createExportAssignment, updateExportAssignment = factory.updateExportAssignment, createExportDeclaration = factory.createExportDeclaration, updateExportDeclaration = factory.updateExportDeclaration;
171627
171825
  factory.createParameterDeclaration = ts.buildOverload("createParameterDeclaration")
@@ -171848,7 +172046,7 @@ var ts;
171848
172046
  return (decorators === undefined || !ts.some(decorators, ts.isModifier)) &&
171849
172047
  (modifiers === undefined || !ts.some(modifiers, ts.isParameter)) &&
171850
172048
  (parameters === undefined || ts.isArray(parameters)) &&
171851
- (body === undefined || !ts.isBlock(body));
172049
+ (body === undefined || ts.isBlock(body));
171852
172050
  },
171853
172051
  })
171854
172052
  .deprecate({
@@ -171877,7 +172075,7 @@ var ts;
171877
172075
  return (decorators === undefined || !ts.some(decorators, ts.isModifier)) &&
171878
172076
  (modifiers === undefined || !ts.some(modifiers, ts.isParameter)) &&
171879
172077
  (parameters === undefined || ts.isArray(parameters)) &&
171880
- (body === undefined || !ts.isBlock(body));
172078
+ (body === undefined || ts.isBlock(body));
171881
172079
  },
171882
172080
  })
171883
172081
  .deprecate({