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/tsserver.js CHANGED
@@ -109,7 +109,7 @@ var ts;
109
109
  // The following is baselined as a literal template type without intervention
110
110
  /** The version of the TypeScript compiler release */
111
111
  // eslint-disable-next-line @typescript-eslint/no-inferrable-types
112
- ts.version = ts.versionMajorMinor + ".0-dev.20220819";
112
+ ts.version = ts.versionMajorMinor + ".0-dev.20220822";
113
113
  /* @internal */
114
114
  var Comparison;
115
115
  (function (Comparison) {
@@ -2498,6 +2498,7 @@ var ts;
2498
2498
  var currentAssertionLevel = 0 /* None */;
2499
2499
  Debug.currentLogLevel = LogLevel.Warning;
2500
2500
  Debug.isDebugging = false;
2501
+ Debug.enableDeprecationWarnings = true;
2501
2502
  function getTypeScriptVersion() {
2502
2503
  return typeScriptVersion !== null && typeScriptVersion !== void 0 ? typeScriptVersion : (typeScriptVersion = new ts.Version(ts.version));
2503
2504
  }
@@ -3121,7 +3122,7 @@ var ts;
3121
3122
  function createWarningDeprecation(name, errorAfter, since, message) {
3122
3123
  var hasWrittenDeprecation = false;
3123
3124
  return function () {
3124
- if (!hasWrittenDeprecation) {
3125
+ if (Debug.enableDeprecationWarnings && !hasWrittenDeprecation) {
3125
3126
  log.warn(formatDeprecationMessage(name, /*error*/ false, errorAfter, since, message));
3126
3127
  hasWrittenDeprecation = true;
3127
3128
  }
@@ -21400,7 +21401,7 @@ var ts;
21400
21401
  case 165 /* Decorator */: {
21401
21402
  var parent_2 = node.parent;
21402
21403
  return ts.canHaveDecorators(parent_2) ? parent_2.modifiers :
21403
- ts.canHaveIllegalDecorators(parent_2) ? parent_2.decorators :
21404
+ ts.canHaveIllegalDecorators(parent_2) ? parent_2.illegalDecorators :
21404
21405
  undefined;
21405
21406
  }
21406
21407
  case 291 /* HeritageClause */:
@@ -23477,7 +23478,7 @@ var ts;
23477
23478
  node.body = body;
23478
23479
  node.transformFlags = propagateChildFlags(body) | 16777216 /* ContainsClassFields */;
23479
23480
  // The following properties are used only to report grammar errors
23480
- node.decorators = undefined;
23481
+ node.illegalDecorators = undefined;
23481
23482
  node.modifiers = undefined;
23482
23483
  return node;
23483
23484
  }
@@ -23489,7 +23490,7 @@ var ts;
23489
23490
  }
23490
23491
  function finishUpdateClassStaticBlockDeclaration(updated, original) {
23491
23492
  if (updated !== original) {
23492
- updated.decorators = original.decorators;
23493
+ updated.illegalDecorators = original.illegalDecorators;
23493
23494
  updated.modifiers = original.modifiers;
23494
23495
  }
23495
23496
  return update(updated, original);
@@ -23502,7 +23503,7 @@ var ts;
23502
23503
  /*type*/ undefined, body);
23503
23504
  node.transformFlags |= 1024 /* ContainsES2015 */;
23504
23505
  // The following properties are used only to report grammar errors
23505
- node.decorators = undefined;
23506
+ node.illegalDecorators = undefined;
23506
23507
  node.typeParameters = undefined;
23507
23508
  node.type = undefined;
23508
23509
  return node;
@@ -23517,7 +23518,7 @@ var ts;
23517
23518
  }
23518
23519
  function finishUpdateConstructorDeclaration(updated, original) {
23519
23520
  if (updated !== original) {
23520
- updated.decorators = original.decorators;
23521
+ updated.illegalDecorators = original.illegalDecorators;
23521
23522
  updated.typeParameters = original.typeParameters;
23522
23523
  updated.type = original.type;
23523
23524
  }
@@ -25265,7 +25266,7 @@ var ts;
25265
25266
  }
25266
25267
  }
25267
25268
  // The following properties are used only to report grammar errors
25268
- node.decorators = undefined;
25269
+ node.illegalDecorators = undefined;
25269
25270
  return node;
25270
25271
  }
25271
25272
  // @api
@@ -25283,7 +25284,7 @@ var ts;
25283
25284
  function finishUpdateFunctionDeclaration(updated, original) {
25284
25285
  if (updated !== original) {
25285
25286
  // copy children used only for error reporting
25286
- updated.decorators = original.decorators;
25287
+ updated.illegalDecorators = original.illegalDecorators;
25287
25288
  }
25288
25289
  return finishUpdateBaseSignatureDeclaration(updated, original);
25289
25290
  }
@@ -25317,7 +25318,7 @@ var ts;
25317
25318
  node.members = createNodeArray(members);
25318
25319
  node.transformFlags = 1 /* ContainsTypeScript */;
25319
25320
  // The following properties are used only to report grammar errors
25320
- node.decorators = undefined;
25321
+ node.illegalDecorators = undefined;
25321
25322
  return node;
25322
25323
  }
25323
25324
  // @api
@@ -25332,7 +25333,7 @@ var ts;
25332
25333
  }
25333
25334
  function finishUpdateInterfaceDeclaration(updated, original) {
25334
25335
  if (updated !== original) {
25335
- updated.decorators = original.decorators;
25336
+ updated.illegalDecorators = original.illegalDecorators;
25336
25337
  }
25337
25338
  return update(updated, original);
25338
25339
  }
@@ -25342,7 +25343,7 @@ var ts;
25342
25343
  node.type = type;
25343
25344
  node.transformFlags = 1 /* ContainsTypeScript */;
25344
25345
  // The following properties are used only to report grammar errors
25345
- node.decorators = undefined;
25346
+ node.illegalDecorators = undefined;
25346
25347
  return node;
25347
25348
  }
25348
25349
  // @api
@@ -25356,7 +25357,7 @@ var ts;
25356
25357
  }
25357
25358
  function finishUpdateTypeAliasDeclaration(updated, original) {
25358
25359
  if (updated !== original) {
25359
- updated.decorators = original.decorators;
25360
+ updated.illegalDecorators = original.illegalDecorators;
25360
25361
  }
25361
25362
  return update(updated, original);
25362
25363
  }
@@ -25369,7 +25370,7 @@ var ts;
25369
25370
  1 /* ContainsTypeScript */;
25370
25371
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // Enum declarations cannot contain `await`
25371
25372
  // The following properties are used only to report grammar errors
25372
- node.decorators = undefined;
25373
+ node.illegalDecorators = undefined;
25373
25374
  return node;
25374
25375
  }
25375
25376
  // @api
@@ -25382,7 +25383,7 @@ var ts;
25382
25383
  }
25383
25384
  function finishUpdateEnumDeclaration(updated, original) {
25384
25385
  if (updated !== original) {
25385
- updated.decorators = original.decorators;
25386
+ updated.illegalDecorators = original.illegalDecorators;
25386
25387
  }
25387
25388
  return update(updated, original);
25388
25389
  }
@@ -25406,7 +25407,7 @@ var ts;
25406
25407
  }
25407
25408
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // Module declarations cannot contain `await`.
25408
25409
  // The following properties are used only to report grammar errors
25409
- node.decorators = undefined;
25410
+ node.illegalDecorators = undefined;
25410
25411
  return node;
25411
25412
  }
25412
25413
  // @api
@@ -25419,7 +25420,7 @@ var ts;
25419
25420
  }
25420
25421
  function finishUpdateModuleDeclaration(updated, original) {
25421
25422
  if (updated !== original) {
25422
- updated.decorators = original.decorators;
25423
+ updated.illegalDecorators = original.illegalDecorators;
25423
25424
  }
25424
25425
  return update(updated, original);
25425
25426
  }
@@ -25455,7 +25456,7 @@ var ts;
25455
25456
  /*modifiers*/ undefined, name);
25456
25457
  node.transformFlags = 1 /* ContainsTypeScript */;
25457
25458
  // The following properties are used only to report grammar errors
25458
- node.decorators = undefined;
25459
+ node.illegalDecorators = undefined;
25459
25460
  node.modifiers = undefined;
25460
25461
  return node;
25461
25462
  }
@@ -25467,7 +25468,7 @@ var ts;
25467
25468
  }
25468
25469
  function finishUpdateNamespaceExportDeclaration(updated, original) {
25469
25470
  if (updated !== original) {
25470
- updated.decorators = original.decorators;
25471
+ updated.illegalDecorators = original.illegalDecorators;
25471
25472
  updated.modifiers = original.modifiers;
25472
25473
  }
25473
25474
  return update(updated, original);
@@ -25482,7 +25483,7 @@ var ts;
25482
25483
  node.transformFlags |= 1 /* ContainsTypeScript */;
25483
25484
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // Import= declaration is always parsed in an Await context
25484
25485
  // The following properties are used only to report grammar errors
25485
- node.decorators = undefined;
25486
+ node.illegalDecorators = undefined;
25486
25487
  return node;
25487
25488
  }
25488
25489
  // @api
@@ -25496,7 +25497,7 @@ var ts;
25496
25497
  }
25497
25498
  function finishUpdateImportEqualsDeclaration(updated, original) {
25498
25499
  if (updated !== original) {
25499
- updated.decorators = original.decorators;
25500
+ updated.illegalDecorators = original.illegalDecorators;
25500
25501
  }
25501
25502
  return update(updated, original);
25502
25503
  }
@@ -25512,7 +25513,7 @@ var ts;
25512
25513
  propagateChildFlags(node.moduleSpecifier);
25513
25514
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // always parsed in an Await context
25514
25515
  // The following properties are used only to report grammar errors
25515
- node.decorators = undefined;
25516
+ node.illegalDecorators = undefined;
25516
25517
  return node;
25517
25518
  }
25518
25519
  // @api
@@ -25526,7 +25527,7 @@ var ts;
25526
25527
  }
25527
25528
  function finishUpdateImportDeclaration(updated, original) {
25528
25529
  if (updated !== original) {
25529
- updated.decorators = original.decorators;
25530
+ updated.illegalDecorators = original.illegalDecorators;
25530
25531
  }
25531
25532
  return update(updated, original);
25532
25533
  }
@@ -25672,7 +25673,7 @@ var ts;
25672
25673
  node.transformFlags |= propagateChildrenFlags(node.modifiers) | propagateChildFlags(node.expression);
25673
25674
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // always parsed in an Await context
25674
25675
  // The following properties are used only to report grammar errors
25675
- node.decorators = undefined;
25676
+ node.illegalDecorators = undefined;
25676
25677
  return node;
25677
25678
  }
25678
25679
  // @api
@@ -25684,7 +25685,7 @@ var ts;
25684
25685
  }
25685
25686
  function finishUpdateExportAssignment(updated, original) {
25686
25687
  if (updated !== original) {
25687
- updated.decorators = original.decorators;
25688
+ updated.illegalDecorators = original.illegalDecorators;
25688
25689
  }
25689
25690
  return update(updated, original);
25690
25691
  }
@@ -25702,7 +25703,7 @@ var ts;
25702
25703
  propagateChildFlags(node.moduleSpecifier);
25703
25704
  node.transformFlags &= ~67108864 /* ContainsPossibleTopLevelAwait */; // always parsed in an Await context
25704
25705
  // The following properties are used only to report grammar errors
25705
- node.decorators = undefined;
25706
+ node.illegalDecorators = undefined;
25706
25707
  return node;
25707
25708
  }
25708
25709
  // @api
@@ -25717,7 +25718,7 @@ var ts;
25717
25718
  }
25718
25719
  function finishUpdateExportDeclaration(updated, original) {
25719
25720
  if (updated !== original) {
25720
- updated.decorators = original.decorators;
25721
+ updated.illegalDecorators = original.illegalDecorators;
25721
25722
  }
25722
25723
  return update(updated, original);
25723
25724
  }
@@ -26481,7 +26482,7 @@ var ts;
26481
26482
  propagateChildFlags(node.name) |
26482
26483
  propagateChildFlags(node.initializer);
26483
26484
  // The following properties are used only to report grammar errors
26484
- node.decorators = undefined;
26485
+ node.illegalDecorators = undefined;
26485
26486
  node.modifiers = undefined;
26486
26487
  node.questionToken = undefined;
26487
26488
  node.exclamationToken = undefined;
@@ -26497,7 +26498,7 @@ var ts;
26497
26498
  function finishUpdatePropertyAssignment(updated, original) {
26498
26499
  // copy children used only for error reporting
26499
26500
  if (updated !== original) {
26500
- updated.decorators = original.decorators;
26501
+ updated.illegalDecorators = original.illegalDecorators;
26501
26502
  updated.modifiers = original.modifiers;
26502
26503
  updated.questionToken = original.questionToken;
26503
26504
  updated.exclamationToken = original.exclamationToken;
@@ -26514,7 +26515,7 @@ var ts;
26514
26515
  1024 /* ContainsES2015 */;
26515
26516
  // The following properties are used only to report grammar errors
26516
26517
  node.equalsToken = undefined;
26517
- node.decorators = undefined;
26518
+ node.illegalDecorators = undefined;
26518
26519
  node.modifiers = undefined;
26519
26520
  node.questionToken = undefined;
26520
26521
  node.exclamationToken = undefined;
@@ -26531,7 +26532,7 @@ var ts;
26531
26532
  if (updated !== original) {
26532
26533
  // copy children used only for error reporting
26533
26534
  updated.equalsToken = original.equalsToken;
26534
- updated.decorators = original.decorators;
26535
+ updated.illegalDecorators = original.illegalDecorators;
26535
26536
  updated.modifiers = original.modifiers;
26536
26537
  updated.questionToken = original.questionToken;
26537
26538
  updated.exclamationToken = original.exclamationToken;
@@ -30895,6 +30896,7 @@ var ts;
30895
30896
  })(ts || (ts = {}));
30896
30897
  var ts;
30897
30898
  (function (ts) {
30899
+ var _a;
30898
30900
  var SignatureFlags;
30899
30901
  (function (SignatureFlags) {
30900
30902
  SignatureFlags[SignatureFlags["None"] = 0] = "None";
@@ -30982,6 +30984,715 @@ var ts;
30982
30984
  function isImportMeta(node) {
30983
30985
  return ts.isMetaProperty(node) && node.keywordToken === 100 /* ImportKeyword */ && node.name.escapedText === "meta";
30984
30986
  }
30987
+ var forEachChildTable = (_a = {},
30988
+ _a[161 /* QualifiedName */] = function forEachChildInQualifiedName(node, cbNode, _cbNodes) {
30989
+ return visitNode(cbNode, node.left) ||
30990
+ visitNode(cbNode, node.right);
30991
+ },
30992
+ _a[163 /* TypeParameter */] = function forEachChildInTypeParameter(node, cbNode, cbNodes) {
30993
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
30994
+ visitNode(cbNode, node.name) ||
30995
+ visitNode(cbNode, node.constraint) ||
30996
+ visitNode(cbNode, node.default) ||
30997
+ visitNode(cbNode, node.expression);
30998
+ },
30999
+ _a[297 /* ShorthandPropertyAssignment */] = function forEachChildInShorthandPropertyAssignment(node, cbNode, cbNodes) {
31000
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31001
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31002
+ visitNode(cbNode, node.name) ||
31003
+ visitNode(cbNode, node.questionToken) ||
31004
+ visitNode(cbNode, node.exclamationToken) ||
31005
+ visitNode(cbNode, node.equalsToken) ||
31006
+ visitNode(cbNode, node.objectAssignmentInitializer);
31007
+ },
31008
+ _a[298 /* SpreadAssignment */] = function forEachChildInSpreadAssignment(node, cbNode, _cbNodes) {
31009
+ return visitNode(cbNode, node.expression);
31010
+ },
31011
+ _a[164 /* Parameter */] = function forEachChildInParameter(node, cbNode, cbNodes) {
31012
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31013
+ visitNode(cbNode, node.dotDotDotToken) ||
31014
+ visitNode(cbNode, node.name) ||
31015
+ visitNode(cbNode, node.questionToken) ||
31016
+ visitNode(cbNode, node.type) ||
31017
+ visitNode(cbNode, node.initializer);
31018
+ },
31019
+ _a[167 /* PropertyDeclaration */] = function forEachChildInPropertyDeclaration(node, cbNode, cbNodes) {
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
+ },
31027
+ _a[166 /* PropertySignature */] = function forEachChildInPropertySignature(node, cbNode, cbNodes) {
31028
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31029
+ visitNode(cbNode, node.name) ||
31030
+ visitNode(cbNode, node.questionToken) ||
31031
+ visitNode(cbNode, node.type) ||
31032
+ visitNode(cbNode, node.initializer);
31033
+ },
31034
+ _a[296 /* PropertyAssignment */] = function forEachChildInPropertyAssignment(node, cbNode, cbNodes) {
31035
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31036
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31037
+ visitNode(cbNode, node.name) ||
31038
+ visitNode(cbNode, node.questionToken) ||
31039
+ visitNode(cbNode, node.exclamationToken) ||
31040
+ visitNode(cbNode, node.initializer);
31041
+ },
31042
+ _a[254 /* VariableDeclaration */] = function forEachChildInVariableDeclaration(node, cbNode, _cbNodes) {
31043
+ return visitNode(cbNode, node.name) ||
31044
+ visitNode(cbNode, node.exclamationToken) ||
31045
+ visitNode(cbNode, node.type) ||
31046
+ visitNode(cbNode, node.initializer);
31047
+ },
31048
+ _a[203 /* BindingElement */] = function forEachChildInBindingElement(node, cbNode, _cbNodes) {
31049
+ return visitNode(cbNode, node.dotDotDotToken) ||
31050
+ visitNode(cbNode, node.propertyName) ||
31051
+ visitNode(cbNode, node.name) ||
31052
+ visitNode(cbNode, node.initializer);
31053
+ },
31054
+ _a[176 /* IndexSignature */] = function forEachChildInIndexSignature(node, cbNode, cbNodes) {
31055
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31056
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31057
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31058
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31059
+ visitNode(cbNode, node.type);
31060
+ },
31061
+ _a[180 /* ConstructorType */] = function forEachChildInConstructorType(node, cbNode, cbNodes) {
31062
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31063
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31064
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31065
+ visitNode(cbNode, node.type);
31066
+ },
31067
+ _a[179 /* FunctionType */] = function forEachChildInFunctionType(node, cbNode, cbNodes) {
31068
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31069
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31070
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31071
+ visitNode(cbNode, node.type);
31072
+ },
31073
+ _a[174 /* CallSignature */] = forEachChildInCallOrConstructSignature,
31074
+ _a[175 /* ConstructSignature */] = forEachChildInCallOrConstructSignature,
31075
+ _a[169 /* MethodDeclaration */] = function forEachChildInMethodDeclaration(node, cbNode, cbNodes) {
31076
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31077
+ visitNode(cbNode, node.asteriskToken) ||
31078
+ visitNode(cbNode, node.name) ||
31079
+ visitNode(cbNode, node.questionToken) ||
31080
+ visitNode(cbNode, node.exclamationToken) ||
31081
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31082
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31083
+ visitNode(cbNode, node.type) ||
31084
+ visitNode(cbNode, node.body);
31085
+ },
31086
+ _a[168 /* MethodSignature */] = function forEachChildInMethodSignature(node, cbNode, cbNodes) {
31087
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31088
+ visitNode(cbNode, node.name) ||
31089
+ visitNode(cbNode, node.questionToken) ||
31090
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31091
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31092
+ visitNode(cbNode, node.type);
31093
+ },
31094
+ _a[171 /* Constructor */] = function forEachChildInConstructor(node, cbNode, cbNodes) {
31095
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31096
+ 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
+ },
31103
+ _a[172 /* GetAccessor */] = function forEachChildInGetAccessor(node, cbNode, cbNodes) {
31104
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31105
+ visitNode(cbNode, node.name) ||
31106
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31107
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31108
+ visitNode(cbNode, node.type) ||
31109
+ visitNode(cbNode, node.body);
31110
+ },
31111
+ _a[173 /* SetAccessor */] = function forEachChildInSetAccessor(node, cbNode, cbNodes) {
31112
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
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[256 /* FunctionDeclaration */] = function forEachChildInFunctionDeclaration(node, cbNode, cbNodes) {
31120
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31121
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31122
+ visitNode(cbNode, node.asteriskToken) ||
31123
+ visitNode(cbNode, node.name) ||
31124
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31125
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31126
+ visitNode(cbNode, node.type) ||
31127
+ visitNode(cbNode, node.body);
31128
+ },
31129
+ _a[213 /* FunctionExpression */] = function forEachChildInFunctionExpression(node, cbNode, cbNodes) {
31130
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31131
+ visitNode(cbNode, node.asteriskToken) ||
31132
+ visitNode(cbNode, node.name) ||
31133
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31134
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31135
+ visitNode(cbNode, node.type) ||
31136
+ visitNode(cbNode, node.body);
31137
+ },
31138
+ _a[214 /* ArrowFunction */] = function forEachChildInArrowFunction(node, cbNode, cbNodes) {
31139
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31140
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31141
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31142
+ visitNode(cbNode, node.type) ||
31143
+ visitNode(cbNode, node.equalsGreaterThanToken) ||
31144
+ visitNode(cbNode, node.body);
31145
+ },
31146
+ _a[170 /* ClassStaticBlockDeclaration */] = function forEachChildInClassStaticBlockDeclaration(node, cbNode, cbNodes) {
31147
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31148
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31149
+ visitNode(cbNode, node.body);
31150
+ },
31151
+ _a[178 /* TypeReference */] = function forEachChildInTypeReference(node, cbNode, cbNodes) {
31152
+ return visitNode(cbNode, node.typeName) ||
31153
+ visitNodes(cbNode, cbNodes, node.typeArguments);
31154
+ },
31155
+ _a[177 /* TypePredicate */] = function forEachChildInTypePredicate(node, cbNode, _cbNodes) {
31156
+ return visitNode(cbNode, node.assertsModifier) ||
31157
+ visitNode(cbNode, node.parameterName) ||
31158
+ visitNode(cbNode, node.type);
31159
+ },
31160
+ _a[181 /* TypeQuery */] = function forEachChildInTypeQuery(node, cbNode, cbNodes) {
31161
+ return visitNode(cbNode, node.exprName) ||
31162
+ visitNodes(cbNode, cbNodes, node.typeArguments);
31163
+ },
31164
+ _a[182 /* TypeLiteral */] = function forEachChildInTypeLiteral(node, cbNode, cbNodes) {
31165
+ return visitNodes(cbNode, cbNodes, node.members);
31166
+ },
31167
+ _a[183 /* ArrayType */] = function forEachChildInArrayType(node, cbNode, _cbNodes) {
31168
+ return visitNode(cbNode, node.elementType);
31169
+ },
31170
+ _a[184 /* TupleType */] = function forEachChildInTupleType(node, cbNode, cbNodes) {
31171
+ return visitNodes(cbNode, cbNodes, node.elements);
31172
+ },
31173
+ _a[187 /* UnionType */] = forEachChildInUnionOrIntersectionType,
31174
+ _a[188 /* IntersectionType */] = forEachChildInUnionOrIntersectionType,
31175
+ _a[189 /* ConditionalType */] = function forEachChildInConditionalType(node, cbNode, _cbNodes) {
31176
+ return visitNode(cbNode, node.checkType) ||
31177
+ visitNode(cbNode, node.extendsType) ||
31178
+ visitNode(cbNode, node.trueType) ||
31179
+ visitNode(cbNode, node.falseType);
31180
+ },
31181
+ _a[190 /* InferType */] = function forEachChildInInferType(node, cbNode, _cbNodes) {
31182
+ return visitNode(cbNode, node.typeParameter);
31183
+ },
31184
+ _a[200 /* ImportType */] = function forEachChildInImportType(node, cbNode, cbNodes) {
31185
+ return visitNode(cbNode, node.argument) ||
31186
+ visitNode(cbNode, node.assertions) ||
31187
+ visitNode(cbNode, node.qualifier) ||
31188
+ visitNodes(cbNode, cbNodes, node.typeArguments);
31189
+ },
31190
+ _a[295 /* ImportTypeAssertionContainer */] = function forEachChildInImportTypeAssertionContainer(node, cbNode, _cbNodes) {
31191
+ return visitNode(cbNode, node.assertClause);
31192
+ },
31193
+ _a[191 /* ParenthesizedType */] = forEachChildInParenthesizedTypeOrTypeOperator,
31194
+ _a[193 /* TypeOperator */] = forEachChildInParenthesizedTypeOrTypeOperator,
31195
+ _a[194 /* IndexedAccessType */] = function forEachChildInIndexedAccessType(node, cbNode, _cbNodes) {
31196
+ return visitNode(cbNode, node.objectType) ||
31197
+ visitNode(cbNode, node.indexType);
31198
+ },
31199
+ _a[195 /* MappedType */] = function forEachChildInMappedType(node, cbNode, cbNodes) {
31200
+ return visitNode(cbNode, node.readonlyToken) ||
31201
+ visitNode(cbNode, node.typeParameter) ||
31202
+ visitNode(cbNode, node.nameType) ||
31203
+ visitNode(cbNode, node.questionToken) ||
31204
+ visitNode(cbNode, node.type) ||
31205
+ visitNodes(cbNode, cbNodes, node.members);
31206
+ },
31207
+ _a[196 /* LiteralType */] = function forEachChildInLiteralType(node, cbNode, _cbNodes) {
31208
+ return visitNode(cbNode, node.literal);
31209
+ },
31210
+ _a[197 /* NamedTupleMember */] = function forEachChildInNamedTupleMember(node, cbNode, _cbNodes) {
31211
+ return visitNode(cbNode, node.dotDotDotToken) ||
31212
+ visitNode(cbNode, node.name) ||
31213
+ visitNode(cbNode, node.questionToken) ||
31214
+ visitNode(cbNode, node.type);
31215
+ },
31216
+ _a[201 /* ObjectBindingPattern */] = forEachChildInObjectOrArrayBindingPattern,
31217
+ _a[202 /* ArrayBindingPattern */] = forEachChildInObjectOrArrayBindingPattern,
31218
+ _a[204 /* ArrayLiteralExpression */] = function forEachChildInArrayLiteralExpression(node, cbNode, cbNodes) {
31219
+ return visitNodes(cbNode, cbNodes, node.elements);
31220
+ },
31221
+ _a[205 /* ObjectLiteralExpression */] = function forEachChildInObjectLiteralExpression(node, cbNode, cbNodes) {
31222
+ return visitNodes(cbNode, cbNodes, node.properties);
31223
+ },
31224
+ _a[206 /* PropertyAccessExpression */] = function forEachChildInPropertyAccessExpression(node, cbNode, _cbNodes) {
31225
+ return visitNode(cbNode, node.expression) ||
31226
+ visitNode(cbNode, node.questionDotToken) ||
31227
+ visitNode(cbNode, node.name);
31228
+ },
31229
+ _a[207 /* ElementAccessExpression */] = function forEachChildInElementAccessExpression(node, cbNode, _cbNodes) {
31230
+ return visitNode(cbNode, node.expression) ||
31231
+ visitNode(cbNode, node.questionDotToken) ||
31232
+ visitNode(cbNode, node.argumentExpression);
31233
+ },
31234
+ _a[208 /* CallExpression */] = forEachChildInCallOrNewExpression,
31235
+ _a[209 /* NewExpression */] = forEachChildInCallOrNewExpression,
31236
+ _a[210 /* TaggedTemplateExpression */] = function forEachChildInTaggedTemplateExpression(node, cbNode, cbNodes) {
31237
+ return visitNode(cbNode, node.tag) ||
31238
+ visitNode(cbNode, node.questionDotToken) ||
31239
+ visitNodes(cbNode, cbNodes, node.typeArguments) ||
31240
+ visitNode(cbNode, node.template);
31241
+ },
31242
+ _a[211 /* TypeAssertionExpression */] = function forEachChildInTypeAssertionExpression(node, cbNode, _cbNodes) {
31243
+ return visitNode(cbNode, node.type) ||
31244
+ visitNode(cbNode, node.expression);
31245
+ },
31246
+ _a[212 /* ParenthesizedExpression */] = function forEachChildInParenthesizedExpression(node, cbNode, _cbNodes) {
31247
+ return visitNode(cbNode, node.expression);
31248
+ },
31249
+ _a[215 /* DeleteExpression */] = function forEachChildInDeleteExpression(node, cbNode, _cbNodes) {
31250
+ return visitNode(cbNode, node.expression);
31251
+ },
31252
+ _a[216 /* TypeOfExpression */] = function forEachChildInTypeOfExpression(node, cbNode, _cbNodes) {
31253
+ return visitNode(cbNode, node.expression);
31254
+ },
31255
+ _a[217 /* VoidExpression */] = function forEachChildInVoidExpression(node, cbNode, _cbNodes) {
31256
+ return visitNode(cbNode, node.expression);
31257
+ },
31258
+ _a[219 /* PrefixUnaryExpression */] = function forEachChildInPrefixUnaryExpression(node, cbNode, _cbNodes) {
31259
+ return visitNode(cbNode, node.operand);
31260
+ },
31261
+ _a[224 /* YieldExpression */] = function forEachChildInYieldExpression(node, cbNode, _cbNodes) {
31262
+ return visitNode(cbNode, node.asteriskToken) ||
31263
+ visitNode(cbNode, node.expression);
31264
+ },
31265
+ _a[218 /* AwaitExpression */] = function forEachChildInAwaitExpression(node, cbNode, _cbNodes) {
31266
+ return visitNode(cbNode, node.expression);
31267
+ },
31268
+ _a[220 /* PostfixUnaryExpression */] = function forEachChildInPostfixUnaryExpression(node, cbNode, _cbNodes) {
31269
+ return visitNode(cbNode, node.operand);
31270
+ },
31271
+ _a[221 /* BinaryExpression */] = function forEachChildInBinaryExpression(node, cbNode, _cbNodes) {
31272
+ return visitNode(cbNode, node.left) ||
31273
+ visitNode(cbNode, node.operatorToken) ||
31274
+ visitNode(cbNode, node.right);
31275
+ },
31276
+ _a[229 /* AsExpression */] = function forEachChildInAsExpression(node, cbNode, _cbNodes) {
31277
+ return visitNode(cbNode, node.expression) ||
31278
+ visitNode(cbNode, node.type);
31279
+ },
31280
+ _a[230 /* NonNullExpression */] = function forEachChildInNonNullExpression(node, cbNode, _cbNodes) {
31281
+ return visitNode(cbNode, node.expression);
31282
+ },
31283
+ _a[231 /* MetaProperty */] = function forEachChildInMetaProperty(node, cbNode, _cbNodes) {
31284
+ return visitNode(cbNode, node.name);
31285
+ },
31286
+ _a[222 /* ConditionalExpression */] = function forEachChildInConditionalExpression(node, cbNode, _cbNodes) {
31287
+ return visitNode(cbNode, node.condition) ||
31288
+ visitNode(cbNode, node.questionToken) ||
31289
+ visitNode(cbNode, node.whenTrue) ||
31290
+ visitNode(cbNode, node.colonToken) ||
31291
+ visitNode(cbNode, node.whenFalse);
31292
+ },
31293
+ _a[225 /* SpreadElement */] = function forEachChildInSpreadElement(node, cbNode, _cbNodes) {
31294
+ return visitNode(cbNode, node.expression);
31295
+ },
31296
+ _a[235 /* Block */] = forEachChildInBlock,
31297
+ _a[262 /* ModuleBlock */] = forEachChildInBlock,
31298
+ _a[305 /* SourceFile */] = function forEachChildInSourceFile(node, cbNode, cbNodes) {
31299
+ return visitNodes(cbNode, cbNodes, node.statements) ||
31300
+ visitNode(cbNode, node.endOfFileToken);
31301
+ },
31302
+ _a[237 /* VariableStatement */] = function forEachChildInVariableStatement(node, cbNode, cbNodes) {
31303
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31304
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31305
+ visitNode(cbNode, node.declarationList);
31306
+ },
31307
+ _a[255 /* VariableDeclarationList */] = function forEachChildInVariableDeclarationList(node, cbNode, cbNodes) {
31308
+ return visitNodes(cbNode, cbNodes, node.declarations);
31309
+ },
31310
+ _a[238 /* ExpressionStatement */] = function forEachChildInExpressionStatement(node, cbNode, _cbNodes) {
31311
+ return visitNode(cbNode, node.expression);
31312
+ },
31313
+ _a[239 /* IfStatement */] = function forEachChildInIfStatement(node, cbNode, _cbNodes) {
31314
+ return visitNode(cbNode, node.expression) ||
31315
+ visitNode(cbNode, node.thenStatement) ||
31316
+ visitNode(cbNode, node.elseStatement);
31317
+ },
31318
+ _a[240 /* DoStatement */] = function forEachChildInDoStatement(node, cbNode, _cbNodes) {
31319
+ return visitNode(cbNode, node.statement) ||
31320
+ visitNode(cbNode, node.expression);
31321
+ },
31322
+ _a[241 /* WhileStatement */] = function forEachChildInWhileStatement(node, cbNode, _cbNodes) {
31323
+ return visitNode(cbNode, node.expression) ||
31324
+ visitNode(cbNode, node.statement);
31325
+ },
31326
+ _a[242 /* ForStatement */] = function forEachChildInForStatement(node, cbNode, _cbNodes) {
31327
+ return visitNode(cbNode, node.initializer) ||
31328
+ visitNode(cbNode, node.condition) ||
31329
+ visitNode(cbNode, node.incrementor) ||
31330
+ visitNode(cbNode, node.statement);
31331
+ },
31332
+ _a[243 /* ForInStatement */] = function forEachChildInForInStatement(node, cbNode, _cbNodes) {
31333
+ return visitNode(cbNode, node.initializer) ||
31334
+ visitNode(cbNode, node.expression) ||
31335
+ visitNode(cbNode, node.statement);
31336
+ },
31337
+ _a[244 /* ForOfStatement */] = function forEachChildInForOfStatement(node, cbNode, _cbNodes) {
31338
+ return visitNode(cbNode, node.awaitModifier) ||
31339
+ visitNode(cbNode, node.initializer) ||
31340
+ visitNode(cbNode, node.expression) ||
31341
+ visitNode(cbNode, node.statement);
31342
+ },
31343
+ _a[245 /* ContinueStatement */] = forEachChildInContinueOrBreakStatement,
31344
+ _a[246 /* BreakStatement */] = forEachChildInContinueOrBreakStatement,
31345
+ _a[247 /* ReturnStatement */] = function forEachChildInReturnStatement(node, cbNode, _cbNodes) {
31346
+ return visitNode(cbNode, node.expression);
31347
+ },
31348
+ _a[248 /* WithStatement */] = function forEachChildInWithStatement(node, cbNode, _cbNodes) {
31349
+ return visitNode(cbNode, node.expression) ||
31350
+ visitNode(cbNode, node.statement);
31351
+ },
31352
+ _a[249 /* SwitchStatement */] = function forEachChildInSwitchStatement(node, cbNode, _cbNodes) {
31353
+ return visitNode(cbNode, node.expression) ||
31354
+ visitNode(cbNode, node.caseBlock);
31355
+ },
31356
+ _a[263 /* CaseBlock */] = function forEachChildInCaseBlock(node, cbNode, cbNodes) {
31357
+ return visitNodes(cbNode, cbNodes, node.clauses);
31358
+ },
31359
+ _a[289 /* CaseClause */] = function forEachChildInCaseClause(node, cbNode, cbNodes) {
31360
+ return visitNode(cbNode, node.expression) ||
31361
+ visitNodes(cbNode, cbNodes, node.statements);
31362
+ },
31363
+ _a[290 /* DefaultClause */] = function forEachChildInDefaultClause(node, cbNode, cbNodes) {
31364
+ return visitNodes(cbNode, cbNodes, node.statements);
31365
+ },
31366
+ _a[250 /* LabeledStatement */] = function forEachChildInLabeledStatement(node, cbNode, _cbNodes) {
31367
+ return visitNode(cbNode, node.label) ||
31368
+ visitNode(cbNode, node.statement);
31369
+ },
31370
+ _a[251 /* ThrowStatement */] = function forEachChildInThrowStatement(node, cbNode, _cbNodes) {
31371
+ return visitNode(cbNode, node.expression);
31372
+ },
31373
+ _a[252 /* TryStatement */] = function forEachChildInTryStatement(node, cbNode, _cbNodes) {
31374
+ return visitNode(cbNode, node.tryBlock) ||
31375
+ visitNode(cbNode, node.catchClause) ||
31376
+ visitNode(cbNode, node.finallyBlock);
31377
+ },
31378
+ _a[292 /* CatchClause */] = function forEachChildInCatchClause(node, cbNode, _cbNodes) {
31379
+ return visitNode(cbNode, node.variableDeclaration) ||
31380
+ visitNode(cbNode, node.block);
31381
+ },
31382
+ _a[165 /* Decorator */] = function forEachChildInDecorator(node, cbNode, _cbNodes) {
31383
+ return visitNode(cbNode, node.expression);
31384
+ },
31385
+ _a[257 /* ClassDeclaration */] = forEachChildInClassDeclarationOrExpression,
31386
+ _a[226 /* ClassExpression */] = forEachChildInClassDeclarationOrExpression,
31387
+ _a[258 /* InterfaceDeclaration */] = function forEachChildInInterfaceDeclaration(node, cbNode, cbNodes) {
31388
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31389
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31390
+ visitNode(cbNode, node.name) ||
31391
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31392
+ visitNodes(cbNode, cbNodes, node.heritageClauses) ||
31393
+ visitNodes(cbNode, cbNodes, node.members);
31394
+ },
31395
+ _a[259 /* TypeAliasDeclaration */] = function forEachChildInTypeAliasDeclaration(node, cbNode, cbNodes) {
31396
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31397
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31398
+ visitNode(cbNode, node.name) ||
31399
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31400
+ visitNode(cbNode, node.type);
31401
+ },
31402
+ _a[260 /* EnumDeclaration */] = function forEachChildInEnumDeclaration(node, cbNode, cbNodes) {
31403
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31404
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31405
+ visitNode(cbNode, node.name) ||
31406
+ visitNodes(cbNode, cbNodes, node.members);
31407
+ },
31408
+ _a[299 /* EnumMember */] = function forEachChildInEnumMember(node, cbNode, _cbNodes) {
31409
+ return visitNode(cbNode, node.name) ||
31410
+ visitNode(cbNode, node.initializer);
31411
+ },
31412
+ _a[261 /* ModuleDeclaration */] = function forEachChildInModuleDeclaration(node, cbNode, cbNodes) {
31413
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31414
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31415
+ visitNode(cbNode, node.name) ||
31416
+ visitNode(cbNode, node.body);
31417
+ },
31418
+ _a[265 /* ImportEqualsDeclaration */] = function forEachChildInImportEqualsDeclaration(node, cbNode, cbNodes) {
31419
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31420
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31421
+ visitNode(cbNode, node.name) ||
31422
+ visitNode(cbNode, node.moduleReference);
31423
+ },
31424
+ _a[266 /* ImportDeclaration */] = function forEachChildInImportDeclaration(node, cbNode, cbNodes) {
31425
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31426
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31427
+ visitNode(cbNode, node.importClause) ||
31428
+ visitNode(cbNode, node.moduleSpecifier) ||
31429
+ visitNode(cbNode, node.assertClause);
31430
+ },
31431
+ _a[267 /* ImportClause */] = function forEachChildInImportClause(node, cbNode, _cbNodes) {
31432
+ return visitNode(cbNode, node.name) ||
31433
+ visitNode(cbNode, node.namedBindings);
31434
+ },
31435
+ _a[293 /* AssertClause */] = function forEachChildInAssertClause(node, cbNode, cbNodes) {
31436
+ return visitNodes(cbNode, cbNodes, node.elements);
31437
+ },
31438
+ _a[294 /* AssertEntry */] = function forEachChildInAssertEntry(node, cbNode, _cbNodes) {
31439
+ return visitNode(cbNode, node.name) ||
31440
+ visitNode(cbNode, node.value);
31441
+ },
31442
+ _a[264 /* NamespaceExportDeclaration */] = function forEachChildInNamespaceExportDeclaration(node, cbNode, cbNodes) {
31443
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31444
+ visitNode(cbNode, node.name);
31445
+ },
31446
+ _a[268 /* NamespaceImport */] = function forEachChildInNamespaceImport(node, cbNode, _cbNodes) {
31447
+ return visitNode(cbNode, node.name);
31448
+ },
31449
+ _a[274 /* NamespaceExport */] = function forEachChildInNamespaceExport(node, cbNode, _cbNodes) {
31450
+ return visitNode(cbNode, node.name);
31451
+ },
31452
+ _a[269 /* NamedImports */] = forEachChildInNamedImportsOrExports,
31453
+ _a[273 /* NamedExports */] = forEachChildInNamedImportsOrExports,
31454
+ _a[272 /* ExportDeclaration */] = function forEachChildInExportDeclaration(node, cbNode, cbNodes) {
31455
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31456
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31457
+ visitNode(cbNode, node.exportClause) ||
31458
+ visitNode(cbNode, node.moduleSpecifier) ||
31459
+ visitNode(cbNode, node.assertClause);
31460
+ },
31461
+ _a[270 /* ImportSpecifier */] = forEachChildInImportOrExportSpecifier,
31462
+ _a[275 /* ExportSpecifier */] = forEachChildInImportOrExportSpecifier,
31463
+ _a[271 /* ExportAssignment */] = function forEachChildInExportAssignment(node, cbNode, cbNodes) {
31464
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31465
+ visitNodes(cbNode, cbNodes, node.modifiers) ||
31466
+ visitNode(cbNode, node.expression);
31467
+ },
31468
+ _a[223 /* TemplateExpression */] = function forEachChildInTemplateExpression(node, cbNode, cbNodes) {
31469
+ return visitNode(cbNode, node.head) ||
31470
+ visitNodes(cbNode, cbNodes, node.templateSpans);
31471
+ },
31472
+ _a[233 /* TemplateSpan */] = function forEachChildInTemplateSpan(node, cbNode, _cbNodes) {
31473
+ return visitNode(cbNode, node.expression) ||
31474
+ visitNode(cbNode, node.literal);
31475
+ },
31476
+ _a[198 /* TemplateLiteralType */] = function forEachChildInTemplateLiteralType(node, cbNode, cbNodes) {
31477
+ return visitNode(cbNode, node.head) ||
31478
+ visitNodes(cbNode, cbNodes, node.templateSpans);
31479
+ },
31480
+ _a[199 /* TemplateLiteralTypeSpan */] = function forEachChildInTemplateLiteralTypeSpan(node, cbNode, _cbNodes) {
31481
+ return visitNode(cbNode, node.type) ||
31482
+ visitNode(cbNode, node.literal);
31483
+ },
31484
+ _a[162 /* ComputedPropertyName */] = function forEachChildInComputedPropertyName(node, cbNode, _cbNodes) {
31485
+ return visitNode(cbNode, node.expression);
31486
+ },
31487
+ _a[291 /* HeritageClause */] = function forEachChildInHeritageClause(node, cbNode, cbNodes) {
31488
+ return visitNodes(cbNode, cbNodes, node.types);
31489
+ },
31490
+ _a[228 /* ExpressionWithTypeArguments */] = function forEachChildInExpressionWithTypeArguments(node, cbNode, cbNodes) {
31491
+ return visitNode(cbNode, node.expression) ||
31492
+ visitNodes(cbNode, cbNodes, node.typeArguments);
31493
+ },
31494
+ _a[277 /* ExternalModuleReference */] = function forEachChildInExternalModuleReference(node, cbNode, _cbNodes) {
31495
+ return visitNode(cbNode, node.expression);
31496
+ },
31497
+ _a[276 /* MissingDeclaration */] = function forEachChildInMissingDeclaration(node, cbNode, cbNodes) {
31498
+ return visitNodes(cbNode, cbNodes, node.illegalDecorators) ||
31499
+ visitNodes(cbNode, cbNodes, node.modifiers);
31500
+ },
31501
+ _a[351 /* CommaListExpression */] = function forEachChildInCommaListExpression(node, cbNode, cbNodes) {
31502
+ return visitNodes(cbNode, cbNodes, node.elements);
31503
+ },
31504
+ _a[278 /* JsxElement */] = function forEachChildInJsxElement(node, cbNode, cbNodes) {
31505
+ return visitNode(cbNode, node.openingElement) ||
31506
+ visitNodes(cbNode, cbNodes, node.children) ||
31507
+ visitNode(cbNode, node.closingElement);
31508
+ },
31509
+ _a[282 /* JsxFragment */] = function forEachChildInJsxFragment(node, cbNode, cbNodes) {
31510
+ return visitNode(cbNode, node.openingFragment) ||
31511
+ visitNodes(cbNode, cbNodes, node.children) ||
31512
+ visitNode(cbNode, node.closingFragment);
31513
+ },
31514
+ _a[279 /* JsxSelfClosingElement */] = forEachChildInJsxOpeningOrSelfClosingElement,
31515
+ _a[280 /* JsxOpeningElement */] = forEachChildInJsxOpeningOrSelfClosingElement,
31516
+ _a[286 /* JsxAttributes */] = function forEachChildInJsxAttributes(node, cbNode, cbNodes) {
31517
+ return visitNodes(cbNode, cbNodes, node.properties);
31518
+ },
31519
+ _a[285 /* JsxAttribute */] = function forEachChildInJsxAttribute(node, cbNode, _cbNodes) {
31520
+ return visitNode(cbNode, node.name) ||
31521
+ visitNode(cbNode, node.initializer);
31522
+ },
31523
+ _a[287 /* JsxSpreadAttribute */] = function forEachChildInJsxSpreadAttribute(node, cbNode, _cbNodes) {
31524
+ return visitNode(cbNode, node.expression);
31525
+ },
31526
+ _a[288 /* JsxExpression */] = function forEachChildInJsxExpression(node, cbNode, _cbNodes) {
31527
+ return visitNode(cbNode, node.dotDotDotToken) ||
31528
+ visitNode(cbNode, node.expression);
31529
+ },
31530
+ _a[281 /* JsxClosingElement */] = function forEachChildInJsxClosingElement(node, cbNode, _cbNodes) {
31531
+ return visitNode(cbNode, node.tagName);
31532
+ },
31533
+ _a[185 /* OptionalType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31534
+ _a[186 /* RestType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31535
+ _a[309 /* JSDocTypeExpression */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31536
+ _a[315 /* JSDocNonNullableType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31537
+ _a[314 /* JSDocNullableType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31538
+ _a[316 /* JSDocOptionalType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31539
+ _a[318 /* JSDocVariadicType */] = forEachChildInOptionalRestOrJSDocParameterModifier,
31540
+ _a[317 /* JSDocFunctionType */] = function forEachChildInJSDocFunctionType(node, cbNode, cbNodes) {
31541
+ return visitNodes(cbNode, cbNodes, node.parameters) ||
31542
+ visitNode(cbNode, node.type);
31543
+ },
31544
+ _a[320 /* JSDoc */] = function forEachChildInJSDoc(node, cbNode, cbNodes) {
31545
+ return (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31546
+ || visitNodes(cbNode, cbNodes, node.tags);
31547
+ },
31548
+ _a[346 /* JSDocSeeTag */] = function forEachChildInJSDocSeeTag(node, cbNode, cbNodes) {
31549
+ return visitNode(cbNode, node.tagName) ||
31550
+ visitNode(cbNode, node.name) ||
31551
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31552
+ },
31553
+ _a[310 /* JSDocNameReference */] = function forEachChildInJSDocNameReference(node, cbNode, _cbNodes) {
31554
+ return visitNode(cbNode, node.name);
31555
+ },
31556
+ _a[311 /* JSDocMemberName */] = function forEachChildInJSDocMemberName(node, cbNode, _cbNodes) {
31557
+ return visitNode(cbNode, node.left) ||
31558
+ visitNode(cbNode, node.right);
31559
+ },
31560
+ _a[340 /* JSDocParameterTag */] = forEachChildInJSDocParameterOrPropertyTag,
31561
+ _a[347 /* JSDocPropertyTag */] = forEachChildInJSDocParameterOrPropertyTag,
31562
+ _a[330 /* JSDocAuthorTag */] = function forEachChildInJSDocAuthorTag(node, cbNode, cbNodes) {
31563
+ return visitNode(cbNode, node.tagName) ||
31564
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31565
+ },
31566
+ _a[329 /* JSDocImplementsTag */] = function forEachChildInJSDocImplementsTag(node, cbNode, cbNodes) {
31567
+ return visitNode(cbNode, node.tagName) ||
31568
+ visitNode(cbNode, node.class) ||
31569
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31570
+ },
31571
+ _a[328 /* JSDocAugmentsTag */] = function forEachChildInJSDocAugmentsTag(node, cbNode, cbNodes) {
31572
+ return visitNode(cbNode, node.tagName) ||
31573
+ visitNode(cbNode, node.class) ||
31574
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31575
+ },
31576
+ _a[344 /* JSDocTemplateTag */] = function forEachChildInJSDocTemplateTag(node, cbNode, cbNodes) {
31577
+ return visitNode(cbNode, node.tagName) ||
31578
+ visitNode(cbNode, node.constraint) ||
31579
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31580
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31581
+ },
31582
+ _a[345 /* JSDocTypedefTag */] = function forEachChildInJSDocTypedefTag(node, cbNode, cbNodes) {
31583
+ return visitNode(cbNode, node.tagName) ||
31584
+ (node.typeExpression &&
31585
+ node.typeExpression.kind === 309 /* JSDocTypeExpression */
31586
+ ? visitNode(cbNode, node.typeExpression) ||
31587
+ visitNode(cbNode, node.fullName) ||
31588
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31589
+ : visitNode(cbNode, node.fullName) ||
31590
+ visitNode(cbNode, node.typeExpression) ||
31591
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment)));
31592
+ },
31593
+ _a[338 /* JSDocCallbackTag */] = function forEachChildInJSDocCallbackTag(node, cbNode, cbNodes) {
31594
+ return visitNode(cbNode, node.tagName) ||
31595
+ visitNode(cbNode, node.fullName) ||
31596
+ visitNode(cbNode, node.typeExpression) ||
31597
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31598
+ },
31599
+ _a[341 /* JSDocReturnTag */] = forEachChildInJSDocReturnTag,
31600
+ _a[343 /* JSDocTypeTag */] = forEachChildInJSDocReturnTag,
31601
+ _a[342 /* JSDocThisTag */] = forEachChildInJSDocReturnTag,
31602
+ _a[339 /* JSDocEnumTag */] = forEachChildInJSDocReturnTag,
31603
+ _a[323 /* JSDocSignature */] = function forEachChildInJSDocSignature(node, cbNode, _cbNodes) {
31604
+ return ts.forEach(node.typeParameters, cbNode) ||
31605
+ ts.forEach(node.parameters, cbNode) ||
31606
+ visitNode(cbNode, node.type);
31607
+ },
31608
+ _a[324 /* JSDocLink */] = forEachChildInJSDocLinkCodeOrPlain,
31609
+ _a[325 /* JSDocLinkCode */] = forEachChildInJSDocLinkCodeOrPlain,
31610
+ _a[326 /* JSDocLinkPlain */] = forEachChildInJSDocLinkCodeOrPlain,
31611
+ _a[322 /* JSDocTypeLiteral */] = function forEachChildInJSDocTypeLiteral(node, cbNode, _cbNodes) {
31612
+ return ts.forEach(node.jsDocPropertyTags, cbNode);
31613
+ },
31614
+ _a[327 /* JSDocTag */] = forEachChildInJSDocTag,
31615
+ _a[332 /* JSDocClassTag */] = forEachChildInJSDocTag,
31616
+ _a[333 /* JSDocPublicTag */] = forEachChildInJSDocTag,
31617
+ _a[334 /* JSDocPrivateTag */] = forEachChildInJSDocTag,
31618
+ _a[335 /* JSDocProtectedTag */] = forEachChildInJSDocTag,
31619
+ _a[336 /* JSDocReadonlyTag */] = forEachChildInJSDocTag,
31620
+ _a[331 /* JSDocDeprecatedTag */] = forEachChildInJSDocTag,
31621
+ _a[350 /* PartiallyEmittedExpression */] = forEachChildInPartiallyEmittedExpression,
31622
+ _a);
31623
+ // shared
31624
+ function forEachChildInCallOrConstructSignature(node, cbNode, cbNodes) {
31625
+ return visitNodes(cbNode, cbNodes, node.typeParameters) ||
31626
+ visitNodes(cbNode, cbNodes, node.parameters) ||
31627
+ visitNode(cbNode, node.type);
31628
+ }
31629
+ ;
31630
+ function forEachChildInUnionOrIntersectionType(node, cbNode, cbNodes) {
31631
+ return visitNodes(cbNode, cbNodes, node.types);
31632
+ }
31633
+ function forEachChildInParenthesizedTypeOrTypeOperator(node, cbNode, _cbNodes) {
31634
+ return visitNode(cbNode, node.type);
31635
+ }
31636
+ function forEachChildInObjectOrArrayBindingPattern(node, cbNode, cbNodes) {
31637
+ return visitNodes(cbNode, cbNodes, node.elements);
31638
+ }
31639
+ function forEachChildInCallOrNewExpression(node, cbNode, cbNodes) {
31640
+ return visitNode(cbNode, node.expression) ||
31641
+ // TODO: should we separate these branches out?
31642
+ visitNode(cbNode, node.questionDotToken) ||
31643
+ visitNodes(cbNode, cbNodes, node.typeArguments) ||
31644
+ visitNodes(cbNode, cbNodes, node.arguments);
31645
+ }
31646
+ function forEachChildInBlock(node, cbNode, cbNodes) {
31647
+ return visitNodes(cbNode, cbNodes, node.statements);
31648
+ }
31649
+ function forEachChildInContinueOrBreakStatement(node, cbNode, _cbNodes) {
31650
+ return visitNode(cbNode, node.label);
31651
+ }
31652
+ function forEachChildInClassDeclarationOrExpression(node, cbNode, cbNodes) {
31653
+ return visitNodes(cbNode, cbNodes, node.modifiers) ||
31654
+ visitNode(cbNode, node.name) ||
31655
+ visitNodes(cbNode, cbNodes, node.typeParameters) ||
31656
+ visitNodes(cbNode, cbNodes, node.heritageClauses) ||
31657
+ visitNodes(cbNode, cbNodes, node.members);
31658
+ }
31659
+ function forEachChildInNamedImportsOrExports(node, cbNode, cbNodes) {
31660
+ return visitNodes(cbNode, cbNodes, node.elements);
31661
+ }
31662
+ function forEachChildInImportOrExportSpecifier(node, cbNode, _cbNodes) {
31663
+ return visitNode(cbNode, node.propertyName) ||
31664
+ visitNode(cbNode, node.name);
31665
+ }
31666
+ function forEachChildInJsxOpeningOrSelfClosingElement(node, cbNode, cbNodes) {
31667
+ return visitNode(cbNode, node.tagName) ||
31668
+ visitNodes(cbNode, cbNodes, node.typeArguments) ||
31669
+ visitNode(cbNode, node.attributes);
31670
+ }
31671
+ function forEachChildInOptionalRestOrJSDocParameterModifier(node, cbNode, _cbNodes) {
31672
+ return visitNode(cbNode, node.type);
31673
+ }
31674
+ function forEachChildInJSDocParameterOrPropertyTag(node, cbNode, cbNodes) {
31675
+ return visitNode(cbNode, node.tagName) ||
31676
+ (node.isNameFirst
31677
+ ? visitNode(cbNode, node.name) || visitNode(cbNode, node.typeExpression)
31678
+ : visitNode(cbNode, node.typeExpression) || visitNode(cbNode, node.name)) ||
31679
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31680
+ }
31681
+ function forEachChildInJSDocReturnTag(node, cbNode, cbNodes) {
31682
+ return visitNode(cbNode, node.tagName) ||
31683
+ visitNode(cbNode, node.typeExpression) ||
31684
+ (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31685
+ }
31686
+ function forEachChildInJSDocLinkCodeOrPlain(node, cbNode, _cbNodes) {
31687
+ return visitNode(cbNode, node.name);
31688
+ }
31689
+ function forEachChildInJSDocTag(node, cbNode, cbNodes) {
31690
+ return visitNode(cbNode, node.tagName)
31691
+ || (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31692
+ }
31693
+ function forEachChildInPartiallyEmittedExpression(node, cbNode, _cbNodes) {
31694
+ return visitNode(cbNode, node.expression);
31695
+ }
30985
31696
  /**
30986
31697
  * Invokes a callback for each child of the given node. The 'cbNode' callback is invoked for all child nodes
30987
31698
  * stored in properties. If a 'cbNodes' callback is specified, it is invoked for embedded arrays; otherwise,
@@ -30996,562 +31707,11 @@ var ts;
30996
31707
  * that they appear in the source code. The language service depends on this property to locate nodes by position.
30997
31708
  */
30998
31709
  function forEachChild(node, cbNode, cbNodes) {
30999
- if (!node || node.kind <= 160 /* LastToken */) {
31710
+ if (node === undefined || node.kind <= 160 /* LastToken */) {
31000
31711
  return;
31001
31712
  }
31002
- switch (node.kind) {
31003
- case 161 /* QualifiedName */:
31004
- return visitNode(cbNode, node.left) ||
31005
- visitNode(cbNode, node.right);
31006
- case 163 /* TypeParameter */:
31007
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31008
- visitNode(cbNode, node.name) ||
31009
- visitNode(cbNode, node.constraint) ||
31010
- visitNode(cbNode, node.default) ||
31011
- visitNode(cbNode, node.expression);
31012
- case 297 /* ShorthandPropertyAssignment */:
31013
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31014
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31015
- visitNode(cbNode, node.name) ||
31016
- visitNode(cbNode, node.questionToken) ||
31017
- visitNode(cbNode, node.exclamationToken) ||
31018
- visitNode(cbNode, node.equalsToken) ||
31019
- visitNode(cbNode, node.objectAssignmentInitializer);
31020
- case 298 /* SpreadAssignment */:
31021
- return visitNode(cbNode, node.expression);
31022
- case 164 /* Parameter */:
31023
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31024
- visitNode(cbNode, node.dotDotDotToken) ||
31025
- visitNode(cbNode, node.name) ||
31026
- visitNode(cbNode, node.questionToken) ||
31027
- visitNode(cbNode, node.type) ||
31028
- visitNode(cbNode, node.initializer);
31029
- case 167 /* PropertyDeclaration */:
31030
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31031
- visitNode(cbNode, node.name) ||
31032
- visitNode(cbNode, node.questionToken) ||
31033
- visitNode(cbNode, node.exclamationToken) ||
31034
- visitNode(cbNode, node.type) ||
31035
- visitNode(cbNode, node.initializer);
31036
- case 166 /* PropertySignature */:
31037
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31038
- visitNode(cbNode, node.name) ||
31039
- visitNode(cbNode, node.questionToken) ||
31040
- visitNode(cbNode, node.type) ||
31041
- visitNode(cbNode, node.initializer);
31042
- case 296 /* PropertyAssignment */:
31043
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31044
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31045
- visitNode(cbNode, node.name) ||
31046
- visitNode(cbNode, node.questionToken) ||
31047
- visitNode(cbNode, node.exclamationToken) ||
31048
- visitNode(cbNode, node.initializer);
31049
- case 254 /* VariableDeclaration */:
31050
- return visitNode(cbNode, node.name) ||
31051
- visitNode(cbNode, node.exclamationToken) ||
31052
- visitNode(cbNode, node.type) ||
31053
- visitNode(cbNode, node.initializer);
31054
- case 203 /* BindingElement */:
31055
- return visitNode(cbNode, node.dotDotDotToken) ||
31056
- visitNode(cbNode, node.propertyName) ||
31057
- visitNode(cbNode, node.name) ||
31058
- visitNode(cbNode, node.initializer);
31059
- case 176 /* IndexSignature */:
31060
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31061
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31062
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31063
- visitNodes(cbNode, cbNodes, node.parameters) ||
31064
- visitNode(cbNode, node.type);
31065
- case 180 /* ConstructorType */:
31066
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31067
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31068
- visitNodes(cbNode, cbNodes, node.parameters) ||
31069
- visitNode(cbNode, node.type);
31070
- case 179 /* FunctionType */:
31071
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31072
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31073
- visitNodes(cbNode, cbNodes, node.parameters) ||
31074
- visitNode(cbNode, node.type);
31075
- case 174 /* CallSignature */:
31076
- case 175 /* ConstructSignature */:
31077
- return visitNodes(cbNode, cbNodes, node.typeParameters) ||
31078
- visitNodes(cbNode, cbNodes, node.parameters) ||
31079
- visitNode(cbNode, node.type);
31080
- case 169 /* MethodDeclaration */:
31081
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31082
- visitNode(cbNode, node.asteriskToken) ||
31083
- visitNode(cbNode, node.name) ||
31084
- visitNode(cbNode, node.questionToken) ||
31085
- visitNode(cbNode, node.exclamationToken) ||
31086
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31087
- visitNodes(cbNode, cbNodes, node.parameters) ||
31088
- visitNode(cbNode, node.type) ||
31089
- visitNode(cbNode, node.body);
31090
- case 168 /* MethodSignature */:
31091
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31092
- visitNode(cbNode, node.name) ||
31093
- visitNode(cbNode, node.questionToken) ||
31094
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31095
- visitNodes(cbNode, cbNodes, node.parameters) ||
31096
- visitNode(cbNode, node.type);
31097
- case 171 /* Constructor */:
31098
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31099
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31100
- visitNode(cbNode, node.name) ||
31101
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31102
- visitNodes(cbNode, cbNodes, node.parameters) ||
31103
- visitNode(cbNode, node.type) ||
31104
- visitNode(cbNode, node.body);
31105
- case 172 /* GetAccessor */:
31106
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31107
- visitNode(cbNode, node.name) ||
31108
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31109
- visitNodes(cbNode, cbNodes, node.parameters) ||
31110
- visitNode(cbNode, node.type) ||
31111
- visitNode(cbNode, node.body);
31112
- case 173 /* SetAccessor */:
31113
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31114
- visitNode(cbNode, node.name) ||
31115
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31116
- visitNodes(cbNode, cbNodes, node.parameters) ||
31117
- visitNode(cbNode, node.type) ||
31118
- visitNode(cbNode, node.body);
31119
- case 256 /* FunctionDeclaration */:
31120
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31121
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31122
- visitNode(cbNode, node.asteriskToken) ||
31123
- visitNode(cbNode, node.name) ||
31124
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31125
- visitNodes(cbNode, cbNodes, node.parameters) ||
31126
- visitNode(cbNode, node.type) ||
31127
- visitNode(cbNode, node.body);
31128
- case 213 /* FunctionExpression */:
31129
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31130
- visitNode(cbNode, node.asteriskToken) ||
31131
- visitNode(cbNode, node.name) ||
31132
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31133
- visitNodes(cbNode, cbNodes, node.parameters) ||
31134
- visitNode(cbNode, node.type) ||
31135
- visitNode(cbNode, node.body);
31136
- case 214 /* ArrowFunction */:
31137
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31138
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31139
- visitNodes(cbNode, cbNodes, node.parameters) ||
31140
- visitNode(cbNode, node.type) ||
31141
- visitNode(cbNode, node.equalsGreaterThanToken) ||
31142
- visitNode(cbNode, node.body);
31143
- case 170 /* ClassStaticBlockDeclaration */:
31144
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31145
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31146
- visitNode(cbNode, node.body);
31147
- case 178 /* TypeReference */:
31148
- return visitNode(cbNode, node.typeName) ||
31149
- visitNodes(cbNode, cbNodes, node.typeArguments);
31150
- case 177 /* TypePredicate */:
31151
- return visitNode(cbNode, node.assertsModifier) ||
31152
- visitNode(cbNode, node.parameterName) ||
31153
- visitNode(cbNode, node.type);
31154
- case 181 /* TypeQuery */:
31155
- return visitNode(cbNode, node.exprName) ||
31156
- visitNodes(cbNode, cbNodes, node.typeArguments);
31157
- case 182 /* TypeLiteral */:
31158
- return visitNodes(cbNode, cbNodes, node.members);
31159
- case 183 /* ArrayType */:
31160
- return visitNode(cbNode, node.elementType);
31161
- case 184 /* TupleType */:
31162
- return visitNodes(cbNode, cbNodes, node.elements);
31163
- case 187 /* UnionType */:
31164
- case 188 /* IntersectionType */:
31165
- return visitNodes(cbNode, cbNodes, node.types);
31166
- case 189 /* ConditionalType */:
31167
- return visitNode(cbNode, node.checkType) ||
31168
- visitNode(cbNode, node.extendsType) ||
31169
- visitNode(cbNode, node.trueType) ||
31170
- visitNode(cbNode, node.falseType);
31171
- case 190 /* InferType */:
31172
- return visitNode(cbNode, node.typeParameter);
31173
- case 200 /* ImportType */:
31174
- return visitNode(cbNode, node.argument) ||
31175
- visitNode(cbNode, node.assertions) ||
31176
- visitNode(cbNode, node.qualifier) ||
31177
- visitNodes(cbNode, cbNodes, node.typeArguments);
31178
- case 295 /* ImportTypeAssertionContainer */:
31179
- return visitNode(cbNode, node.assertClause);
31180
- case 191 /* ParenthesizedType */:
31181
- case 193 /* TypeOperator */:
31182
- return visitNode(cbNode, node.type);
31183
- case 194 /* IndexedAccessType */:
31184
- return visitNode(cbNode, node.objectType) ||
31185
- visitNode(cbNode, node.indexType);
31186
- case 195 /* MappedType */:
31187
- return visitNode(cbNode, node.readonlyToken) ||
31188
- visitNode(cbNode, node.typeParameter) ||
31189
- visitNode(cbNode, node.nameType) ||
31190
- visitNode(cbNode, node.questionToken) ||
31191
- visitNode(cbNode, node.type) ||
31192
- visitNodes(cbNode, cbNodes, node.members);
31193
- case 196 /* LiteralType */:
31194
- return visitNode(cbNode, node.literal);
31195
- case 197 /* NamedTupleMember */:
31196
- return visitNode(cbNode, node.dotDotDotToken) ||
31197
- visitNode(cbNode, node.name) ||
31198
- visitNode(cbNode, node.questionToken) ||
31199
- visitNode(cbNode, node.type);
31200
- case 201 /* ObjectBindingPattern */:
31201
- case 202 /* ArrayBindingPattern */:
31202
- return visitNodes(cbNode, cbNodes, node.elements);
31203
- case 204 /* ArrayLiteralExpression */:
31204
- return visitNodes(cbNode, cbNodes, node.elements);
31205
- case 205 /* ObjectLiteralExpression */:
31206
- return visitNodes(cbNode, cbNodes, node.properties);
31207
- case 206 /* PropertyAccessExpression */:
31208
- return visitNode(cbNode, node.expression) ||
31209
- visitNode(cbNode, node.questionDotToken) ||
31210
- visitNode(cbNode, node.name);
31211
- case 207 /* ElementAccessExpression */:
31212
- return visitNode(cbNode, node.expression) ||
31213
- visitNode(cbNode, node.questionDotToken) ||
31214
- visitNode(cbNode, node.argumentExpression);
31215
- case 208 /* CallExpression */:
31216
- case 209 /* NewExpression */:
31217
- return visitNode(cbNode, node.expression) ||
31218
- visitNode(cbNode, node.questionDotToken) ||
31219
- visitNodes(cbNode, cbNodes, node.typeArguments) ||
31220
- visitNodes(cbNode, cbNodes, node.arguments);
31221
- case 210 /* TaggedTemplateExpression */:
31222
- return visitNode(cbNode, node.tag) ||
31223
- visitNode(cbNode, node.questionDotToken) ||
31224
- visitNodes(cbNode, cbNodes, node.typeArguments) ||
31225
- visitNode(cbNode, node.template);
31226
- case 211 /* TypeAssertionExpression */:
31227
- return visitNode(cbNode, node.type) ||
31228
- visitNode(cbNode, node.expression);
31229
- case 212 /* ParenthesizedExpression */:
31230
- return visitNode(cbNode, node.expression);
31231
- case 215 /* DeleteExpression */:
31232
- return visitNode(cbNode, node.expression);
31233
- case 216 /* TypeOfExpression */:
31234
- return visitNode(cbNode, node.expression);
31235
- case 217 /* VoidExpression */:
31236
- return visitNode(cbNode, node.expression);
31237
- case 219 /* PrefixUnaryExpression */:
31238
- return visitNode(cbNode, node.operand);
31239
- case 224 /* YieldExpression */:
31240
- return visitNode(cbNode, node.asteriskToken) ||
31241
- visitNode(cbNode, node.expression);
31242
- case 218 /* AwaitExpression */:
31243
- return visitNode(cbNode, node.expression);
31244
- case 220 /* PostfixUnaryExpression */:
31245
- return visitNode(cbNode, node.operand);
31246
- case 221 /* BinaryExpression */:
31247
- return visitNode(cbNode, node.left) ||
31248
- visitNode(cbNode, node.operatorToken) ||
31249
- visitNode(cbNode, node.right);
31250
- case 229 /* AsExpression */:
31251
- return visitNode(cbNode, node.expression) ||
31252
- visitNode(cbNode, node.type);
31253
- case 230 /* NonNullExpression */:
31254
- return visitNode(cbNode, node.expression);
31255
- case 231 /* MetaProperty */:
31256
- return visitNode(cbNode, node.name);
31257
- case 222 /* ConditionalExpression */:
31258
- return visitNode(cbNode, node.condition) ||
31259
- visitNode(cbNode, node.questionToken) ||
31260
- visitNode(cbNode, node.whenTrue) ||
31261
- visitNode(cbNode, node.colonToken) ||
31262
- visitNode(cbNode, node.whenFalse);
31263
- case 225 /* SpreadElement */:
31264
- return visitNode(cbNode, node.expression);
31265
- case 235 /* Block */:
31266
- case 262 /* ModuleBlock */:
31267
- return visitNodes(cbNode, cbNodes, node.statements);
31268
- case 305 /* SourceFile */:
31269
- return visitNodes(cbNode, cbNodes, node.statements) ||
31270
- visitNode(cbNode, node.endOfFileToken);
31271
- case 237 /* VariableStatement */:
31272
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31273
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31274
- visitNode(cbNode, node.declarationList);
31275
- case 255 /* VariableDeclarationList */:
31276
- return visitNodes(cbNode, cbNodes, node.declarations);
31277
- case 238 /* ExpressionStatement */:
31278
- return visitNode(cbNode, node.expression);
31279
- case 239 /* IfStatement */:
31280
- return visitNode(cbNode, node.expression) ||
31281
- visitNode(cbNode, node.thenStatement) ||
31282
- visitNode(cbNode, node.elseStatement);
31283
- case 240 /* DoStatement */:
31284
- return visitNode(cbNode, node.statement) ||
31285
- visitNode(cbNode, node.expression);
31286
- case 241 /* WhileStatement */:
31287
- return visitNode(cbNode, node.expression) ||
31288
- visitNode(cbNode, node.statement);
31289
- case 242 /* ForStatement */:
31290
- return visitNode(cbNode, node.initializer) ||
31291
- visitNode(cbNode, node.condition) ||
31292
- visitNode(cbNode, node.incrementor) ||
31293
- visitNode(cbNode, node.statement);
31294
- case 243 /* ForInStatement */:
31295
- return visitNode(cbNode, node.initializer) ||
31296
- visitNode(cbNode, node.expression) ||
31297
- visitNode(cbNode, node.statement);
31298
- case 244 /* ForOfStatement */:
31299
- return visitNode(cbNode, node.awaitModifier) ||
31300
- visitNode(cbNode, node.initializer) ||
31301
- visitNode(cbNode, node.expression) ||
31302
- visitNode(cbNode, node.statement);
31303
- case 245 /* ContinueStatement */:
31304
- case 246 /* BreakStatement */:
31305
- return visitNode(cbNode, node.label);
31306
- case 247 /* ReturnStatement */:
31307
- return visitNode(cbNode, node.expression);
31308
- case 248 /* WithStatement */:
31309
- return visitNode(cbNode, node.expression) ||
31310
- visitNode(cbNode, node.statement);
31311
- case 249 /* SwitchStatement */:
31312
- return visitNode(cbNode, node.expression) ||
31313
- visitNode(cbNode, node.caseBlock);
31314
- case 263 /* CaseBlock */:
31315
- return visitNodes(cbNode, cbNodes, node.clauses);
31316
- case 289 /* CaseClause */:
31317
- return visitNode(cbNode, node.expression) ||
31318
- visitNodes(cbNode, cbNodes, node.statements);
31319
- case 290 /* DefaultClause */:
31320
- return visitNodes(cbNode, cbNodes, node.statements);
31321
- case 250 /* LabeledStatement */:
31322
- return visitNode(cbNode, node.label) ||
31323
- visitNode(cbNode, node.statement);
31324
- case 251 /* ThrowStatement */:
31325
- return visitNode(cbNode, node.expression);
31326
- case 252 /* TryStatement */:
31327
- return visitNode(cbNode, node.tryBlock) ||
31328
- visitNode(cbNode, node.catchClause) ||
31329
- visitNode(cbNode, node.finallyBlock);
31330
- case 292 /* CatchClause */:
31331
- return visitNode(cbNode, node.variableDeclaration) ||
31332
- visitNode(cbNode, node.block);
31333
- case 165 /* Decorator */:
31334
- return visitNode(cbNode, node.expression);
31335
- case 257 /* ClassDeclaration */:
31336
- case 226 /* ClassExpression */:
31337
- return visitNodes(cbNode, cbNodes, node.modifiers) ||
31338
- visitNode(cbNode, node.name) ||
31339
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31340
- visitNodes(cbNode, cbNodes, node.heritageClauses) ||
31341
- visitNodes(cbNode, cbNodes, node.members);
31342
- case 258 /* InterfaceDeclaration */:
31343
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31344
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31345
- visitNode(cbNode, node.name) ||
31346
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31347
- visitNodes(cbNode, cbNodes, node.heritageClauses) ||
31348
- visitNodes(cbNode, cbNodes, node.members);
31349
- case 259 /* TypeAliasDeclaration */:
31350
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31351
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31352
- visitNode(cbNode, node.name) ||
31353
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31354
- visitNode(cbNode, node.type);
31355
- case 260 /* EnumDeclaration */:
31356
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31357
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31358
- visitNode(cbNode, node.name) ||
31359
- visitNodes(cbNode, cbNodes, node.members);
31360
- case 299 /* EnumMember */:
31361
- return visitNode(cbNode, node.name) ||
31362
- visitNode(cbNode, node.initializer);
31363
- case 261 /* ModuleDeclaration */:
31364
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31365
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31366
- visitNode(cbNode, node.name) ||
31367
- visitNode(cbNode, node.body);
31368
- case 265 /* ImportEqualsDeclaration */:
31369
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31370
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31371
- visitNode(cbNode, node.name) ||
31372
- visitNode(cbNode, node.moduleReference);
31373
- case 266 /* ImportDeclaration */:
31374
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31375
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31376
- visitNode(cbNode, node.importClause) ||
31377
- visitNode(cbNode, node.moduleSpecifier) ||
31378
- visitNode(cbNode, node.assertClause);
31379
- case 267 /* ImportClause */:
31380
- return visitNode(cbNode, node.name) ||
31381
- visitNode(cbNode, node.namedBindings);
31382
- case 293 /* AssertClause */:
31383
- return visitNodes(cbNode, cbNodes, node.elements);
31384
- case 294 /* AssertEntry */:
31385
- return visitNode(cbNode, node.name) ||
31386
- visitNode(cbNode, node.value);
31387
- case 264 /* NamespaceExportDeclaration */:
31388
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31389
- visitNode(cbNode, node.name);
31390
- case 268 /* NamespaceImport */:
31391
- return visitNode(cbNode, node.name);
31392
- case 274 /* NamespaceExport */:
31393
- return visitNode(cbNode, node.name);
31394
- case 269 /* NamedImports */:
31395
- case 273 /* NamedExports */:
31396
- return visitNodes(cbNode, cbNodes, node.elements);
31397
- case 272 /* ExportDeclaration */:
31398
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31399
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31400
- visitNode(cbNode, node.exportClause) ||
31401
- visitNode(cbNode, node.moduleSpecifier) ||
31402
- visitNode(cbNode, node.assertClause);
31403
- case 270 /* ImportSpecifier */:
31404
- case 275 /* ExportSpecifier */:
31405
- return visitNode(cbNode, node.propertyName) ||
31406
- visitNode(cbNode, node.name);
31407
- case 271 /* ExportAssignment */:
31408
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31409
- visitNodes(cbNode, cbNodes, node.modifiers) ||
31410
- visitNode(cbNode, node.expression);
31411
- case 223 /* TemplateExpression */:
31412
- return visitNode(cbNode, node.head) ||
31413
- visitNodes(cbNode, cbNodes, node.templateSpans);
31414
- case 233 /* TemplateSpan */:
31415
- return visitNode(cbNode, node.expression) ||
31416
- visitNode(cbNode, node.literal);
31417
- case 198 /* TemplateLiteralType */:
31418
- return visitNode(cbNode, node.head) ||
31419
- visitNodes(cbNode, cbNodes, node.templateSpans);
31420
- case 199 /* TemplateLiteralTypeSpan */:
31421
- return visitNode(cbNode, node.type) ||
31422
- visitNode(cbNode, node.literal);
31423
- case 162 /* ComputedPropertyName */:
31424
- return visitNode(cbNode, node.expression);
31425
- case 291 /* HeritageClause */:
31426
- return visitNodes(cbNode, cbNodes, node.types);
31427
- case 228 /* ExpressionWithTypeArguments */:
31428
- return visitNode(cbNode, node.expression) ||
31429
- visitNodes(cbNode, cbNodes, node.typeArguments);
31430
- case 277 /* ExternalModuleReference */:
31431
- return visitNode(cbNode, node.expression);
31432
- case 276 /* MissingDeclaration */:
31433
- return visitNodes(cbNode, cbNodes, node.decorators) ||
31434
- visitNodes(cbNode, cbNodes, node.modifiers);
31435
- case 351 /* CommaListExpression */:
31436
- return visitNodes(cbNode, cbNodes, node.elements);
31437
- case 278 /* JsxElement */:
31438
- return visitNode(cbNode, node.openingElement) ||
31439
- visitNodes(cbNode, cbNodes, node.children) ||
31440
- visitNode(cbNode, node.closingElement);
31441
- case 282 /* JsxFragment */:
31442
- return visitNode(cbNode, node.openingFragment) ||
31443
- visitNodes(cbNode, cbNodes, node.children) ||
31444
- visitNode(cbNode, node.closingFragment);
31445
- case 279 /* JsxSelfClosingElement */:
31446
- case 280 /* JsxOpeningElement */:
31447
- return visitNode(cbNode, node.tagName) ||
31448
- visitNodes(cbNode, cbNodes, node.typeArguments) ||
31449
- visitNode(cbNode, node.attributes);
31450
- case 286 /* JsxAttributes */:
31451
- return visitNodes(cbNode, cbNodes, node.properties);
31452
- case 285 /* JsxAttribute */:
31453
- return visitNode(cbNode, node.name) ||
31454
- visitNode(cbNode, node.initializer);
31455
- case 287 /* JsxSpreadAttribute */:
31456
- return visitNode(cbNode, node.expression);
31457
- case 288 /* JsxExpression */:
31458
- return visitNode(cbNode, node.dotDotDotToken) ||
31459
- visitNode(cbNode, node.expression);
31460
- case 281 /* JsxClosingElement */:
31461
- return visitNode(cbNode, node.tagName);
31462
- case 185 /* OptionalType */:
31463
- case 186 /* RestType */:
31464
- case 309 /* JSDocTypeExpression */:
31465
- case 315 /* JSDocNonNullableType */:
31466
- case 314 /* JSDocNullableType */:
31467
- case 316 /* JSDocOptionalType */:
31468
- case 318 /* JSDocVariadicType */:
31469
- return visitNode(cbNode, node.type);
31470
- case 317 /* JSDocFunctionType */:
31471
- return visitNodes(cbNode, cbNodes, node.parameters) ||
31472
- visitNode(cbNode, node.type);
31473
- case 320 /* JSDoc */:
31474
- return (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31475
- || visitNodes(cbNode, cbNodes, node.tags);
31476
- case 346 /* JSDocSeeTag */:
31477
- return visitNode(cbNode, node.tagName) ||
31478
- visitNode(cbNode, node.name) ||
31479
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31480
- case 310 /* JSDocNameReference */:
31481
- return visitNode(cbNode, node.name);
31482
- case 311 /* JSDocMemberName */:
31483
- return visitNode(cbNode, node.left) ||
31484
- visitNode(cbNode, node.right);
31485
- case 340 /* JSDocParameterTag */:
31486
- case 347 /* JSDocPropertyTag */:
31487
- return visitNode(cbNode, node.tagName) ||
31488
- (node.isNameFirst
31489
- ? visitNode(cbNode, node.name) ||
31490
- visitNode(cbNode, node.typeExpression) ||
31491
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31492
- : visitNode(cbNode, node.typeExpression) ||
31493
- visitNode(cbNode, node.name) ||
31494
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment)));
31495
- case 330 /* JSDocAuthorTag */:
31496
- return visitNode(cbNode, node.tagName) ||
31497
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31498
- case 329 /* JSDocImplementsTag */:
31499
- return visitNode(cbNode, node.tagName) ||
31500
- visitNode(cbNode, node.class) ||
31501
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31502
- case 328 /* JSDocAugmentsTag */:
31503
- return visitNode(cbNode, node.tagName) ||
31504
- visitNode(cbNode, node.class) ||
31505
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31506
- case 344 /* JSDocTemplateTag */:
31507
- return visitNode(cbNode, node.tagName) ||
31508
- visitNode(cbNode, node.constraint) ||
31509
- visitNodes(cbNode, cbNodes, node.typeParameters) ||
31510
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31511
- case 345 /* JSDocTypedefTag */:
31512
- return visitNode(cbNode, node.tagName) ||
31513
- (node.typeExpression &&
31514
- node.typeExpression.kind === 309 /* JSDocTypeExpression */
31515
- ? visitNode(cbNode, node.typeExpression) ||
31516
- visitNode(cbNode, node.fullName) ||
31517
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment))
31518
- : visitNode(cbNode, node.fullName) ||
31519
- visitNode(cbNode, node.typeExpression) ||
31520
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment)));
31521
- case 338 /* JSDocCallbackTag */:
31522
- return visitNode(cbNode, node.tagName) ||
31523
- visitNode(cbNode, node.fullName) ||
31524
- visitNode(cbNode, node.typeExpression) ||
31525
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31526
- case 341 /* JSDocReturnTag */:
31527
- case 343 /* JSDocTypeTag */:
31528
- case 342 /* JSDocThisTag */:
31529
- case 339 /* JSDocEnumTag */:
31530
- return visitNode(cbNode, node.tagName) ||
31531
- visitNode(cbNode, node.typeExpression) ||
31532
- (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31533
- case 323 /* JSDocSignature */:
31534
- return ts.forEach(node.typeParameters, cbNode) ||
31535
- ts.forEach(node.parameters, cbNode) ||
31536
- visitNode(cbNode, node.type);
31537
- case 324 /* JSDocLink */:
31538
- case 325 /* JSDocLinkCode */:
31539
- case 326 /* JSDocLinkPlain */:
31540
- return visitNode(cbNode, node.name);
31541
- case 322 /* JSDocTypeLiteral */:
31542
- return ts.forEach(node.jsDocPropertyTags, cbNode);
31543
- case 327 /* JSDocTag */:
31544
- case 332 /* JSDocClassTag */:
31545
- case 333 /* JSDocPublicTag */:
31546
- case 334 /* JSDocPrivateTag */:
31547
- case 335 /* JSDocProtectedTag */:
31548
- case 336 /* JSDocReadonlyTag */:
31549
- case 331 /* JSDocDeprecatedTag */:
31550
- return visitNode(cbNode, node.tagName)
31551
- || (typeof node.comment === "string" ? undefined : visitNodes(cbNode, cbNodes, node.comment));
31552
- case 350 /* PartiallyEmittedExpression */:
31553
- return visitNode(cbNode, node.expression);
31554
- }
31713
+ var fn = forEachChildTable[node.kind];
31714
+ return fn === undefined ? undefined : fn(node, cbNode, cbNodes);
31555
31715
  }
31556
31716
  ts.forEachChild = forEachChild;
31557
31717
  /** @internal */
@@ -33981,7 +34141,7 @@ var ts;
33981
34141
  var type = parseTypeAnnotation();
33982
34142
  parseTypeMemberSemicolon();
33983
34143
  var node = factory.createIndexSignature(modifiers, parameters, type);
33984
- node.decorators = decorators;
34144
+ node.illegalDecorators = decorators;
33985
34145
  return withJSDoc(finishNode(node, pos), hasJSDoc);
33986
34146
  }
33987
34147
  function parsePropertyOrMethodSignature(pos, hasJSDoc, modifiers) {
@@ -36141,7 +36301,7 @@ var ts;
36141
36301
  node = factory.createPropertyAssignment(name, initializer);
36142
36302
  }
36143
36303
  // Decorators, Modifiers, questionToken, and exclamationToken are not supported by property assignments and are reported in the grammar checker
36144
- node.decorators = decorators;
36304
+ node.illegalDecorators = decorators;
36145
36305
  node.modifiers = modifiers;
36146
36306
  node.questionToken = questionToken;
36147
36307
  node.exclamationToken = exclamationToken;
@@ -36789,7 +36949,7 @@ var ts;
36789
36949
  // would follow. For recovery and error reporting purposes, return an incomplete declaration.
36790
36950
  var missing = createMissingNode(276 /* MissingDeclaration */, /*reportAtCurrentPosition*/ true, ts.Diagnostics.Declaration_expected);
36791
36951
  ts.setTextRangePos(missing, pos);
36792
- missing.decorators = decorators;
36952
+ missing.illegalDecorators = decorators;
36793
36953
  missing.modifiers = modifiers;
36794
36954
  return missing;
36795
36955
  }
@@ -36932,7 +37092,7 @@ var ts;
36932
37092
  parseSemicolon();
36933
37093
  var node = factory.createVariableStatement(modifiers, declarationList);
36934
37094
  // Decorators are not allowed on a variable statement, so we keep track of them to report them in the grammar checker.
36935
- node.decorators = decorators;
37095
+ node.illegalDecorators = decorators;
36936
37096
  return withJSDoc(finishNode(node, pos), hasJSDoc);
36937
37097
  }
36938
37098
  function parseFunctionDeclaration(pos, hasJSDoc, decorators, modifiers) {
@@ -36952,7 +37112,7 @@ var ts;
36952
37112
  var body = parseFunctionBlockOrSemicolon(isGenerator | isAsync, ts.Diagnostics.or_expected);
36953
37113
  setAwaitContext(savedAwaitContext);
36954
37114
  var node = factory.createFunctionDeclaration(modifiers, asteriskToken, name, typeParameters, parameters, type, body);
36955
- node.decorators = decorators;
37115
+ node.illegalDecorators = decorators;
36956
37116
  return withJSDoc(finishNode(node, pos), hasJSDoc);
36957
37117
  }
36958
37118
  function parseConstructorName() {
@@ -36975,7 +37135,7 @@ var ts;
36975
37135
  var body = parseFunctionBlockOrSemicolon(0 /* None */, ts.Diagnostics.or_expected);
36976
37136
  var node = factory.createConstructorDeclaration(modifiers, parameters, body);
36977
37137
  // Attach invalid nodes if they exist so that we can report them in the grammar checker.
36978
- node.decorators = decorators;
37138
+ node.illegalDecorators = decorators;
36979
37139
  node.typeParameters = typeParameters;
36980
37140
  node.type = type;
36981
37141
  return withJSDoc(finishNode(node, pos), hasJSDoc);
@@ -37091,7 +37251,7 @@ var ts;
37091
37251
  parseExpectedToken(124 /* StaticKeyword */);
37092
37252
  var body = parseClassStaticBlockBody();
37093
37253
  var node = withJSDoc(finishNode(factory.createClassStaticBlockDeclaration(body), pos), hasJSDoc);
37094
- node.decorators = decorators;
37254
+ node.illegalDecorators = decorators;
37095
37255
  node.modifiers = modifiers;
37096
37256
  return node;
37097
37257
  }
@@ -37332,7 +37492,7 @@ var ts;
37332
37492
  var heritageClauses = parseHeritageClauses();
37333
37493
  var members = parseObjectTypeMembers();
37334
37494
  var node = factory.createInterfaceDeclaration(modifiers, name, typeParameters, heritageClauses, members);
37335
- node.decorators = decorators;
37495
+ node.illegalDecorators = decorators;
37336
37496
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37337
37497
  }
37338
37498
  function parseTypeAliasDeclaration(pos, hasJSDoc, decorators, modifiers) {
@@ -37343,7 +37503,7 @@ var ts;
37343
37503
  var type = token() === 138 /* IntrinsicKeyword */ && tryParse(parseKeywordAndNoDot) || parseType();
37344
37504
  parseSemicolon();
37345
37505
  var node = factory.createTypeAliasDeclaration(modifiers, name, typeParameters, type);
37346
- node.decorators = decorators;
37506
+ node.illegalDecorators = decorators;
37347
37507
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37348
37508
  }
37349
37509
  // In an ambient declaration, the grammar only allows integer literals as initializers.
@@ -37369,7 +37529,7 @@ var ts;
37369
37529
  members = createMissingList();
37370
37530
  }
37371
37531
  var node = factory.createEnumDeclaration(modifiers, name, members);
37372
- node.decorators = decorators;
37532
+ node.illegalDecorators = decorators;
37373
37533
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37374
37534
  }
37375
37535
  function parseModuleBlock() {
@@ -37393,7 +37553,7 @@ var ts;
37393
37553
  ? parseModuleOrNamespaceDeclaration(getNodePos(), /*hasJSDoc*/ false, /*decorators*/ undefined, /*modifiers*/ undefined, 4 /* NestedNamespace */ | namespaceFlag)
37394
37554
  : parseModuleBlock();
37395
37555
  var node = factory.createModuleDeclaration(modifiers, name, body, flags);
37396
- node.decorators = decorators;
37556
+ node.illegalDecorators = decorators;
37397
37557
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37398
37558
  }
37399
37559
  function parseAmbientExternalModuleDeclaration(pos, hasJSDoc, decorators, modifiers) {
@@ -37416,7 +37576,7 @@ var ts;
37416
37576
  parseSemicolon();
37417
37577
  }
37418
37578
  var node = factory.createModuleDeclaration(modifiers, name, body, flags);
37419
- node.decorators = decorators;
37579
+ node.illegalDecorators = decorators;
37420
37580
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37421
37581
  }
37422
37582
  function parseModuleDeclaration(pos, hasJSDoc, decorators, modifiers) {
@@ -37456,7 +37616,7 @@ var ts;
37456
37616
  parseSemicolon();
37457
37617
  var node = factory.createNamespaceExportDeclaration(name);
37458
37618
  // NamespaceExportDeclaration nodes cannot have decorators or modifiers, so we attach them here so we can report them in the grammar checker
37459
- node.decorators = decorators;
37619
+ node.illegalDecorators = decorators;
37460
37620
  node.modifiers = modifiers;
37461
37621
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37462
37622
  }
@@ -37496,7 +37656,7 @@ var ts;
37496
37656
  }
37497
37657
  parseSemicolon();
37498
37658
  var node = factory.createImportDeclaration(modifiers, importClause, moduleSpecifier, assertClause);
37499
- node.decorators = decorators;
37659
+ node.illegalDecorators = decorators;
37500
37660
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37501
37661
  }
37502
37662
  function parseAssertEntry() {
@@ -37541,7 +37701,7 @@ var ts;
37541
37701
  var moduleReference = parseModuleReference();
37542
37702
  parseSemicolon();
37543
37703
  var node = factory.createImportEqualsDeclaration(modifiers, isTypeOnly, identifier, moduleReference);
37544
- node.decorators = decorators;
37704
+ node.illegalDecorators = decorators;
37545
37705
  var finished = withJSDoc(finishNode(node, pos), hasJSDoc);
37546
37706
  return finished;
37547
37707
  }
@@ -37731,7 +37891,7 @@ var ts;
37731
37891
  parseSemicolon();
37732
37892
  setAwaitContext(savedAwaitContext);
37733
37893
  var node = factory.createExportDeclaration(modifiers, isTypeOnly, exportClause, moduleSpecifier, assertClause);
37734
- node.decorators = decorators;
37894
+ node.illegalDecorators = decorators;
37735
37895
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37736
37896
  }
37737
37897
  function parseExportAssignment(pos, hasJSDoc, decorators, modifiers) {
@@ -37748,7 +37908,7 @@ var ts;
37748
37908
  parseSemicolon();
37749
37909
  setAwaitContext(savedAwaitContext);
37750
37910
  var node = factory.createExportAssignment(modifiers, isExportEquals, expression);
37751
- node.decorators = decorators;
37911
+ node.illegalDecorators = decorators;
37752
37912
  return withJSDoc(finishNode(node, pos), hasJSDoc);
37753
37913
  }
37754
37914
  var ParsingContext;
@@ -51046,41 +51206,61 @@ var ts;
51046
51206
  return typeof file.externalModuleIndicator !== "object" && !resolveExportByName(moduleSymbol, ts.escapeLeadingUnderscores("__esModule"), /*sourceNode*/ undefined, dontResolveAlias);
51047
51207
  }
51048
51208
  function getTargetOfImportClause(node, dontResolveAlias) {
51049
- var _a;
51050
51209
  var moduleSymbol = resolveExternalModuleName(node, node.parent.moduleSpecifier);
51051
51210
  if (moduleSymbol) {
51052
- var exportDefaultSymbol = void 0;
51053
- if (ts.isShorthandAmbientModuleSymbol(moduleSymbol)) {
51054
- exportDefaultSymbol = moduleSymbol;
51055
- }
51056
- else {
51057
- exportDefaultSymbol = resolveExportByName(moduleSymbol, "default" /* Default */, node, dontResolveAlias);
51058
- }
51059
- var file = (_a = moduleSymbol.declarations) === null || _a === void 0 ? void 0 : _a.find(ts.isSourceFile);
51060
- var hasDefaultOnly = isOnlyImportedAsDefault(node.parent.moduleSpecifier);
51061
- var hasSyntheticDefault = canHaveSyntheticDefault(file, moduleSymbol, dontResolveAlias, node.parent.moduleSpecifier);
51062
- if (!exportDefaultSymbol && !hasSyntheticDefault && !hasDefaultOnly) {
51063
- if (hasExportAssignmentSymbol(moduleSymbol)) {
51064
- var compilerOptionName = moduleKind >= ts.ModuleKind.ES2015 ? "allowSyntheticDefaultImports" : "esModuleInterop";
51065
- var exportEqualsSymbol = moduleSymbol.exports.get("export=" /* ExportEquals */);
51066
- var exportAssignment = exportEqualsSymbol.valueDeclaration;
51067
- var err = error(node.name, ts.Diagnostics.Module_0_can_only_be_default_imported_using_the_1_flag, symbolToString(moduleSymbol), compilerOptionName);
51068
- if (exportAssignment) {
51069
- 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));
51070
- }
51071
- }
51072
- else {
51073
- reportNonDefaultExport(moduleSymbol, node);
51211
+ return getTargetofModuleDefault(moduleSymbol, node, dontResolveAlias);
51212
+ }
51213
+ }
51214
+ function getTargetofModuleDefault(moduleSymbol, node, dontResolveAlias) {
51215
+ var _a;
51216
+ var exportDefaultSymbol;
51217
+ if (ts.isShorthandAmbientModuleSymbol(moduleSymbol)) {
51218
+ exportDefaultSymbol = moduleSymbol;
51219
+ }
51220
+ else {
51221
+ exportDefaultSymbol = resolveExportByName(moduleSymbol, "default" /* Default */, node, dontResolveAlias);
51222
+ }
51223
+ var file = (_a = moduleSymbol.declarations) === null || _a === void 0 ? void 0 : _a.find(ts.isSourceFile);
51224
+ var specifier = getModuleSpecifierForImportOrExport(node);
51225
+ if (!specifier) {
51226
+ return exportDefaultSymbol;
51227
+ }
51228
+ var hasDefaultOnly = isOnlyImportedAsDefault(specifier);
51229
+ var hasSyntheticDefault = canHaveSyntheticDefault(file, moduleSymbol, dontResolveAlias, specifier);
51230
+ if (!exportDefaultSymbol && !hasSyntheticDefault && !hasDefaultOnly) {
51231
+ if (hasExportAssignmentSymbol(moduleSymbol)) {
51232
+ var compilerOptionName = moduleKind >= ts.ModuleKind.ES2015 ? "allowSyntheticDefaultImports" : "esModuleInterop";
51233
+ var exportEqualsSymbol = moduleSymbol.exports.get("export=" /* ExportEquals */);
51234
+ var exportAssignment = exportEqualsSymbol.valueDeclaration;
51235
+ var err = error(node.name, ts.Diagnostics.Module_0_can_only_be_default_imported_using_the_1_flag, symbolToString(moduleSymbol), compilerOptionName);
51236
+ if (exportAssignment) {
51237
+ 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));
51074
51238
  }
51075
51239
  }
51076
- else if (hasSyntheticDefault || hasDefaultOnly) {
51077
- // per emit behavior, a synthetic default overrides a "real" .default member if `__esModule` is not present
51078
- var resolved = resolveExternalModuleSymbol(moduleSymbol, dontResolveAlias) || resolveSymbol(moduleSymbol, dontResolveAlias);
51079
- markSymbolOfAliasDeclarationIfTypeOnly(node, moduleSymbol, resolved, /*overwriteTypeOnly*/ false);
51080
- return resolved;
51240
+ else if (ts.isImportClause(node)) {
51241
+ reportNonDefaultExport(moduleSymbol, node);
51081
51242
  }
51082
- markSymbolOfAliasDeclarationIfTypeOnly(node, exportDefaultSymbol, /*finalTarget*/ undefined, /*overwriteTypeOnly*/ false);
51083
- return exportDefaultSymbol;
51243
+ else {
51244
+ errorNoModuleMemberSymbol(moduleSymbol, moduleSymbol, node, ts.isImportOrExportSpecifier(node) && node.propertyName || node.name);
51245
+ }
51246
+ }
51247
+ else if (hasSyntheticDefault || hasDefaultOnly) {
51248
+ // per emit behavior, a synthetic default overrides a "real" .default member if `__esModule` is not present
51249
+ var resolved = resolveExternalModuleSymbol(moduleSymbol, dontResolveAlias) || resolveSymbol(moduleSymbol, dontResolveAlias);
51250
+ markSymbolOfAliasDeclarationIfTypeOnly(node, moduleSymbol, resolved, /*overwriteTypeOnly*/ false);
51251
+ return resolved;
51252
+ }
51253
+ markSymbolOfAliasDeclarationIfTypeOnly(node, exportDefaultSymbol, /*finalTarget*/ undefined, /*overwriteTypeOnly*/ false);
51254
+ return exportDefaultSymbol;
51255
+ }
51256
+ function getModuleSpecifierForImportOrExport(node) {
51257
+ switch (node.kind) {
51258
+ case 267 /* ImportClause */: return node.parent.moduleSpecifier;
51259
+ case 265 /* ImportEqualsDeclaration */: return ts.isExternalModuleReference(node.moduleReference) ? node.moduleReference.expression : undefined;
51260
+ case 268 /* NamespaceImport */: return node.parent.parent.moduleSpecifier;
51261
+ case 270 /* ImportSpecifier */: return node.parent.parent.parent.moduleSpecifier;
51262
+ case 275 /* ExportSpecifier */: return node.parent.parent.moduleSpecifier;
51263
+ default: return ts.Debug.assertNever(node);
51084
51264
  }
51085
51265
  }
51086
51266
  function reportNonDefaultExport(moduleSymbol, node) {
@@ -51170,7 +51350,7 @@ var ts;
51170
51350
  }
51171
51351
  }
51172
51352
  function getExternalModuleMember(node, specifier, dontResolveAlias) {
51173
- var _a, _b;
51353
+ var _a;
51174
51354
  if (dontResolveAlias === void 0) { dontResolveAlias = false; }
51175
51355
  var moduleSpecifier = ts.getExternalModuleRequireArgument(node) || node.moduleSpecifier;
51176
51356
  var moduleSymbol = resolveExternalModuleName(node, moduleSpecifier); // TODO: GH#18217
@@ -51206,29 +51386,33 @@ var ts;
51206
51386
  combineValueAndTypeSymbols(symbolFromVariable, symbolFromModule) :
51207
51387
  symbolFromModule || symbolFromVariable;
51208
51388
  if (!symbol) {
51209
- var moduleName = getFullyQualifiedName(moduleSymbol, node);
51210
- var declarationName = ts.declarationNameToString(name);
51211
- var suggestion = getSuggestedSymbolForNonexistentModule(name, targetSymbol);
51212
- if (suggestion !== undefined) {
51213
- var suggestionName = symbolToString(suggestion);
51214
- var diagnostic = error(name, ts.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2, moduleName, declarationName, suggestionName);
51215
- if (suggestion.valueDeclaration) {
51216
- ts.addRelatedInfo(diagnostic, ts.createDiagnosticForNode(suggestion.valueDeclaration, ts.Diagnostics._0_is_declared_here, suggestionName));
51217
- }
51218
- }
51219
- else {
51220
- if ((_b = moduleSymbol.exports) === null || _b === void 0 ? void 0 : _b.has("default" /* Default */)) {
51221
- error(name, ts.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead, moduleName, declarationName);
51222
- }
51223
- else {
51224
- reportNonExportedMember(node, name, declarationName, moduleSymbol, moduleName);
51225
- }
51226
- }
51389
+ errorNoModuleMemberSymbol(moduleSymbol, targetSymbol, node, name);
51227
51390
  }
51228
51391
  return symbol;
51229
51392
  }
51230
51393
  }
51231
51394
  }
51395
+ function errorNoModuleMemberSymbol(moduleSymbol, targetSymbol, node, name) {
51396
+ var _a;
51397
+ var moduleName = getFullyQualifiedName(moduleSymbol, node);
51398
+ var declarationName = ts.declarationNameToString(name);
51399
+ var suggestion = getSuggestedSymbolForNonexistentModule(name, targetSymbol);
51400
+ if (suggestion !== undefined) {
51401
+ var suggestionName = symbolToString(suggestion);
51402
+ var diagnostic = error(name, ts.Diagnostics._0_has_no_exported_member_named_1_Did_you_mean_2, moduleName, declarationName, suggestionName);
51403
+ if (suggestion.valueDeclaration) {
51404
+ ts.addRelatedInfo(diagnostic, ts.createDiagnosticForNode(suggestion.valueDeclaration, ts.Diagnostics._0_is_declared_here, suggestionName));
51405
+ }
51406
+ }
51407
+ else {
51408
+ if ((_a = moduleSymbol.exports) === null || _a === void 0 ? void 0 : _a.has("default" /* Default */)) {
51409
+ error(name, ts.Diagnostics.Module_0_has_no_exported_member_1_Did_you_mean_to_use_import_1_from_0_instead, moduleName, declarationName);
51410
+ }
51411
+ else {
51412
+ reportNonExportedMember(node, name, declarationName, moduleSymbol, moduleName);
51413
+ }
51414
+ }
51415
+ }
51232
51416
  function reportNonExportedMember(node, name, declarationName, moduleSymbol, moduleName) {
51233
51417
  var _a, _b;
51234
51418
  var localSymbol = (_b = (_a = moduleSymbol.valueDeclaration) === null || _a === void 0 ? void 0 : _a.locals) === null || _b === void 0 ? void 0 : _b.get(name.escapedText);
@@ -51274,6 +51458,13 @@ var ts;
51274
51458
  }
51275
51459
  }
51276
51460
  function getTargetOfImportSpecifier(node, dontResolveAlias) {
51461
+ if (ts.isImportSpecifier(node) && ts.idText(node.propertyName || node.name) === "default" /* Default */) {
51462
+ var specifier = getModuleSpecifierForImportOrExport(node);
51463
+ var moduleSymbol = specifier && resolveExternalModuleName(node, specifier);
51464
+ if (moduleSymbol) {
51465
+ return getTargetofModuleDefault(moduleSymbol, node, dontResolveAlias);
51466
+ }
51467
+ }
51277
51468
  var root = ts.isBindingElement(node) ? ts.getRootDeclaration(node) : node.parent.parent.parent;
51278
51469
  var commonJSPropertyAccess = getCommonJSPropertyAccess(root);
51279
51470
  var resolved = getExternalModuleMember(root, commonJSPropertyAccess || node, dontResolveAlias);
@@ -51295,6 +51486,13 @@ var ts;
51295
51486
  return resolved;
51296
51487
  }
51297
51488
  function getTargetOfExportSpecifier(node, meaning, dontResolveAlias) {
51489
+ if (ts.idText(node.propertyName || node.name) === "default" /* Default */) {
51490
+ var specifier = getModuleSpecifierForImportOrExport(node);
51491
+ var moduleSymbol = specifier && resolveExternalModuleName(node, specifier);
51492
+ if (moduleSymbol) {
51493
+ return getTargetofModuleDefault(moduleSymbol, node, !!dontResolveAlias);
51494
+ }
51495
+ }
51298
51496
  var resolved = node.parent.parent.moduleSpecifier ?
51299
51497
  getExternalModuleMember(node.parent.parent, node, dontResolveAlias) :
51300
51498
  resolveEntityName(node.propertyName || node.name, meaning, /*ignoreErrors*/ false, dontResolveAlias);
@@ -55743,7 +55941,7 @@ var ts;
55743
55941
  // This is an else/if as accessors and properties can't merge in TS, but might in JS
55744
55942
  // If this happens, we assume the accessor takes priority, as it imposes more constraints
55745
55943
  else if (p.flags & (4 /* Property */ | 3 /* Variable */ | 98304 /* Accessor */)) {
55746
- 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),
55944
+ 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),
55747
55945
  // TODO: https://github.com/microsoft/TypeScript/pull/32372#discussion_r328386357
55748
55946
  // interface members can't have initializers, however class members _can_
55749
55947
  /*initializer*/ undefined), ((_d = p.declarations) === null || _d === void 0 ? void 0 : _d.find(ts.or(ts.isPropertyDeclaration, ts.isVariableDeclaration))) || firstPropertyLikeDecl);
@@ -88767,7 +88965,7 @@ var ts;
88767
88965
  return checkGrammarDecorators(node) || checkGrammarModifiers(node);
88768
88966
  }
88769
88967
  function checkGrammarDecorators(node) {
88770
- if (ts.canHaveIllegalDecorators(node) && ts.some(node.decorators)) {
88968
+ if (ts.canHaveIllegalDecorators(node) && ts.some(node.illegalDecorators)) {
88771
88969
  return grammarErrorOnFirstToken(node, ts.Diagnostics.Decorators_are_not_valid_here);
88772
88970
  }
88773
88971
  if (!ts.canHaveDecorators(node) || !ts.hasDecorators(node)) {
@@ -182699,9 +182897,9 @@ var ts;
182699
182897
  // - error: 5.0
182700
182898
  var ts;
182701
182899
  (function (ts) {
182702
- 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." };
182703
- 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." };
182704
- 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." };
182900
+ 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." };
182901
+ 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." };
182902
+ 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." };
182705
182903
  function patchNodeFactory(factory) {
182706
182904
  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;
182707
182905
  factory.createParameterDeclaration = ts.buildOverload("createParameterDeclaration")
@@ -182928,7 +183126,7 @@ var ts;
182928
183126
  return (decorators === undefined || !ts.some(decorators, ts.isModifier)) &&
182929
183127
  (modifiers === undefined || !ts.some(modifiers, ts.isParameter)) &&
182930
183128
  (parameters === undefined || ts.isArray(parameters)) &&
182931
- (body === undefined || !ts.isBlock(body));
183129
+ (body === undefined || ts.isBlock(body));
182932
183130
  },
182933
183131
  })
182934
183132
  .deprecate({
@@ -182957,7 +183155,7 @@ var ts;
182957
183155
  return (decorators === undefined || !ts.some(decorators, ts.isModifier)) &&
182958
183156
  (modifiers === undefined || !ts.some(modifiers, ts.isParameter)) &&
182959
183157
  (parameters === undefined || ts.isArray(parameters)) &&
182960
- (body === undefined || !ts.isBlock(body));
183158
+ (body === undefined || ts.isBlock(body));
182961
183159
  },
182962
183160
  })
182963
183161
  .deprecate({