@openrewrite/rewrite 0.23.1 → 0.25.0

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.
Files changed (63) hide show
  1. package/LICENSE.md +87 -0
  2. package/dist/src/core/parser.js +17 -7
  3. package/dist/src/core/parser.js.map +1 -1
  4. package/dist/src/core/tree.d.ts +1 -1
  5. package/dist/src/core/tree.d.ts.map +1 -1
  6. package/dist/src/java/markers.d.ts +2 -2
  7. package/dist/src/java/markers.d.ts.map +1 -1
  8. package/dist/src/java/remote/receiver.js +17 -7
  9. package/dist/src/java/remote/receiver.js.map +1 -1
  10. package/dist/src/java/remote/sender.js +17 -7
  11. package/dist/src/java/remote/sender.js.map +1 -1
  12. package/dist/src/java/tree/support_types.d.ts +1 -1
  13. package/dist/src/java/tree/support_types.d.ts.map +1 -1
  14. package/dist/src/java/tree/tree.d.ts +70 -70
  15. package/dist/src/java/tree/tree.d.ts.map +1 -1
  16. package/dist/src/java/tree/tree.js +17 -7
  17. package/dist/src/java/tree/tree.js.map +1 -1
  18. package/dist/src/java/visitor.js +17 -7
  19. package/dist/src/java/visitor.js.map +1 -1
  20. package/dist/src/javascript/extensions.js +17 -7
  21. package/dist/src/javascript/extensions.js.map +1 -1
  22. package/dist/src/javascript/parser.d.ts +24 -20
  23. package/dist/src/javascript/parser.d.ts.map +1 -1
  24. package/dist/src/javascript/parser.js +149 -76
  25. package/dist/src/javascript/parser.js.map +1 -1
  26. package/dist/src/javascript/parserUtils.d.ts +1 -1
  27. package/dist/src/javascript/parserUtils.js +17 -7
  28. package/dist/src/javascript/parserUtils.js.map +1 -1
  29. package/dist/src/javascript/projectParser.js +17 -7
  30. package/dist/src/javascript/projectParser.js.map +1 -1
  31. package/dist/src/javascript/remote/receiver.d.ts.map +1 -1
  32. package/dist/src/javascript/remote/receiver.js +219 -15
  33. package/dist/src/javascript/remote/receiver.js.map +1 -1
  34. package/dist/src/javascript/remote/remote_extensions.js +17 -7
  35. package/dist/src/javascript/remote/remote_extensions.js.map +1 -1
  36. package/dist/src/javascript/remote/sender.d.ts.map +1 -1
  37. package/dist/src/javascript/remote/sender.js +167 -11
  38. package/dist/src/javascript/remote/sender.js.map +1 -1
  39. package/dist/src/javascript/tree/extensions.js +17 -7
  40. package/dist/src/javascript/tree/extensions.js.map +1 -1
  41. package/dist/src/javascript/tree/support_types.d.ts +53 -7
  42. package/dist/src/javascript/tree/support_types.d.ts.map +1 -1
  43. package/dist/src/javascript/tree/support_types.js +63 -7
  44. package/dist/src/javascript/tree/support_types.js.map +1 -1
  45. package/dist/src/javascript/tree/tree.d.ts +916 -89
  46. package/dist/src/javascript/tree/tree.d.ts.map +1 -1
  47. package/dist/src/javascript/tree/tree.js +1755 -613
  48. package/dist/src/javascript/tree/tree.js.map +1 -1
  49. package/dist/src/javascript/typeMapping.js +17 -7
  50. package/dist/src/javascript/typeMapping.js.map +1 -1
  51. package/dist/src/javascript/visitor.d.ts +17 -1
  52. package/dist/src/javascript/visitor.d.ts.map +1 -1
  53. package/dist/src/javascript/visitor.js +225 -10
  54. package/dist/src/javascript/visitor.js.map +1 -1
  55. package/dist/src/json/tree.d.ts +1 -1
  56. package/dist/src/json/tree.d.ts.map +1 -1
  57. package/dist/src/json/visitor.js +17 -7
  58. package/dist/src/json/visitor.js.map +1 -1
  59. package/dist/src/yaml/tree/support_types.d.ts +1 -1
  60. package/dist/src/yaml/tree/support_types.d.ts.map +1 -1
  61. package/dist/src/yaml/tree/tree.d.ts +11 -11
  62. package/package.json +1 -1
  63. package/LICENSE +0 -201
@@ -21,16 +21,27 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
21
21
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
22
22
  return c > 3 && r && Object.defineProperty(target, key, r), r;
23
23
  };
24
- var __importStar = (this && this.__importStar) || function (mod) {
25
- if (mod && mod.__esModule) return mod;
26
- var result = {};
27
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
28
- __setModuleDefault(result, mod);
29
- return result;
30
- };
31
- var CompilationUnit_1, Alias_1, ArrowFunction_1, Await_1, ConditionalType_1, DefaultType_1, Delete_1, Export_1, ExpressionWithTypeArguments_1, FunctionType_1, JsImport_1, JsImportSpecifier_1, JsBinary_1, ObjectBindingDeclarations_1, PropertyAssignment_1, ScopedVariableDeclarations_1, TaggedTemplateExpression_1, TemplateExpression_1, Tuple_1, TypeDeclaration_1, TypeOf_1, TypeQuery_1, TypeOperator_1, Unary_1, Union_1, Intersection_1, Void_1, Yield_1, TypeInfo_1, JSVariableDeclarations_1, JSMethodDeclaration_1, JSForOfLoop_1, JSForInLoop_1, JSForInOfLoopControl_1, NamespaceDeclaration_1, FunctionDeclaration_1, TypeLiteral_1, IndexSignatureDeclaration_1, ArrayBindingPattern_1, BindingElement_1;
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ var CompilationUnit_1, Alias_1, ArrowFunction_1, Await_1, ConditionalType_1, DefaultType_1, Delete_1, Export_1, ExpressionWithTypeArguments_1, FunctionType_1, InferType_1, ImportType_1, JsImport_1, JsImportSpecifier_1, JsBinary_1, LiteralType_1, MappedType_1, ObjectBindingDeclarations_1, PropertyAssignment_1, SatisfiesExpression_1, ScopedVariableDeclarations_1, TaggedTemplateExpression_1, TemplateExpression_1, Tuple_1, TypeDeclaration_1, TypeOf_1, TypeQuery_1, TypeOperator_1, TypePredicate_1, Unary_1, Union_1, Intersection_1, Void_1, Yield_1, TypeInfo_1, JSVariableDeclarations_1, JSMethodDeclaration_1, JSForOfLoop_1, JSForInLoop_1, JSForInOfLoopControl_1, NamespaceDeclaration_1, FunctionDeclaration_1, TypeLiteral_1, IndexSignatureDeclaration_1, ArrayBindingPattern_1, BindingElement_1, ExportDeclaration_1, ExportAssignment_1, NamedExports_1, ExportSpecifier_1, IndexedAccessType_1, JsAssignmentOperation_1, TypeTreeExpression_1;
32
42
  Object.defineProperty(exports, "__esModule", { value: true });
33
- exports.BindingElement = exports.ArrayBindingPattern = exports.IndexSignatureDeclaration = exports.TypeLiteral = exports.FunctionDeclaration = exports.NamespaceDeclaration = exports.JSForInOfLoopControl = exports.JSForInLoop = exports.JSForOfLoop = exports.JSMethodDeclaration = exports.JSVariableDeclarations = exports.TypeInfo = exports.Yield = exports.Void = exports.Intersection = exports.Union = exports.Unary = exports.TypeOperator = exports.TypeQuery = exports.TypeOf = exports.TypeDeclaration = exports.Tuple = exports.TemplateExpression = exports.TaggedTemplateExpression = exports.ScopedVariableDeclarations = exports.PropertyAssignment = exports.ObjectBindingDeclarations = exports.JsBinary = exports.JsImportSpecifier = exports.JsImport = exports.FunctionType = exports.ExpressionWithTypeArguments = exports.Export = exports.Delete = exports.DefaultType = exports.ConditionalType = exports.Await = exports.ArrowFunction = exports.Alias = exports.CompilationUnit = void 0;
43
+ exports.ExportSpecifier = exports.NamedExports = exports.ExportAssignment = exports.ExportDeclaration = exports.BindingElement = exports.ArrayBindingPattern = exports.IndexSignatureDeclaration = exports.TypeLiteral = exports.FunctionDeclaration = exports.NamespaceDeclaration = exports.JSForInOfLoopControl = exports.JSForInLoop = exports.JSForOfLoop = exports.JSMethodDeclaration = exports.JSVariableDeclarations = exports.TypeInfo = exports.Yield = exports.Void = exports.Intersection = exports.Union = exports.Unary = exports.TypePredicate = exports.TypeOperator = exports.TypeQuery = exports.TypeOf = exports.TypeDeclaration = exports.Tuple = exports.TemplateExpression = exports.TaggedTemplateExpression = exports.ScopedVariableDeclarations = exports.SatisfiesExpression = exports.PropertyAssignment = exports.ObjectBindingDeclarations = exports.MappedType = exports.LiteralType = exports.JsBinary = exports.JsImportSpecifier = exports.JsImport = exports.ImportType = exports.InferType = exports.FunctionType = exports.ExpressionWithTypeArguments = exports.Export = exports.Delete = exports.DefaultType = exports.ConditionalType = exports.Await = exports.ArrowFunction = exports.Alias = exports.CompilationUnit = void 0;
44
+ exports.TypeTreeExpression = exports.JsAssignmentOperation = exports.IndexedAccessType = void 0;
34
45
  const extensions = __importStar(require("./extensions"));
35
46
  const support_types_1 = require("./support_types");
36
47
  const core_1 = require("../../core");
@@ -209,7 +220,7 @@ exports.Alias = Alias = Alias_1 = __decorate([
209
220
  (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$Alias")
210
221
  ], Alias);
211
222
  let ArrowFunction = ArrowFunction_1 = class ArrowFunction extends (0, support_types_1.JSMixin)(Object) {
212
- constructor(id, prefix, markers, leadingAnnotations, modifiers, typeParameters, parameters, returnTypeExpression, arrow, body, _type) {
223
+ constructor(id, prefix, markers, leadingAnnotations, modifiers, typeParameters, parameters, returnTypeExpression, body, _type) {
213
224
  super();
214
225
  this._id = id;
215
226
  this._prefix = prefix;
@@ -219,7 +230,6 @@ let ArrowFunction = ArrowFunction_1 = class ArrowFunction extends (0, support_ty
219
230
  this._typeParameters = typeParameters;
220
231
  this._parameters = parameters;
221
232
  this._returnTypeExpression = returnTypeExpression;
222
- this._arrow = arrow;
223
233
  this._body = body;
224
234
  this._type = _type;
225
235
  }
@@ -227,71 +237,76 @@ let ArrowFunction = ArrowFunction_1 = class ArrowFunction extends (0, support_ty
227
237
  return this._id;
228
238
  }
229
239
  withId(id) {
230
- return id === this._id ? this : new ArrowFunction_1(id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._arrow, this._body, this._type);
240
+ return id === this._id ? this : new ArrowFunction_1(id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
231
241
  }
232
242
  get prefix() {
233
243
  return this._prefix;
234
244
  }
235
245
  withPrefix(prefix) {
236
- return prefix === this._prefix ? this : new ArrowFunction_1(this._id, prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._arrow, this._body, this._type);
246
+ return prefix === this._prefix ? this : new ArrowFunction_1(this._id, prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
237
247
  }
238
248
  get markers() {
239
249
  return this._markers;
240
250
  }
241
251
  withMarkers(markers) {
242
- return markers === this._markers ? this : new ArrowFunction_1(this._id, this._prefix, markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._arrow, this._body, this._type);
252
+ return markers === this._markers ? this : new ArrowFunction_1(this._id, this._prefix, markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
243
253
  }
244
254
  get leadingAnnotations() {
245
255
  return this._leadingAnnotations;
246
256
  }
247
257
  withLeadingAnnotations(leadingAnnotations) {
248
- return leadingAnnotations === this._leadingAnnotations ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._arrow, this._body, this._type);
258
+ return leadingAnnotations === this._leadingAnnotations ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
249
259
  }
250
260
  get modifiers() {
251
261
  return this._modifiers;
252
262
  }
253
263
  withModifiers(modifiers) {
254
- return modifiers === this._modifiers ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._arrow, this._body, this._type);
264
+ return modifiers === this._modifiers ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
255
265
  }
256
266
  get typeParameters() {
257
267
  return this._typeParameters;
258
268
  }
259
269
  withTypeParameters(typeParameters) {
260
- return typeParameters === this._typeParameters ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, typeParameters, this._parameters, this._returnTypeExpression, this._arrow, this._body, this._type);
270
+ return typeParameters === this._typeParameters ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
261
271
  }
262
272
  get parameters() {
263
273
  return this._parameters;
264
274
  }
265
275
  withParameters(parameters) {
266
- return parameters === this._parameters ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, parameters, this._returnTypeExpression, this._arrow, this._body, this._type);
276
+ return parameters === this._parameters ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, parameters, this._returnTypeExpression, this._body, this._type);
267
277
  }
268
278
  get returnTypeExpression() {
269
279
  return this._returnTypeExpression;
270
280
  }
271
281
  withReturnTypeExpression(returnTypeExpression) {
272
- return returnTypeExpression === this._returnTypeExpression ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, returnTypeExpression, this._arrow, this._body, this._type);
273
- }
274
- get arrow() {
275
- return this._arrow;
276
- }
277
- withArrow(arrow) {
278
- return arrow === this._arrow ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, arrow, this._body, this._type);
282
+ return returnTypeExpression === this._returnTypeExpression ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, returnTypeExpression, this._body, this._type);
279
283
  }
280
284
  get body() {
281
- return this._body;
285
+ return this._body.element;
282
286
  }
283
287
  withBody(body) {
284
- return body === this._body ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._arrow, body, this._type);
288
+ return this.padding.withBody(this._body.withElement(body));
285
289
  }
286
290
  get type() {
287
291
  return this._type;
288
292
  }
289
293
  withType(_type) {
290
- return _type === this._type ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._arrow, this._body, _type);
294
+ return _type === this._type ? this : new ArrowFunction_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, _type);
291
295
  }
292
296
  acceptJavaScript(v, p) {
293
297
  return v.visitArrowFunction(this, p);
294
298
  }
299
+ get padding() {
300
+ const t = this;
301
+ return new class {
302
+ get body() {
303
+ return t._body;
304
+ }
305
+ withBody(body) {
306
+ return t._body === body ? t : new ArrowFunction_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeParameters, t._parameters, t._returnTypeExpression, body, t._type);
307
+ }
308
+ };
309
+ }
295
310
  };
296
311
  exports.ArrowFunction = ArrowFunction;
297
312
  exports.ArrowFunction = ArrowFunction = ArrowFunction_1 = __decorate([
@@ -661,12 +676,13 @@ exports.ExpressionWithTypeArguments = ExpressionWithTypeArguments = ExpressionWi
661
676
  (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ExpressionWithTypeArguments")
662
677
  ], ExpressionWithTypeArguments);
663
678
  let FunctionType = FunctionType_1 = class FunctionType extends (0, support_types_1.JSMixin)(Object) {
664
- constructor(id, prefix, markers, constructorType, parameters, arrow, returnType, _type) {
679
+ constructor(id, prefix, markers, constructorType, typeParameters, parameters, arrow, returnType, _type) {
665
680
  super();
666
681
  this._id = id;
667
682
  this._prefix = prefix;
668
683
  this._markers = markers;
669
684
  this._constructorType = constructorType;
685
+ this._typeParameters = typeParameters;
670
686
  this._parameters = parameters;
671
687
  this._arrow = arrow;
672
688
  this._returnType = returnType;
@@ -676,19 +692,19 @@ let FunctionType = FunctionType_1 = class FunctionType extends (0, support_types
676
692
  return this._id;
677
693
  }
678
694
  withId(id) {
679
- return id === this._id ? this : new FunctionType_1(id, this._prefix, this._markers, this._constructorType, this._parameters, this._arrow, this._returnType, this._type);
695
+ return id === this._id ? this : new FunctionType_1(id, this._prefix, this._markers, this._constructorType, this._typeParameters, this._parameters, this._arrow, this._returnType, this._type);
680
696
  }
681
697
  get prefix() {
682
698
  return this._prefix;
683
699
  }
684
700
  withPrefix(prefix) {
685
- return prefix === this._prefix ? this : new FunctionType_1(this._id, prefix, this._markers, this._constructorType, this._parameters, this._arrow, this._returnType, this._type);
701
+ return prefix === this._prefix ? this : new FunctionType_1(this._id, prefix, this._markers, this._constructorType, this._typeParameters, this._parameters, this._arrow, this._returnType, this._type);
686
702
  }
687
703
  get markers() {
688
704
  return this._markers;
689
705
  }
690
706
  withMarkers(markers) {
691
- return markers === this._markers ? this : new FunctionType_1(this._id, this._prefix, markers, this._constructorType, this._parameters, this._arrow, this._returnType, this._type);
707
+ return markers === this._markers ? this : new FunctionType_1(this._id, this._prefix, markers, this._constructorType, this._typeParameters, this._parameters, this._arrow, this._returnType, this._type);
692
708
  }
693
709
  get constructorType() {
694
710
  return this._constructorType.element;
@@ -696,6 +712,12 @@ let FunctionType = FunctionType_1 = class FunctionType extends (0, support_types
696
712
  withConstructorType(constructorType) {
697
713
  return this.padding.withConstructorType(this._constructorType.withElement(constructorType));
698
714
  }
715
+ get typeParameters() {
716
+ return this._typeParameters;
717
+ }
718
+ withTypeParameters(typeParameters) {
719
+ return typeParameters === this._typeParameters ? this : new FunctionType_1(this._id, this._prefix, this._markers, this._constructorType, typeParameters, this._parameters, this._arrow, this._returnType, this._type);
720
+ }
699
721
  get parameters() {
700
722
  return this._parameters.elements;
701
723
  }
@@ -706,19 +728,19 @@ let FunctionType = FunctionType_1 = class FunctionType extends (0, support_types
706
728
  return this._arrow;
707
729
  }
708
730
  withArrow(arrow) {
709
- return arrow === this._arrow ? this : new FunctionType_1(this._id, this._prefix, this._markers, this._constructorType, this._parameters, arrow, this._returnType, this._type);
731
+ return arrow === this._arrow ? this : new FunctionType_1(this._id, this._prefix, this._markers, this._constructorType, this._typeParameters, this._parameters, arrow, this._returnType, this._type);
710
732
  }
711
733
  get returnType() {
712
734
  return this._returnType;
713
735
  }
714
736
  withReturnType(returnType) {
715
- return returnType === this._returnType ? this : new FunctionType_1(this._id, this._prefix, this._markers, this._constructorType, this._parameters, this._arrow, returnType, this._type);
737
+ return returnType === this._returnType ? this : new FunctionType_1(this._id, this._prefix, this._markers, this._constructorType, this._typeParameters, this._parameters, this._arrow, returnType, this._type);
716
738
  }
717
739
  get type() {
718
740
  return this._type;
719
741
  }
720
742
  withType(_type) {
721
- return _type === this._type ? this : new FunctionType_1(this._id, this._prefix, this._markers, this._constructorType, this._parameters, this._arrow, this._returnType, _type);
743
+ return _type === this._type ? this : new FunctionType_1(this._id, this._prefix, this._markers, this._constructorType, this._typeParameters, this._parameters, this._arrow, this._returnType, _type);
722
744
  }
723
745
  acceptJavaScript(v, p) {
724
746
  return v.visitFunctionType(this, p);
@@ -730,13 +752,13 @@ let FunctionType = FunctionType_1 = class FunctionType extends (0, support_types
730
752
  return t._constructorType;
731
753
  }
732
754
  withConstructorType(constructorType) {
733
- return t._constructorType === constructorType ? t : new FunctionType_1(t._id, t._prefix, t._markers, constructorType, t._parameters, t._arrow, t._returnType, t._type);
755
+ return t._constructorType === constructorType ? t : new FunctionType_1(t._id, t._prefix, t._markers, constructorType, t._typeParameters, t._parameters, t._arrow, t._returnType, t._type);
734
756
  }
735
757
  get parameters() {
736
758
  return t._parameters;
737
759
  }
738
760
  withParameters(parameters) {
739
- return t._parameters === parameters ? t : new FunctionType_1(t._id, t._prefix, t._markers, t._constructorType, parameters, t._arrow, t._returnType, t._type);
761
+ return t._parameters === parameters ? t : new FunctionType_1(t._id, t._prefix, t._markers, t._constructorType, t._typeParameters, parameters, t._arrow, t._returnType, t._type);
740
762
  }
741
763
  };
742
764
  }
@@ -745,6 +767,155 @@ exports.FunctionType = FunctionType;
745
767
  exports.FunctionType = FunctionType = FunctionType_1 = __decorate([
746
768
  (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$FunctionType")
747
769
  ], FunctionType);
770
+ let InferType = InferType_1 = class InferType extends (0, support_types_1.JSMixin)(Object) {
771
+ constructor(id, prefix, markers, typeParameter, _type) {
772
+ super();
773
+ this._id = id;
774
+ this._prefix = prefix;
775
+ this._markers = markers;
776
+ this._typeParameter = typeParameter;
777
+ this._type = _type;
778
+ }
779
+ get id() {
780
+ return this._id;
781
+ }
782
+ withId(id) {
783
+ return id === this._id ? this : new InferType_1(id, this._prefix, this._markers, this._typeParameter, this._type);
784
+ }
785
+ get prefix() {
786
+ return this._prefix;
787
+ }
788
+ withPrefix(prefix) {
789
+ return prefix === this._prefix ? this : new InferType_1(this._id, prefix, this._markers, this._typeParameter, this._type);
790
+ }
791
+ get markers() {
792
+ return this._markers;
793
+ }
794
+ withMarkers(markers) {
795
+ return markers === this._markers ? this : new InferType_1(this._id, this._prefix, markers, this._typeParameter, this._type);
796
+ }
797
+ get typeParameter() {
798
+ return this._typeParameter.element;
799
+ }
800
+ withTypeParameter(typeParameter) {
801
+ return this.padding.withTypeParameter(this._typeParameter.withElement(typeParameter));
802
+ }
803
+ get type() {
804
+ return this._type;
805
+ }
806
+ withType(_type) {
807
+ return _type === this._type ? this : new InferType_1(this._id, this._prefix, this._markers, this._typeParameter, _type);
808
+ }
809
+ acceptJavaScript(v, p) {
810
+ return v.visitInferType(this, p);
811
+ }
812
+ get padding() {
813
+ const t = this;
814
+ return new class {
815
+ get typeParameter() {
816
+ return t._typeParameter;
817
+ }
818
+ withTypeParameter(typeParameter) {
819
+ return t._typeParameter === typeParameter ? t : new InferType_1(t._id, t._prefix, t._markers, typeParameter, t._type);
820
+ }
821
+ };
822
+ }
823
+ };
824
+ exports.InferType = InferType;
825
+ exports.InferType = InferType = InferType_1 = __decorate([
826
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$InferType")
827
+ ], InferType);
828
+ let ImportType = ImportType_1 = class ImportType extends (0, support_types_1.JSMixin)(Object) {
829
+ constructor(id, prefix, markers, hasTypeof, importArgument, qualifier, typeArguments, _type) {
830
+ super();
831
+ this._id = id;
832
+ this._prefix = prefix;
833
+ this._markers = markers;
834
+ this._hasTypeof = hasTypeof;
835
+ this._importArgument = importArgument;
836
+ this._qualifier = qualifier;
837
+ this._typeArguments = typeArguments;
838
+ this._type = _type;
839
+ }
840
+ get id() {
841
+ return this._id;
842
+ }
843
+ withId(id) {
844
+ return id === this._id ? this : new ImportType_1(id, this._prefix, this._markers, this._hasTypeof, this._importArgument, this._qualifier, this._typeArguments, this._type);
845
+ }
846
+ get prefix() {
847
+ return this._prefix;
848
+ }
849
+ withPrefix(prefix) {
850
+ return prefix === this._prefix ? this : new ImportType_1(this._id, prefix, this._markers, this._hasTypeof, this._importArgument, this._qualifier, this._typeArguments, this._type);
851
+ }
852
+ get markers() {
853
+ return this._markers;
854
+ }
855
+ withMarkers(markers) {
856
+ return markers === this._markers ? this : new ImportType_1(this._id, this._prefix, markers, this._hasTypeof, this._importArgument, this._qualifier, this._typeArguments, this._type);
857
+ }
858
+ get hasTypeof() {
859
+ return this._hasTypeof.element;
860
+ }
861
+ withHasTypeof(hasTypeof) {
862
+ return this.padding.withHasTypeof(this._hasTypeof.withElement(hasTypeof));
863
+ }
864
+ get importArgument() {
865
+ return this._importArgument;
866
+ }
867
+ withImportArgument(importArgument) {
868
+ return importArgument === this._importArgument ? this : new ImportType_1(this._id, this._prefix, this._markers, this._hasTypeof, importArgument, this._qualifier, this._typeArguments, this._type);
869
+ }
870
+ get qualifier() {
871
+ return this._qualifier === null ? null : this._qualifier.element;
872
+ }
873
+ withQualifier(qualifier) {
874
+ return this.padding.withQualifier(tree_1.JLeftPadded.withElement(this._qualifier, qualifier));
875
+ }
876
+ get typeArguments() {
877
+ return this._typeArguments === null ? null : this._typeArguments.elements;
878
+ }
879
+ withTypeArguments(typeArguments) {
880
+ return this.padding.withTypeArguments(tree_1.JContainer.withElementsNullable(this._typeArguments, typeArguments));
881
+ }
882
+ get type() {
883
+ return this._type;
884
+ }
885
+ withType(_type) {
886
+ return _type === this._type ? this : new ImportType_1(this._id, this._prefix, this._markers, this._hasTypeof, this._importArgument, this._qualifier, this._typeArguments, _type);
887
+ }
888
+ acceptJavaScript(v, p) {
889
+ return v.visitImportType(this, p);
890
+ }
891
+ get padding() {
892
+ const t = this;
893
+ return new class {
894
+ get hasTypeof() {
895
+ return t._hasTypeof;
896
+ }
897
+ withHasTypeof(hasTypeof) {
898
+ return t._hasTypeof === hasTypeof ? t : new ImportType_1(t._id, t._prefix, t._markers, hasTypeof, t._importArgument, t._qualifier, t._typeArguments, t._type);
899
+ }
900
+ get qualifier() {
901
+ return t._qualifier;
902
+ }
903
+ withQualifier(qualifier) {
904
+ return t._qualifier === qualifier ? t : new ImportType_1(t._id, t._prefix, t._markers, t._hasTypeof, t._importArgument, qualifier, t._typeArguments, t._type);
905
+ }
906
+ get typeArguments() {
907
+ return t._typeArguments;
908
+ }
909
+ withTypeArguments(typeArguments) {
910
+ return t._typeArguments === typeArguments ? t : new ImportType_1(t._id, t._prefix, t._markers, t._hasTypeof, t._importArgument, t._qualifier, typeArguments, t._type);
911
+ }
912
+ };
913
+ }
914
+ };
915
+ exports.ImportType = ImportType;
916
+ exports.ImportType = ImportType = ImportType_1 = __decorate([
917
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ImportType")
918
+ ], ImportType);
748
919
  let JsImport = JsImport_1 = class JsImport extends (0, support_types_1.JSMixin)(Object) {
749
920
  constructor(id, prefix, markers, name, importType, imports, _from, target, initializer) {
750
921
  super();
@@ -994,359 +1165,713 @@ exports.JsBinary = JsBinary = JsBinary_1 = __decorate([
994
1165
  Type[Type["IdentityNotEquals"] = 2] = "IdentityNotEquals";
995
1166
  Type[Type["In"] = 3] = "In";
996
1167
  Type[Type["QuestionQuestion"] = 4] = "QuestionQuestion";
1168
+ Type[Type["Comma"] = 5] = "Comma";
997
1169
  })(Type = JsBinary.Type || (JsBinary.Type = {}));
998
1170
  })(JsBinary || (exports.JsBinary = JsBinary = {}));
999
- let ObjectBindingDeclarations = ObjectBindingDeclarations_1 = class ObjectBindingDeclarations extends (0, support_types_1.JSMixin)(Object) {
1000
- constructor(id, prefix, markers, leadingAnnotations, modifiers, typeExpression, bindings, initializer) {
1171
+ let LiteralType = LiteralType_1 = class LiteralType extends (0, support_types_1.JSMixin)(Object) {
1172
+ constructor(id, prefix, markers, literal, _type) {
1001
1173
  super();
1002
1174
  this._id = id;
1003
1175
  this._prefix = prefix;
1004
1176
  this._markers = markers;
1005
- this._leadingAnnotations = leadingAnnotations;
1006
- this._modifiers = modifiers;
1007
- this._typeExpression = typeExpression;
1008
- this._bindings = bindings;
1009
- this._initializer = initializer;
1177
+ this._literal = literal;
1178
+ this._type = _type;
1010
1179
  }
1011
1180
  get id() {
1012
1181
  return this._id;
1013
1182
  }
1014
1183
  withId(id) {
1015
- return id === this._id ? this : new ObjectBindingDeclarations_1(id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeExpression, this._bindings, this._initializer);
1184
+ return id === this._id ? this : new LiteralType_1(id, this._prefix, this._markers, this._literal, this._type);
1016
1185
  }
1017
1186
  get prefix() {
1018
1187
  return this._prefix;
1019
1188
  }
1020
1189
  withPrefix(prefix) {
1021
- return prefix === this._prefix ? this : new ObjectBindingDeclarations_1(this._id, prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeExpression, this._bindings, this._initializer);
1190
+ return prefix === this._prefix ? this : new LiteralType_1(this._id, prefix, this._markers, this._literal, this._type);
1022
1191
  }
1023
1192
  get markers() {
1024
1193
  return this._markers;
1025
1194
  }
1026
1195
  withMarkers(markers) {
1027
- return markers === this._markers ? this : new ObjectBindingDeclarations_1(this._id, this._prefix, markers, this._leadingAnnotations, this._modifiers, this._typeExpression, this._bindings, this._initializer);
1028
- }
1029
- get leadingAnnotations() {
1030
- return this._leadingAnnotations;
1031
- }
1032
- withLeadingAnnotations(leadingAnnotations) {
1033
- return leadingAnnotations === this._leadingAnnotations ? this : new ObjectBindingDeclarations_1(this._id, this._prefix, this._markers, leadingAnnotations, this._modifiers, this._typeExpression, this._bindings, this._initializer);
1034
- }
1035
- get modifiers() {
1036
- return this._modifiers;
1037
- }
1038
- withModifiers(modifiers) {
1039
- return modifiers === this._modifiers ? this : new ObjectBindingDeclarations_1(this._id, this._prefix, this._markers, this._leadingAnnotations, modifiers, this._typeExpression, this._bindings, this._initializer);
1040
- }
1041
- get typeExpression() {
1042
- return this._typeExpression;
1043
- }
1044
- withTypeExpression(typeExpression) {
1045
- return typeExpression === this._typeExpression ? this : new ObjectBindingDeclarations_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, typeExpression, this._bindings, this._initializer);
1046
- }
1047
- get bindings() {
1048
- return this._bindings.elements;
1049
- }
1050
- withBindings(bindings) {
1051
- return this.padding.withBindings(tree_1.JContainer.withElements(this._bindings, bindings));
1052
- }
1053
- get initializer() {
1054
- return this._initializer === null ? null : this._initializer.element;
1196
+ return markers === this._markers ? this : new LiteralType_1(this._id, this._prefix, markers, this._literal, this._type);
1055
1197
  }
1056
- withInitializer(initializer) {
1057
- return this.padding.withInitializer(tree_1.JLeftPadded.withElement(this._initializer, initializer));
1198
+ get literal() {
1199
+ return this._literal;
1058
1200
  }
1059
- acceptJavaScript(v, p) {
1060
- return v.visitObjectBindingDeclarations(this, p);
1201
+ withLiteral(literal) {
1202
+ return literal === this._literal ? this : new LiteralType_1(this._id, this._prefix, this._markers, literal, this._type);
1061
1203
  }
1062
1204
  get type() {
1063
- return extensions.getJavaType(this);
1205
+ return this._type;
1064
1206
  }
1065
- withType(type) {
1066
- return extensions.withJavaType(this, type);
1207
+ withType(_type) {
1208
+ return _type === this._type ? this : new LiteralType_1(this._id, this._prefix, this._markers, this._literal, _type);
1067
1209
  }
1068
- get padding() {
1069
- const t = this;
1070
- return new class {
1071
- get bindings() {
1072
- return t._bindings;
1073
- }
1074
- withBindings(bindings) {
1075
- return t._bindings === bindings ? t : new ObjectBindingDeclarations_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeExpression, bindings, t._initializer);
1076
- }
1077
- get initializer() {
1078
- return t._initializer;
1079
- }
1080
- withInitializer(initializer) {
1081
- return t._initializer === initializer ? t : new ObjectBindingDeclarations_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeExpression, t._bindings, initializer);
1082
- }
1083
- };
1210
+ acceptJavaScript(v, p) {
1211
+ return v.visitLiteralType(this, p);
1084
1212
  }
1085
1213
  };
1086
- exports.ObjectBindingDeclarations = ObjectBindingDeclarations;
1087
- exports.ObjectBindingDeclarations = ObjectBindingDeclarations = ObjectBindingDeclarations_1 = __decorate([
1088
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ObjectBindingDeclarations")
1089
- ], ObjectBindingDeclarations);
1090
- let PropertyAssignment = PropertyAssignment_1 = class PropertyAssignment extends (0, support_types_1.JSMixin)(Object) {
1091
- constructor(id, prefix, markers, name, initializer) {
1214
+ exports.LiteralType = LiteralType;
1215
+ exports.LiteralType = LiteralType = LiteralType_1 = __decorate([
1216
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$LiteralType")
1217
+ ], LiteralType);
1218
+ let MappedType = MappedType_1 = class MappedType extends (0, support_types_1.JSMixin)(Object) {
1219
+ constructor(id, prefix, markers, prefixToken, hasReadonly, keysRemapping, suffixToken, hasQuestionToken, valueType, _type) {
1092
1220
  super();
1093
1221
  this._id = id;
1094
1222
  this._prefix = prefix;
1095
1223
  this._markers = markers;
1096
- this._name = name;
1097
- this._initializer = initializer;
1224
+ this._prefixToken = prefixToken;
1225
+ this._hasReadonly = hasReadonly;
1226
+ this._keysRemapping = keysRemapping;
1227
+ this._suffixToken = suffixToken;
1228
+ this._hasQuestionToken = hasQuestionToken;
1229
+ this._valueType = valueType;
1230
+ this._type = _type;
1098
1231
  }
1099
1232
  get id() {
1100
1233
  return this._id;
1101
1234
  }
1102
1235
  withId(id) {
1103
- return id === this._id ? this : new PropertyAssignment_1(id, this._prefix, this._markers, this._name, this._initializer);
1236
+ return id === this._id ? this : new MappedType_1(id, this._prefix, this._markers, this._prefixToken, this._hasReadonly, this._keysRemapping, this._suffixToken, this._hasQuestionToken, this._valueType, this._type);
1104
1237
  }
1105
1238
  get prefix() {
1106
1239
  return this._prefix;
1107
1240
  }
1108
1241
  withPrefix(prefix) {
1109
- return prefix === this._prefix ? this : new PropertyAssignment_1(this._id, prefix, this._markers, this._name, this._initializer);
1242
+ return prefix === this._prefix ? this : new MappedType_1(this._id, prefix, this._markers, this._prefixToken, this._hasReadonly, this._keysRemapping, this._suffixToken, this._hasQuestionToken, this._valueType, this._type);
1110
1243
  }
1111
1244
  get markers() {
1112
1245
  return this._markers;
1113
1246
  }
1114
1247
  withMarkers(markers) {
1115
- return markers === this._markers ? this : new PropertyAssignment_1(this._id, this._prefix, markers, this._name, this._initializer);
1248
+ return markers === this._markers ? this : new MappedType_1(this._id, this._prefix, markers, this._prefixToken, this._hasReadonly, this._keysRemapping, this._suffixToken, this._hasQuestionToken, this._valueType, this._type);
1116
1249
  }
1117
- get name() {
1118
- return this._name.element;
1250
+ get prefixToken() {
1251
+ return this._prefixToken === null ? null : this._prefixToken.element;
1119
1252
  }
1120
- withName(name) {
1121
- return this.padding.withName(this._name.withElement(name));
1253
+ withPrefixToken(prefixToken) {
1254
+ return this.padding.withPrefixToken(tree_1.JLeftPadded.withElement(this._prefixToken, prefixToken));
1122
1255
  }
1123
- get initializer() {
1124
- return this._initializer;
1256
+ get hasReadonly() {
1257
+ return this._hasReadonly.element;
1125
1258
  }
1126
- withInitializer(initializer) {
1127
- return initializer === this._initializer ? this : new PropertyAssignment_1(this._id, this._prefix, this._markers, this._name, initializer);
1259
+ withHasReadonly(hasReadonly) {
1260
+ return this.padding.withHasReadonly(this._hasReadonly.withElement(hasReadonly));
1128
1261
  }
1129
- acceptJavaScript(v, p) {
1130
- return v.visitPropertyAssignment(this, p);
1262
+ get keysRemapping() {
1263
+ return this._keysRemapping;
1264
+ }
1265
+ withKeysRemapping(keysRemapping) {
1266
+ return keysRemapping === this._keysRemapping ? this : new MappedType_1(this._id, this._prefix, this._markers, this._prefixToken, this._hasReadonly, keysRemapping, this._suffixToken, this._hasQuestionToken, this._valueType, this._type);
1267
+ }
1268
+ get suffixToken() {
1269
+ return this._suffixToken === null ? null : this._suffixToken.element;
1270
+ }
1271
+ withSuffixToken(suffixToken) {
1272
+ return this.padding.withSuffixToken(tree_1.JLeftPadded.withElement(this._suffixToken, suffixToken));
1273
+ }
1274
+ get hasQuestionToken() {
1275
+ return this._hasQuestionToken.element;
1276
+ }
1277
+ withHasQuestionToken(hasQuestionToken) {
1278
+ return this.padding.withHasQuestionToken(this._hasQuestionToken.withElement(hasQuestionToken));
1279
+ }
1280
+ get valueType() {
1281
+ return this._valueType.elements;
1282
+ }
1283
+ withValueType(valueType) {
1284
+ return this.padding.withValueType(tree_1.JContainer.withElements(this._valueType, valueType));
1131
1285
  }
1132
1286
  get type() {
1133
- return extensions.getJavaType(this);
1287
+ return this._type;
1134
1288
  }
1135
- withType(type) {
1136
- return extensions.withJavaType(this, type);
1289
+ withType(_type) {
1290
+ return _type === this._type ? this : new MappedType_1(this._id, this._prefix, this._markers, this._prefixToken, this._hasReadonly, this._keysRemapping, this._suffixToken, this._hasQuestionToken, this._valueType, _type);
1291
+ }
1292
+ acceptJavaScript(v, p) {
1293
+ return v.visitMappedType(this, p);
1137
1294
  }
1138
1295
  get padding() {
1139
1296
  const t = this;
1140
1297
  return new class {
1141
- get name() {
1142
- return t._name;
1298
+ get prefixToken() {
1299
+ return t._prefixToken;
1143
1300
  }
1144
- withName(name) {
1145
- return t._name === name ? t : new PropertyAssignment_1(t._id, t._prefix, t._markers, name, t._initializer);
1301
+ withPrefixToken(prefixToken) {
1302
+ return t._prefixToken === prefixToken ? t : new MappedType_1(t._id, t._prefix, t._markers, prefixToken, t._hasReadonly, t._keysRemapping, t._suffixToken, t._hasQuestionToken, t._valueType, t._type);
1303
+ }
1304
+ get hasReadonly() {
1305
+ return t._hasReadonly;
1306
+ }
1307
+ withHasReadonly(hasReadonly) {
1308
+ return t._hasReadonly === hasReadonly ? t : new MappedType_1(t._id, t._prefix, t._markers, t._prefixToken, hasReadonly, t._keysRemapping, t._suffixToken, t._hasQuestionToken, t._valueType, t._type);
1309
+ }
1310
+ get suffixToken() {
1311
+ return t._suffixToken;
1312
+ }
1313
+ withSuffixToken(suffixToken) {
1314
+ return t._suffixToken === suffixToken ? t : new MappedType_1(t._id, t._prefix, t._markers, t._prefixToken, t._hasReadonly, t._keysRemapping, suffixToken, t._hasQuestionToken, t._valueType, t._type);
1315
+ }
1316
+ get hasQuestionToken() {
1317
+ return t._hasQuestionToken;
1318
+ }
1319
+ withHasQuestionToken(hasQuestionToken) {
1320
+ return t._hasQuestionToken === hasQuestionToken ? t : new MappedType_1(t._id, t._prefix, t._markers, t._prefixToken, t._hasReadonly, t._keysRemapping, t._suffixToken, hasQuestionToken, t._valueType, t._type);
1321
+ }
1322
+ get valueType() {
1323
+ return t._valueType;
1324
+ }
1325
+ withValueType(valueType) {
1326
+ return t._valueType === valueType ? t : new MappedType_1(t._id, t._prefix, t._markers, t._prefixToken, t._hasReadonly, t._keysRemapping, t._suffixToken, t._hasQuestionToken, valueType, t._type);
1146
1327
  }
1147
1328
  };
1148
1329
  }
1149
1330
  };
1150
- exports.PropertyAssignment = PropertyAssignment;
1151
- exports.PropertyAssignment = PropertyAssignment = PropertyAssignment_1 = __decorate([
1152
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$PropertyAssignment")
1153
- ], PropertyAssignment);
1154
- let ScopedVariableDeclarations = ScopedVariableDeclarations_1 = class ScopedVariableDeclarations extends (0, support_types_1.JSMixin)(Object) {
1155
- constructor(id, prefix, markers, modifiers, scope, variables) {
1156
- super();
1157
- this._id = id;
1158
- this._prefix = prefix;
1159
- this._markers = markers;
1160
- this._modifiers = modifiers;
1161
- this._scope = scope;
1162
- this._variables = variables;
1163
- }
1164
- get id() {
1165
- return this._id;
1166
- }
1167
- withId(id) {
1168
- return id === this._id ? this : new ScopedVariableDeclarations_1(id, this._prefix, this._markers, this._modifiers, this._scope, this._variables);
1169
- }
1170
- get prefix() {
1331
+ exports.MappedType = MappedType;
1332
+ exports.MappedType = MappedType = MappedType_1 = __decorate([
1333
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$MappedType")
1334
+ ], MappedType);
1335
+ (function (MappedType) {
1336
+ let KeysRemapping = class KeysRemapping extends (0, support_types_1.JSMixin)(Object) {
1337
+ constructor(id, prefix, markers, typeParameter, nameType) {
1338
+ super();
1339
+ this._id = id;
1340
+ this._prefix = prefix;
1341
+ this._markers = markers;
1342
+ this._typeParameter = typeParameter;
1343
+ this._nameType = nameType;
1344
+ }
1345
+ get id() {
1346
+ return this._id;
1347
+ }
1348
+ withId(id) {
1349
+ return id === this._id ? this : new MappedType.KeysRemapping(id, this._prefix, this._markers, this._typeParameter, this._nameType);
1350
+ }
1351
+ get prefix() {
1352
+ return this._prefix;
1353
+ }
1354
+ withPrefix(prefix) {
1355
+ return prefix === this._prefix ? this : new MappedType.KeysRemapping(this._id, prefix, this._markers, this._typeParameter, this._nameType);
1356
+ }
1357
+ get markers() {
1358
+ return this._markers;
1359
+ }
1360
+ withMarkers(markers) {
1361
+ return markers === this._markers ? this : new MappedType.KeysRemapping(this._id, this._prefix, markers, this._typeParameter, this._nameType);
1362
+ }
1363
+ get typeParameter() {
1364
+ return this._typeParameter.element;
1365
+ }
1366
+ withTypeParameter(typeParameter) {
1367
+ return this.padding.withTypeParameter(this._typeParameter.withElement(typeParameter));
1368
+ }
1369
+ get nameType() {
1370
+ return this._nameType === null ? null : this._nameType.element;
1371
+ }
1372
+ withNameType(nameType) {
1373
+ return this.padding.withNameType(tree_1.JRightPadded.withElement(this._nameType, nameType));
1374
+ }
1375
+ acceptJavaScript(v, p) {
1376
+ return v.visitMappedTypeKeysRemapping(this, p);
1377
+ }
1378
+ get padding() {
1379
+ const t = this;
1380
+ return new class {
1381
+ get typeParameter() {
1382
+ return t._typeParameter;
1383
+ }
1384
+ withTypeParameter(typeParameter) {
1385
+ return t._typeParameter === typeParameter ? t : new MappedType.KeysRemapping(t._id, t._prefix, t._markers, typeParameter, t._nameType);
1386
+ }
1387
+ get nameType() {
1388
+ return t._nameType;
1389
+ }
1390
+ withNameType(nameType) {
1391
+ return t._nameType === nameType ? t : new MappedType.KeysRemapping(t._id, t._prefix, t._markers, t._typeParameter, nameType);
1392
+ }
1393
+ };
1394
+ }
1395
+ };
1396
+ KeysRemapping = __decorate([
1397
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$MappedType$KeysRemapping")
1398
+ ], KeysRemapping);
1399
+ MappedType.KeysRemapping = KeysRemapping;
1400
+ let MappedTypeParameter = class MappedTypeParameter extends (0, support_types_1.JSMixin)(Object) {
1401
+ constructor(id, prefix, markers, name, iterateType) {
1402
+ super();
1403
+ this._id = id;
1404
+ this._prefix = prefix;
1405
+ this._markers = markers;
1406
+ this._name = name;
1407
+ this._iterateType = iterateType;
1408
+ }
1409
+ get id() {
1410
+ return this._id;
1411
+ }
1412
+ withId(id) {
1413
+ return id === this._id ? this : new MappedType.MappedTypeParameter(id, this._prefix, this._markers, this._name, this._iterateType);
1414
+ }
1415
+ get prefix() {
1416
+ return this._prefix;
1417
+ }
1418
+ withPrefix(prefix) {
1419
+ return prefix === this._prefix ? this : new MappedType.MappedTypeParameter(this._id, prefix, this._markers, this._name, this._iterateType);
1420
+ }
1421
+ get markers() {
1422
+ return this._markers;
1423
+ }
1424
+ withMarkers(markers) {
1425
+ return markers === this._markers ? this : new MappedType.MappedTypeParameter(this._id, this._prefix, markers, this._name, this._iterateType);
1426
+ }
1427
+ get name() {
1428
+ return this._name;
1429
+ }
1430
+ withName(name) {
1431
+ return name === this._name ? this : new MappedType.MappedTypeParameter(this._id, this._prefix, this._markers, name, this._iterateType);
1432
+ }
1433
+ get iterateType() {
1434
+ return this._iterateType.element;
1435
+ }
1436
+ withIterateType(iterateType) {
1437
+ return this.padding.withIterateType(this._iterateType.withElement(iterateType));
1438
+ }
1439
+ acceptJavaScript(v, p) {
1440
+ return v.visitMappedTypeMappedTypeParameter(this, p);
1441
+ }
1442
+ get padding() {
1443
+ const t = this;
1444
+ return new class {
1445
+ get iterateType() {
1446
+ return t._iterateType;
1447
+ }
1448
+ withIterateType(iterateType) {
1449
+ return t._iterateType === iterateType ? t : new MappedType.MappedTypeParameter(t._id, t._prefix, t._markers, t._name, iterateType);
1450
+ }
1451
+ };
1452
+ }
1453
+ };
1454
+ MappedTypeParameter = __decorate([
1455
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$MappedType$MappedTypeParameter")
1456
+ ], MappedTypeParameter);
1457
+ MappedType.MappedTypeParameter = MappedTypeParameter;
1458
+ })(MappedType || (exports.MappedType = MappedType = {}));
1459
+ let ObjectBindingDeclarations = ObjectBindingDeclarations_1 = class ObjectBindingDeclarations extends (0, support_types_1.JSMixin)(Object) {
1460
+ constructor(id, prefix, markers, leadingAnnotations, modifiers, typeExpression, bindings, initializer) {
1461
+ super();
1462
+ this._id = id;
1463
+ this._prefix = prefix;
1464
+ this._markers = markers;
1465
+ this._leadingAnnotations = leadingAnnotations;
1466
+ this._modifiers = modifiers;
1467
+ this._typeExpression = typeExpression;
1468
+ this._bindings = bindings;
1469
+ this._initializer = initializer;
1470
+ }
1471
+ get id() {
1472
+ return this._id;
1473
+ }
1474
+ withId(id) {
1475
+ return id === this._id ? this : new ObjectBindingDeclarations_1(id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeExpression, this._bindings, this._initializer);
1476
+ }
1477
+ get prefix() {
1171
1478
  return this._prefix;
1172
1479
  }
1173
1480
  withPrefix(prefix) {
1174
- return prefix === this._prefix ? this : new ScopedVariableDeclarations_1(this._id, prefix, this._markers, this._modifiers, this._scope, this._variables);
1481
+ return prefix === this._prefix ? this : new ObjectBindingDeclarations_1(this._id, prefix, this._markers, this._leadingAnnotations, this._modifiers, this._typeExpression, this._bindings, this._initializer);
1175
1482
  }
1176
1483
  get markers() {
1177
1484
  return this._markers;
1178
1485
  }
1179
1486
  withMarkers(markers) {
1180
- return markers === this._markers ? this : new ScopedVariableDeclarations_1(this._id, this._prefix, markers, this._modifiers, this._scope, this._variables);
1487
+ return markers === this._markers ? this : new ObjectBindingDeclarations_1(this._id, this._prefix, markers, this._leadingAnnotations, this._modifiers, this._typeExpression, this._bindings, this._initializer);
1488
+ }
1489
+ get leadingAnnotations() {
1490
+ return this._leadingAnnotations;
1491
+ }
1492
+ withLeadingAnnotations(leadingAnnotations) {
1493
+ return leadingAnnotations === this._leadingAnnotations ? this : new ObjectBindingDeclarations_1(this._id, this._prefix, this._markers, leadingAnnotations, this._modifiers, this._typeExpression, this._bindings, this._initializer);
1181
1494
  }
1182
1495
  get modifiers() {
1183
1496
  return this._modifiers;
1184
1497
  }
1185
1498
  withModifiers(modifiers) {
1186
- return modifiers === this._modifiers ? this : new ScopedVariableDeclarations_1(this._id, this._prefix, this._markers, modifiers, this._scope, this._variables);
1499
+ return modifiers === this._modifiers ? this : new ObjectBindingDeclarations_1(this._id, this._prefix, this._markers, this._leadingAnnotations, modifiers, this._typeExpression, this._bindings, this._initializer);
1187
1500
  }
1188
- get scope() {
1189
- return this._scope === null ? null : this._scope.element;
1501
+ get typeExpression() {
1502
+ return this._typeExpression;
1190
1503
  }
1191
- withScope(scope) {
1192
- return this.padding.withScope(tree_1.JLeftPadded.withElement(this._scope, scope));
1504
+ withTypeExpression(typeExpression) {
1505
+ return typeExpression === this._typeExpression ? this : new ObjectBindingDeclarations_1(this._id, this._prefix, this._markers, this._leadingAnnotations, this._modifiers, typeExpression, this._bindings, this._initializer);
1193
1506
  }
1194
- get variables() {
1195
- return tree_1.JRightPadded.getElements(this._variables);
1507
+ get bindings() {
1508
+ return this._bindings.elements;
1196
1509
  }
1197
- withVariables(variables) {
1198
- return this.padding.withVariables(tree_1.JRightPadded.withElements(this._variables, variables));
1510
+ withBindings(bindings) {
1511
+ return this.padding.withBindings(tree_1.JContainer.withElements(this._bindings, bindings));
1512
+ }
1513
+ get initializer() {
1514
+ return this._initializer === null ? null : this._initializer.element;
1515
+ }
1516
+ withInitializer(initializer) {
1517
+ return this.padding.withInitializer(tree_1.JLeftPadded.withElement(this._initializer, initializer));
1199
1518
  }
1200
1519
  acceptJavaScript(v, p) {
1201
- return v.visitScopedVariableDeclarations(this, p);
1520
+ return v.visitObjectBindingDeclarations(this, p);
1521
+ }
1522
+ get type() {
1523
+ return extensions.getJavaType(this);
1524
+ }
1525
+ withType(type) {
1526
+ return extensions.withJavaType(this, type);
1202
1527
  }
1203
1528
  get padding() {
1204
1529
  const t = this;
1205
1530
  return new class {
1206
- get scope() {
1207
- return t._scope;
1531
+ get bindings() {
1532
+ return t._bindings;
1208
1533
  }
1209
- withScope(scope) {
1210
- return t._scope === scope ? t : new ScopedVariableDeclarations_1(t._id, t._prefix, t._markers, t._modifiers, scope, t._variables);
1534
+ withBindings(bindings) {
1535
+ return t._bindings === bindings ? t : new ObjectBindingDeclarations_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeExpression, bindings, t._initializer);
1211
1536
  }
1212
- get variables() {
1213
- return t._variables;
1537
+ get initializer() {
1538
+ return t._initializer;
1214
1539
  }
1215
- withVariables(variables) {
1216
- return t._variables === variables ? t : new ScopedVariableDeclarations_1(t._id, t._prefix, t._markers, t._modifiers, t._scope, variables);
1540
+ withInitializer(initializer) {
1541
+ return t._initializer === initializer ? t : new ObjectBindingDeclarations_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeExpression, t._bindings, initializer);
1217
1542
  }
1218
1543
  };
1219
1544
  }
1220
1545
  };
1221
- exports.ScopedVariableDeclarations = ScopedVariableDeclarations;
1222
- exports.ScopedVariableDeclarations = ScopedVariableDeclarations = ScopedVariableDeclarations_1 = __decorate([
1223
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ScopedVariableDeclarations")
1224
- ], ScopedVariableDeclarations);
1225
- (function (ScopedVariableDeclarations) {
1226
- let Scope;
1227
- (function (Scope) {
1228
- Scope[Scope["Const"] = 0] = "Const";
1229
- Scope[Scope["Let"] = 1] = "Let";
1230
- Scope[Scope["Var"] = 2] = "Var";
1231
- })(Scope = ScopedVariableDeclarations.Scope || (ScopedVariableDeclarations.Scope = {}));
1232
- })(ScopedVariableDeclarations || (exports.ScopedVariableDeclarations = ScopedVariableDeclarations = {}));
1233
- let TaggedTemplateExpression = TaggedTemplateExpression_1 = class TaggedTemplateExpression extends (0, support_types_1.JSMixin)(Object) {
1234
- constructor(id, prefix, markers, tag, typeArguments, templateExpression, _type) {
1546
+ exports.ObjectBindingDeclarations = ObjectBindingDeclarations;
1547
+ exports.ObjectBindingDeclarations = ObjectBindingDeclarations = ObjectBindingDeclarations_1 = __decorate([
1548
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ObjectBindingDeclarations")
1549
+ ], ObjectBindingDeclarations);
1550
+ let PropertyAssignment = PropertyAssignment_1 = class PropertyAssignment extends (0, support_types_1.JSMixin)(Object) {
1551
+ constructor(id, prefix, markers, name, initializer) {
1235
1552
  super();
1236
1553
  this._id = id;
1237
1554
  this._prefix = prefix;
1238
1555
  this._markers = markers;
1239
- this._tag = tag;
1240
- this._typeArguments = typeArguments;
1241
- this._templateExpression = templateExpression;
1242
- this._type = _type;
1556
+ this._name = name;
1557
+ this._initializer = initializer;
1243
1558
  }
1244
1559
  get id() {
1245
1560
  return this._id;
1246
1561
  }
1247
1562
  withId(id) {
1248
- return id === this._id ? this : new TaggedTemplateExpression_1(id, this._prefix, this._markers, this._tag, this._typeArguments, this._templateExpression, this._type);
1563
+ return id === this._id ? this : new PropertyAssignment_1(id, this._prefix, this._markers, this._name, this._initializer);
1249
1564
  }
1250
1565
  get prefix() {
1251
1566
  return this._prefix;
1252
1567
  }
1253
1568
  withPrefix(prefix) {
1254
- return prefix === this._prefix ? this : new TaggedTemplateExpression_1(this._id, prefix, this._markers, this._tag, this._typeArguments, this._templateExpression, this._type);
1569
+ return prefix === this._prefix ? this : new PropertyAssignment_1(this._id, prefix, this._markers, this._name, this._initializer);
1255
1570
  }
1256
1571
  get markers() {
1257
1572
  return this._markers;
1258
1573
  }
1259
1574
  withMarkers(markers) {
1260
- return markers === this._markers ? this : new TaggedTemplateExpression_1(this._id, this._prefix, markers, this._tag, this._typeArguments, this._templateExpression, this._type);
1261
- }
1262
- get tag() {
1263
- return this._tag === null ? null : this._tag.element;
1575
+ return markers === this._markers ? this : new PropertyAssignment_1(this._id, this._prefix, markers, this._name, this._initializer);
1264
1576
  }
1265
- withTag(tag) {
1266
- return this.padding.withTag(tree_1.JRightPadded.withElement(this._tag, tag));
1577
+ get name() {
1578
+ return this._name.element;
1267
1579
  }
1268
- get typeArguments() {
1269
- return this._typeArguments === null ? null : this._typeArguments.elements;
1580
+ withName(name) {
1581
+ return this.padding.withName(this._name.withElement(name));
1270
1582
  }
1271
- withTypeArguments(typeArguments) {
1272
- return this.padding.withTypeArguments(tree_1.JContainer.withElementsNullable(this._typeArguments, typeArguments));
1583
+ get initializer() {
1584
+ return this._initializer;
1273
1585
  }
1274
- get templateExpression() {
1275
- return this._templateExpression;
1586
+ withInitializer(initializer) {
1587
+ return initializer === this._initializer ? this : new PropertyAssignment_1(this._id, this._prefix, this._markers, this._name, initializer);
1276
1588
  }
1277
- withTemplateExpression(templateExpression) {
1278
- return templateExpression === this._templateExpression ? this : new TaggedTemplateExpression_1(this._id, this._prefix, this._markers, this._tag, this._typeArguments, templateExpression, this._type);
1589
+ acceptJavaScript(v, p) {
1590
+ return v.visitPropertyAssignment(this, p);
1279
1591
  }
1280
1592
  get type() {
1281
- return this._type;
1282
- }
1283
- withType(_type) {
1284
- return _type === this._type ? this : new TaggedTemplateExpression_1(this._id, this._prefix, this._markers, this._tag, this._typeArguments, this._templateExpression, _type);
1593
+ return extensions.getJavaType(this);
1285
1594
  }
1286
- acceptJavaScript(v, p) {
1287
- return v.visitTaggedTemplateExpression(this, p);
1595
+ withType(type) {
1596
+ return extensions.withJavaType(this, type);
1288
1597
  }
1289
1598
  get padding() {
1290
1599
  const t = this;
1291
1600
  return new class {
1292
- get tag() {
1293
- return t._tag;
1294
- }
1295
- withTag(tag) {
1296
- return t._tag === tag ? t : new TaggedTemplateExpression_1(t._id, t._prefix, t._markers, tag, t._typeArguments, t._templateExpression, t._type);
1297
- }
1298
- get typeArguments() {
1299
- return t._typeArguments;
1601
+ get name() {
1602
+ return t._name;
1300
1603
  }
1301
- withTypeArguments(typeArguments) {
1302
- return t._typeArguments === typeArguments ? t : new TaggedTemplateExpression_1(t._id, t._prefix, t._markers, t._tag, typeArguments, t._templateExpression, t._type);
1604
+ withName(name) {
1605
+ return t._name === name ? t : new PropertyAssignment_1(t._id, t._prefix, t._markers, name, t._initializer);
1303
1606
  }
1304
1607
  };
1305
1608
  }
1306
1609
  };
1307
- exports.TaggedTemplateExpression = TaggedTemplateExpression;
1308
- exports.TaggedTemplateExpression = TaggedTemplateExpression = TaggedTemplateExpression_1 = __decorate([
1309
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$TaggedTemplateExpression")
1310
- ], TaggedTemplateExpression);
1311
- let TemplateExpression = TemplateExpression_1 = class TemplateExpression extends (0, support_types_1.JSMixin)(Object) {
1312
- constructor(id, prefix, markers, head, templateSpans, _type) {
1610
+ exports.PropertyAssignment = PropertyAssignment;
1611
+ exports.PropertyAssignment = PropertyAssignment = PropertyAssignment_1 = __decorate([
1612
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$PropertyAssignment")
1613
+ ], PropertyAssignment);
1614
+ let SatisfiesExpression = SatisfiesExpression_1 = class SatisfiesExpression extends (0, support_types_1.JSMixin)(Object) {
1615
+ constructor(id, prefix, markers, expression, satisfiesType, _type) {
1313
1616
  super();
1314
1617
  this._id = id;
1315
1618
  this._prefix = prefix;
1316
1619
  this._markers = markers;
1317
- this._head = head;
1318
- this._templateSpans = templateSpans;
1620
+ this._expression = expression;
1621
+ this._satisfiesType = satisfiesType;
1319
1622
  this._type = _type;
1320
1623
  }
1321
1624
  get id() {
1322
1625
  return this._id;
1323
1626
  }
1324
1627
  withId(id) {
1325
- return id === this._id ? this : new TemplateExpression_1(id, this._prefix, this._markers, this._head, this._templateSpans, this._type);
1628
+ return id === this._id ? this : new SatisfiesExpression_1(id, this._prefix, this._markers, this._expression, this._satisfiesType, this._type);
1326
1629
  }
1327
1630
  get prefix() {
1328
1631
  return this._prefix;
1329
1632
  }
1330
1633
  withPrefix(prefix) {
1331
- return prefix === this._prefix ? this : new TemplateExpression_1(this._id, prefix, this._markers, this._head, this._templateSpans, this._type);
1634
+ return prefix === this._prefix ? this : new SatisfiesExpression_1(this._id, prefix, this._markers, this._expression, this._satisfiesType, this._type);
1332
1635
  }
1333
1636
  get markers() {
1334
1637
  return this._markers;
1335
1638
  }
1336
1639
  withMarkers(markers) {
1337
- return markers === this._markers ? this : new TemplateExpression_1(this._id, this._prefix, markers, this._head, this._templateSpans, this._type);
1640
+ return markers === this._markers ? this : new SatisfiesExpression_1(this._id, this._prefix, markers, this._expression, this._satisfiesType, this._type);
1338
1641
  }
1339
- get head() {
1340
- return this._head;
1642
+ get expression() {
1643
+ return this._expression;
1341
1644
  }
1342
- withHead(head) {
1343
- return head === this._head ? this : new TemplateExpression_1(this._id, this._prefix, this._markers, head, this._templateSpans, this._type);
1645
+ withExpression(expression) {
1646
+ return expression === this._expression ? this : new SatisfiesExpression_1(this._id, this._prefix, this._markers, expression, this._satisfiesType, this._type);
1344
1647
  }
1345
- get templateSpans() {
1346
- return tree_1.JRightPadded.getElements(this._templateSpans);
1648
+ get satisfiesType() {
1649
+ return this._satisfiesType.element;
1347
1650
  }
1348
- withTemplateSpans(templateSpans) {
1349
- return this.padding.withTemplateSpans(tree_1.JRightPadded.withElements(this._templateSpans, templateSpans));
1651
+ withSatisfiesType(satisfiesType) {
1652
+ return this.padding.withSatisfiesType(this._satisfiesType.withElement(satisfiesType));
1653
+ }
1654
+ get type() {
1655
+ return this._type;
1656
+ }
1657
+ withType(_type) {
1658
+ return _type === this._type ? this : new SatisfiesExpression_1(this._id, this._prefix, this._markers, this._expression, this._satisfiesType, _type);
1659
+ }
1660
+ acceptJavaScript(v, p) {
1661
+ return v.visitSatisfiesExpression(this, p);
1662
+ }
1663
+ get padding() {
1664
+ const t = this;
1665
+ return new class {
1666
+ get satisfiesType() {
1667
+ return t._satisfiesType;
1668
+ }
1669
+ withSatisfiesType(satisfiesType) {
1670
+ return t._satisfiesType === satisfiesType ? t : new SatisfiesExpression_1(t._id, t._prefix, t._markers, t._expression, satisfiesType, t._type);
1671
+ }
1672
+ };
1673
+ }
1674
+ };
1675
+ exports.SatisfiesExpression = SatisfiesExpression;
1676
+ exports.SatisfiesExpression = SatisfiesExpression = SatisfiesExpression_1 = __decorate([
1677
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$SatisfiesExpression")
1678
+ ], SatisfiesExpression);
1679
+ let ScopedVariableDeclarations = ScopedVariableDeclarations_1 = class ScopedVariableDeclarations extends (0, support_types_1.JSMixin)(Object) {
1680
+ constructor(id, prefix, markers, modifiers, scope, variables) {
1681
+ super();
1682
+ this._id = id;
1683
+ this._prefix = prefix;
1684
+ this._markers = markers;
1685
+ this._modifiers = modifiers;
1686
+ this._scope = scope;
1687
+ this._variables = variables;
1688
+ }
1689
+ get id() {
1690
+ return this._id;
1691
+ }
1692
+ withId(id) {
1693
+ return id === this._id ? this : new ScopedVariableDeclarations_1(id, this._prefix, this._markers, this._modifiers, this._scope, this._variables);
1694
+ }
1695
+ get prefix() {
1696
+ return this._prefix;
1697
+ }
1698
+ withPrefix(prefix) {
1699
+ return prefix === this._prefix ? this : new ScopedVariableDeclarations_1(this._id, prefix, this._markers, this._modifiers, this._scope, this._variables);
1700
+ }
1701
+ get markers() {
1702
+ return this._markers;
1703
+ }
1704
+ withMarkers(markers) {
1705
+ return markers === this._markers ? this : new ScopedVariableDeclarations_1(this._id, this._prefix, markers, this._modifiers, this._scope, this._variables);
1706
+ }
1707
+ get modifiers() {
1708
+ return this._modifiers;
1709
+ }
1710
+ withModifiers(modifiers) {
1711
+ return modifiers === this._modifiers ? this : new ScopedVariableDeclarations_1(this._id, this._prefix, this._markers, modifiers, this._scope, this._variables);
1712
+ }
1713
+ get scope() {
1714
+ return this._scope === null ? null : this._scope.element;
1715
+ }
1716
+ withScope(scope) {
1717
+ return this.padding.withScope(tree_1.JLeftPadded.withElement(this._scope, scope));
1718
+ }
1719
+ get variables() {
1720
+ return tree_1.JRightPadded.getElements(this._variables);
1721
+ }
1722
+ withVariables(variables) {
1723
+ return this.padding.withVariables(tree_1.JRightPadded.withElements(this._variables, variables));
1724
+ }
1725
+ acceptJavaScript(v, p) {
1726
+ return v.visitScopedVariableDeclarations(this, p);
1727
+ }
1728
+ get padding() {
1729
+ const t = this;
1730
+ return new class {
1731
+ get scope() {
1732
+ return t._scope;
1733
+ }
1734
+ withScope(scope) {
1735
+ return t._scope === scope ? t : new ScopedVariableDeclarations_1(t._id, t._prefix, t._markers, t._modifiers, scope, t._variables);
1736
+ }
1737
+ get variables() {
1738
+ return t._variables;
1739
+ }
1740
+ withVariables(variables) {
1741
+ return t._variables === variables ? t : new ScopedVariableDeclarations_1(t._id, t._prefix, t._markers, t._modifiers, t._scope, variables);
1742
+ }
1743
+ };
1744
+ }
1745
+ };
1746
+ exports.ScopedVariableDeclarations = ScopedVariableDeclarations;
1747
+ exports.ScopedVariableDeclarations = ScopedVariableDeclarations = ScopedVariableDeclarations_1 = __decorate([
1748
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ScopedVariableDeclarations")
1749
+ ], ScopedVariableDeclarations);
1750
+ (function (ScopedVariableDeclarations) {
1751
+ let Scope;
1752
+ (function (Scope) {
1753
+ Scope[Scope["Const"] = 0] = "Const";
1754
+ Scope[Scope["Let"] = 1] = "Let";
1755
+ Scope[Scope["Var"] = 2] = "Var";
1756
+ })(Scope = ScopedVariableDeclarations.Scope || (ScopedVariableDeclarations.Scope = {}));
1757
+ })(ScopedVariableDeclarations || (exports.ScopedVariableDeclarations = ScopedVariableDeclarations = {}));
1758
+ let TaggedTemplateExpression = TaggedTemplateExpression_1 = class TaggedTemplateExpression extends (0, support_types_1.JSMixin)(Object) {
1759
+ constructor(id, prefix, markers, tag, typeArguments, templateExpression, _type) {
1760
+ super();
1761
+ this._id = id;
1762
+ this._prefix = prefix;
1763
+ this._markers = markers;
1764
+ this._tag = tag;
1765
+ this._typeArguments = typeArguments;
1766
+ this._templateExpression = templateExpression;
1767
+ this._type = _type;
1768
+ }
1769
+ get id() {
1770
+ return this._id;
1771
+ }
1772
+ withId(id) {
1773
+ return id === this._id ? this : new TaggedTemplateExpression_1(id, this._prefix, this._markers, this._tag, this._typeArguments, this._templateExpression, this._type);
1774
+ }
1775
+ get prefix() {
1776
+ return this._prefix;
1777
+ }
1778
+ withPrefix(prefix) {
1779
+ return prefix === this._prefix ? this : new TaggedTemplateExpression_1(this._id, prefix, this._markers, this._tag, this._typeArguments, this._templateExpression, this._type);
1780
+ }
1781
+ get markers() {
1782
+ return this._markers;
1783
+ }
1784
+ withMarkers(markers) {
1785
+ return markers === this._markers ? this : new TaggedTemplateExpression_1(this._id, this._prefix, markers, this._tag, this._typeArguments, this._templateExpression, this._type);
1786
+ }
1787
+ get tag() {
1788
+ return this._tag === null ? null : this._tag.element;
1789
+ }
1790
+ withTag(tag) {
1791
+ return this.padding.withTag(tree_1.JRightPadded.withElement(this._tag, tag));
1792
+ }
1793
+ get typeArguments() {
1794
+ return this._typeArguments === null ? null : this._typeArguments.elements;
1795
+ }
1796
+ withTypeArguments(typeArguments) {
1797
+ return this.padding.withTypeArguments(tree_1.JContainer.withElementsNullable(this._typeArguments, typeArguments));
1798
+ }
1799
+ get templateExpression() {
1800
+ return this._templateExpression;
1801
+ }
1802
+ withTemplateExpression(templateExpression) {
1803
+ return templateExpression === this._templateExpression ? this : new TaggedTemplateExpression_1(this._id, this._prefix, this._markers, this._tag, this._typeArguments, templateExpression, this._type);
1804
+ }
1805
+ get type() {
1806
+ return this._type;
1807
+ }
1808
+ withType(_type) {
1809
+ return _type === this._type ? this : new TaggedTemplateExpression_1(this._id, this._prefix, this._markers, this._tag, this._typeArguments, this._templateExpression, _type);
1810
+ }
1811
+ acceptJavaScript(v, p) {
1812
+ return v.visitTaggedTemplateExpression(this, p);
1813
+ }
1814
+ get padding() {
1815
+ const t = this;
1816
+ return new class {
1817
+ get tag() {
1818
+ return t._tag;
1819
+ }
1820
+ withTag(tag) {
1821
+ return t._tag === tag ? t : new TaggedTemplateExpression_1(t._id, t._prefix, t._markers, tag, t._typeArguments, t._templateExpression, t._type);
1822
+ }
1823
+ get typeArguments() {
1824
+ return t._typeArguments;
1825
+ }
1826
+ withTypeArguments(typeArguments) {
1827
+ return t._typeArguments === typeArguments ? t : new TaggedTemplateExpression_1(t._id, t._prefix, t._markers, t._tag, typeArguments, t._templateExpression, t._type);
1828
+ }
1829
+ };
1830
+ }
1831
+ };
1832
+ exports.TaggedTemplateExpression = TaggedTemplateExpression;
1833
+ exports.TaggedTemplateExpression = TaggedTemplateExpression = TaggedTemplateExpression_1 = __decorate([
1834
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$TaggedTemplateExpression")
1835
+ ], TaggedTemplateExpression);
1836
+ let TemplateExpression = TemplateExpression_1 = class TemplateExpression extends (0, support_types_1.JSMixin)(Object) {
1837
+ constructor(id, prefix, markers, head, templateSpans, _type) {
1838
+ super();
1839
+ this._id = id;
1840
+ this._prefix = prefix;
1841
+ this._markers = markers;
1842
+ this._head = head;
1843
+ this._templateSpans = templateSpans;
1844
+ this._type = _type;
1845
+ }
1846
+ get id() {
1847
+ return this._id;
1848
+ }
1849
+ withId(id) {
1850
+ return id === this._id ? this : new TemplateExpression_1(id, this._prefix, this._markers, this._head, this._templateSpans, this._type);
1851
+ }
1852
+ get prefix() {
1853
+ return this._prefix;
1854
+ }
1855
+ withPrefix(prefix) {
1856
+ return prefix === this._prefix ? this : new TemplateExpression_1(this._id, prefix, this._markers, this._head, this._templateSpans, this._type);
1857
+ }
1858
+ get markers() {
1859
+ return this._markers;
1860
+ }
1861
+ withMarkers(markers) {
1862
+ return markers === this._markers ? this : new TemplateExpression_1(this._id, this._prefix, markers, this._head, this._templateSpans, this._type);
1863
+ }
1864
+ get head() {
1865
+ return this._head;
1866
+ }
1867
+ withHead(head) {
1868
+ return head === this._head ? this : new TemplateExpression_1(this._id, this._prefix, this._markers, head, this._templateSpans, this._type);
1869
+ }
1870
+ get templateSpans() {
1871
+ return tree_1.JRightPadded.getElements(this._templateSpans);
1872
+ }
1873
+ withTemplateSpans(templateSpans) {
1874
+ return this.padding.withTemplateSpans(tree_1.JRightPadded.withElements(this._templateSpans, templateSpans));
1350
1875
  }
1351
1876
  get type() {
1352
1877
  return this._type;
@@ -1728,15 +2253,17 @@ exports.TypeOperator = TypeOperator = TypeOperator_1 = __decorate([
1728
2253
  (function (Type) {
1729
2254
  Type[Type["ReadOnly"] = 0] = "ReadOnly";
1730
2255
  Type[Type["KeyOf"] = 1] = "KeyOf";
2256
+ Type[Type["Unique"] = 2] = "Unique";
1731
2257
  })(Type = TypeOperator.Type || (TypeOperator.Type = {}));
1732
2258
  })(TypeOperator || (exports.TypeOperator = TypeOperator = {}));
1733
- let Unary = Unary_1 = class Unary extends (0, support_types_1.JSMixin)(Object) {
1734
- constructor(id, prefix, markers, operator, expression, _type) {
2259
+ let TypePredicate = TypePredicate_1 = class TypePredicate extends (0, support_types_1.JSMixin)(Object) {
2260
+ constructor(id, prefix, markers, asserts, parameterName, expression, _type) {
1735
2261
  super();
1736
2262
  this._id = id;
1737
2263
  this._prefix = prefix;
1738
2264
  this._markers = markers;
1739
- this._operator = operator;
2265
+ this._asserts = asserts;
2266
+ this._parameterName = parameterName;
1740
2267
  this._expression = expression;
1741
2268
  this._type = _type;
1742
2269
  }
@@ -1744,74 +2271,152 @@ let Unary = Unary_1 = class Unary extends (0, support_types_1.JSMixin)(Object) {
1744
2271
  return this._id;
1745
2272
  }
1746
2273
  withId(id) {
1747
- return id === this._id ? this : new Unary_1(id, this._prefix, this._markers, this._operator, this._expression, this._type);
2274
+ return id === this._id ? this : new TypePredicate_1(id, this._prefix, this._markers, this._asserts, this._parameterName, this._expression, this._type);
1748
2275
  }
1749
2276
  get prefix() {
1750
2277
  return this._prefix;
1751
2278
  }
1752
2279
  withPrefix(prefix) {
1753
- return prefix === this._prefix ? this : new Unary_1(this._id, prefix, this._markers, this._operator, this._expression, this._type);
2280
+ return prefix === this._prefix ? this : new TypePredicate_1(this._id, prefix, this._markers, this._asserts, this._parameterName, this._expression, this._type);
1754
2281
  }
1755
2282
  get markers() {
1756
2283
  return this._markers;
1757
2284
  }
1758
2285
  withMarkers(markers) {
1759
- return markers === this._markers ? this : new Unary_1(this._id, this._prefix, markers, this._operator, this._expression, this._type);
2286
+ return markers === this._markers ? this : new TypePredicate_1(this._id, this._prefix, markers, this._asserts, this._parameterName, this._expression, this._type);
1760
2287
  }
1761
- get operator() {
1762
- return this._operator.element;
2288
+ get asserts() {
2289
+ return this._asserts.element;
1763
2290
  }
1764
- withOperator(operator) {
1765
- return this.padding.withOperator(this._operator.withElement(operator));
2291
+ withAsserts(asserts) {
2292
+ return this.padding.withAsserts(this._asserts.withElement(asserts));
2293
+ }
2294
+ get parameterName() {
2295
+ return this._parameterName;
2296
+ }
2297
+ withParameterName(parameterName) {
2298
+ return parameterName === this._parameterName ? this : new TypePredicate_1(this._id, this._prefix, this._markers, this._asserts, parameterName, this._expression, this._type);
1766
2299
  }
1767
2300
  get expression() {
1768
- return this._expression;
2301
+ return this._expression === null ? null : this._expression.element;
1769
2302
  }
1770
2303
  withExpression(expression) {
1771
- return expression === this._expression ? this : new Unary_1(this._id, this._prefix, this._markers, this._operator, expression, this._type);
2304
+ return this.padding.withExpression(tree_1.JLeftPadded.withElement(this._expression, expression));
1772
2305
  }
1773
2306
  get type() {
1774
2307
  return this._type;
1775
2308
  }
1776
2309
  withType(_type) {
1777
- return _type === this._type ? this : new Unary_1(this._id, this._prefix, this._markers, this._operator, this._expression, _type);
2310
+ return _type === this._type ? this : new TypePredicate_1(this._id, this._prefix, this._markers, this._asserts, this._parameterName, this._expression, _type);
1778
2311
  }
1779
2312
  acceptJavaScript(v, p) {
1780
- return v.visitJsUnary(this, p);
2313
+ return v.visitTypePredicate(this, p);
1781
2314
  }
1782
2315
  get padding() {
1783
2316
  const t = this;
1784
2317
  return new class {
1785
- get operator() {
1786
- return t._operator;
2318
+ get asserts() {
2319
+ return t._asserts;
1787
2320
  }
1788
- withOperator(operator) {
1789
- return t._operator === operator ? t : new Unary_1(t._id, t._prefix, t._markers, operator, t._expression, t._type);
2321
+ withAsserts(asserts) {
2322
+ return t._asserts === asserts ? t : new TypePredicate_1(t._id, t._prefix, t._markers, asserts, t._parameterName, t._expression, t._type);
2323
+ }
2324
+ get expression() {
2325
+ return t._expression;
2326
+ }
2327
+ withExpression(expression) {
2328
+ return t._expression === expression ? t : new TypePredicate_1(t._id, t._prefix, t._markers, t._asserts, t._parameterName, expression, t._type);
1790
2329
  }
1791
2330
  };
1792
2331
  }
1793
2332
  };
1794
- exports.Unary = Unary;
1795
- exports.Unary = Unary = Unary_1 = __decorate([
1796
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$Unary")
1797
- ], Unary);
1798
- (function (Unary) {
1799
- let Type;
1800
- (function (Type) {
1801
- Type[Type["Spread"] = 0] = "Spread";
1802
- Type[Type["Optional"] = 1] = "Optional";
1803
- Type[Type["Exclamation"] = 2] = "Exclamation";
1804
- Type[Type["QuestionDot"] = 3] = "QuestionDot";
1805
- Type[Type["QuestionDotWithDot"] = 4] = "QuestionDotWithDot";
1806
- })(Type = Unary.Type || (Unary.Type = {}));
1807
- })(Unary || (exports.Unary = Unary = {}));
1808
- let Union = Union_1 = class Union extends (0, support_types_1.JSMixin)(Object) {
1809
- constructor(id, prefix, markers, types, _type) {
2333
+ exports.TypePredicate = TypePredicate;
2334
+ exports.TypePredicate = TypePredicate = TypePredicate_1 = __decorate([
2335
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$TypePredicate")
2336
+ ], TypePredicate);
2337
+ let Unary = Unary_1 = class Unary extends (0, support_types_1.JSMixin)(Object) {
2338
+ constructor(id, prefix, markers, operator, expression, _type) {
1810
2339
  super();
1811
2340
  this._id = id;
1812
2341
  this._prefix = prefix;
1813
2342
  this._markers = markers;
1814
- this._types = types;
2343
+ this._operator = operator;
2344
+ this._expression = expression;
2345
+ this._type = _type;
2346
+ }
2347
+ get id() {
2348
+ return this._id;
2349
+ }
2350
+ withId(id) {
2351
+ return id === this._id ? this : new Unary_1(id, this._prefix, this._markers, this._operator, this._expression, this._type);
2352
+ }
2353
+ get prefix() {
2354
+ return this._prefix;
2355
+ }
2356
+ withPrefix(prefix) {
2357
+ return prefix === this._prefix ? this : new Unary_1(this._id, prefix, this._markers, this._operator, this._expression, this._type);
2358
+ }
2359
+ get markers() {
2360
+ return this._markers;
2361
+ }
2362
+ withMarkers(markers) {
2363
+ return markers === this._markers ? this : new Unary_1(this._id, this._prefix, markers, this._operator, this._expression, this._type);
2364
+ }
2365
+ get operator() {
2366
+ return this._operator.element;
2367
+ }
2368
+ withOperator(operator) {
2369
+ return this.padding.withOperator(this._operator.withElement(operator));
2370
+ }
2371
+ get expression() {
2372
+ return this._expression;
2373
+ }
2374
+ withExpression(expression) {
2375
+ return expression === this._expression ? this : new Unary_1(this._id, this._prefix, this._markers, this._operator, expression, this._type);
2376
+ }
2377
+ get type() {
2378
+ return this._type;
2379
+ }
2380
+ withType(_type) {
2381
+ return _type === this._type ? this : new Unary_1(this._id, this._prefix, this._markers, this._operator, this._expression, _type);
2382
+ }
2383
+ acceptJavaScript(v, p) {
2384
+ return v.visitJsUnary(this, p);
2385
+ }
2386
+ get padding() {
2387
+ const t = this;
2388
+ return new class {
2389
+ get operator() {
2390
+ return t._operator;
2391
+ }
2392
+ withOperator(operator) {
2393
+ return t._operator === operator ? t : new Unary_1(t._id, t._prefix, t._markers, operator, t._expression, t._type);
2394
+ }
2395
+ };
2396
+ }
2397
+ };
2398
+ exports.Unary = Unary;
2399
+ exports.Unary = Unary = Unary_1 = __decorate([
2400
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$Unary")
2401
+ ], Unary);
2402
+ (function (Unary) {
2403
+ let Type;
2404
+ (function (Type) {
2405
+ Type[Type["Spread"] = 0] = "Spread";
2406
+ Type[Type["Optional"] = 1] = "Optional";
2407
+ Type[Type["Exclamation"] = 2] = "Exclamation";
2408
+ Type[Type["QuestionDot"] = 3] = "QuestionDot";
2409
+ Type[Type["QuestionDotWithDot"] = 4] = "QuestionDotWithDot";
2410
+ Type[Type["Asterisk"] = 5] = "Asterisk";
2411
+ })(Type = Unary.Type || (Unary.Type = {}));
2412
+ })(Unary || (exports.Unary = Unary = {}));
2413
+ let Union = Union_1 = class Union extends (0, support_types_1.JSMixin)(Object) {
2414
+ constructor(id, prefix, markers, types, _type) {
2415
+ super();
2416
+ this._id = id;
2417
+ this._prefix = prefix;
2418
+ this._markers = markers;
2419
+ this._types = types;
1815
2420
  this._type = _type;
1816
2421
  }
1817
2422
  get id() {
@@ -1996,10 +2601,10 @@ let Yield = Yield_1 = class Yield extends (0, support_types_1.JSMixin)(Object) {
1996
2601
  return markers === this._markers ? this : new Yield_1(this._id, this._prefix, markers, this._delegated, this._expression, this._type);
1997
2602
  }
1998
2603
  get delegated() {
1999
- return this._delegated;
2604
+ return this._delegated.element;
2000
2605
  }
2001
2606
  withDelegated(delegated) {
2002
- return delegated === this._delegated ? this : new Yield_1(this._id, this._prefix, this._markers, delegated, this._expression, this._type);
2607
+ return this.padding.withDelegated(this._delegated.withElement(delegated));
2003
2608
  }
2004
2609
  get expression() {
2005
2610
  return this._expression;
@@ -2016,6 +2621,17 @@ let Yield = Yield_1 = class Yield extends (0, support_types_1.JSMixin)(Object) {
2016
2621
  acceptJavaScript(v, p) {
2017
2622
  return v.visitJsYield(this, p);
2018
2623
  }
2624
+ get padding() {
2625
+ const t = this;
2626
+ return new class {
2627
+ get delegated() {
2628
+ return t._delegated;
2629
+ }
2630
+ withDelegated(delegated) {
2631
+ return t._delegated === delegated ? t : new Yield_1(t._id, t._prefix, t._markers, delegated, t._expression, t._type);
2632
+ }
2633
+ };
2634
+ }
2019
2635
  };
2020
2636
  exports.Yield = Yield;
2021
2637
  exports.Yield = Yield = Yield_1 = __decorate([
@@ -2337,10 +2953,531 @@ let JSMethodDeclaration = JSMethodDeclaration_1 = class JSMethodDeclaration exte
2337
2953
  return v.visitJSMethodDeclaration(this, p);
2338
2954
  }
2339
2955
  get type() {
2340
- return extensions.getJavaType(this);
2956
+ return extensions.getJavaType(this);
2957
+ }
2958
+ withType(type) {
2959
+ return extensions.withJavaType(this, type);
2960
+ }
2961
+ get padding() {
2962
+ const t = this;
2963
+ return new class {
2964
+ get parameters() {
2965
+ return t._parameters;
2966
+ }
2967
+ withParameters(parameters) {
2968
+ return t._parameters === parameters ? t : new JSMethodDeclaration_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeParameters, t._returnTypeExpression, t._name, parameters, t._throwz, t._body, t._defaultValue, t._methodType);
2969
+ }
2970
+ get throwz() {
2971
+ return t._throwz;
2972
+ }
2973
+ withThrowz(throwz) {
2974
+ return t._throwz === throwz ? t : new JSMethodDeclaration_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeParameters, t._returnTypeExpression, t._name, t._parameters, throwz, t._body, t._defaultValue, t._methodType);
2975
+ }
2976
+ get defaultValue() {
2977
+ return t._defaultValue;
2978
+ }
2979
+ withDefaultValue(defaultValue) {
2980
+ return t._defaultValue === defaultValue ? t : new JSMethodDeclaration_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeParameters, t._returnTypeExpression, t._name, t._parameters, t._throwz, t._body, defaultValue, t._methodType);
2981
+ }
2982
+ };
2983
+ }
2984
+ };
2985
+ exports.JSMethodDeclaration = JSMethodDeclaration;
2986
+ exports.JSMethodDeclaration = JSMethodDeclaration = JSMethodDeclaration_1 = __decorate([
2987
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JSMethodDeclaration")
2988
+ ], JSMethodDeclaration);
2989
+ let JSForOfLoop = JSForOfLoop_1 = class JSForOfLoop extends (0, support_types_1.JSMixin)(Object) {
2990
+ constructor(id, prefix, markers, await, control, body) {
2991
+ super();
2992
+ this._id = id;
2993
+ this._prefix = prefix;
2994
+ this._markers = markers;
2995
+ this._await = await;
2996
+ this._control = control;
2997
+ this._body = body;
2998
+ }
2999
+ get id() {
3000
+ return this._id;
3001
+ }
3002
+ withId(id) {
3003
+ return id === this._id ? this : new JSForOfLoop_1(id, this._prefix, this._markers, this._await, this._control, this._body);
3004
+ }
3005
+ get prefix() {
3006
+ return this._prefix;
3007
+ }
3008
+ withPrefix(prefix) {
3009
+ return prefix === this._prefix ? this : new JSForOfLoop_1(this._id, prefix, this._markers, this._await, this._control, this._body);
3010
+ }
3011
+ get markers() {
3012
+ return this._markers;
3013
+ }
3014
+ withMarkers(markers) {
3015
+ return markers === this._markers ? this : new JSForOfLoop_1(this._id, this._prefix, markers, this._await, this._control, this._body);
3016
+ }
3017
+ get await() {
3018
+ return this._await.element;
3019
+ }
3020
+ withAwait(await) {
3021
+ return this.padding.withAwait(this._await.withElement(await));
3022
+ }
3023
+ get control() {
3024
+ return this._control;
3025
+ }
3026
+ withControl(control) {
3027
+ return control === this._control ? this : new JSForOfLoop_1(this._id, this._prefix, this._markers, this._await, control, this._body);
3028
+ }
3029
+ get body() {
3030
+ return this._body.element;
3031
+ }
3032
+ withBody(body) {
3033
+ return this.padding.withBody(this._body.withElement(body));
3034
+ }
3035
+ acceptJavaScript(v, p) {
3036
+ return v.visitJSForOfLoop(this, p);
3037
+ }
3038
+ get padding() {
3039
+ const t = this;
3040
+ return new class {
3041
+ get await() {
3042
+ return t._await;
3043
+ }
3044
+ withAwait(await) {
3045
+ return t._await === await ? t : new JSForOfLoop_1(t._id, t._prefix, t._markers, await, t._control, t._body);
3046
+ }
3047
+ get body() {
3048
+ return t._body;
3049
+ }
3050
+ withBody(body) {
3051
+ return t._body === body ? t : new JSForOfLoop_1(t._id, t._prefix, t._markers, t._await, t._control, body);
3052
+ }
3053
+ };
3054
+ }
3055
+ };
3056
+ exports.JSForOfLoop = JSForOfLoop;
3057
+ exports.JSForOfLoop = JSForOfLoop = JSForOfLoop_1 = __decorate([
3058
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JSForOfLoop")
3059
+ ], JSForOfLoop);
3060
+ let JSForInLoop = JSForInLoop_1 = class JSForInLoop extends (0, support_types_1.JSMixin)(Object) {
3061
+ constructor(id, prefix, markers, control, body) {
3062
+ super();
3063
+ this._id = id;
3064
+ this._prefix = prefix;
3065
+ this._markers = markers;
3066
+ this._control = control;
3067
+ this._body = body;
3068
+ }
3069
+ get id() {
3070
+ return this._id;
3071
+ }
3072
+ withId(id) {
3073
+ return id === this._id ? this : new JSForInLoop_1(id, this._prefix, this._markers, this._control, this._body);
3074
+ }
3075
+ get prefix() {
3076
+ return this._prefix;
3077
+ }
3078
+ withPrefix(prefix) {
3079
+ return prefix === this._prefix ? this : new JSForInLoop_1(this._id, prefix, this._markers, this._control, this._body);
3080
+ }
3081
+ get markers() {
3082
+ return this._markers;
3083
+ }
3084
+ withMarkers(markers) {
3085
+ return markers === this._markers ? this : new JSForInLoop_1(this._id, this._prefix, markers, this._control, this._body);
3086
+ }
3087
+ get control() {
3088
+ return this._control;
3089
+ }
3090
+ withControl(control) {
3091
+ return control === this._control ? this : new JSForInLoop_1(this._id, this._prefix, this._markers, control, this._body);
3092
+ }
3093
+ get body() {
3094
+ return this._body.element;
3095
+ }
3096
+ withBody(body) {
3097
+ return this.padding.withBody(this._body.withElement(body));
3098
+ }
3099
+ acceptJavaScript(v, p) {
3100
+ return v.visitJSForInLoop(this, p);
3101
+ }
3102
+ get padding() {
3103
+ const t = this;
3104
+ return new class {
3105
+ get body() {
3106
+ return t._body;
3107
+ }
3108
+ withBody(body) {
3109
+ return t._body === body ? t : new JSForInLoop_1(t._id, t._prefix, t._markers, t._control, body);
3110
+ }
3111
+ };
3112
+ }
3113
+ };
3114
+ exports.JSForInLoop = JSForInLoop;
3115
+ exports.JSForInLoop = JSForInLoop = JSForInLoop_1 = __decorate([
3116
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JSForInLoop")
3117
+ ], JSForInLoop);
3118
+ let JSForInOfLoopControl = JSForInOfLoopControl_1 = class JSForInOfLoopControl extends (0, support_types_1.JSMixin)(Object) {
3119
+ constructor(id, prefix, markers, variable, iterable) {
3120
+ super();
3121
+ this._id = id;
3122
+ this._prefix = prefix;
3123
+ this._markers = markers;
3124
+ this._variable = variable;
3125
+ this._iterable = iterable;
3126
+ }
3127
+ get id() {
3128
+ return this._id;
3129
+ }
3130
+ withId(id) {
3131
+ return id === this._id ? this : new JSForInOfLoopControl_1(id, this._prefix, this._markers, this._variable, this._iterable);
3132
+ }
3133
+ get prefix() {
3134
+ return this._prefix;
3135
+ }
3136
+ withPrefix(prefix) {
3137
+ return prefix === this._prefix ? this : new JSForInOfLoopControl_1(this._id, prefix, this._markers, this._variable, this._iterable);
3138
+ }
3139
+ get markers() {
3140
+ return this._markers;
3141
+ }
3142
+ withMarkers(markers) {
3143
+ return markers === this._markers ? this : new JSForInOfLoopControl_1(this._id, this._prefix, markers, this._variable, this._iterable);
3144
+ }
3145
+ get variable() {
3146
+ return this._variable.element;
3147
+ }
3148
+ withVariable(variable) {
3149
+ return this.padding.withVariable(this._variable.withElement(variable));
3150
+ }
3151
+ get iterable() {
3152
+ return this._iterable.element;
3153
+ }
3154
+ withIterable(iterable) {
3155
+ return this.padding.withIterable(this._iterable.withElement(iterable));
3156
+ }
3157
+ acceptJavaScript(v, p) {
3158
+ return v.visitJSForInOfLoopControl(this, p);
3159
+ }
3160
+ get padding() {
3161
+ const t = this;
3162
+ return new class {
3163
+ get variable() {
3164
+ return t._variable;
3165
+ }
3166
+ withVariable(variable) {
3167
+ return t._variable === variable ? t : new JSForInOfLoopControl_1(t._id, t._prefix, t._markers, variable, t._iterable);
3168
+ }
3169
+ get iterable() {
3170
+ return t._iterable;
3171
+ }
3172
+ withIterable(iterable) {
3173
+ return t._iterable === iterable ? t : new JSForInOfLoopControl_1(t._id, t._prefix, t._markers, t._variable, iterable);
3174
+ }
3175
+ };
3176
+ }
3177
+ };
3178
+ exports.JSForInOfLoopControl = JSForInOfLoopControl;
3179
+ exports.JSForInOfLoopControl = JSForInOfLoopControl = JSForInOfLoopControl_1 = __decorate([
3180
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JSForInOfLoopControl")
3181
+ ], JSForInOfLoopControl);
3182
+ let NamespaceDeclaration = NamespaceDeclaration_1 = class NamespaceDeclaration extends (0, support_types_1.JSMixin)(Object) {
3183
+ constructor(id, prefix, markers, modifiers, keywordType, name, body) {
3184
+ super();
3185
+ this._id = id;
3186
+ this._prefix = prefix;
3187
+ this._markers = markers;
3188
+ this._modifiers = modifiers;
3189
+ this._keywordType = keywordType;
3190
+ this._name = name;
3191
+ this._body = body;
3192
+ }
3193
+ get id() {
3194
+ return this._id;
3195
+ }
3196
+ withId(id) {
3197
+ return id === this._id ? this : new NamespaceDeclaration_1(id, this._prefix, this._markers, this._modifiers, this._keywordType, this._name, this._body);
3198
+ }
3199
+ get prefix() {
3200
+ return this._prefix;
3201
+ }
3202
+ withPrefix(prefix) {
3203
+ return prefix === this._prefix ? this : new NamespaceDeclaration_1(this._id, prefix, this._markers, this._modifiers, this._keywordType, this._name, this._body);
3204
+ }
3205
+ get markers() {
3206
+ return this._markers;
3207
+ }
3208
+ withMarkers(markers) {
3209
+ return markers === this._markers ? this : new NamespaceDeclaration_1(this._id, this._prefix, markers, this._modifiers, this._keywordType, this._name, this._body);
3210
+ }
3211
+ get modifiers() {
3212
+ return this._modifiers;
3213
+ }
3214
+ withModifiers(modifiers) {
3215
+ return modifiers === this._modifiers ? this : new NamespaceDeclaration_1(this._id, this._prefix, this._markers, modifiers, this._keywordType, this._name, this._body);
3216
+ }
3217
+ get keywordType() {
3218
+ return this._keywordType.element;
3219
+ }
3220
+ withKeywordType(keywordType) {
3221
+ return this.padding.withKeywordType(this._keywordType.withElement(keywordType));
3222
+ }
3223
+ get name() {
3224
+ return this._name.element;
3225
+ }
3226
+ withName(name) {
3227
+ return this.padding.withName(this._name.withElement(name));
3228
+ }
3229
+ get body() {
3230
+ return this._body;
3231
+ }
3232
+ withBody(body) {
3233
+ return body === this._body ? this : new NamespaceDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._keywordType, this._name, body);
3234
+ }
3235
+ acceptJavaScript(v, p) {
3236
+ return v.visitNamespaceDeclaration(this, p);
3237
+ }
3238
+ get padding() {
3239
+ const t = this;
3240
+ return new class {
3241
+ get keywordType() {
3242
+ return t._keywordType;
3243
+ }
3244
+ withKeywordType(keywordType) {
3245
+ return t._keywordType === keywordType ? t : new NamespaceDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, keywordType, t._name, t._body);
3246
+ }
3247
+ get name() {
3248
+ return t._name;
3249
+ }
3250
+ withName(name) {
3251
+ return t._name === name ? t : new NamespaceDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, t._keywordType, name, t._body);
3252
+ }
3253
+ };
3254
+ }
3255
+ };
3256
+ exports.NamespaceDeclaration = NamespaceDeclaration;
3257
+ exports.NamespaceDeclaration = NamespaceDeclaration = NamespaceDeclaration_1 = __decorate([
3258
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$NamespaceDeclaration")
3259
+ ], NamespaceDeclaration);
3260
+ (function (NamespaceDeclaration) {
3261
+ let KeywordType;
3262
+ (function (KeywordType) {
3263
+ KeywordType[KeywordType["Namespace"] = 0] = "Namespace";
3264
+ KeywordType[KeywordType["Module"] = 1] = "Module";
3265
+ })(KeywordType = NamespaceDeclaration.KeywordType || (NamespaceDeclaration.KeywordType = {}));
3266
+ })(NamespaceDeclaration || (exports.NamespaceDeclaration = NamespaceDeclaration = {}));
3267
+ let FunctionDeclaration = FunctionDeclaration_1 = class FunctionDeclaration extends (0, support_types_1.JSMixin)(Object) {
3268
+ constructor(id, prefix, markers, modifiers, asteriskToken, name, typeParameters, parameters, returnTypeExpression, body, _type) {
3269
+ super();
3270
+ this._id = id;
3271
+ this._prefix = prefix;
3272
+ this._markers = markers;
3273
+ this._modifiers = modifiers;
3274
+ this._asteriskToken = asteriskToken;
3275
+ this._name = name;
3276
+ this._typeParameters = typeParameters;
3277
+ this._parameters = parameters;
3278
+ this._returnTypeExpression = returnTypeExpression;
3279
+ this._body = body;
3280
+ this._type = _type;
3281
+ }
3282
+ get id() {
3283
+ return this._id;
3284
+ }
3285
+ withId(id) {
3286
+ return id === this._id ? this : new FunctionDeclaration_1(id, this._prefix, this._markers, this._modifiers, this._asteriskToken, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
3287
+ }
3288
+ get prefix() {
3289
+ return this._prefix;
3290
+ }
3291
+ withPrefix(prefix) {
3292
+ return prefix === this._prefix ? this : new FunctionDeclaration_1(this._id, prefix, this._markers, this._modifiers, this._asteriskToken, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
3293
+ }
3294
+ get markers() {
3295
+ return this._markers;
3296
+ }
3297
+ withMarkers(markers) {
3298
+ return markers === this._markers ? this : new FunctionDeclaration_1(this._id, this._prefix, markers, this._modifiers, this._asteriskToken, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
3299
+ }
3300
+ get modifiers() {
3301
+ return this._modifiers;
3302
+ }
3303
+ withModifiers(modifiers) {
3304
+ return modifiers === this._modifiers ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, modifiers, this._asteriskToken, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
3305
+ }
3306
+ get asteriskToken() {
3307
+ return this._asteriskToken.element;
3308
+ }
3309
+ withAsteriskToken(asteriskToken) {
3310
+ return this.padding.withAsteriskToken(this._asteriskToken.withElement(asteriskToken));
3311
+ }
3312
+ get name() {
3313
+ return this._name.element;
3314
+ }
3315
+ withName(name) {
3316
+ return this.padding.withName(this._name.withElement(name));
3317
+ }
3318
+ get typeParameters() {
3319
+ return this._typeParameters;
3320
+ }
3321
+ withTypeParameters(typeParameters) {
3322
+ return typeParameters === this._typeParameters ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._asteriskToken, this._name, typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
3323
+ }
3324
+ get parameters() {
3325
+ return this._parameters.elements;
3326
+ }
3327
+ withParameters(parameters) {
3328
+ return this.padding.withParameters(tree_1.JContainer.withElements(this._parameters, parameters));
3329
+ }
3330
+ get returnTypeExpression() {
3331
+ return this._returnTypeExpression;
3332
+ }
3333
+ withReturnTypeExpression(returnTypeExpression) {
3334
+ return returnTypeExpression === this._returnTypeExpression ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._asteriskToken, this._name, this._typeParameters, this._parameters, returnTypeExpression, this._body, this._type);
3335
+ }
3336
+ get body() {
3337
+ return this._body;
3338
+ }
3339
+ withBody(body) {
3340
+ return body === this._body ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._asteriskToken, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, body, this._type);
3341
+ }
3342
+ get type() {
3343
+ return this._type;
3344
+ }
3345
+ withType(_type) {
3346
+ return _type === this._type ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._asteriskToken, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, _type);
3347
+ }
3348
+ acceptJavaScript(v, p) {
3349
+ return v.visitFunctionDeclaration(this, p);
3350
+ }
3351
+ get padding() {
3352
+ const t = this;
3353
+ return new class {
3354
+ get asteriskToken() {
3355
+ return t._asteriskToken;
3356
+ }
3357
+ withAsteriskToken(asteriskToken) {
3358
+ return t._asteriskToken === asteriskToken ? t : new FunctionDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, asteriskToken, t._name, t._typeParameters, t._parameters, t._returnTypeExpression, t._body, t._type);
3359
+ }
3360
+ get name() {
3361
+ return t._name;
3362
+ }
3363
+ withName(name) {
3364
+ return t._name === name ? t : new FunctionDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, t._asteriskToken, name, t._typeParameters, t._parameters, t._returnTypeExpression, t._body, t._type);
3365
+ }
3366
+ get parameters() {
3367
+ return t._parameters;
3368
+ }
3369
+ withParameters(parameters) {
3370
+ return t._parameters === parameters ? t : new FunctionDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, t._asteriskToken, t._name, t._typeParameters, parameters, t._returnTypeExpression, t._body, t._type);
3371
+ }
3372
+ };
3373
+ }
3374
+ };
3375
+ exports.FunctionDeclaration = FunctionDeclaration;
3376
+ exports.FunctionDeclaration = FunctionDeclaration = FunctionDeclaration_1 = __decorate([
3377
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$FunctionDeclaration")
3378
+ ], FunctionDeclaration);
3379
+ let TypeLiteral = TypeLiteral_1 = class TypeLiteral extends (0, support_types_1.JSMixin)(Object) {
3380
+ constructor(id, prefix, markers, members, _type) {
3381
+ super();
3382
+ this._id = id;
3383
+ this._prefix = prefix;
3384
+ this._markers = markers;
3385
+ this._members = members;
3386
+ this._type = _type;
3387
+ }
3388
+ get id() {
3389
+ return this._id;
3390
+ }
3391
+ withId(id) {
3392
+ return id === this._id ? this : new TypeLiteral_1(id, this._prefix, this._markers, this._members, this._type);
3393
+ }
3394
+ get prefix() {
3395
+ return this._prefix;
3396
+ }
3397
+ withPrefix(prefix) {
3398
+ return prefix === this._prefix ? this : new TypeLiteral_1(this._id, prefix, this._markers, this._members, this._type);
3399
+ }
3400
+ get markers() {
3401
+ return this._markers;
3402
+ }
3403
+ withMarkers(markers) {
3404
+ return markers === this._markers ? this : new TypeLiteral_1(this._id, this._prefix, markers, this._members, this._type);
3405
+ }
3406
+ get members() {
3407
+ return this._members;
3408
+ }
3409
+ withMembers(members) {
3410
+ return members === this._members ? this : new TypeLiteral_1(this._id, this._prefix, this._markers, members, this._type);
3411
+ }
3412
+ get type() {
3413
+ return this._type;
3414
+ }
3415
+ withType(_type) {
3416
+ return _type === this._type ? this : new TypeLiteral_1(this._id, this._prefix, this._markers, this._members, _type);
3417
+ }
3418
+ acceptJavaScript(v, p) {
3419
+ return v.visitTypeLiteral(this, p);
3420
+ }
3421
+ };
3422
+ exports.TypeLiteral = TypeLiteral;
3423
+ exports.TypeLiteral = TypeLiteral = TypeLiteral_1 = __decorate([
3424
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$TypeLiteral")
3425
+ ], TypeLiteral);
3426
+ let IndexSignatureDeclaration = IndexSignatureDeclaration_1 = class IndexSignatureDeclaration extends (0, support_types_1.JSMixin)(Object) {
3427
+ constructor(id, prefix, markers, modifiers, parameters, typeExpression, _type) {
3428
+ super();
3429
+ this._id = id;
3430
+ this._prefix = prefix;
3431
+ this._markers = markers;
3432
+ this._modifiers = modifiers;
3433
+ this._parameters = parameters;
3434
+ this._typeExpression = typeExpression;
3435
+ this._type = _type;
3436
+ }
3437
+ get id() {
3438
+ return this._id;
3439
+ }
3440
+ withId(id) {
3441
+ return id === this._id ? this : new IndexSignatureDeclaration_1(id, this._prefix, this._markers, this._modifiers, this._parameters, this._typeExpression, this._type);
3442
+ }
3443
+ get prefix() {
3444
+ return this._prefix;
3445
+ }
3446
+ withPrefix(prefix) {
3447
+ return prefix === this._prefix ? this : new IndexSignatureDeclaration_1(this._id, prefix, this._markers, this._modifiers, this._parameters, this._typeExpression, this._type);
3448
+ }
3449
+ get markers() {
3450
+ return this._markers;
3451
+ }
3452
+ withMarkers(markers) {
3453
+ return markers === this._markers ? this : new IndexSignatureDeclaration_1(this._id, this._prefix, markers, this._modifiers, this._parameters, this._typeExpression, this._type);
3454
+ }
3455
+ get modifiers() {
3456
+ return this._modifiers;
3457
+ }
3458
+ withModifiers(modifiers) {
3459
+ return modifiers === this._modifiers ? this : new IndexSignatureDeclaration_1(this._id, this._prefix, this._markers, modifiers, this._parameters, this._typeExpression, this._type);
3460
+ }
3461
+ get parameters() {
3462
+ return this._parameters.elements;
3463
+ }
3464
+ withParameters(parameters) {
3465
+ return this.padding.withParameters(tree_1.JContainer.withElements(this._parameters, parameters));
3466
+ }
3467
+ get typeExpression() {
3468
+ return this._typeExpression.element;
3469
+ }
3470
+ withTypeExpression(typeExpression) {
3471
+ return this.padding.withTypeExpression(this._typeExpression.withElement(typeExpression));
3472
+ }
3473
+ get type() {
3474
+ return this._type;
2341
3475
  }
2342
- withType(type) {
2343
- return extensions.withJavaType(this, type);
3476
+ withType(_type) {
3477
+ return _type === this._type ? this : new IndexSignatureDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._parameters, this._typeExpression, _type);
3478
+ }
3479
+ acceptJavaScript(v, p) {
3480
+ return v.visitIndexSignatureDeclaration(this, p);
2344
3481
  }
2345
3482
  get padding() {
2346
3483
  const t = this;
@@ -2349,636 +3486,658 @@ let JSMethodDeclaration = JSMethodDeclaration_1 = class JSMethodDeclaration exte
2349
3486
  return t._parameters;
2350
3487
  }
2351
3488
  withParameters(parameters) {
2352
- return t._parameters === parameters ? t : new JSMethodDeclaration_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeParameters, t._returnTypeExpression, t._name, parameters, t._throwz, t._body, t._defaultValue, t._methodType);
2353
- }
2354
- get throwz() {
2355
- return t._throwz;
2356
- }
2357
- withThrowz(throwz) {
2358
- return t._throwz === throwz ? t : new JSMethodDeclaration_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeParameters, t._returnTypeExpression, t._name, t._parameters, throwz, t._body, t._defaultValue, t._methodType);
3489
+ return t._parameters === parameters ? t : new IndexSignatureDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, parameters, t._typeExpression, t._type);
2359
3490
  }
2360
- get defaultValue() {
2361
- return t._defaultValue;
3491
+ get typeExpression() {
3492
+ return t._typeExpression;
2362
3493
  }
2363
- withDefaultValue(defaultValue) {
2364
- return t._defaultValue === defaultValue ? t : new JSMethodDeclaration_1(t._id, t._prefix, t._markers, t._leadingAnnotations, t._modifiers, t._typeParameters, t._returnTypeExpression, t._name, t._parameters, t._throwz, t._body, defaultValue, t._methodType);
3494
+ withTypeExpression(typeExpression) {
3495
+ return t._typeExpression === typeExpression ? t : new IndexSignatureDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, t._parameters, typeExpression, t._type);
2365
3496
  }
2366
3497
  };
2367
3498
  }
2368
3499
  };
2369
- exports.JSMethodDeclaration = JSMethodDeclaration;
2370
- exports.JSMethodDeclaration = JSMethodDeclaration = JSMethodDeclaration_1 = __decorate([
2371
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JSMethodDeclaration")
2372
- ], JSMethodDeclaration);
2373
- let JSForOfLoop = JSForOfLoop_1 = class JSForOfLoop extends (0, support_types_1.JSMixin)(Object) {
2374
- constructor(id, prefix, markers, await, control, body) {
3500
+ exports.IndexSignatureDeclaration = IndexSignatureDeclaration;
3501
+ exports.IndexSignatureDeclaration = IndexSignatureDeclaration = IndexSignatureDeclaration_1 = __decorate([
3502
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$IndexSignatureDeclaration")
3503
+ ], IndexSignatureDeclaration);
3504
+ let ArrayBindingPattern = ArrayBindingPattern_1 = class ArrayBindingPattern extends (0, support_types_1.JSMixin)(Object) {
3505
+ constructor(id, prefix, markers, elements, _type) {
2375
3506
  super();
2376
3507
  this._id = id;
2377
3508
  this._prefix = prefix;
2378
3509
  this._markers = markers;
2379
- this._await = await;
2380
- this._control = control;
2381
- this._body = body;
3510
+ this._elements = elements;
3511
+ this._type = _type;
2382
3512
  }
2383
3513
  get id() {
2384
3514
  return this._id;
2385
3515
  }
2386
3516
  withId(id) {
2387
- return id === this._id ? this : new JSForOfLoop_1(id, this._prefix, this._markers, this._await, this._control, this._body);
3517
+ return id === this._id ? this : new ArrayBindingPattern_1(id, this._prefix, this._markers, this._elements, this._type);
2388
3518
  }
2389
3519
  get prefix() {
2390
3520
  return this._prefix;
2391
3521
  }
2392
3522
  withPrefix(prefix) {
2393
- return prefix === this._prefix ? this : new JSForOfLoop_1(this._id, prefix, this._markers, this._await, this._control, this._body);
3523
+ return prefix === this._prefix ? this : new ArrayBindingPattern_1(this._id, prefix, this._markers, this._elements, this._type);
2394
3524
  }
2395
3525
  get markers() {
2396
3526
  return this._markers;
2397
3527
  }
2398
3528
  withMarkers(markers) {
2399
- return markers === this._markers ? this : new JSForOfLoop_1(this._id, this._prefix, markers, this._await, this._control, this._body);
2400
- }
2401
- get await() {
2402
- return this._await.element;
2403
- }
2404
- withAwait(await) {
2405
- return this.padding.withAwait(this._await.withElement(await));
3529
+ return markers === this._markers ? this : new ArrayBindingPattern_1(this._id, this._prefix, markers, this._elements, this._type);
2406
3530
  }
2407
- get control() {
2408
- return this._control;
3531
+ get elements() {
3532
+ return this._elements.elements;
2409
3533
  }
2410
- withControl(control) {
2411
- return control === this._control ? this : new JSForOfLoop_1(this._id, this._prefix, this._markers, this._await, control, this._body);
3534
+ withElements(elements) {
3535
+ return this.padding.withElements(tree_1.JContainer.withElements(this._elements, elements));
2412
3536
  }
2413
- get body() {
2414
- return this._body.element;
3537
+ get type() {
3538
+ return this._type;
2415
3539
  }
2416
- withBody(body) {
2417
- return this.padding.withBody(this._body.withElement(body));
3540
+ withType(_type) {
3541
+ return _type === this._type ? this : new ArrayBindingPattern_1(this._id, this._prefix, this._markers, this._elements, _type);
2418
3542
  }
2419
3543
  acceptJavaScript(v, p) {
2420
- return v.visitJSForOfLoop(this, p);
3544
+ return v.visitArrayBindingPattern(this, p);
2421
3545
  }
2422
3546
  get padding() {
2423
3547
  const t = this;
2424
3548
  return new class {
2425
- get await() {
2426
- return t._await;
2427
- }
2428
- withAwait(await) {
2429
- return t._await === await ? t : new JSForOfLoop_1(t._id, t._prefix, t._markers, await, t._control, t._body);
2430
- }
2431
- get body() {
2432
- return t._body;
3549
+ get elements() {
3550
+ return t._elements;
2433
3551
  }
2434
- withBody(body) {
2435
- return t._body === body ? t : new JSForOfLoop_1(t._id, t._prefix, t._markers, t._await, t._control, body);
3552
+ withElements(elements) {
3553
+ return t._elements === elements ? t : new ArrayBindingPattern_1(t._id, t._prefix, t._markers, elements, t._type);
2436
3554
  }
2437
3555
  };
2438
3556
  }
2439
3557
  };
2440
- exports.JSForOfLoop = JSForOfLoop;
2441
- exports.JSForOfLoop = JSForOfLoop = JSForOfLoop_1 = __decorate([
2442
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JSForOfLoop")
2443
- ], JSForOfLoop);
2444
- let JSForInLoop = JSForInLoop_1 = class JSForInLoop extends (0, support_types_1.JSMixin)(Object) {
2445
- constructor(id, prefix, markers, control, body) {
3558
+ exports.ArrayBindingPattern = ArrayBindingPattern;
3559
+ exports.ArrayBindingPattern = ArrayBindingPattern = ArrayBindingPattern_1 = __decorate([
3560
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ArrayBindingPattern")
3561
+ ], ArrayBindingPattern);
3562
+ let BindingElement = BindingElement_1 = class BindingElement extends (0, support_types_1.JSMixin)(Object) {
3563
+ constructor(id, prefix, markers, propertyName, name, initializer, variableType) {
2446
3564
  super();
2447
3565
  this._id = id;
2448
3566
  this._prefix = prefix;
2449
3567
  this._markers = markers;
2450
- this._control = control;
2451
- this._body = body;
3568
+ this._propertyName = propertyName;
3569
+ this._name = name;
3570
+ this._initializer = initializer;
3571
+ this._variableType = variableType;
2452
3572
  }
2453
3573
  get id() {
2454
3574
  return this._id;
2455
3575
  }
2456
3576
  withId(id) {
2457
- return id === this._id ? this : new JSForInLoop_1(id, this._prefix, this._markers, this._control, this._body);
3577
+ return id === this._id ? this : new BindingElement_1(id, this._prefix, this._markers, this._propertyName, this._name, this._initializer, this._variableType);
2458
3578
  }
2459
3579
  get prefix() {
2460
3580
  return this._prefix;
2461
3581
  }
2462
3582
  withPrefix(prefix) {
2463
- return prefix === this._prefix ? this : new JSForInLoop_1(this._id, prefix, this._markers, this._control, this._body);
3583
+ return prefix === this._prefix ? this : new BindingElement_1(this._id, prefix, this._markers, this._propertyName, this._name, this._initializer, this._variableType);
2464
3584
  }
2465
3585
  get markers() {
2466
3586
  return this._markers;
2467
3587
  }
2468
3588
  withMarkers(markers) {
2469
- return markers === this._markers ? this : new JSForInLoop_1(this._id, this._prefix, markers, this._control, this._body);
3589
+ return markers === this._markers ? this : new BindingElement_1(this._id, this._prefix, markers, this._propertyName, this._name, this._initializer, this._variableType);
2470
3590
  }
2471
- get control() {
2472
- return this._control;
3591
+ get propertyName() {
3592
+ return this._propertyName === null ? null : this._propertyName.element;
2473
3593
  }
2474
- withControl(control) {
2475
- return control === this._control ? this : new JSForInLoop_1(this._id, this._prefix, this._markers, control, this._body);
3594
+ withPropertyName(propertyName) {
3595
+ return this.padding.withPropertyName(tree_1.JRightPadded.withElement(this._propertyName, propertyName));
2476
3596
  }
2477
- get body() {
2478
- return this._body.element;
3597
+ get name() {
3598
+ return this._name;
2479
3599
  }
2480
- withBody(body) {
2481
- return this.padding.withBody(this._body.withElement(body));
3600
+ withName(name) {
3601
+ return name === this._name ? this : new BindingElement_1(this._id, this._prefix, this._markers, this._propertyName, name, this._initializer, this._variableType);
3602
+ }
3603
+ get initializer() {
3604
+ return this._initializer === null ? null : this._initializer.element;
3605
+ }
3606
+ withInitializer(initializer) {
3607
+ return this.padding.withInitializer(tree_1.JLeftPadded.withElement(this._initializer, initializer));
3608
+ }
3609
+ get variableType() {
3610
+ return this._variableType;
3611
+ }
3612
+ withVariableType(variableType) {
3613
+ return variableType === this._variableType ? this : new BindingElement_1(this._id, this._prefix, this._markers, this._propertyName, this._name, this._initializer, variableType);
2482
3614
  }
2483
3615
  acceptJavaScript(v, p) {
2484
- return v.visitJSForInLoop(this, p);
3616
+ return v.visitBindingElement(this, p);
3617
+ }
3618
+ get type() {
3619
+ return extensions.getJavaType(this);
3620
+ }
3621
+ withType(type) {
3622
+ return extensions.withJavaType(this, type);
2485
3623
  }
2486
3624
  get padding() {
2487
3625
  const t = this;
2488
3626
  return new class {
2489
- get body() {
2490
- return t._body;
3627
+ get propertyName() {
3628
+ return t._propertyName;
2491
3629
  }
2492
- withBody(body) {
2493
- return t._body === body ? t : new JSForInLoop_1(t._id, t._prefix, t._markers, t._control, body);
3630
+ withPropertyName(propertyName) {
3631
+ return t._propertyName === propertyName ? t : new BindingElement_1(t._id, t._prefix, t._markers, propertyName, t._name, t._initializer, t._variableType);
3632
+ }
3633
+ get initializer() {
3634
+ return t._initializer;
3635
+ }
3636
+ withInitializer(initializer) {
3637
+ return t._initializer === initializer ? t : new BindingElement_1(t._id, t._prefix, t._markers, t._propertyName, t._name, initializer, t._variableType);
2494
3638
  }
2495
3639
  };
2496
3640
  }
2497
3641
  };
2498
- exports.JSForInLoop = JSForInLoop;
2499
- exports.JSForInLoop = JSForInLoop = JSForInLoop_1 = __decorate([
2500
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JSForInLoop")
2501
- ], JSForInLoop);
2502
- let JSForInOfLoopControl = JSForInOfLoopControl_1 = class JSForInOfLoopControl extends (0, support_types_1.JSMixin)(Object) {
2503
- constructor(id, prefix, markers, variable, iterable) {
3642
+ exports.BindingElement = BindingElement;
3643
+ exports.BindingElement = BindingElement = BindingElement_1 = __decorate([
3644
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$BindingElement")
3645
+ ], BindingElement);
3646
+ let ExportDeclaration = ExportDeclaration_1 = class ExportDeclaration extends (0, support_types_1.JSMixin)(Object) {
3647
+ constructor(id, prefix, markers, modifiers, typeOnly, exportClause, moduleSpecifier) {
2504
3648
  super();
2505
3649
  this._id = id;
2506
3650
  this._prefix = prefix;
2507
3651
  this._markers = markers;
2508
- this._variable = variable;
2509
- this._iterable = iterable;
3652
+ this._modifiers = modifiers;
3653
+ this._typeOnly = typeOnly;
3654
+ this._exportClause = exportClause;
3655
+ this._moduleSpecifier = moduleSpecifier;
2510
3656
  }
2511
3657
  get id() {
2512
3658
  return this._id;
2513
3659
  }
2514
3660
  withId(id) {
2515
- return id === this._id ? this : new JSForInOfLoopControl_1(id, this._prefix, this._markers, this._variable, this._iterable);
3661
+ return id === this._id ? this : new ExportDeclaration_1(id, this._prefix, this._markers, this._modifiers, this._typeOnly, this._exportClause, this._moduleSpecifier);
2516
3662
  }
2517
3663
  get prefix() {
2518
3664
  return this._prefix;
2519
3665
  }
2520
3666
  withPrefix(prefix) {
2521
- return prefix === this._prefix ? this : new JSForInOfLoopControl_1(this._id, prefix, this._markers, this._variable, this._iterable);
3667
+ return prefix === this._prefix ? this : new ExportDeclaration_1(this._id, prefix, this._markers, this._modifiers, this._typeOnly, this._exportClause, this._moduleSpecifier);
2522
3668
  }
2523
3669
  get markers() {
2524
3670
  return this._markers;
2525
3671
  }
2526
3672
  withMarkers(markers) {
2527
- return markers === this._markers ? this : new JSForInOfLoopControl_1(this._id, this._prefix, markers, this._variable, this._iterable);
3673
+ return markers === this._markers ? this : new ExportDeclaration_1(this._id, this._prefix, markers, this._modifiers, this._typeOnly, this._exportClause, this._moduleSpecifier);
2528
3674
  }
2529
- get variable() {
2530
- return this._variable.element;
3675
+ get modifiers() {
3676
+ return this._modifiers;
2531
3677
  }
2532
- withVariable(variable) {
2533
- return this.padding.withVariable(this._variable.withElement(variable));
3678
+ withModifiers(modifiers) {
3679
+ return modifiers === this._modifiers ? this : new ExportDeclaration_1(this._id, this._prefix, this._markers, modifiers, this._typeOnly, this._exportClause, this._moduleSpecifier);
2534
3680
  }
2535
- get iterable() {
2536
- return this._iterable.element;
3681
+ get typeOnly() {
3682
+ return this._typeOnly.element;
2537
3683
  }
2538
- withIterable(iterable) {
2539
- return this.padding.withIterable(this._iterable.withElement(iterable));
3684
+ withTypeOnly(typeOnly) {
3685
+ return this.padding.withTypeOnly(this._typeOnly.withElement(typeOnly));
3686
+ }
3687
+ get exportClause() {
3688
+ return this._exportClause;
3689
+ }
3690
+ withExportClause(exportClause) {
3691
+ return exportClause === this._exportClause ? this : new ExportDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._typeOnly, exportClause, this._moduleSpecifier);
3692
+ }
3693
+ get moduleSpecifier() {
3694
+ return this._moduleSpecifier === null ? null : this._moduleSpecifier.element;
3695
+ }
3696
+ withModuleSpecifier(moduleSpecifier) {
3697
+ return this.padding.withModuleSpecifier(tree_1.JLeftPadded.withElement(this._moduleSpecifier, moduleSpecifier));
2540
3698
  }
2541
3699
  acceptJavaScript(v, p) {
2542
- return v.visitJSForInOfLoopControl(this, p);
3700
+ return v.visitExportDeclaration(this, p);
2543
3701
  }
2544
3702
  get padding() {
2545
3703
  const t = this;
2546
3704
  return new class {
2547
- get variable() {
2548
- return t._variable;
3705
+ get typeOnly() {
3706
+ return t._typeOnly;
2549
3707
  }
2550
- withVariable(variable) {
2551
- return t._variable === variable ? t : new JSForInOfLoopControl_1(t._id, t._prefix, t._markers, variable, t._iterable);
3708
+ withTypeOnly(typeOnly) {
3709
+ return t._typeOnly === typeOnly ? t : new ExportDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, typeOnly, t._exportClause, t._moduleSpecifier);
2552
3710
  }
2553
- get iterable() {
2554
- return t._iterable;
3711
+ get moduleSpecifier() {
3712
+ return t._moduleSpecifier;
2555
3713
  }
2556
- withIterable(iterable) {
2557
- return t._iterable === iterable ? t : new JSForInOfLoopControl_1(t._id, t._prefix, t._markers, t._variable, iterable);
3714
+ withModuleSpecifier(moduleSpecifier) {
3715
+ return t._moduleSpecifier === moduleSpecifier ? t : new ExportDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, t._typeOnly, t._exportClause, moduleSpecifier);
2558
3716
  }
2559
3717
  };
2560
3718
  }
2561
3719
  };
2562
- exports.JSForInOfLoopControl = JSForInOfLoopControl;
2563
- exports.JSForInOfLoopControl = JSForInOfLoopControl = JSForInOfLoopControl_1 = __decorate([
2564
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JSForInOfLoopControl")
2565
- ], JSForInOfLoopControl);
2566
- let NamespaceDeclaration = NamespaceDeclaration_1 = class NamespaceDeclaration extends (0, support_types_1.JSMixin)(Object) {
2567
- constructor(id, prefix, markers, modifiers, keywordType, name, body) {
3720
+ exports.ExportDeclaration = ExportDeclaration;
3721
+ exports.ExportDeclaration = ExportDeclaration = ExportDeclaration_1 = __decorate([
3722
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ExportDeclaration")
3723
+ ], ExportDeclaration);
3724
+ let ExportAssignment = ExportAssignment_1 = class ExportAssignment extends (0, support_types_1.JSMixin)(Object) {
3725
+ constructor(id, prefix, markers, modifiers, exportEquals, expression) {
2568
3726
  super();
2569
3727
  this._id = id;
2570
3728
  this._prefix = prefix;
2571
3729
  this._markers = markers;
2572
3730
  this._modifiers = modifiers;
2573
- this._keywordType = keywordType;
2574
- this._name = name;
2575
- this._body = body;
3731
+ this._exportEquals = exportEquals;
3732
+ this._expression = expression;
2576
3733
  }
2577
3734
  get id() {
2578
3735
  return this._id;
2579
3736
  }
2580
3737
  withId(id) {
2581
- return id === this._id ? this : new NamespaceDeclaration_1(id, this._prefix, this._markers, this._modifiers, this._keywordType, this._name, this._body);
3738
+ return id === this._id ? this : new ExportAssignment_1(id, this._prefix, this._markers, this._modifiers, this._exportEquals, this._expression);
2582
3739
  }
2583
3740
  get prefix() {
2584
3741
  return this._prefix;
2585
3742
  }
2586
3743
  withPrefix(prefix) {
2587
- return prefix === this._prefix ? this : new NamespaceDeclaration_1(this._id, prefix, this._markers, this._modifiers, this._keywordType, this._name, this._body);
3744
+ return prefix === this._prefix ? this : new ExportAssignment_1(this._id, prefix, this._markers, this._modifiers, this._exportEquals, this._expression);
2588
3745
  }
2589
3746
  get markers() {
2590
3747
  return this._markers;
2591
3748
  }
2592
3749
  withMarkers(markers) {
2593
- return markers === this._markers ? this : new NamespaceDeclaration_1(this._id, this._prefix, markers, this._modifiers, this._keywordType, this._name, this._body);
3750
+ return markers === this._markers ? this : new ExportAssignment_1(this._id, this._prefix, markers, this._modifiers, this._exportEquals, this._expression);
2594
3751
  }
2595
3752
  get modifiers() {
2596
3753
  return this._modifiers;
2597
3754
  }
2598
3755
  withModifiers(modifiers) {
2599
- return modifiers === this._modifiers ? this : new NamespaceDeclaration_1(this._id, this._prefix, this._markers, modifiers, this._keywordType, this._name, this._body);
3756
+ return modifiers === this._modifiers ? this : new ExportAssignment_1(this._id, this._prefix, this._markers, modifiers, this._exportEquals, this._expression);
2600
3757
  }
2601
- get keywordType() {
2602
- return this._keywordType.element;
2603
- }
2604
- withKeywordType(keywordType) {
2605
- return this.padding.withKeywordType(this._keywordType.withElement(keywordType));
2606
- }
2607
- get name() {
2608
- return this._name.element;
3758
+ get exportEquals() {
3759
+ return this._exportEquals.element;
2609
3760
  }
2610
- withName(name) {
2611
- return this.padding.withName(this._name.withElement(name));
3761
+ withExportEquals(exportEquals) {
3762
+ return this.padding.withExportEquals(this._exportEquals.withElement(exportEquals));
2612
3763
  }
2613
- get body() {
2614
- return this._body;
3764
+ get expression() {
3765
+ return this._expression;
2615
3766
  }
2616
- withBody(body) {
2617
- return body === this._body ? this : new NamespaceDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._keywordType, this._name, body);
3767
+ withExpression(expression) {
3768
+ return expression === this._expression ? this : new ExportAssignment_1(this._id, this._prefix, this._markers, this._modifiers, this._exportEquals, expression);
2618
3769
  }
2619
3770
  acceptJavaScript(v, p) {
2620
- return v.visitNamespaceDeclaration(this, p);
3771
+ return v.visitExportAssignment(this, p);
2621
3772
  }
2622
3773
  get padding() {
2623
3774
  const t = this;
2624
3775
  return new class {
2625
- get keywordType() {
2626
- return t._keywordType;
2627
- }
2628
- withKeywordType(keywordType) {
2629
- return t._keywordType === keywordType ? t : new NamespaceDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, keywordType, t._name, t._body);
2630
- }
2631
- get name() {
2632
- return t._name;
3776
+ get exportEquals() {
3777
+ return t._exportEquals;
2633
3778
  }
2634
- withName(name) {
2635
- return t._name === name ? t : new NamespaceDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, t._keywordType, name, t._body);
3779
+ withExportEquals(exportEquals) {
3780
+ return t._exportEquals === exportEquals ? t : new ExportAssignment_1(t._id, t._prefix, t._markers, t._modifiers, exportEquals, t._expression);
2636
3781
  }
2637
3782
  };
2638
3783
  }
2639
3784
  };
2640
- exports.NamespaceDeclaration = NamespaceDeclaration;
2641
- exports.NamespaceDeclaration = NamespaceDeclaration = NamespaceDeclaration_1 = __decorate([
2642
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$NamespaceDeclaration")
2643
- ], NamespaceDeclaration);
2644
- (function (NamespaceDeclaration) {
2645
- let KeywordType;
2646
- (function (KeywordType) {
2647
- KeywordType[KeywordType["Namespace"] = 0] = "Namespace";
2648
- KeywordType[KeywordType["Module"] = 1] = "Module";
2649
- })(KeywordType = NamespaceDeclaration.KeywordType || (NamespaceDeclaration.KeywordType = {}));
2650
- })(NamespaceDeclaration || (exports.NamespaceDeclaration = NamespaceDeclaration = {}));
2651
- let FunctionDeclaration = FunctionDeclaration_1 = class FunctionDeclaration extends (0, support_types_1.JSMixin)(Object) {
2652
- constructor(id, prefix, markers, modifiers, name, typeParameters, parameters, returnTypeExpression, body, _type) {
3785
+ exports.ExportAssignment = ExportAssignment;
3786
+ exports.ExportAssignment = ExportAssignment = ExportAssignment_1 = __decorate([
3787
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ExportAssignment")
3788
+ ], ExportAssignment);
3789
+ let NamedExports = NamedExports_1 = class NamedExports extends (0, support_types_1.JSMixin)(Object) {
3790
+ constructor(id, prefix, markers, elements, _type) {
2653
3791
  super();
2654
3792
  this._id = id;
2655
3793
  this._prefix = prefix;
2656
3794
  this._markers = markers;
2657
- this._modifiers = modifiers;
2658
- this._name = name;
2659
- this._typeParameters = typeParameters;
2660
- this._parameters = parameters;
2661
- this._returnTypeExpression = returnTypeExpression;
2662
- this._body = body;
3795
+ this._elements = elements;
2663
3796
  this._type = _type;
2664
3797
  }
2665
3798
  get id() {
2666
3799
  return this._id;
2667
3800
  }
2668
3801
  withId(id) {
2669
- return id === this._id ? this : new FunctionDeclaration_1(id, this._prefix, this._markers, this._modifiers, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
3802
+ return id === this._id ? this : new NamedExports_1(id, this._prefix, this._markers, this._elements, this._type);
2670
3803
  }
2671
3804
  get prefix() {
2672
3805
  return this._prefix;
2673
3806
  }
2674
3807
  withPrefix(prefix) {
2675
- return prefix === this._prefix ? this : new FunctionDeclaration_1(this._id, prefix, this._markers, this._modifiers, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
3808
+ return prefix === this._prefix ? this : new NamedExports_1(this._id, prefix, this._markers, this._elements, this._type);
2676
3809
  }
2677
3810
  get markers() {
2678
3811
  return this._markers;
2679
3812
  }
2680
3813
  withMarkers(markers) {
2681
- return markers === this._markers ? this : new FunctionDeclaration_1(this._id, this._prefix, markers, this._modifiers, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
2682
- }
2683
- get modifiers() {
2684
- return this._modifiers;
2685
- }
2686
- withModifiers(modifiers) {
2687
- return modifiers === this._modifiers ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, modifiers, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
2688
- }
2689
- get name() {
2690
- return this._name;
2691
- }
2692
- withName(name) {
2693
- return name === this._name ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
2694
- }
2695
- get typeParameters() {
2696
- return this._typeParameters;
2697
- }
2698
- withTypeParameters(typeParameters) {
2699
- return typeParameters === this._typeParameters ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._name, typeParameters, this._parameters, this._returnTypeExpression, this._body, this._type);
2700
- }
2701
- get parameters() {
2702
- return this._parameters.elements;
2703
- }
2704
- withParameters(parameters) {
2705
- return this.padding.withParameters(tree_1.JContainer.withElements(this._parameters, parameters));
2706
- }
2707
- get returnTypeExpression() {
2708
- return this._returnTypeExpression;
3814
+ return markers === this._markers ? this : new NamedExports_1(this._id, this._prefix, markers, this._elements, this._type);
2709
3815
  }
2710
- withReturnTypeExpression(returnTypeExpression) {
2711
- return returnTypeExpression === this._returnTypeExpression ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._name, this._typeParameters, this._parameters, returnTypeExpression, this._body, this._type);
2712
- }
2713
- get body() {
2714
- return this._body;
3816
+ get elements() {
3817
+ return this._elements.elements;
2715
3818
  }
2716
- withBody(body) {
2717
- return body === this._body ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, body, this._type);
3819
+ withElements(elements) {
3820
+ return this.padding.withElements(tree_1.JContainer.withElements(this._elements, elements));
2718
3821
  }
2719
3822
  get type() {
2720
3823
  return this._type;
2721
3824
  }
2722
3825
  withType(_type) {
2723
- return _type === this._type ? this : new FunctionDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._name, this._typeParameters, this._parameters, this._returnTypeExpression, this._body, _type);
3826
+ return _type === this._type ? this : new NamedExports_1(this._id, this._prefix, this._markers, this._elements, _type);
2724
3827
  }
2725
3828
  acceptJavaScript(v, p) {
2726
- return v.visitFunctionDeclaration(this, p);
3829
+ return v.visitNamedExports(this, p);
2727
3830
  }
2728
3831
  get padding() {
2729
3832
  const t = this;
2730
3833
  return new class {
2731
- get parameters() {
2732
- return t._parameters;
3834
+ get elements() {
3835
+ return t._elements;
2733
3836
  }
2734
- withParameters(parameters) {
2735
- return t._parameters === parameters ? t : new FunctionDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, t._name, t._typeParameters, parameters, t._returnTypeExpression, t._body, t._type);
3837
+ withElements(elements) {
3838
+ return t._elements === elements ? t : new NamedExports_1(t._id, t._prefix, t._markers, elements, t._type);
2736
3839
  }
2737
3840
  };
2738
3841
  }
2739
3842
  };
2740
- exports.FunctionDeclaration = FunctionDeclaration;
2741
- exports.FunctionDeclaration = FunctionDeclaration = FunctionDeclaration_1 = __decorate([
2742
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$FunctionDeclaration")
2743
- ], FunctionDeclaration);
2744
- let TypeLiteral = TypeLiteral_1 = class TypeLiteral extends (0, support_types_1.JSMixin)(Object) {
2745
- constructor(id, prefix, markers, members, _type) {
3843
+ exports.NamedExports = NamedExports;
3844
+ exports.NamedExports = NamedExports = NamedExports_1 = __decorate([
3845
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$NamedExports")
3846
+ ], NamedExports);
3847
+ let ExportSpecifier = ExportSpecifier_1 = class ExportSpecifier extends (0, support_types_1.JSMixin)(Object) {
3848
+ constructor(id, prefix, markers, typeOnly, specifier, _type) {
2746
3849
  super();
2747
3850
  this._id = id;
2748
3851
  this._prefix = prefix;
2749
3852
  this._markers = markers;
2750
- this._members = members;
3853
+ this._typeOnly = typeOnly;
3854
+ this._specifier = specifier;
2751
3855
  this._type = _type;
2752
3856
  }
2753
3857
  get id() {
2754
3858
  return this._id;
2755
3859
  }
2756
3860
  withId(id) {
2757
- return id === this._id ? this : new TypeLiteral_1(id, this._prefix, this._markers, this._members, this._type);
3861
+ return id === this._id ? this : new ExportSpecifier_1(id, this._prefix, this._markers, this._typeOnly, this._specifier, this._type);
2758
3862
  }
2759
3863
  get prefix() {
2760
3864
  return this._prefix;
2761
3865
  }
2762
3866
  withPrefix(prefix) {
2763
- return prefix === this._prefix ? this : new TypeLiteral_1(this._id, prefix, this._markers, this._members, this._type);
3867
+ return prefix === this._prefix ? this : new ExportSpecifier_1(this._id, prefix, this._markers, this._typeOnly, this._specifier, this._type);
2764
3868
  }
2765
3869
  get markers() {
2766
3870
  return this._markers;
2767
3871
  }
2768
3872
  withMarkers(markers) {
2769
- return markers === this._markers ? this : new TypeLiteral_1(this._id, this._prefix, markers, this._members, this._type);
3873
+ return markers === this._markers ? this : new ExportSpecifier_1(this._id, this._prefix, markers, this._typeOnly, this._specifier, this._type);
2770
3874
  }
2771
- get members() {
2772
- return this._members;
3875
+ get typeOnly() {
3876
+ return this._typeOnly.element;
2773
3877
  }
2774
- withMembers(members) {
2775
- return members === this._members ? this : new TypeLiteral_1(this._id, this._prefix, this._markers, members, this._type);
3878
+ withTypeOnly(typeOnly) {
3879
+ return this.padding.withTypeOnly(this._typeOnly.withElement(typeOnly));
3880
+ }
3881
+ get specifier() {
3882
+ return this._specifier;
3883
+ }
3884
+ withSpecifier(specifier) {
3885
+ return specifier === this._specifier ? this : new ExportSpecifier_1(this._id, this._prefix, this._markers, this._typeOnly, specifier, this._type);
2776
3886
  }
2777
3887
  get type() {
2778
3888
  return this._type;
2779
3889
  }
2780
3890
  withType(_type) {
2781
- return _type === this._type ? this : new TypeLiteral_1(this._id, this._prefix, this._markers, this._members, _type);
3891
+ return _type === this._type ? this : new ExportSpecifier_1(this._id, this._prefix, this._markers, this._typeOnly, this._specifier, _type);
2782
3892
  }
2783
3893
  acceptJavaScript(v, p) {
2784
- return v.visitTypeLiteral(this, p);
3894
+ return v.visitExportSpecifier(this, p);
3895
+ }
3896
+ get padding() {
3897
+ const t = this;
3898
+ return new class {
3899
+ get typeOnly() {
3900
+ return t._typeOnly;
3901
+ }
3902
+ withTypeOnly(typeOnly) {
3903
+ return t._typeOnly === typeOnly ? t : new ExportSpecifier_1(t._id, t._prefix, t._markers, typeOnly, t._specifier, t._type);
3904
+ }
3905
+ };
2785
3906
  }
2786
3907
  };
2787
- exports.TypeLiteral = TypeLiteral;
2788
- exports.TypeLiteral = TypeLiteral = TypeLiteral_1 = __decorate([
2789
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$TypeLiteral")
2790
- ], TypeLiteral);
2791
- let IndexSignatureDeclaration = IndexSignatureDeclaration_1 = class IndexSignatureDeclaration extends (0, support_types_1.JSMixin)(Object) {
2792
- constructor(id, prefix, markers, modifiers, parameters, typeExpression, _type) {
3908
+ exports.ExportSpecifier = ExportSpecifier;
3909
+ exports.ExportSpecifier = ExportSpecifier = ExportSpecifier_1 = __decorate([
3910
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ExportSpecifier")
3911
+ ], ExportSpecifier);
3912
+ let IndexedAccessType = IndexedAccessType_1 = class IndexedAccessType extends (0, support_types_1.JSMixin)(Object) {
3913
+ constructor(id, prefix, markers, objectType, indexType, _type) {
2793
3914
  super();
2794
3915
  this._id = id;
2795
3916
  this._prefix = prefix;
2796
3917
  this._markers = markers;
2797
- this._modifiers = modifiers;
2798
- this._parameters = parameters;
2799
- this._typeExpression = typeExpression;
3918
+ this._objectType = objectType;
3919
+ this._indexType = indexType;
2800
3920
  this._type = _type;
2801
3921
  }
2802
3922
  get id() {
2803
3923
  return this._id;
2804
3924
  }
2805
3925
  withId(id) {
2806
- return id === this._id ? this : new IndexSignatureDeclaration_1(id, this._prefix, this._markers, this._modifiers, this._parameters, this._typeExpression, this._type);
3926
+ return id === this._id ? this : new IndexedAccessType_1(id, this._prefix, this._markers, this._objectType, this._indexType, this._type);
2807
3927
  }
2808
3928
  get prefix() {
2809
3929
  return this._prefix;
2810
3930
  }
2811
3931
  withPrefix(prefix) {
2812
- return prefix === this._prefix ? this : new IndexSignatureDeclaration_1(this._id, prefix, this._markers, this._modifiers, this._parameters, this._typeExpression, this._type);
3932
+ return prefix === this._prefix ? this : new IndexedAccessType_1(this._id, prefix, this._markers, this._objectType, this._indexType, this._type);
2813
3933
  }
2814
3934
  get markers() {
2815
3935
  return this._markers;
2816
3936
  }
2817
3937
  withMarkers(markers) {
2818
- return markers === this._markers ? this : new IndexSignatureDeclaration_1(this._id, this._prefix, markers, this._modifiers, this._parameters, this._typeExpression, this._type);
2819
- }
2820
- get modifiers() {
2821
- return this._modifiers;
3938
+ return markers === this._markers ? this : new IndexedAccessType_1(this._id, this._prefix, markers, this._objectType, this._indexType, this._type);
2822
3939
  }
2823
- withModifiers(modifiers) {
2824
- return modifiers === this._modifiers ? this : new IndexSignatureDeclaration_1(this._id, this._prefix, this._markers, modifiers, this._parameters, this._typeExpression, this._type);
2825
- }
2826
- get parameters() {
2827
- return this._parameters.elements;
3940
+ get objectType() {
3941
+ return this._objectType;
2828
3942
  }
2829
- withParameters(parameters) {
2830
- return this.padding.withParameters(tree_1.JContainer.withElements(this._parameters, parameters));
3943
+ withObjectType(objectType) {
3944
+ return objectType === this._objectType ? this : new IndexedAccessType_1(this._id, this._prefix, this._markers, objectType, this._indexType, this._type);
2831
3945
  }
2832
- get typeExpression() {
2833
- return this._typeExpression.element;
3946
+ get indexType() {
3947
+ return this._indexType;
2834
3948
  }
2835
- withTypeExpression(typeExpression) {
2836
- return this.padding.withTypeExpression(this._typeExpression.withElement(typeExpression));
3949
+ withIndexType(indexType) {
3950
+ return indexType === this._indexType ? this : new IndexedAccessType_1(this._id, this._prefix, this._markers, this._objectType, indexType, this._type);
2837
3951
  }
2838
3952
  get type() {
2839
3953
  return this._type;
2840
3954
  }
2841
3955
  withType(_type) {
2842
- return _type === this._type ? this : new IndexSignatureDeclaration_1(this._id, this._prefix, this._markers, this._modifiers, this._parameters, this._typeExpression, _type);
3956
+ return _type === this._type ? this : new IndexedAccessType_1(this._id, this._prefix, this._markers, this._objectType, this._indexType, _type);
2843
3957
  }
2844
3958
  acceptJavaScript(v, p) {
2845
- return v.visitIndexSignatureDeclaration(this, p);
2846
- }
2847
- get padding() {
2848
- const t = this;
2849
- return new class {
2850
- get parameters() {
2851
- return t._parameters;
2852
- }
2853
- withParameters(parameters) {
2854
- return t._parameters === parameters ? t : new IndexSignatureDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, parameters, t._typeExpression, t._type);
2855
- }
2856
- get typeExpression() {
2857
- return t._typeExpression;
2858
- }
2859
- withTypeExpression(typeExpression) {
2860
- return t._typeExpression === typeExpression ? t : new IndexSignatureDeclaration_1(t._id, t._prefix, t._markers, t._modifiers, t._parameters, typeExpression, t._type);
2861
- }
2862
- };
3959
+ return v.visitIndexedAccessType(this, p);
2863
3960
  }
2864
3961
  };
2865
- exports.IndexSignatureDeclaration = IndexSignatureDeclaration;
2866
- exports.IndexSignatureDeclaration = IndexSignatureDeclaration = IndexSignatureDeclaration_1 = __decorate([
2867
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$IndexSignatureDeclaration")
2868
- ], IndexSignatureDeclaration);
2869
- let ArrayBindingPattern = ArrayBindingPattern_1 = class ArrayBindingPattern extends (0, support_types_1.JSMixin)(Object) {
2870
- constructor(id, prefix, markers, elements, _type) {
3962
+ exports.IndexedAccessType = IndexedAccessType;
3963
+ exports.IndexedAccessType = IndexedAccessType = IndexedAccessType_1 = __decorate([
3964
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$IndexedAccessType")
3965
+ ], IndexedAccessType);
3966
+ (function (IndexedAccessType) {
3967
+ let IndexType = class IndexType extends (0, support_types_1.JSMixin)(Object) {
3968
+ constructor(id, prefix, markers, element, _type) {
3969
+ super();
3970
+ this._id = id;
3971
+ this._prefix = prefix;
3972
+ this._markers = markers;
3973
+ this._element = element;
3974
+ this._type = _type;
3975
+ }
3976
+ get id() {
3977
+ return this._id;
3978
+ }
3979
+ withId(id) {
3980
+ return id === this._id ? this : new IndexedAccessType.IndexType(id, this._prefix, this._markers, this._element, this._type);
3981
+ }
3982
+ get prefix() {
3983
+ return this._prefix;
3984
+ }
3985
+ withPrefix(prefix) {
3986
+ return prefix === this._prefix ? this : new IndexedAccessType.IndexType(this._id, prefix, this._markers, this._element, this._type);
3987
+ }
3988
+ get markers() {
3989
+ return this._markers;
3990
+ }
3991
+ withMarkers(markers) {
3992
+ return markers === this._markers ? this : new IndexedAccessType.IndexType(this._id, this._prefix, markers, this._element, this._type);
3993
+ }
3994
+ get element() {
3995
+ return this._element.element;
3996
+ }
3997
+ withElement(element) {
3998
+ return this.padding.withElement(this._element.withElement(element));
3999
+ }
4000
+ get type() {
4001
+ return this._type;
4002
+ }
4003
+ withType(_type) {
4004
+ return _type === this._type ? this : new IndexedAccessType.IndexType(this._id, this._prefix, this._markers, this._element, _type);
4005
+ }
4006
+ acceptJavaScript(v, p) {
4007
+ return v.visitIndexedAccessTypeIndexType(this, p);
4008
+ }
4009
+ get padding() {
4010
+ const t = this;
4011
+ return new class {
4012
+ get element() {
4013
+ return t._element;
4014
+ }
4015
+ withElement(element) {
4016
+ return t._element === element ? t : new IndexedAccessType.IndexType(t._id, t._prefix, t._markers, element, t._type);
4017
+ }
4018
+ };
4019
+ }
4020
+ };
4021
+ IndexType = __decorate([
4022
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$IndexedAccessType$IndexType")
4023
+ ], IndexType);
4024
+ IndexedAccessType.IndexType = IndexType;
4025
+ })(IndexedAccessType || (exports.IndexedAccessType = IndexedAccessType = {}));
4026
+ let JsAssignmentOperation = JsAssignmentOperation_1 = class JsAssignmentOperation extends (0, support_types_1.JSMixin)(Object) {
4027
+ constructor(id, prefix, markers, variable, operator, assignment, _type) {
2871
4028
  super();
2872
4029
  this._id = id;
2873
4030
  this._prefix = prefix;
2874
4031
  this._markers = markers;
2875
- this._elements = elements;
4032
+ this._variable = variable;
4033
+ this._operator = operator;
4034
+ this._assignment = assignment;
2876
4035
  this._type = _type;
2877
4036
  }
2878
4037
  get id() {
2879
4038
  return this._id;
2880
4039
  }
2881
4040
  withId(id) {
2882
- return id === this._id ? this : new ArrayBindingPattern_1(id, this._prefix, this._markers, this._elements, this._type);
4041
+ return id === this._id ? this : new JsAssignmentOperation_1(id, this._prefix, this._markers, this._variable, this._operator, this._assignment, this._type);
2883
4042
  }
2884
4043
  get prefix() {
2885
4044
  return this._prefix;
2886
4045
  }
2887
4046
  withPrefix(prefix) {
2888
- return prefix === this._prefix ? this : new ArrayBindingPattern_1(this._id, prefix, this._markers, this._elements, this._type);
4047
+ return prefix === this._prefix ? this : new JsAssignmentOperation_1(this._id, prefix, this._markers, this._variable, this._operator, this._assignment, this._type);
2889
4048
  }
2890
4049
  get markers() {
2891
4050
  return this._markers;
2892
4051
  }
2893
4052
  withMarkers(markers) {
2894
- return markers === this._markers ? this : new ArrayBindingPattern_1(this._id, this._prefix, markers, this._elements, this._type);
4053
+ return markers === this._markers ? this : new JsAssignmentOperation_1(this._id, this._prefix, markers, this._variable, this._operator, this._assignment, this._type);
2895
4054
  }
2896
- get elements() {
2897
- return this._elements.elements;
4055
+ get variable() {
4056
+ return this._variable;
2898
4057
  }
2899
- withElements(elements) {
2900
- return this.padding.withElements(tree_1.JContainer.withElements(this._elements, elements));
4058
+ withVariable(variable) {
4059
+ return variable === this._variable ? this : new JsAssignmentOperation_1(this._id, this._prefix, this._markers, variable, this._operator, this._assignment, this._type);
4060
+ }
4061
+ get operator() {
4062
+ return this._operator.element;
4063
+ }
4064
+ withOperator(operator) {
4065
+ return this.padding.withOperator(this._operator.withElement(operator));
4066
+ }
4067
+ get assignment() {
4068
+ return this._assignment;
4069
+ }
4070
+ withAssignment(assignment) {
4071
+ return assignment === this._assignment ? this : new JsAssignmentOperation_1(this._id, this._prefix, this._markers, this._variable, this._operator, assignment, this._type);
2901
4072
  }
2902
4073
  get type() {
2903
4074
  return this._type;
2904
4075
  }
2905
4076
  withType(_type) {
2906
- return _type === this._type ? this : new ArrayBindingPattern_1(this._id, this._prefix, this._markers, this._elements, _type);
4077
+ return _type === this._type ? this : new JsAssignmentOperation_1(this._id, this._prefix, this._markers, this._variable, this._operator, this._assignment, _type);
2907
4078
  }
2908
4079
  acceptJavaScript(v, p) {
2909
- return v.visitArrayBindingPattern(this, p);
4080
+ return v.visitJsAssignmentOperation(this, p);
2910
4081
  }
2911
4082
  get padding() {
2912
4083
  const t = this;
2913
4084
  return new class {
2914
- get elements() {
2915
- return t._elements;
4085
+ get operator() {
4086
+ return t._operator;
2916
4087
  }
2917
- withElements(elements) {
2918
- return t._elements === elements ? t : new ArrayBindingPattern_1(t._id, t._prefix, t._markers, elements, t._type);
4088
+ withOperator(operator) {
4089
+ return t._operator === operator ? t : new JsAssignmentOperation_1(t._id, t._prefix, t._markers, t._variable, operator, t._assignment, t._type);
2919
4090
  }
2920
4091
  };
2921
4092
  }
2922
4093
  };
2923
- exports.ArrayBindingPattern = ArrayBindingPattern;
2924
- exports.ArrayBindingPattern = ArrayBindingPattern = ArrayBindingPattern_1 = __decorate([
2925
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$ArrayBindingPattern")
2926
- ], ArrayBindingPattern);
2927
- let BindingElement = BindingElement_1 = class BindingElement extends (0, support_types_1.JSMixin)(Object) {
2928
- constructor(id, prefix, markers, propertyName, name, initializer, variableType) {
4094
+ exports.JsAssignmentOperation = JsAssignmentOperation;
4095
+ exports.JsAssignmentOperation = JsAssignmentOperation = JsAssignmentOperation_1 = __decorate([
4096
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$JsAssignmentOperation")
4097
+ ], JsAssignmentOperation);
4098
+ (function (JsAssignmentOperation) {
4099
+ let Type;
4100
+ (function (Type) {
4101
+ Type[Type["QuestionQuestion"] = 0] = "QuestionQuestion";
4102
+ Type[Type["And"] = 1] = "And";
4103
+ Type[Type["Or"] = 2] = "Or";
4104
+ Type[Type["Power"] = 3] = "Power";
4105
+ })(Type = JsAssignmentOperation.Type || (JsAssignmentOperation.Type = {}));
4106
+ })(JsAssignmentOperation || (exports.JsAssignmentOperation = JsAssignmentOperation = {}));
4107
+ let TypeTreeExpression = TypeTreeExpression_1 = class TypeTreeExpression extends (0, support_types_1.JSMixin)(Object) {
4108
+ constructor(id, prefix, markers, expression) {
2929
4109
  super();
2930
4110
  this._id = id;
2931
4111
  this._prefix = prefix;
2932
4112
  this._markers = markers;
2933
- this._propertyName = propertyName;
2934
- this._name = name;
2935
- this._initializer = initializer;
2936
- this._variableType = variableType;
4113
+ this._expression = expression;
2937
4114
  }
2938
4115
  get id() {
2939
4116
  return this._id;
2940
4117
  }
2941
4118
  withId(id) {
2942
- return id === this._id ? this : new BindingElement_1(id, this._prefix, this._markers, this._propertyName, this._name, this._initializer, this._variableType);
4119
+ return id === this._id ? this : new TypeTreeExpression_1(id, this._prefix, this._markers, this._expression);
2943
4120
  }
2944
4121
  get prefix() {
2945
4122
  return this._prefix;
2946
4123
  }
2947
4124
  withPrefix(prefix) {
2948
- return prefix === this._prefix ? this : new BindingElement_1(this._id, prefix, this._markers, this._propertyName, this._name, this._initializer, this._variableType);
4125
+ return prefix === this._prefix ? this : new TypeTreeExpression_1(this._id, prefix, this._markers, this._expression);
2949
4126
  }
2950
4127
  get markers() {
2951
4128
  return this._markers;
2952
4129
  }
2953
4130
  withMarkers(markers) {
2954
- return markers === this._markers ? this : new BindingElement_1(this._id, this._prefix, markers, this._propertyName, this._name, this._initializer, this._variableType);
2955
- }
2956
- get propertyName() {
2957
- return this._propertyName === null ? null : this._propertyName.element;
2958
- }
2959
- withPropertyName(propertyName) {
2960
- return this.padding.withPropertyName(tree_1.JRightPadded.withElement(this._propertyName, propertyName));
2961
- }
2962
- get name() {
2963
- return this._name;
2964
- }
2965
- withName(name) {
2966
- return name === this._name ? this : new BindingElement_1(this._id, this._prefix, this._markers, this._propertyName, name, this._initializer, this._variableType);
2967
- }
2968
- get initializer() {
2969
- return this._initializer === null ? null : this._initializer.element;
4131
+ return markers === this._markers ? this : new TypeTreeExpression_1(this._id, this._prefix, markers, this._expression);
2970
4132
  }
2971
- withInitializer(initializer) {
2972
- return this.padding.withInitializer(tree_1.JLeftPadded.withElement(this._initializer, initializer));
2973
- }
2974
- get variableType() {
2975
- return this._variableType;
4133
+ get expression() {
4134
+ return this._expression;
2976
4135
  }
2977
- withVariableType(variableType) {
2978
- return variableType === this._variableType ? this : new BindingElement_1(this._id, this._prefix, this._markers, this._propertyName, this._name, this._initializer, variableType);
4136
+ withExpression(expression) {
4137
+ return expression === this._expression ? this : new TypeTreeExpression_1(this._id, this._prefix, this._markers, expression);
2979
4138
  }
2980
4139
  acceptJavaScript(v, p) {
2981
- return v.visitBindingElement(this, p);
4140
+ return v.visitTypeTreeExpression(this, p);
2982
4141
  }
2983
4142
  get type() {
2984
4143
  return extensions.getJavaType(this);
@@ -2986,26 +4145,9 @@ let BindingElement = BindingElement_1 = class BindingElement extends (0, support
2986
4145
  withType(type) {
2987
4146
  return extensions.withJavaType(this, type);
2988
4147
  }
2989
- get padding() {
2990
- const t = this;
2991
- return new class {
2992
- get propertyName() {
2993
- return t._propertyName;
2994
- }
2995
- withPropertyName(propertyName) {
2996
- return t._propertyName === propertyName ? t : new BindingElement_1(t._id, t._prefix, t._markers, propertyName, t._name, t._initializer, t._variableType);
2997
- }
2998
- get initializer() {
2999
- return t._initializer;
3000
- }
3001
- withInitializer(initializer) {
3002
- return t._initializer === initializer ? t : new BindingElement_1(t._id, t._prefix, t._markers, t._propertyName, t._name, initializer, t._variableType);
3003
- }
3004
- };
3005
- }
3006
4148
  };
3007
- exports.BindingElement = BindingElement;
3008
- exports.BindingElement = BindingElement = BindingElement_1 = __decorate([
3009
- (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$BindingElement")
3010
- ], BindingElement);
4149
+ exports.TypeTreeExpression = TypeTreeExpression;
4150
+ exports.TypeTreeExpression = TypeTreeExpression = TypeTreeExpression_1 = __decorate([
4151
+ (0, core_1.LstType)("org.openrewrite.javascript.tree.JS$TypeTreeExpression")
4152
+ ], TypeTreeExpression);
3011
4153
  //# sourceMappingURL=tree.js.map