1[
   2  {
   3    "type": "declaration",
   4    "named": true,
   5    "subtypes": [
   6      {
   7        "type": "class_declaration",
   8        "named": true
   9      },
  10      {
  11        "type": "function_declaration",
  12        "named": true
  13      },
  14      {
  15        "type": "generator_function_declaration",
  16        "named": true
  17      },
  18      {
  19        "type": "lexical_declaration",
  20        "named": true
  21      },
  22      {
  23        "type": "variable_declaration",
  24        "named": true
  25      }
  26    ]
  27  },
  28  {
  29    "type": "expression",
  30    "named": true,
  31    "subtypes": [
  32      {
  33        "type": "assignment_expression",
  34        "named": true
  35      },
  36      {
  37        "type": "augmented_assignment_expression",
  38        "named": true
  39      },
  40      {
  41        "type": "await_expression",
  42        "named": true
  43      },
  44      {
  45        "type": "binary_expression",
  46        "named": true
  47      },
  48      {
  49        "type": "glimmer_template",
  50        "named": true
  51      },
  52      {
  53        "type": "jsx_element",
  54        "named": true
  55      },
  56      {
  57        "type": "jsx_self_closing_element",
  58        "named": true
  59      },
  60      {
  61        "type": "new_expression",
  62        "named": true
  63      },
  64      {
  65        "type": "primary_expression",
  66        "named": true
  67      },
  68      {
  69        "type": "ternary_expression",
  70        "named": true
  71      },
  72      {
  73        "type": "unary_expression",
  74        "named": true
  75      },
  76      {
  77        "type": "update_expression",
  78        "named": true
  79      },
  80      {
  81        "type": "yield_expression",
  82        "named": true
  83      }
  84    ]
  85  },
  86  {
  87    "type": "pattern",
  88    "named": true,
  89    "subtypes": [
  90      {
  91        "type": "array_pattern",
  92        "named": true
  93      },
  94      {
  95        "type": "identifier",
  96        "named": true
  97      },
  98      {
  99        "type": "member_expression",
 100        "named": true
 101      },
 102      {
 103        "type": "object_pattern",
 104        "named": true
 105      },
 106      {
 107        "type": "rest_pattern",
 108        "named": true
 109      },
 110      {
 111        "type": "subscript_expression",
 112        "named": true
 113      },
 114      {
 115        "type": "undefined",
 116        "named": true
 117      }
 118    ]
 119  },
 120  {
 121    "type": "primary_expression",
 122    "named": true,
 123    "subtypes": [
 124      {
 125        "type": "array",
 126        "named": true
 127      },
 128      {
 129        "type": "arrow_function",
 130        "named": true
 131      },
 132      {
 133        "type": "call_expression",
 134        "named": true
 135      },
 136      {
 137        "type": "class",
 138        "named": true
 139      },
 140      {
 141        "type": "false",
 142        "named": true
 143      },
 144      {
 145        "type": "function_expression",
 146        "named": true
 147      },
 148      {
 149        "type": "generator_function",
 150        "named": true
 151      },
 152      {
 153        "type": "identifier",
 154        "named": true
 155      },
 156      {
 157        "type": "member_expression",
 158        "named": true
 159      },
 160      {
 161        "type": "meta_property",
 162        "named": true
 163      },
 164      {
 165        "type": "null",
 166        "named": true
 167      },
 168      {
 169        "type": "number",
 170        "named": true
 171      },
 172      {
 173        "type": "object",
 174        "named": true
 175      },
 176      {
 177        "type": "parenthesized_expression",
 178        "named": true
 179      },
 180      {
 181        "type": "regex",
 182        "named": true
 183      },
 184      {
 185        "type": "string",
 186        "named": true
 187      },
 188      {
 189        "type": "subscript_expression",
 190        "named": true
 191      },
 192      {
 193        "type": "super",
 194        "named": true
 195      },
 196      {
 197        "type": "template_string",
 198        "named": true
 199      },
 200      {
 201        "type": "this",
 202        "named": true
 203      },
 204      {
 205        "type": "true",
 206        "named": true
 207      },
 208      {
 209        "type": "undefined",
 210        "named": true
 211      }
 212    ]
 213  },
 214  {
 215    "type": "statement",
 216    "named": true,
 217    "subtypes": [
 218      {
 219        "type": "break_statement",
 220        "named": true
 221      },
 222      {
 223        "type": "continue_statement",
 224        "named": true
 225      },
 226      {
 227        "type": "debugger_statement",
 228        "named": true
 229      },
 230      {
 231        "type": "declaration",
 232        "named": true
 233      },
 234      {
 235        "type": "do_statement",
 236        "named": true
 237      },
 238      {
 239        "type": "empty_statement",
 240        "named": true
 241      },
 242      {
 243        "type": "export_statement",
 244        "named": true
 245      },
 246      {
 247        "type": "expression_statement",
 248        "named": true
 249      },
 250      {
 251        "type": "for_in_statement",
 252        "named": true
 253      },
 254      {
 255        "type": "for_statement",
 256        "named": true
 257      },
 258      {
 259        "type": "if_statement",
 260        "named": true
 261      },
 262      {
 263        "type": "import_statement",
 264        "named": true
 265      },
 266      {
 267        "type": "labeled_statement",
 268        "named": true
 269      },
 270      {
 271        "type": "return_statement",
 272        "named": true
 273      },
 274      {
 275        "type": "statement_block",
 276        "named": true
 277      },
 278      {
 279        "type": "switch_statement",
 280        "named": true
 281      },
 282      {
 283        "type": "throw_statement",
 284        "named": true
 285      },
 286      {
 287        "type": "try_statement",
 288        "named": true
 289      },
 290      {
 291        "type": "while_statement",
 292        "named": true
 293      },
 294      {
 295        "type": "with_statement",
 296        "named": true
 297      }
 298    ]
 299  },
 300  {
 301    "type": "arguments",
 302    "named": true,
 303    "fields": {},
 304    "children": {
 305      "multiple": true,
 306      "required": false,
 307      "types": [
 308        {
 309          "type": "expression",
 310          "named": true
 311        },
 312        {
 313          "type": "spread_element",
 314          "named": true
 315        }
 316      ]
 317    }
 318  },
 319  {
 320    "type": "array",
 321    "named": true,
 322    "fields": {},
 323    "children": {
 324      "multiple": true,
 325      "required": false,
 326      "types": [
 327        {
 328          "type": "expression",
 329          "named": true
 330        },
 331        {
 332          "type": "spread_element",
 333          "named": true
 334        }
 335      ]
 336    }
 337  },
 338  {
 339    "type": "array_pattern",
 340    "named": true,
 341    "fields": {},
 342    "children": {
 343      "multiple": true,
 344      "required": false,
 345      "types": [
 346        {
 347          "type": "assignment_pattern",
 348          "named": true
 349        },
 350        {
 351          "type": "pattern",
 352          "named": true
 353        }
 354      ]
 355    }
 356  },
 357  {
 358    "type": "arrow_function",
 359    "named": true,
 360    "fields": {
 361      "body": {
 362        "multiple": false,
 363        "required": true,
 364        "types": [
 365          {
 366            "type": "expression",
 367            "named": true
 368          },
 369          {
 370            "type": "statement_block",
 371            "named": true
 372          }
 373        ]
 374      },
 375      "parameter": {
 376        "multiple": false,
 377        "required": false,
 378        "types": [
 379          {
 380            "type": "identifier",
 381            "named": true
 382          }
 383        ]
 384      },
 385      "parameters": {
 386        "multiple": false,
 387        "required": false,
 388        "types": [
 389          {
 390            "type": "formal_parameters",
 391            "named": true
 392          }
 393        ]
 394      }
 395    }
 396  },
 397  {
 398    "type": "assignment_expression",
 399    "named": true,
 400    "fields": {
 401      "left": {
 402        "multiple": false,
 403        "required": true,
 404        "types": [
 405          {
 406            "type": "array_pattern",
 407            "named": true
 408          },
 409          {
 410            "type": "identifier",
 411            "named": true
 412          },
 413          {
 414            "type": "member_expression",
 415            "named": true
 416          },
 417          {
 418            "type": "object_pattern",
 419            "named": true
 420          },
 421          {
 422            "type": "parenthesized_expression",
 423            "named": true
 424          },
 425          {
 426            "type": "subscript_expression",
 427            "named": true
 428          },
 429          {
 430            "type": "undefined",
 431            "named": true
 432          }
 433        ]
 434      },
 435      "right": {
 436        "multiple": false,
 437        "required": true,
 438        "types": [
 439          {
 440            "type": "expression",
 441            "named": true
 442          }
 443        ]
 444      }
 445    }
 446  },
 447  {
 448    "type": "assignment_pattern",
 449    "named": true,
 450    "fields": {
 451      "left": {
 452        "multiple": false,
 453        "required": true,
 454        "types": [
 455          {
 456            "type": "pattern",
 457            "named": true
 458          }
 459        ]
 460      },
 461      "right": {
 462        "multiple": false,
 463        "required": true,
 464        "types": [
 465          {
 466            "type": "expression",
 467            "named": true
 468          }
 469        ]
 470      }
 471    }
 472  },
 473  {
 474    "type": "augmented_assignment_expression",
 475    "named": true,
 476    "fields": {
 477      "left": {
 478        "multiple": false,
 479        "required": true,
 480        "types": [
 481          {
 482            "type": "identifier",
 483            "named": true
 484          },
 485          {
 486            "type": "member_expression",
 487            "named": true
 488          },
 489          {
 490            "type": "parenthesized_expression",
 491            "named": true
 492          },
 493          {
 494            "type": "subscript_expression",
 495            "named": true
 496          }
 497        ]
 498      },
 499      "operator": {
 500        "multiple": false,
 501        "required": true,
 502        "types": [
 503          {
 504            "type": "%=",
 505            "named": false
 506          },
 507          {
 508            "type": "&&=",
 509            "named": false
 510          },
 511          {
 512            "type": "&=",
 513            "named": false
 514          },
 515          {
 516            "type": "**=",
 517            "named": false
 518          },
 519          {
 520            "type": "*=",
 521            "named": false
 522          },
 523          {
 524            "type": "+=",
 525            "named": false
 526          },
 527          {
 528            "type": "-=",
 529            "named": false
 530          },
 531          {
 532            "type": "/=",
 533            "named": false
 534          },
 535          {
 536            "type": "<<=",
 537            "named": false
 538          },
 539          {
 540            "type": ">>=",
 541            "named": false
 542          },
 543          {
 544            "type": ">>>=",
 545            "named": false
 546          },
 547          {
 548            "type": "??=",
 549            "named": false
 550          },
 551          {
 552            "type": "^=",
 553            "named": false
 554          },
 555          {
 556            "type": "|=",
 557            "named": false
 558          },
 559          {
 560            "type": "||=",
 561            "named": false
 562          }
 563        ]
 564      },
 565      "right": {
 566        "multiple": false,
 567        "required": true,
 568        "types": [
 569          {
 570            "type": "expression",
 571            "named": true
 572          }
 573        ]
 574      }
 575    }
 576  },
 577  {
 578    "type": "await_expression",
 579    "named": true,
 580    "fields": {},
 581    "children": {
 582      "multiple": false,
 583      "required": true,
 584      "types": [
 585        {
 586          "type": "expression",
 587          "named": true
 588        }
 589      ]
 590    }
 591  },
 592  {
 593    "type": "binary_expression",
 594    "named": true,
 595    "fields": {
 596      "left": {
 597        "multiple": false,
 598        "required": true,
 599        "types": [
 600          {
 601            "type": "expression",
 602            "named": true
 603          },
 604          {
 605            "type": "private_property_identifier",
 606            "named": true
 607          }
 608        ]
 609      },
 610      "operator": {
 611        "multiple": false,
 612        "required": true,
 613        "types": [
 614          {
 615            "type": "!=",
 616            "named": false
 617          },
 618          {
 619            "type": "!==",
 620            "named": false
 621          },
 622          {
 623            "type": "%",
 624            "named": false
 625          },
 626          {
 627            "type": "&",
 628            "named": false
 629          },
 630          {
 631            "type": "&&",
 632            "named": false
 633          },
 634          {
 635            "type": "*",
 636            "named": false
 637          },
 638          {
 639            "type": "**",
 640            "named": false
 641          },
 642          {
 643            "type": "+",
 644            "named": false
 645          },
 646          {
 647            "type": "-",
 648            "named": false
 649          },
 650          {
 651            "type": "/",
 652            "named": false
 653          },
 654          {
 655            "type": "<",
 656            "named": false
 657          },
 658          {
 659            "type": "<<",
 660            "named": false
 661          },
 662          {
 663            "type": "<=",
 664            "named": false
 665          },
 666          {
 667            "type": "==",
 668            "named": false
 669          },
 670          {
 671            "type": "===",
 672            "named": false
 673          },
 674          {
 675            "type": ">",
 676            "named": false
 677          },
 678          {
 679            "type": ">=",
 680            "named": false
 681          },
 682          {
 683            "type": ">>",
 684            "named": false
 685          },
 686          {
 687            "type": ">>>",
 688            "named": false
 689          },
 690          {
 691            "type": "??",
 692            "named": false
 693          },
 694          {
 695            "type": "^",
 696            "named": false
 697          },
 698          {
 699            "type": "in",
 700            "named": false
 701          },
 702          {
 703            "type": "instanceof",
 704            "named": false
 705          },
 706          {
 707            "type": "|",
 708            "named": false
 709          },
 710          {
 711            "type": "||",
 712            "named": false
 713          }
 714        ]
 715      },
 716      "right": {
 717        "multiple": false,
 718        "required": true,
 719        "types": [
 720          {
 721            "type": "expression",
 722            "named": true
 723          }
 724        ]
 725      }
 726    }
 727  },
 728  {
 729    "type": "break_statement",
 730    "named": true,
 731    "fields": {
 732      "label": {
 733        "multiple": false,
 734        "required": false,
 735        "types": [
 736          {
 737            "type": "statement_identifier",
 738            "named": true
 739          }
 740        ]
 741      }
 742    }
 743  },
 744  {
 745    "type": "call_expression",
 746    "named": true,
 747    "fields": {
 748      "arguments": {
 749        "multiple": false,
 750        "required": true,
 751        "types": [
 752          {
 753            "type": "arguments",
 754            "named": true
 755          },
 756          {
 757            "type": "template_string",
 758            "named": true
 759          }
 760        ]
 761      },
 762      "function": {
 763        "multiple": false,
 764        "required": true,
 765        "types": [
 766          {
 767            "type": "expression",
 768            "named": true
 769          },
 770          {
 771            "type": "import",
 772            "named": true
 773          }
 774        ]
 775      },
 776      "optional_chain": {
 777        "multiple": false,
 778        "required": false,
 779        "types": [
 780          {
 781            "type": "optional_chain",
 782            "named": true
 783          }
 784        ]
 785      }
 786    }
 787  },
 788  {
 789    "type": "catch_clause",
 790    "named": true,
 791    "fields": {
 792      "body": {
 793        "multiple": false,
 794        "required": true,
 795        "types": [
 796          {
 797            "type": "statement_block",
 798            "named": true
 799          }
 800        ]
 801      },
 802      "parameter": {
 803        "multiple": false,
 804        "required": false,
 805        "types": [
 806          {
 807            "type": "array_pattern",
 808            "named": true
 809          },
 810          {
 811            "type": "identifier",
 812            "named": true
 813          },
 814          {
 815            "type": "object_pattern",
 816            "named": true
 817          }
 818        ]
 819      }
 820    }
 821  },
 822  {
 823    "type": "class",
 824    "named": true,
 825    "fields": {
 826      "body": {
 827        "multiple": false,
 828        "required": true,
 829        "types": [
 830          {
 831            "type": "class_body",
 832            "named": true
 833          }
 834        ]
 835      },
 836      "decorator": {
 837        "multiple": true,
 838        "required": false,
 839        "types": [
 840          {
 841            "type": "decorator",
 842            "named": true
 843          }
 844        ]
 845      },
 846      "name": {
 847        "multiple": false,
 848        "required": false,
 849        "types": [
 850          {
 851            "type": "identifier",
 852            "named": true
 853          }
 854        ]
 855      }
 856    },
 857    "children": {
 858      "multiple": false,
 859      "required": false,
 860      "types": [
 861        {
 862          "type": "class_heritage",
 863          "named": true
 864        }
 865      ]
 866    }
 867  },
 868  {
 869    "type": "class_body",
 870    "named": true,
 871    "fields": {
 872      "member": {
 873        "multiple": true,
 874        "required": false,
 875        "types": [
 876          {
 877            "type": "class_static_block",
 878            "named": true
 879          },
 880          {
 881            "type": "field_definition",
 882            "named": true
 883          },
 884          {
 885            "type": "method_definition",
 886            "named": true
 887          }
 888        ]
 889      },
 890      "template": {
 891        "multiple": true,
 892        "required": false,
 893        "types": [
 894          {
 895            "type": "glimmer_template",
 896            "named": true
 897          }
 898        ]
 899      }
 900    }
 901  },
 902  {
 903    "type": "class_declaration",
 904    "named": true,
 905    "fields": {
 906      "body": {
 907        "multiple": false,
 908        "required": true,
 909        "types": [
 910          {
 911            "type": "class_body",
 912            "named": true
 913          }
 914        ]
 915      },
 916      "decorator": {
 917        "multiple": true,
 918        "required": false,
 919        "types": [
 920          {
 921            "type": "decorator",
 922            "named": true
 923          }
 924        ]
 925      },
 926      "name": {
 927        "multiple": false,
 928        "required": true,
 929        "types": [
 930          {
 931            "type": "identifier",
 932            "named": true
 933          }
 934        ]
 935      }
 936    },
 937    "children": {
 938      "multiple": false,
 939      "required": false,
 940      "types": [
 941        {
 942          "type": "class_heritage",
 943          "named": true
 944        }
 945      ]
 946    }
 947  },
 948  {
 949    "type": "class_heritage",
 950    "named": true,
 951    "fields": {},
 952    "children": {
 953      "multiple": false,
 954      "required": true,
 955      "types": [
 956        {
 957          "type": "expression",
 958          "named": true
 959        }
 960      ]
 961    }
 962  },
 963  {
 964    "type": "class_static_block",
 965    "named": true,
 966    "fields": {
 967      "body": {
 968        "multiple": false,
 969        "required": true,
 970        "types": [
 971          {
 972            "type": "statement_block",
 973            "named": true
 974          }
 975        ]
 976      }
 977    }
 978  },
 979  {
 980    "type": "comment",
 981    "named": true,
 982    "fields": {}
 983  },
 984  {
 985    "type": "computed_property_name",
 986    "named": true,
 987    "fields": {},
 988    "children": {
 989      "multiple": false,
 990      "required": true,
 991      "types": [
 992        {
 993          "type": "expression",
 994          "named": true
 995        }
 996      ]
 997    }
 998  },
 999  {
1000    "type": "continue_statement",
1001    "named": true,
1002    "fields": {
1003      "label": {
1004        "multiple": false,
1005        "required": false,
1006        "types": [
1007          {
1008            "type": "statement_identifier",
1009            "named": true
1010          }
1011        ]
1012      }
1013    }
1014  },
1015  {
1016    "type": "debugger_statement",
1017    "named": true,
1018    "fields": {}
1019  },
1020  {
1021    "type": "decorator",
1022    "named": true,
1023    "fields": {},
1024    "children": {
1025      "multiple": false,
1026      "required": true,
1027      "types": [
1028        {
1029          "type": "call_expression",
1030          "named": true
1031        },
1032        {
1033          "type": "identifier",
1034          "named": true
1035        },
1036        {
1037          "type": "member_expression",
1038          "named": true
1039        }
1040      ]
1041    }
1042  },
1043  {
1044    "type": "do_statement",
1045    "named": true,
1046    "fields": {
1047      "body": {
1048        "multiple": false,
1049        "required": true,
1050        "types": [
1051          {
1052            "type": "statement",
1053            "named": true
1054          }
1055        ]
1056      },
1057      "condition": {
1058        "multiple": false,
1059        "required": true,
1060        "types": [
1061          {
1062            "type": "parenthesized_expression",
1063            "named": true
1064          }
1065        ]
1066      }
1067    }
1068  },
1069  {
1070    "type": "else_clause",
1071    "named": true,
1072    "fields": {},
1073    "children": {
1074      "multiple": false,
1075      "required": true,
1076      "types": [
1077        {
1078          "type": "statement",
1079          "named": true
1080        }
1081      ]
1082    }
1083  },
1084  {
1085    "type": "empty_statement",
1086    "named": true,
1087    "fields": {}
1088  },
1089  {
1090    "type": "export_clause",
1091    "named": true,
1092    "fields": {},
1093    "children": {
1094      "multiple": true,
1095      "required": false,
1096      "types": [
1097        {
1098          "type": "export_specifier",
1099          "named": true
1100        }
1101      ]
1102    }
1103  },
1104  {
1105    "type": "export_specifier",
1106    "named": true,
1107    "fields": {
1108      "alias": {
1109        "multiple": false,
1110        "required": false,
1111        "types": [
1112          {
1113            "type": "identifier",
1114            "named": true
1115          },
1116          {
1117            "type": "string",
1118            "named": true
1119          }
1120        ]
1121      },
1122      "name": {
1123        "multiple": false,
1124        "required": true,
1125        "types": [
1126          {
1127            "type": "identifier",
1128            "named": true
1129          },
1130          {
1131            "type": "string",
1132            "named": true
1133          }
1134        ]
1135      }
1136    }
1137  },
1138  {
1139    "type": "export_statement",
1140    "named": true,
1141    "fields": {
1142      "declaration": {
1143        "multiple": false,
1144        "required": false,
1145        "types": [
1146          {
1147            "type": "declaration",
1148            "named": true
1149          }
1150        ]
1151      },
1152      "decorator": {
1153        "multiple": true,
1154        "required": false,
1155        "types": [
1156          {
1157            "type": "decorator",
1158            "named": true
1159          }
1160        ]
1161      },
1162      "source": {
1163        "multiple": false,
1164        "required": false,
1165        "types": [
1166          {
1167            "type": "string",
1168            "named": true
1169          }
1170        ]
1171      },
1172      "value": {
1173        "multiple": false,
1174        "required": false,
1175        "types": [
1176          {
1177            "type": "expression",
1178            "named": true
1179          }
1180        ]
1181      }
1182    },
1183    "children": {
1184      "multiple": false,
1185      "required": false,
1186      "types": [
1187        {
1188          "type": "export_clause",
1189          "named": true
1190        },
1191        {
1192          "type": "namespace_export",
1193          "named": true
1194        }
1195      ]
1196    }
1197  },
1198  {
1199    "type": "expression_statement",
1200    "named": true,
1201    "fields": {},
1202    "children": {
1203      "multiple": false,
1204      "required": true,
1205      "types": [
1206        {
1207          "type": "expression",
1208          "named": true
1209        },
1210        {
1211          "type": "sequence_expression",
1212          "named": true
1213        }
1214      ]
1215    }
1216  },
1217  {
1218    "type": "field_definition",
1219    "named": true,
1220    "fields": {
1221      "decorator": {
1222        "multiple": true,
1223        "required": false,
1224        "types": [
1225          {
1226            "type": "decorator",
1227            "named": true
1228          }
1229        ]
1230      },
1231      "property": {
1232        "multiple": false,
1233        "required": true,
1234        "types": [
1235          {
1236            "type": "computed_property_name",
1237            "named": true
1238          },
1239          {
1240            "type": "number",
1241            "named": true
1242          },
1243          {
1244            "type": "private_property_identifier",
1245            "named": true
1246          },
1247          {
1248            "type": "property_identifier",
1249            "named": true
1250          },
1251          {
1252            "type": "string",
1253            "named": true
1254          }
1255        ]
1256      },
1257      "value": {
1258        "multiple": false,
1259        "required": false,
1260        "types": [
1261          {
1262            "type": "expression",
1263            "named": true
1264          }
1265        ]
1266      }
1267    }
1268  },
1269  {
1270    "type": "finally_clause",
1271    "named": true,
1272    "fields": {
1273      "body": {
1274        "multiple": false,
1275        "required": true,
1276        "types": [
1277          {
1278            "type": "statement_block",
1279            "named": true
1280          }
1281        ]
1282      }
1283    }
1284  },
1285  {
1286    "type": "for_in_statement",
1287    "named": true,
1288    "fields": {
1289      "body": {
1290        "multiple": false,
1291        "required": true,
1292        "types": [
1293          {
1294            "type": "statement",
1295            "named": true
1296          }
1297        ]
1298      },
1299      "kind": {
1300        "multiple": false,
1301        "required": false,
1302        "types": [
1303          {
1304            "type": "const",
1305            "named": false
1306          },
1307          {
1308            "type": "let",
1309            "named": false
1310          },
1311          {
1312            "type": "var",
1313            "named": false
1314          }
1315        ]
1316      },
1317      "left": {
1318        "multiple": false,
1319        "required": true,
1320        "types": [
1321          {
1322            "type": "array_pattern",
1323            "named": true
1324          },
1325          {
1326            "type": "identifier",
1327            "named": true
1328          },
1329          {
1330            "type": "member_expression",
1331            "named": true
1332          },
1333          {
1334            "type": "object_pattern",
1335            "named": true
1336          },
1337          {
1338            "type": "parenthesized_expression",
1339            "named": true
1340          },
1341          {
1342            "type": "subscript_expression",
1343            "named": true
1344          },
1345          {
1346            "type": "undefined",
1347            "named": true
1348          }
1349        ]
1350      },
1351      "operator": {
1352        "multiple": false,
1353        "required": true,
1354        "types": [
1355          {
1356            "type": "in",
1357            "named": false
1358          },
1359          {
1360            "type": "of",
1361            "named": false
1362          }
1363        ]
1364      },
1365      "right": {
1366        "multiple": false,
1367        "required": true,
1368        "types": [
1369          {
1370            "type": "expression",
1371            "named": true
1372          },
1373          {
1374            "type": "sequence_expression",
1375            "named": true
1376          }
1377        ]
1378      },
1379      "value": {
1380        "multiple": false,
1381        "required": false,
1382        "types": [
1383          {
1384            "type": "expression",
1385            "named": true
1386          }
1387        ]
1388      }
1389    }
1390  },
1391  {
1392    "type": "for_statement",
1393    "named": true,
1394    "fields": {
1395      "body": {
1396        "multiple": false,
1397        "required": true,
1398        "types": [
1399          {
1400            "type": "statement",
1401            "named": true
1402          }
1403        ]
1404      },
1405      "condition": {
1406        "multiple": false,
1407        "required": true,
1408        "types": [
1409          {
1410            "type": "empty_statement",
1411            "named": true
1412          },
1413          {
1414            "type": "expression_statement",
1415            "named": true
1416          }
1417        ]
1418      },
1419      "increment": {
1420        "multiple": false,
1421        "required": false,
1422        "types": [
1423          {
1424            "type": "expression",
1425            "named": true
1426          },
1427          {
1428            "type": "sequence_expression",
1429            "named": true
1430          }
1431        ]
1432      },
1433      "initializer": {
1434        "multiple": false,
1435        "required": true,
1436        "types": [
1437          {
1438            "type": "empty_statement",
1439            "named": true
1440          },
1441          {
1442            "type": "expression_statement",
1443            "named": true
1444          },
1445          {
1446            "type": "lexical_declaration",
1447            "named": true
1448          },
1449          {
1450            "type": "variable_declaration",
1451            "named": true
1452          }
1453        ]
1454      }
1455    }
1456  },
1457  {
1458    "type": "formal_parameters",
1459    "named": true,
1460    "fields": {},
1461    "children": {
1462      "multiple": true,
1463      "required": false,
1464      "types": [
1465        {
1466          "type": "assignment_pattern",
1467          "named": true
1468        },
1469        {
1470          "type": "pattern",
1471          "named": true
1472        }
1473      ]
1474    }
1475  },
1476  {
1477    "type": "function_declaration",
1478    "named": true,
1479    "fields": {
1480      "body": {
1481        "multiple": false,
1482        "required": true,
1483        "types": [
1484          {
1485            "type": "statement_block",
1486            "named": true
1487          }
1488        ]
1489      },
1490      "name": {
1491        "multiple": false,
1492        "required": true,
1493        "types": [
1494          {
1495            "type": "identifier",
1496            "named": true
1497          }
1498        ]
1499      },
1500      "parameters": {
1501        "multiple": false,
1502        "required": true,
1503        "types": [
1504          {
1505            "type": "formal_parameters",
1506            "named": true
1507          }
1508        ]
1509      }
1510    }
1511  },
1512  {
1513    "type": "function_expression",
1514    "named": true,
1515    "fields": {
1516      "body": {
1517        "multiple": false,
1518        "required": true,
1519        "types": [
1520          {
1521            "type": "statement_block",
1522            "named": true
1523          }
1524        ]
1525      },
1526      "name": {
1527        "multiple": false,
1528        "required": false,
1529        "types": [
1530          {
1531            "type": "identifier",
1532            "named": true
1533          }
1534        ]
1535      },
1536      "parameters": {
1537        "multiple": false,
1538        "required": true,
1539        "types": [
1540          {
1541            "type": "formal_parameters",
1542            "named": true
1543          }
1544        ]
1545      }
1546    }
1547  },
1548  {
1549    "type": "generator_function",
1550    "named": true,
1551    "fields": {
1552      "body": {
1553        "multiple": false,
1554        "required": true,
1555        "types": [
1556          {
1557            "type": "statement_block",
1558            "named": true
1559          }
1560        ]
1561      },
1562      "name": {
1563        "multiple": false,
1564        "required": false,
1565        "types": [
1566          {
1567            "type": "identifier",
1568            "named": true
1569          }
1570        ]
1571      },
1572      "parameters": {
1573        "multiple": false,
1574        "required": true,
1575        "types": [
1576          {
1577            "type": "formal_parameters",
1578            "named": true
1579          }
1580        ]
1581      }
1582    }
1583  },
1584  {
1585    "type": "generator_function_declaration",
1586    "named": true,
1587    "fields": {
1588      "body": {
1589        "multiple": false,
1590        "required": true,
1591        "types": [
1592          {
1593            "type": "statement_block",
1594            "named": true
1595          }
1596        ]
1597      },
1598      "name": {
1599        "multiple": false,
1600        "required": true,
1601        "types": [
1602          {
1603            "type": "identifier",
1604            "named": true
1605          }
1606        ]
1607      },
1608      "parameters": {
1609        "multiple": false,
1610        "required": true,
1611        "types": [
1612          {
1613            "type": "formal_parameters",
1614            "named": true
1615          }
1616        ]
1617      }
1618    }
1619  },
1620  {
1621    "type": "glimmer_closing_tag",
1622    "named": true,
1623    "fields": {}
1624  },
1625  {
1626    "type": "glimmer_opening_tag",
1627    "named": true,
1628    "fields": {}
1629  },
1630  {
1631    "type": "glimmer_template",
1632    "named": true,
1633    "fields": {
1634      "close_tag": {
1635        "multiple": false,
1636        "required": true,
1637        "types": [
1638          {
1639            "type": "glimmer_closing_tag",
1640            "named": true
1641          }
1642        ]
1643      },
1644      "open_tag": {
1645        "multiple": false,
1646        "required": true,
1647        "types": [
1648          {
1649            "type": "glimmer_opening_tag",
1650            "named": true
1651          }
1652        ]
1653      }
1654    }
1655  },
1656  {
1657    "type": "if_statement",
1658    "named": true,
1659    "fields": {
1660      "alternative": {
1661        "multiple": false,
1662        "required": false,
1663        "types": [
1664          {
1665            "type": "else_clause",
1666            "named": true
1667          }
1668        ]
1669      },
1670      "condition": {
1671        "multiple": false,
1672        "required": true,
1673        "types": [
1674          {
1675            "type": "parenthesized_expression",
1676            "named": true
1677          }
1678        ]
1679      },
1680      "consequence": {
1681        "multiple": false,
1682        "required": true,
1683        "types": [
1684          {
1685            "type": "statement",
1686            "named": true
1687          }
1688        ]
1689      }
1690    }
1691  },
1692  {
1693    "type": "import",
1694    "named": true,
1695    "fields": {}
1696  },
1697  {
1698    "type": "import_attribute",
1699    "named": true,
1700    "fields": {},
1701    "children": {
1702      "multiple": false,
1703      "required": true,
1704      "types": [
1705        {
1706          "type": "object",
1707          "named": true
1708        }
1709      ]
1710    }
1711  },
1712  {
1713    "type": "import_clause",
1714    "named": true,
1715    "fields": {},
1716    "children": {
1717      "multiple": true,
1718      "required": true,
1719      "types": [
1720        {
1721          "type": "identifier",
1722          "named": true
1723        },
1724        {
1725          "type": "named_imports",
1726          "named": true
1727        },
1728        {
1729          "type": "namespace_import",
1730          "named": true
1731        }
1732      ]
1733    }
1734  },
1735  {
1736    "type": "import_specifier",
1737    "named": true,
1738    "fields": {
1739      "alias": {
1740        "multiple": false,
1741        "required": false,
1742        "types": [
1743          {
1744            "type": "identifier",
1745            "named": true
1746          }
1747        ]
1748      },
1749      "name": {
1750        "multiple": false,
1751        "required": true,
1752        "types": [
1753          {
1754            "type": "identifier",
1755            "named": true
1756          },
1757          {
1758            "type": "string",
1759            "named": true
1760          }
1761        ]
1762      }
1763    }
1764  },
1765  {
1766    "type": "import_statement",
1767    "named": true,
1768    "fields": {
1769      "source": {
1770        "multiple": false,
1771        "required": true,
1772        "types": [
1773          {
1774            "type": "string",
1775            "named": true
1776          }
1777        ]
1778      }
1779    },
1780    "children": {
1781      "multiple": true,
1782      "required": false,
1783      "types": [
1784        {
1785          "type": "import_attribute",
1786          "named": true
1787        },
1788        {
1789          "type": "import_clause",
1790          "named": true
1791        }
1792      ]
1793    }
1794  },
1795  {
1796    "type": "jsx_attribute",
1797    "named": true,
1798    "fields": {},
1799    "children": {
1800      "multiple": true,
1801      "required": true,
1802      "types": [
1803        {
1804          "type": "jsx_element",
1805          "named": true
1806        },
1807        {
1808          "type": "jsx_expression",
1809          "named": true
1810        },
1811        {
1812          "type": "jsx_namespace_name",
1813          "named": true
1814        },
1815        {
1816          "type": "jsx_self_closing_element",
1817          "named": true
1818        },
1819        {
1820          "type": "property_identifier",
1821          "named": true
1822        },
1823        {
1824          "type": "string",
1825          "named": true
1826        }
1827      ]
1828    }
1829  },
1830  {
1831    "type": "jsx_closing_element",
1832    "named": true,
1833    "fields": {
1834      "name": {
1835        "multiple": false,
1836        "required": false,
1837        "types": [
1838          {
1839            "type": "identifier",
1840            "named": true
1841          },
1842          {
1843            "type": "jsx_namespace_name",
1844            "named": true
1845          },
1846          {
1847            "type": "member_expression",
1848            "named": true
1849          }
1850        ]
1851      }
1852    }
1853  },
1854  {
1855    "type": "jsx_element",
1856    "named": true,
1857    "fields": {
1858      "close_tag": {
1859        "multiple": false,
1860        "required": true,
1861        "types": [
1862          {
1863            "type": "jsx_closing_element",
1864            "named": true
1865          }
1866        ]
1867      },
1868      "open_tag": {
1869        "multiple": false,
1870        "required": true,
1871        "types": [
1872          {
1873            "type": "jsx_opening_element",
1874            "named": true
1875          }
1876        ]
1877      }
1878    },
1879    "children": {
1880      "multiple": true,
1881      "required": false,
1882      "types": [
1883        {
1884          "type": "html_character_reference",
1885          "named": true
1886        },
1887        {
1888          "type": "jsx_element",
1889          "named": true
1890        },
1891        {
1892          "type": "jsx_expression",
1893          "named": true
1894        },
1895        {
1896          "type": "jsx_self_closing_element",
1897          "named": true
1898        },
1899        {
1900          "type": "jsx_text",
1901          "named": true
1902        }
1903      ]
1904    }
1905  },
1906  {
1907    "type": "jsx_expression",
1908    "named": true,
1909    "fields": {},
1910    "children": {
1911      "multiple": false,
1912      "required": false,
1913      "types": [
1914        {
1915          "type": "expression",
1916          "named": true
1917        },
1918        {
1919          "type": "sequence_expression",
1920          "named": true
1921        },
1922        {
1923          "type": "spread_element",
1924          "named": true
1925        }
1926      ]
1927    }
1928  },
1929  {
1930    "type": "jsx_namespace_name",
1931    "named": true,
1932    "fields": {},
1933    "children": {
1934      "multiple": true,
1935      "required": true,
1936      "types": [
1937        {
1938          "type": "identifier",
1939          "named": true
1940        }
1941      ]
1942    }
1943  },
1944  {
1945    "type": "jsx_opening_element",
1946    "named": true,
1947    "fields": {
1948      "attribute": {
1949        "multiple": true,
1950        "required": false,
1951        "types": [
1952          {
1953            "type": "jsx_attribute",
1954            "named": true
1955          },
1956          {
1957            "type": "jsx_expression",
1958            "named": true
1959          }
1960        ]
1961      },
1962      "name": {
1963        "multiple": false,
1964        "required": false,
1965        "types": [
1966          {
1967            "type": "identifier",
1968            "named": true
1969          },
1970          {
1971            "type": "jsx_namespace_name",
1972            "named": true
1973          },
1974          {
1975            "type": "member_expression",
1976            "named": true
1977          }
1978        ]
1979      }
1980    }
1981  },
1982  {
1983    "type": "jsx_self_closing_element",
1984    "named": true,
1985    "fields": {
1986      "attribute": {
1987        "multiple": true,
1988        "required": false,
1989        "types": [
1990          {
1991            "type": "jsx_attribute",
1992            "named": true
1993          },
1994          {
1995            "type": "jsx_expression",
1996            "named": true
1997          }
1998        ]
1999      },
2000      "name": {
2001        "multiple": false,
2002        "required": true,
2003        "types": [
2004          {
2005            "type": "identifier",
2006            "named": true
2007          },
2008          {
2009            "type": "jsx_namespace_name",
2010            "named": true
2011          },
2012          {
2013            "type": "member_expression",
2014            "named": true
2015          }
2016        ]
2017      }
2018    }
2019  },
2020  {
2021    "type": "jsx_text",
2022    "named": true,
2023    "fields": {}
2024  },
2025  {
2026    "type": "labeled_statement",
2027    "named": true,
2028    "fields": {
2029      "body": {
2030        "multiple": false,
2031        "required": true,
2032        "types": [
2033          {
2034            "type": "statement",
2035            "named": true
2036          }
2037        ]
2038      },
2039      "label": {
2040        "multiple": false,
2041        "required": true,
2042        "types": [
2043          {
2044            "type": "statement_identifier",
2045            "named": true
2046          }
2047        ]
2048      }
2049    }
2050  },
2051  {
2052    "type": "lexical_declaration",
2053    "named": true,
2054    "fields": {
2055      "kind": {
2056        "multiple": false,
2057        "required": true,
2058        "types": [
2059          {
2060            "type": "const",
2061            "named": false
2062          },
2063          {
2064            "type": "let",
2065            "named": false
2066          }
2067        ]
2068      }
2069    },
2070    "children": {
2071      "multiple": true,
2072      "required": true,
2073      "types": [
2074        {
2075          "type": "variable_declarator",
2076          "named": true
2077        }
2078      ]
2079    }
2080  },
2081  {
2082    "type": "member_expression",
2083    "named": true,
2084    "fields": {
2085      "object": {
2086        "multiple": false,
2087        "required": true,
2088        "types": [
2089          {
2090            "type": "expression",
2091            "named": true
2092          },
2093          {
2094            "type": "import",
2095            "named": true
2096          }
2097        ]
2098      },
2099      "optional_chain": {
2100        "multiple": false,
2101        "required": false,
2102        "types": [
2103          {
2104            "type": "optional_chain",
2105            "named": true
2106          }
2107        ]
2108      },
2109      "property": {
2110        "multiple": false,
2111        "required": true,
2112        "types": [
2113          {
2114            "type": "private_property_identifier",
2115            "named": true
2116          },
2117          {
2118            "type": "property_identifier",
2119            "named": true
2120          }
2121        ]
2122      }
2123    }
2124  },
2125  {
2126    "type": "meta_property",
2127    "named": true,
2128    "fields": {}
2129  },
2130  {
2131    "type": "method_definition",
2132    "named": true,
2133    "fields": {
2134      "body": {
2135        "multiple": false,
2136        "required": true,
2137        "types": [
2138          {
2139            "type": "statement_block",
2140            "named": true
2141          }
2142        ]
2143      },
2144      "decorator": {
2145        "multiple": true,
2146        "required": false,
2147        "types": [
2148          {
2149            "type": "decorator",
2150            "named": true
2151          }
2152        ]
2153      },
2154      "name": {
2155        "multiple": false,
2156        "required": true,
2157        "types": [
2158          {
2159            "type": "computed_property_name",
2160            "named": true
2161          },
2162          {
2163            "type": "number",
2164            "named": true
2165          },
2166          {
2167            "type": "private_property_identifier",
2168            "named": true
2169          },
2170          {
2171            "type": "property_identifier",
2172            "named": true
2173          },
2174          {
2175            "type": "string",
2176            "named": true
2177          }
2178        ]
2179      },
2180      "parameters": {
2181        "multiple": false,
2182        "required": true,
2183        "types": [
2184          {
2185            "type": "formal_parameters",
2186            "named": true
2187          }
2188        ]
2189      }
2190    }
2191  },
2192  {
2193    "type": "named_imports",
2194    "named": true,
2195    "fields": {},
2196    "children": {
2197      "multiple": true,
2198      "required": false,
2199      "types": [
2200        {
2201          "type": "import_specifier",
2202          "named": true
2203        }
2204      ]
2205    }
2206  },
2207  {
2208    "type": "namespace_export",
2209    "named": true,
2210    "fields": {},
2211    "children": {
2212      "multiple": false,
2213      "required": true,
2214      "types": [
2215        {
2216          "type": "identifier",
2217          "named": true
2218        },
2219        {
2220          "type": "string",
2221          "named": true
2222        }
2223      ]
2224    }
2225  },
2226  {
2227    "type": "namespace_import",
2228    "named": true,
2229    "fields": {},
2230    "children": {
2231      "multiple": false,
2232      "required": true,
2233      "types": [
2234        {
2235          "type": "identifier",
2236          "named": true
2237        }
2238      ]
2239    }
2240  },
2241  {
2242    "type": "new_expression",
2243    "named": true,
2244    "fields": {
2245      "arguments": {
2246        "multiple": false,
2247        "required": false,
2248        "types": [
2249          {
2250            "type": "arguments",
2251            "named": true
2252          }
2253        ]
2254      },
2255      "constructor": {
2256        "multiple": false,
2257        "required": true,
2258        "types": [
2259          {
2260            "type": "new_expression",
2261            "named": true
2262          },
2263          {
2264            "type": "primary_expression",
2265            "named": true
2266          }
2267        ]
2268      }
2269    }
2270  },
2271  {
2272    "type": "object",
2273    "named": true,
2274    "fields": {},
2275    "children": {
2276      "multiple": true,
2277      "required": false,
2278      "types": [
2279        {
2280          "type": "method_definition",
2281          "named": true
2282        },
2283        {
2284          "type": "pair",
2285          "named": true
2286        },
2287        {
2288          "type": "shorthand_property_identifier",
2289          "named": true
2290        },
2291        {
2292          "type": "spread_element",
2293          "named": true
2294        }
2295      ]
2296    }
2297  },
2298  {
2299    "type": "object_assignment_pattern",
2300    "named": true,
2301    "fields": {
2302      "left": {
2303        "multiple": false,
2304        "required": true,
2305        "types": [
2306          {
2307            "type": "array_pattern",
2308            "named": true
2309          },
2310          {
2311            "type": "object_pattern",
2312            "named": true
2313          },
2314          {
2315            "type": "shorthand_property_identifier_pattern",
2316            "named": true
2317          }
2318        ]
2319      },
2320      "right": {
2321        "multiple": false,
2322        "required": true,
2323        "types": [
2324          {
2325            "type": "expression",
2326            "named": true
2327          }
2328        ]
2329      }
2330    }
2331  },
2332  {
2333    "type": "object_pattern",
2334    "named": true,
2335    "fields": {},
2336    "children": {
2337      "multiple": true,
2338      "required": false,
2339      "types": [
2340        {
2341          "type": "object_assignment_pattern",
2342          "named": true
2343        },
2344        {
2345          "type": "pair_pattern",
2346          "named": true
2347        },
2348        {
2349          "type": "rest_pattern",
2350          "named": true
2351        },
2352        {
2353          "type": "shorthand_property_identifier_pattern",
2354          "named": true
2355        }
2356      ]
2357    }
2358  },
2359  {
2360    "type": "pair",
2361    "named": true,
2362    "fields": {
2363      "key": {
2364        "multiple": false,
2365        "required": true,
2366        "types": [
2367          {
2368            "type": "computed_property_name",
2369            "named": true
2370          },
2371          {
2372            "type": "number",
2373            "named": true
2374          },
2375          {
2376            "type": "private_property_identifier",
2377            "named": true
2378          },
2379          {
2380            "type": "property_identifier",
2381            "named": true
2382          },
2383          {
2384            "type": "string",
2385            "named": true
2386          }
2387        ]
2388      },
2389      "value": {
2390        "multiple": false,
2391        "required": true,
2392        "types": [
2393          {
2394            "type": "expression",
2395            "named": true
2396          }
2397        ]
2398      }
2399    }
2400  },
2401  {
2402    "type": "pair_pattern",
2403    "named": true,
2404    "fields": {
2405      "key": {
2406        "multiple": false,
2407        "required": true,
2408        "types": [
2409          {
2410            "type": "computed_property_name",
2411            "named": true
2412          },
2413          {
2414            "type": "number",
2415            "named": true
2416          },
2417          {
2418            "type": "private_property_identifier",
2419            "named": true
2420          },
2421          {
2422            "type": "property_identifier",
2423            "named": true
2424          },
2425          {
2426            "type": "string",
2427            "named": true
2428          }
2429        ]
2430      },
2431      "value": {
2432        "multiple": false,
2433        "required": true,
2434        "types": [
2435          {
2436            "type": "assignment_pattern",
2437            "named": true
2438          },
2439          {
2440            "type": "pattern",
2441            "named": true
2442          }
2443        ]
2444      }
2445    }
2446  },
2447  {
2448    "type": "parenthesized_expression",
2449    "named": true,
2450    "fields": {},
2451    "children": {
2452      "multiple": false,
2453      "required": true,
2454      "types": [
2455        {
2456          "type": "expression",
2457          "named": true
2458        },
2459        {
2460          "type": "sequence_expression",
2461          "named": true
2462        }
2463      ]
2464    }
2465  },
2466  {
2467    "type": "program",
2468    "named": true,
2469    "fields": {},
2470    "children": {
2471      "multiple": true,
2472      "required": false,
2473      "types": [
2474        {
2475          "type": "hash_bang_line",
2476          "named": true
2477        },
2478        {
2479          "type": "statement",
2480          "named": true
2481        }
2482      ]
2483    }
2484  },
2485  {
2486    "type": "regex",
2487    "named": true,
2488    "fields": {
2489      "flags": {
2490        "multiple": false,
2491        "required": false,
2492        "types": [
2493          {
2494            "type": "regex_flags",
2495            "named": true
2496          }
2497        ]
2498      },
2499      "pattern": {
2500        "multiple": false,
2501        "required": true,
2502        "types": [
2503          {
2504            "type": "regex_pattern",
2505            "named": true
2506          }
2507        ]
2508      }
2509    }
2510  },
2511  {
2512    "type": "rest_pattern",
2513    "named": true,
2514    "fields": {},
2515    "children": {
2516      "multiple": false,
2517      "required": true,
2518      "types": [
2519        {
2520          "type": "array_pattern",
2521          "named": true
2522        },
2523        {
2524          "type": "identifier",
2525          "named": true
2526        },
2527        {
2528          "type": "member_expression",
2529          "named": true
2530        },
2531        {
2532          "type": "object_pattern",
2533          "named": true
2534        },
2535        {
2536          "type": "subscript_expression",
2537          "named": true
2538        },
2539        {
2540          "type": "undefined",
2541          "named": true
2542        }
2543      ]
2544    }
2545  },
2546  {
2547    "type": "return_statement",
2548    "named": true,
2549    "fields": {},
2550    "children": {
2551      "multiple": false,
2552      "required": false,
2553      "types": [
2554        {
2555          "type": "expression",
2556          "named": true
2557        },
2558        {
2559          "type": "sequence_expression",
2560          "named": true
2561        }
2562      ]
2563    }
2564  },
2565  {
2566    "type": "sequence_expression",
2567    "named": true,
2568    "fields": {},
2569    "children": {
2570      "multiple": true,
2571      "required": true,
2572      "types": [
2573        {
2574          "type": "expression",
2575          "named": true
2576        }
2577      ]
2578    }
2579  },
2580  {
2581    "type": "spread_element",
2582    "named": true,
2583    "fields": {},
2584    "children": {
2585      "multiple": false,
2586      "required": true,
2587      "types": [
2588        {
2589          "type": "expression",
2590          "named": true
2591        }
2592      ]
2593    }
2594  },
2595  {
2596    "type": "statement_block",
2597    "named": true,
2598    "fields": {},
2599    "children": {
2600      "multiple": true,
2601      "required": false,
2602      "types": [
2603        {
2604          "type": "statement",
2605          "named": true
2606        }
2607      ]
2608    }
2609  },
2610  {
2611    "type": "string",
2612    "named": true,
2613    "fields": {},
2614    "children": {
2615      "multiple": true,
2616      "required": false,
2617      "types": [
2618        {
2619          "type": "escape_sequence",
2620          "named": true
2621        },
2622        {
2623          "type": "html_character_reference",
2624          "named": true
2625        },
2626        {
2627          "type": "string_fragment",
2628          "named": true
2629        }
2630      ]
2631    }
2632  },
2633  {
2634    "type": "subscript_expression",
2635    "named": true,
2636    "fields": {
2637      "index": {
2638        "multiple": false,
2639        "required": true,
2640        "types": [
2641          {
2642            "type": "expression",
2643            "named": true
2644          },
2645          {
2646            "type": "sequence_expression",
2647            "named": true
2648          }
2649        ]
2650      },
2651      "object": {
2652        "multiple": false,
2653        "required": true,
2654        "types": [
2655          {
2656            "type": "expression",
2657            "named": true
2658          }
2659        ]
2660      },
2661      "optional_chain": {
2662        "multiple": false,
2663        "required": false,
2664        "types": [
2665          {
2666            "type": "optional_chain",
2667            "named": true
2668          }
2669        ]
2670      }
2671    }
2672  },
2673  {
2674    "type": "switch_body",
2675    "named": true,
2676    "fields": {},
2677    "children": {
2678      "multiple": true,
2679      "required": false,
2680      "types": [
2681        {
2682          "type": "switch_case",
2683          "named": true
2684        },
2685        {
2686          "type": "switch_default",
2687          "named": true
2688        }
2689      ]
2690    }
2691  },
2692  {
2693    "type": "switch_case",
2694    "named": true,
2695    "fields": {
2696      "body": {
2697        "multiple": true,
2698        "required": false,
2699        "types": [
2700          {
2701            "type": "statement",
2702            "named": true
2703          }
2704        ]
2705      },
2706      "value": {
2707        "multiple": false,
2708        "required": true,
2709        "types": [
2710          {
2711            "type": "expression",
2712            "named": true
2713          },
2714          {
2715            "type": "sequence_expression",
2716            "named": true
2717          }
2718        ]
2719      }
2720    }
2721  },
2722  {
2723    "type": "switch_default",
2724    "named": true,
2725    "fields": {
2726      "body": {
2727        "multiple": true,
2728        "required": false,
2729        "types": [
2730          {
2731            "type": "statement",
2732            "named": true
2733          }
2734        ]
2735      }
2736    }
2737  },
2738  {
2739    "type": "switch_statement",
2740    "named": true,
2741    "fields": {
2742      "body": {
2743        "multiple": false,
2744        "required": true,
2745        "types": [
2746          {
2747            "type": "switch_body",
2748            "named": true
2749          }
2750        ]
2751      },
2752      "value": {
2753        "multiple": false,
2754        "required": true,
2755        "types": [
2756          {
2757            "type": "parenthesized_expression",
2758            "named": true
2759          }
2760        ]
2761      }
2762    }
2763  },
2764  {
2765    "type": "template_string",
2766    "named": true,
2767    "fields": {},
2768    "children": {
2769      "multiple": true,
2770      "required": false,
2771      "types": [
2772        {
2773          "type": "escape_sequence",
2774          "named": true
2775        },
2776        {
2777          "type": "string_fragment",
2778          "named": true
2779        },
2780        {
2781          "type": "template_substitution",
2782          "named": true
2783        }
2784      ]
2785    }
2786  },
2787  {
2788    "type": "template_substitution",
2789    "named": true,
2790    "fields": {},
2791    "children": {
2792      "multiple": false,
2793      "required": true,
2794      "types": [
2795        {
2796          "type": "expression",
2797          "named": true
2798        },
2799        {
2800          "type": "sequence_expression",
2801          "named": true
2802        }
2803      ]
2804    }
2805  },
2806  {
2807    "type": "ternary_expression",
2808    "named": true,
2809    "fields": {
2810      "alternative": {
2811        "multiple": false,
2812        "required": true,
2813        "types": [
2814          {
2815            "type": "expression",
2816            "named": true
2817          }
2818        ]
2819      },
2820      "condition": {
2821        "multiple": false,
2822        "required": true,
2823        "types": [
2824          {
2825            "type": "expression",
2826            "named": true
2827          }
2828        ]
2829      },
2830      "consequence": {
2831        "multiple": false,
2832        "required": true,
2833        "types": [
2834          {
2835            "type": "expression",
2836            "named": true
2837          }
2838        ]
2839      }
2840    }
2841  },
2842  {
2843    "type": "throw_statement",
2844    "named": true,
2845    "fields": {},
2846    "children": {
2847      "multiple": false,
2848      "required": true,
2849      "types": [
2850        {
2851          "type": "expression",
2852          "named": true
2853        },
2854        {
2855          "type": "sequence_expression",
2856          "named": true
2857        }
2858      ]
2859    }
2860  },
2861  {
2862    "type": "try_statement",
2863    "named": true,
2864    "fields": {
2865      "body": {
2866        "multiple": false,
2867        "required": true,
2868        "types": [
2869          {
2870            "type": "statement_block",
2871            "named": true
2872          }
2873        ]
2874      },
2875      "finalizer": {
2876        "multiple": false,
2877        "required": false,
2878        "types": [
2879          {
2880            "type": "finally_clause",
2881            "named": true
2882          }
2883        ]
2884      },
2885      "handler": {
2886        "multiple": false,
2887        "required": false,
2888        "types": [
2889          {
2890            "type": "catch_clause",
2891            "named": true
2892          }
2893        ]
2894      }
2895    }
2896  },
2897  {
2898    "type": "unary_expression",
2899    "named": true,
2900    "fields": {
2901      "argument": {
2902        "multiple": false,
2903        "required": true,
2904        "types": [
2905          {
2906            "type": "expression",
2907            "named": true
2908          }
2909        ]
2910      },
2911      "operator": {
2912        "multiple": false,
2913        "required": true,
2914        "types": [
2915          {
2916            "type": "!",
2917            "named": false
2918          },
2919          {
2920            "type": "+",
2921            "named": false
2922          },
2923          {
2924            "type": "-",
2925            "named": false
2926          },
2927          {
2928            "type": "delete",
2929            "named": false
2930          },
2931          {
2932            "type": "typeof",
2933            "named": false
2934          },
2935          {
2936            "type": "void",
2937            "named": false
2938          },
2939          {
2940            "type": "~",
2941            "named": false
2942          }
2943        ]
2944      }
2945    }
2946  },
2947  {
2948    "type": "update_expression",
2949    "named": true,
2950    "fields": {
2951      "argument": {
2952        "multiple": false,
2953        "required": true,
2954        "types": [
2955          {
2956            "type": "expression",
2957            "named": true
2958          }
2959        ]
2960      },
2961      "operator": {
2962        "multiple": false,
2963        "required": true,
2964        "types": [
2965          {
2966            "type": "++",
2967            "named": false
2968          },
2969          {
2970            "type": "--",
2971            "named": false
2972          }
2973        ]
2974      }
2975    }
2976  },
2977  {
2978    "type": "variable_declaration",
2979    "named": true,
2980    "fields": {},
2981    "children": {
2982      "multiple": true,
2983      "required": true,
2984      "types": [
2985        {
2986          "type": "variable_declarator",
2987          "named": true
2988        }
2989      ]
2990    }
2991  },
2992  {
2993    "type": "variable_declarator",
2994    "named": true,
2995    "fields": {
2996      "name": {
2997        "multiple": false,
2998        "required": true,
2999        "types": [
3000          {
3001            "type": "array_pattern",
3002            "named": true
3003          },
3004          {
3005            "type": "identifier",
3006            "named": true
3007          },
3008          {
3009            "type": "object_pattern",
3010            "named": true
3011          }
3012        ]
3013      },
3014      "value": {
3015        "multiple": false,
3016        "required": false,
3017        "types": [
3018          {
3019            "type": "expression",
3020            "named": true
3021          }
3022        ]
3023      }
3024    }
3025  },
3026  {
3027    "type": "while_statement",
3028    "named": true,
3029    "fields": {
3030      "body": {
3031        "multiple": false,
3032        "required": true,
3033        "types": [
3034          {
3035            "type": "statement",
3036            "named": true
3037          }
3038        ]
3039      },
3040      "condition": {
3041        "multiple": false,
3042        "required": true,
3043        "types": [
3044          {
3045            "type": "parenthesized_expression",
3046            "named": true
3047          }
3048        ]
3049      }
3050    }
3051  },
3052  {
3053    "type": "with_statement",
3054    "named": true,
3055    "fields": {
3056      "body": {
3057        "multiple": false,
3058        "required": true,
3059        "types": [
3060          {
3061            "type": "statement",
3062            "named": true
3063          }
3064        ]
3065      },
3066      "object": {
3067        "multiple": false,
3068        "required": true,
3069        "types": [
3070          {
3071            "type": "parenthesized_expression",
3072            "named": true
3073          }
3074        ]
3075      }
3076    }
3077  },
3078  {
3079    "type": "yield_expression",
3080    "named": true,
3081    "fields": {},
3082    "children": {
3083      "multiple": false,
3084      "required": false,
3085      "types": [
3086        {
3087          "type": "expression",
3088          "named": true
3089        }
3090      ]
3091    }
3092  },
3093  {
3094    "type": "!",
3095    "named": false
3096  },
3097  {
3098    "type": "!=",
3099    "named": false
3100  },
3101  {
3102    "type": "!==",
3103    "named": false
3104  },
3105  {
3106    "type": "\"",
3107    "named": false
3108  },
3109  {
3110    "type": "${",
3111    "named": false
3112  },
3113  {
3114    "type": "%",
3115    "named": false
3116  },
3117  {
3118    "type": "%=",
3119    "named": false
3120  },
3121  {
3122    "type": "&",
3123    "named": false
3124  },
3125  {
3126    "type": "&&",
3127    "named": false
3128  },
3129  {
3130    "type": "&&=",
3131    "named": false
3132  },
3133  {
3134    "type": "&=",
3135    "named": false
3136  },
3137  {
3138    "type": "'",
3139    "named": false
3140  },
3141  {
3142    "type": "(",
3143    "named": false
3144  },
3145  {
3146    "type": ")",
3147    "named": false
3148  },
3149  {
3150    "type": "*",
3151    "named": false
3152  },
3153  {
3154    "type": "**",
3155    "named": false
3156  },
3157  {
3158    "type": "**=",
3159    "named": false
3160  },
3161  {
3162    "type": "*=",
3163    "named": false
3164  },
3165  {
3166    "type": "+",
3167    "named": false
3168  },
3169  {
3170    "type": "++",
3171    "named": false
3172  },
3173  {
3174    "type": "+=",
3175    "named": false
3176  },
3177  {
3178    "type": ",",
3179    "named": false
3180  },
3181  {
3182    "type": "-",
3183    "named": false
3184  },
3185  {
3186    "type": "--",
3187    "named": false
3188  },
3189  {
3190    "type": "-=",
3191    "named": false
3192  },
3193  {
3194    "type": ".",
3195    "named": false
3196  },
3197  {
3198    "type": "...",
3199    "named": false
3200  },
3201  {
3202    "type": "/",
3203    "named": false
3204  },
3205  {
3206    "type": "/=",
3207    "named": false
3208  },
3209  {
3210    "type": "/>",
3211    "named": false
3212  },
3213  {
3214    "type": ":",
3215    "named": false
3216  },
3217  {
3218    "type": ";",
3219    "named": false
3220  },
3221  {
3222    "type": "<",
3223    "named": false
3224  },
3225  {
3226    "type": "</",
3227    "named": false
3228  },
3229  {
3230    "type": "</template>",
3231    "named": false
3232  },
3233  {
3234    "type": "<<",
3235    "named": false
3236  },
3237  {
3238    "type": "<<=",
3239    "named": false
3240  },
3241  {
3242    "type": "<=",
3243    "named": false
3244  },
3245  {
3246    "type": "<template>",
3247    "named": false
3248  },
3249  {
3250    "type": "=",
3251    "named": false
3252  },
3253  {
3254    "type": "==",
3255    "named": false
3256  },
3257  {
3258    "type": "===",
3259    "named": false
3260  },
3261  {
3262    "type": "=>",
3263    "named": false
3264  },
3265  {
3266    "type": ">",
3267    "named": false
3268  },
3269  {
3270    "type": ">=",
3271    "named": false
3272  },
3273  {
3274    "type": ">>",
3275    "named": false
3276  },
3277  {
3278    "type": ">>=",
3279    "named": false
3280  },
3281  {
3282    "type": ">>>",
3283    "named": false
3284  },
3285  {
3286    "type": ">>>=",
3287    "named": false
3288  },
3289  {
3290    "type": "?",
3291    "named": false
3292  },
3293  {
3294    "type": "??",
3295    "named": false
3296  },
3297  {
3298    "type": "??=",
3299    "named": false
3300  },
3301  {
3302    "type": "@",
3303    "named": false
3304  },
3305  {
3306    "type": "[",
3307    "named": false
3308  },
3309  {
3310    "type": "]",
3311    "named": false
3312  },
3313  {
3314    "type": "^",
3315    "named": false
3316  },
3317  {
3318    "type": "^=",
3319    "named": false
3320  },
3321  {
3322    "type": "`",
3323    "named": false
3324  },
3325  {
3326    "type": "as",
3327    "named": false
3328  },
3329  {
3330    "type": "async",
3331    "named": false
3332  },
3333  {
3334    "type": "await",
3335    "named": false
3336  },
3337  {
3338    "type": "break",
3339    "named": false
3340  },
3341  {
3342    "type": "case",
3343    "named": false
3344  },
3345  {
3346    "type": "catch",
3347    "named": false
3348  },
3349  {
3350    "type": "class",
3351    "named": false
3352  },
3353  {
3354    "type": "const",
3355    "named": false
3356  },
3357  {
3358    "type": "continue",
3359    "named": false
3360  },
3361  {
3362    "type": "debugger",
3363    "named": false
3364  },
3365  {
3366    "type": "default",
3367    "named": false
3368  },
3369  {
3370    "type": "delete",
3371    "named": false
3372  },
3373  {
3374    "type": "do",
3375    "named": false
3376  },
3377  {
3378    "type": "else",
3379    "named": false
3380  },
3381  {
3382    "type": "escape_sequence",
3383    "named": true
3384  },
3385  {
3386    "type": "export",
3387    "named": false
3388  },
3389  {
3390    "type": "extends",
3391    "named": false
3392  },
3393  {
3394    "type": "false",
3395    "named": true
3396  },
3397  {
3398    "type": "finally",
3399    "named": false
3400  },
3401  {
3402    "type": "for",
3403    "named": false
3404  },
3405  {
3406    "type": "from",
3407    "named": false
3408  },
3409  {
3410    "type": "function",
3411    "named": false
3412  },
3413  {
3414    "type": "get",
3415    "named": false
3416  },
3417  {
3418    "type": "hash_bang_line",
3419    "named": true
3420  },
3421  {
3422    "type": "html_character_reference",
3423    "named": true
3424  },
3425  {
3426    "type": "html_comment",
3427    "named": true
3428  },
3429  {
3430    "type": "identifier",
3431    "named": true
3432  },
3433  {
3434    "type": "if",
3435    "named": false
3436  },
3437  {
3438    "type": "import",
3439    "named": false
3440  },
3441  {
3442    "type": "in",
3443    "named": false
3444  },
3445  {
3446    "type": "instanceof",
3447    "named": false
3448  },
3449  {
3450    "type": "let",
3451    "named": false
3452  },
3453  {
3454    "type": "new",
3455    "named": false
3456  },
3457  {
3458    "type": "null",
3459    "named": true
3460  },
3461  {
3462    "type": "number",
3463    "named": true
3464  },
3465  {
3466    "type": "of",
3467    "named": false
3468  },
3469  {
3470    "type": "optional_chain",
3471    "named": true
3472  },
3473  {
3474    "type": "private_property_identifier",
3475    "named": true
3476  },
3477  {
3478    "type": "property_identifier",
3479    "named": true
3480  },
3481  {
3482    "type": "regex_flags",
3483    "named": true
3484  },
3485  {
3486    "type": "regex_pattern",
3487    "named": true
3488  },
3489  {
3490    "type": "return",
3491    "named": false
3492  },
3493  {
3494    "type": "set",
3495    "named": false
3496  },
3497  {
3498    "type": "shorthand_property_identifier",
3499    "named": true
3500  },
3501  {
3502    "type": "shorthand_property_identifier_pattern",
3503    "named": true
3504  },
3505  {
3506    "type": "statement_identifier",
3507    "named": true
3508  },
3509  {
3510    "type": "static",
3511    "named": false
3512  },
3513  {
3514    "type": "static get",
3515    "named": false
3516  },
3517  {
3518    "type": "string_fragment",
3519    "named": true
3520  },
3521  {
3522    "type": "super",
3523    "named": true
3524  },
3525  {
3526    "type": "switch",
3527    "named": false
3528  },
3529  {
3530    "type": "target",
3531    "named": false
3532  },
3533  {
3534    "type": "this",
3535    "named": true
3536  },
3537  {
3538    "type": "throw",
3539    "named": false
3540  },
3541  {
3542    "type": "true",
3543    "named": true
3544  },
3545  {
3546    "type": "try",
3547    "named": false
3548  },
3549  {
3550    "type": "typeof",
3551    "named": false
3552  },
3553  {
3554    "type": "undefined",
3555    "named": true
3556  },
3557  {
3558    "type": "var",
3559    "named": false
3560  },
3561  {
3562    "type": "void",
3563    "named": false
3564  },
3565  {
3566    "type": "while",
3567    "named": false
3568  },
3569  {
3570    "type": "with",
3571    "named": false
3572  },
3573  {
3574    "type": "yield",
3575    "named": false
3576  },
3577  {
3578    "type": "{",
3579    "named": false
3580  },
3581  {
3582    "type": "|",
3583    "named": false
3584  },
3585  {
3586    "type": "|=",
3587    "named": false
3588  },
3589  {
3590    "type": "||",
3591    "named": false
3592  },
3593  {
3594    "type": "||=",
3595    "named": false
3596  },
3597  {
3598    "type": "}",
3599    "named": false
3600  },
3601  {
3602    "type": "~",
3603    "named": false
3604  }
3605]