Constant tree_sitter_typescript::TYPESCRIPT_NODE_TYPES
source ยท pub const TYPESCRIPT_NODE_TYPES: &str = "[\n {\n \"type\": \"declaration\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"abstract_class_declaration\",\n \"named\": true\n },\n {\n \"type\": \"ambient_declaration\",\n \"named\": true\n },\n {\n \"type\": \"class_declaration\",\n \"named\": true\n },\n {\n \"type\": \"enum_declaration\",\n \"named\": true\n },\n {\n \"type\": \"function_declaration\",\n \"named\": true\n },\n {\n \"type\": \"function_signature\",\n \"named\": true\n },\n {\n \"type\": \"generator_function_declaration\",\n \"named\": true\n },\n {\n \"type\": \"import_alias\",\n \"named\": true\n },\n {\n \"type\": \"interface_declaration\",\n \"named\": true\n },\n {\n \"type\": \"internal_module\",\n \"named\": true\n },\n {\n \"type\": \"lexical_declaration\",\n \"named\": true\n },\n {\n \"type\": \"module\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_declaration\",\n \"named\": true\n },\n {\n \"type\": \"variable_declaration\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"expression\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"as_expression\",\n \"named\": true\n },\n {\n \"type\": \"assignment_expression\",\n \"named\": true\n },\n {\n \"type\": \"augmented_assignment_expression\",\n \"named\": true\n },\n {\n \"type\": \"await_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"glimmer_template\",\n \"named\": true\n },\n {\n \"type\": \"instantiation_expression\",\n \"named\": true\n },\n {\n \"type\": \"internal_module\",\n \"named\": true\n },\n {\n \"type\": \"new_expression\",\n \"named\": true\n },\n {\n \"type\": \"primary_expression\",\n \"named\": true\n },\n {\n \"type\": \"satisfies_expression\",\n \"named\": true\n },\n {\n \"type\": \"ternary_expression\",\n \"named\": true\n },\n {\n \"type\": \"type_assertion\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n },\n {\n \"type\": \"update_expression\",\n \"named\": true\n },\n {\n \"type\": \"yield_expression\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"pattern\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"array_pattern\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"non_null_expression\",\n \"named\": true\n },\n {\n \"type\": \"object_pattern\",\n \"named\": true\n },\n {\n \"type\": \"rest_pattern\",\n \"named\": true\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true\n },\n {\n \"type\": \"undefined\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"primary_expression\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"arrow_function\",\n \"named\": true\n },\n {\n \"type\": \"call_expression\",\n \"named\": true\n },\n {\n \"type\": \"class\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": true\n },\n {\n \"type\": \"function_expression\",\n \"named\": true\n },\n {\n \"type\": \"generator_function\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"meta_property\",\n \"named\": true\n },\n {\n \"type\": \"non_null_expression\",\n \"named\": true\n },\n {\n \"type\": \"null\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n },\n {\n \"type\": \"regex\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true\n },\n {\n \"type\": \"super\",\n \"named\": true\n },\n {\n \"type\": \"template_string\",\n \"named\": true\n },\n {\n \"type\": \"this\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": true\n },\n {\n \"type\": \"undefined\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"primary_type\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"conditional_type\",\n \"named\": true\n },\n {\n \"type\": \"const\",\n \"named\": false\n },\n {\n \"type\": \"existential_type\",\n \"named\": true\n },\n {\n \"type\": \"flow_maybe_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"index_type_query\",\n \"named\": true\n },\n {\n \"type\": \"intersection_type\",\n \"named\": true\n },\n {\n \"type\": \"literal_type\",\n \"named\": true\n },\n {\n \"type\": \"lookup_type\",\n \"named\": true\n },\n {\n \"type\": \"nested_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"object_type\",\n \"named\": true\n },\n {\n \"type\": \"parenthesized_type\",\n \"named\": true\n },\n {\n \"type\": \"predefined_type\",\n \"named\": true\n },\n {\n \"type\": \"template_literal_type\",\n \"named\": true\n },\n {\n \"type\": \"this_type\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"type_query\",\n \"named\": true\n },\n {\n \"type\": \"union_type\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"statement\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"break_statement\",\n \"named\": true\n },\n {\n \"type\": \"continue_statement\",\n \"named\": true\n },\n {\n \"type\": \"debugger_statement\",\n \"named\": true\n },\n {\n \"type\": \"declaration\",\n \"named\": true\n },\n {\n \"type\": \"do_statement\",\n \"named\": true\n },\n {\n \"type\": \"empty_statement\",\n \"named\": true\n },\n {\n \"type\": \"export_statement\",\n \"named\": true\n },\n {\n \"type\": \"expression_statement\",\n \"named\": true\n },\n {\n \"type\": \"for_in_statement\",\n \"named\": true\n },\n {\n \"type\": \"for_statement\",\n \"named\": true\n },\n {\n \"type\": \"if_statement\",\n \"named\": true\n },\n {\n \"type\": \"import_statement\",\n \"named\": true\n },\n {\n \"type\": \"labeled_statement\",\n \"named\": true\n },\n {\n \"type\": \"return_statement\",\n \"named\": true\n },\n {\n \"type\": \"statement_block\",\n \"named\": true\n },\n {\n \"type\": \"switch_statement\",\n \"named\": true\n },\n {\n \"type\": \"throw_statement\",\n \"named\": true\n },\n {\n \"type\": \"try_statement\",\n \"named\": true\n },\n {\n \"type\": \"while_statement\",\n \"named\": true\n },\n {\n \"type\": \"with_statement\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"type\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"call_expression\",\n \"named\": true\n },\n {\n \"type\": \"constructor_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"primary_type\",\n \"named\": true\n },\n {\n \"type\": \"readonly_type\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"abstract_class_declaration\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"class_body\",\n \"named\": true\n }\n ]\n },\n \"decorator\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"decorator\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"class_heritage\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"abstract_method_signature\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"accessibility_modifier\",\n \"named\": true\n },\n {\n \"type\": \"override_modifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"accessibility_modifier\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"adding_type_annotation\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"ambient_declaration\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"declaration\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"statement_block\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"arguments\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"spread_element\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"array\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"spread_element\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"array_pattern\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"assignment_pattern\",\n \"named\": true\n },\n {\n \"type\": \"pattern\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"array_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"primary_type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"arrow_function\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"parameter\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"as_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"asserts\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"this\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"asserts_annotation\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"asserts\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"assignment_expression\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_pattern\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"non_null_expression\",\n \"named\": true\n },\n {\n \"type\": \"object_pattern\",\n \"named\": true\n },\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true\n },\n {\n \"type\": \"undefined\",\n \"named\": true\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"assignment_pattern\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"pattern\",\n \"named\": true\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"augmented_assignment_expression\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"non_null_expression\",\n \"named\": true\n },\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true\n }\n ]\n },\n \"operator\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"%=\",\n \"named\": false\n },\n {\n \"type\": \"&&=\",\n \"named\": false\n },\n {\n \"type\": \"&=\",\n \"named\": false\n },\n {\n \"type\": \"**=\",\n \"named\": false\n },\n {\n \"type\": \"*=\",\n \"named\": false\n },\n {\n \"type\": \"+=\",\n \"named\": false\n },\n {\n \"type\": \"-=\",\n \"named\": false\n },\n {\n \"type\": \"/=\",\n \"named\": false\n },\n {\n \"type\": \"<<=\",\n \"named\": false\n },\n {\n \"type\": \">>=\",\n \"named\": false\n },\n {\n \"type\": \">>>=\",\n \"named\": false\n },\n {\n \"type\": \"??=\",\n \"named\": false\n },\n {\n \"type\": \"^=\",\n \"named\": false\n },\n {\n \"type\": \"|=\",\n \"named\": false\n },\n {\n \"type\": \"||=\",\n \"named\": false\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"await_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n }\n ]\n },\n \"operator\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"!=\",\n \"named\": false\n },\n {\n \"type\": \"!==\",\n \"named\": false\n },\n {\n \"type\": \"%\",\n \"named\": false\n },\n {\n \"type\": \"&\",\n \"named\": false\n },\n {\n \"type\": \"&&\",\n \"named\": false\n },\n {\n \"type\": \"*\",\n \"named\": false\n },\n {\n \"type\": \"**\",\n \"named\": false\n },\n {\n \"type\": \"+\",\n \"named\": false\n },\n {\n \"type\": \"-\",\n \"named\": false\n },\n {\n \"type\": \"/\",\n \"named\": false\n },\n {\n \"type\": \"<\",\n \"named\": false\n },\n {\n \"type\": \"<<\",\n \"named\": false\n },\n {\n \"type\": \"<=\",\n \"named\": false\n },\n {\n \"type\": \"==\",\n \"named\": false\n },\n {\n \"type\": \"===\",\n \"named\": false\n },\n {\n \"type\": \">\",\n \"named\": false\n },\n {\n \"type\": \">=\",\n \"named\": false\n },\n {\n \"type\": \">>\",\n \"named\": false\n },\n {\n \"type\": \">>>\",\n \"named\": false\n },\n {\n \"type\": \"??\",\n \"named\": false\n },\n {\n \"type\": \"^\",\n \"named\": false\n },\n {\n \"type\": \"in\",\n \"named\": false\n },\n {\n \"type\": \"instanceof\",\n \"named\": false\n },\n {\n \"type\": \"|\",\n \"named\": false\n },\n {\n \"type\": \"||\",\n \"named\": false\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"break_statement\",\n \"named\": true,\n \"fields\": {\n \"label\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"statement_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"call_expression\",\n \"named\": true,\n \"fields\": {\n \"arguments\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"arguments\",\n \"named\": true\n },\n {\n \"type\": \"template_string\",\n \"named\": true\n }\n ]\n },\n \"function\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"import\",\n \"named\": true\n }\n ]\n },\n \"type_arguments\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"call_signature\",\n \"named\": true,\n \"fields\": {\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"catch_clause\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"parameter\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array_pattern\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"object_pattern\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"class\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"class_body\",\n \"named\": true\n }\n ]\n },\n \"decorator\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"decorator\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"class_heritage\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"class_body\",\n \"named\": true,\n \"fields\": {\n \"decorator\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"decorator\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"abstract_method_signature\",\n \"named\": true\n },\n {\n \"type\": \"class_static_block\",\n \"named\": true\n },\n {\n \"type\": \"index_signature\",\n \"named\": true\n },\n {\n \"type\": \"method_definition\",\n \"named\": true\n },\n {\n \"type\": \"method_signature\",\n \"named\": true\n },\n {\n \"type\": \"public_field_definition\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"class_declaration\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"class_body\",\n \"named\": true\n }\n ]\n },\n \"decorator\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"decorator\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"class_heritage\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"class_heritage\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"extends_clause\",\n \"named\": true\n },\n {\n \"type\": \"implements_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"class_static_block\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"computed_property_name\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"conditional_type\",\n \"named\": true,\n \"fields\": {\n \"alternative\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n },\n \"consequence\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n },\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"constraint\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"construct_signature\",\n \"named\": true,\n \"fields\": {\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"constructor_type\",\n \"named\": true,\n \"fields\": {\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"continue_statement\",\n \"named\": true,\n \"fields\": {\n \"label\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"statement_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"debugger_statement\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"decorator\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"call_expression\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"default_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"do_statement\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n },\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"else_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"empty_statement\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"enum_assignment\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"enum_body\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"enum_assignment\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"enum_declaration\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"enum_body\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"existential_type\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"export_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"export_specifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"export_specifier\",\n \"named\": true,\n \"fields\": {\n \"alias\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"export_statement\",\n \"named\": true,\n \"fields\": {\n \"declaration\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"declaration\",\n \"named\": true\n }\n ]\n },\n \"decorator\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"decorator\",\n \"named\": true\n }\n ]\n },\n \"source\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"export_clause\",\n \"named\": true\n },\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"namespace_export\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"expression_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"extends_clause\",\n \"named\": true,\n \"fields\": {\n \"type_arguments\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"extends_type_clause\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"nested_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"finally_clause\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"flow_maybe_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"primary_type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"for_in_statement\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n },\n \"kind\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"const\",\n \"named\": false\n },\n {\n \"type\": \"let\",\n \"named\": false\n },\n {\n \"type\": \"var\",\n \"named\": false\n }\n ]\n },\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_pattern\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"non_null_expression\",\n \"named\": true\n },\n {\n \"type\": \"object_pattern\",\n \"named\": true\n },\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true\n },\n {\n \"type\": \"undefined\",\n \"named\": true\n }\n ]\n },\n \"operator\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"in\",\n \"named\": false\n },\n {\n \"type\": \"of\",\n \"named\": false\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"for_statement\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n },\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"empty_statement\",\n \"named\": true\n },\n {\n \"type\": \"expression_statement\",\n \"named\": true\n }\n ]\n },\n \"increment\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n }\n ]\n },\n \"initializer\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"empty_statement\",\n \"named\": true\n },\n {\n \"type\": \"expression_statement\",\n \"named\": true\n },\n {\n \"type\": \"lexical_declaration\",\n \"named\": true\n },\n {\n \"type\": \"variable_declaration\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"formal_parameters\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"optional_parameter\",\n \"named\": true\n },\n {\n \"type\": \"required_parameter\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"function_declaration\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"function_expression\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"function_signature\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"function_type\",\n \"named\": true,\n \"fields\": {\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"asserts\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"generator_function\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"generator_function_declaration\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"generic_type\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"nested_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_arguments\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"glimmer_template\",\n \"named\": true,\n \"fields\": {\n \"close_tag\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"glimmer_closing_tag\",\n \"named\": true\n }\n ]\n },\n \"open_tag\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"glimmer_opening_tag\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"identifier\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"if_statement\",\n \"named\": true,\n \"fields\": {\n \"alternative\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"else_clause\",\n \"named\": true\n }\n ]\n },\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n }\n ]\n },\n \"consequence\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"implements_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"import\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"import_alias\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"nested_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"import_attribute\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"object\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"import_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"named_imports\",\n \"named\": true\n },\n {\n \"type\": \"namespace_import\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"import_require_clause\",\n \"named\": true,\n \"fields\": {\n \"source\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"import_specifier\",\n \"named\": true,\n \"fields\": {\n \"alias\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"import_statement\",\n \"named\": true,\n \"fields\": {\n \"source\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"import_attribute\",\n \"named\": true\n },\n {\n \"type\": \"import_clause\",\n \"named\": true\n },\n {\n \"type\": \"import_require_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"index_signature\",\n \"named\": true,\n \"fields\": {\n \"index_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"sign\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"+\",\n \"named\": false\n },\n {\n \"type\": \"-\",\n \"named\": false\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"adding_type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"omitting_type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"opting_type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"mapped_type_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"index_type_query\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"primary_type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"infer_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"instantiation_expression\",\n \"named\": true,\n \"fields\": {\n \"function\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"import\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true\n }\n ]\n },\n \"type_arguments\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"interface_body\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"call_signature\",\n \"named\": true\n },\n {\n \"type\": \"construct_signature\",\n \"named\": true\n },\n {\n \"type\": \"export_statement\",\n \"named\": true\n },\n {\n \"type\": \"index_signature\",\n \"named\": true\n },\n {\n \"type\": \"method_signature\",\n \"named\": true\n },\n {\n \"type\": \"property_signature\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"interface_declaration\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"interface_body\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"extends_type_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"internal_module\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"nested_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"intersection_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"jsx_attribute\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"jsx_element\",\n \"named\": true\n },\n {\n \"type\": \"jsx_expression\",\n \"named\": true\n },\n {\n \"type\": \"jsx_namespace_name\",\n \"named\": true\n },\n {\n \"type\": \"jsx_self_closing_element\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"jsx_closing_element\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"jsx_namespace_name\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"jsx_element\",\n \"named\": true,\n \"fields\": {\n \"close_tag\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"jsx_closing_element\",\n \"named\": true\n }\n ]\n },\n \"open_tag\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"jsx_opening_element\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"html_character_reference\",\n \"named\": true\n },\n {\n \"type\": \"jsx_element\",\n \"named\": true\n },\n {\n \"type\": \"jsx_expression\",\n \"named\": true\n },\n {\n \"type\": \"jsx_self_closing_element\",\n \"named\": true\n },\n {\n \"type\": \"jsx_text\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"jsx_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n },\n {\n \"type\": \"spread_element\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"jsx_namespace_name\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"jsx_opening_element\",\n \"named\": true,\n \"fields\": {\n \"attribute\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"jsx_attribute\",\n \"named\": true\n },\n {\n \"type\": \"jsx_expression\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"jsx_namespace_name\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n }\n ]\n },\n \"type_arguments\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"jsx_self_closing_element\",\n \"named\": true,\n \"fields\": {\n \"attribute\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"jsx_attribute\",\n \"named\": true\n },\n {\n \"type\": \"jsx_expression\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"jsx_namespace_name\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n }\n ]\n },\n \"type_arguments\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"jsx_text\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"labeled_statement\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n },\n \"label\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"lexical_declaration\",\n \"named\": true,\n \"fields\": {\n \"kind\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"const\",\n \"named\": false\n },\n {\n \"type\": \"let\",\n \"named\": false\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"variable_declarator\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"literal_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"false\",\n \"named\": true\n },\n {\n \"type\": \"null\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n },\n {\n \"type\": \"undefined\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"lookup_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"mapped_type_clause\",\n \"named\": true,\n \"fields\": {\n \"alias\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"member_expression\",\n \"named\": true,\n \"fields\": {\n \"object\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"import\",\n \"named\": true\n }\n ]\n },\n \"optional_chain\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"optional_chain\",\n \"named\": true\n }\n ]\n },\n \"property\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"meta_property\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"method_definition\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"accessibility_modifier\",\n \"named\": true\n },\n {\n \"type\": \"override_modifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"method_signature\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"formal_parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"asserts_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"accessibility_modifier\",\n \"named\": true\n },\n {\n \"type\": \"override_modifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"module\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"nested_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"named_imports\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"import_specifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"namespace_export\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"namespace_import\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"nested_identifier\",\n \"named\": true,\n \"fields\": {\n \"object\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n }\n ]\n },\n \"property\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"property_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"nested_type_identifier\",\n \"named\": true,\n \"fields\": {\n \"module\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"nested_identifier\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"new_expression\",\n \"named\": true,\n \"fields\": {\n \"arguments\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"arguments\",\n \"named\": true\n }\n ]\n },\n \"constructor\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"primary_expression\",\n \"named\": true\n }\n ]\n },\n \"type_arguments\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"non_null_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"object\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"method_definition\",\n \"named\": true\n },\n {\n \"type\": \"pair\",\n \"named\": true\n },\n {\n \"type\": \"shorthand_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"spread_element\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"object_assignment_pattern\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_pattern\",\n \"named\": true\n },\n {\n \"type\": \"object_pattern\",\n \"named\": true\n },\n {\n \"type\": \"shorthand_property_identifier_pattern\",\n \"named\": true\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"object_pattern\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"object_assignment_pattern\",\n \"named\": true\n },\n {\n \"type\": \"pair_pattern\",\n \"named\": true\n },\n {\n \"type\": \"rest_pattern\",\n \"named\": true\n },\n {\n \"type\": \"shorthand_property_identifier_pattern\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"object_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"call_signature\",\n \"named\": true\n },\n {\n \"type\": \"construct_signature\",\n \"named\": true\n },\n {\n \"type\": \"export_statement\",\n \"named\": true\n },\n {\n \"type\": \"index_signature\",\n \"named\": true\n },\n {\n \"type\": \"method_signature\",\n \"named\": true\n },\n {\n \"type\": \"property_signature\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"omitting_type_annotation\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"opting_type_annotation\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"optional_chain\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"optional_parameter\",\n \"named\": true,\n \"fields\": {\n \"decorator\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"decorator\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"pattern\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"pattern\",\n \"named\": true\n },\n {\n \"type\": \"this\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"accessibility_modifier\",\n \"named\": true\n },\n {\n \"type\": \"override_modifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"optional_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"override_modifier\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"pair\",\n \"named\": true,\n \"fields\": {\n \"key\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"pair_pattern\",\n \"named\": true,\n \"fields\": {\n \"key\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"assignment_pattern\",\n \"named\": true\n },\n {\n \"type\": \"pattern\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"parenthesized_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"predefined_type\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"program\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"hash_bang_line\",\n \"named\": true\n },\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"property_signature\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"accessibility_modifier\",\n \"named\": true\n },\n {\n \"type\": \"override_modifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"public_field_definition\",\n \"named\": true,\n \"fields\": {\n \"decorator\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"decorator\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"computed_property_name\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"accessibility_modifier\",\n \"named\": true\n },\n {\n \"type\": \"override_modifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"readonly_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"regex\",\n \"named\": true,\n \"fields\": {\n \"flags\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"regex_flags\",\n \"named\": true\n }\n ]\n },\n \"pattern\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"regex_pattern\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"required_parameter\",\n \"named\": true,\n \"fields\": {\n \"decorator\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"decorator\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"rest_pattern\",\n \"named\": true\n }\n ]\n },\n \"pattern\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"pattern\",\n \"named\": true\n },\n {\n \"type\": \"this\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"accessibility_modifier\",\n \"named\": true\n },\n {\n \"type\": \"override_modifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"rest_pattern\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_pattern\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"non_null_expression\",\n \"named\": true\n },\n {\n \"type\": \"object_pattern\",\n \"named\": true\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true\n },\n {\n \"type\": \"undefined\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"rest_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"return_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"satisfies_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"spread_element\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"statement_block\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"string\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"escape_sequence\",\n \"named\": true\n },\n {\n \"type\": \"html_character_reference\",\n \"named\": true\n },\n {\n \"type\": \"string_fragment\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true,\n \"fields\": {\n \"index\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"predefined_type\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"object\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"optional_chain\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"optional_chain\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"switch_body\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"switch_case\",\n \"named\": true\n },\n {\n \"type\": \"switch_default\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"switch_case\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"switch_default\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"switch_statement\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"switch_body\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"template_literal_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"string_fragment\",\n \"named\": true\n },\n {\n \"type\": \"template_type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"template_string\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"escape_sequence\",\n \"named\": true\n },\n {\n \"type\": \"string_fragment\",\n \"named\": true\n },\n {\n \"type\": \"template_substitution\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"template_substitution\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"template_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"primary_type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"ternary_expression\",\n \"named\": true,\n \"fields\": {\n \"alternative\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"consequence\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"throw_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"sequence_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"try_statement\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement_block\",\n \"named\": true\n }\n ]\n },\n \"finalizer\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"finally_clause\",\n \"named\": true\n }\n ]\n },\n \"handler\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"catch_clause\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"optional_parameter\",\n \"named\": true\n },\n {\n \"type\": \"optional_type\",\n \"named\": true\n },\n {\n \"type\": \"required_parameter\",\n \"named\": true\n },\n {\n \"type\": \"rest_type\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_alias_declaration\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"type_annotation\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_arguments\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_assertion\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_parameter\",\n \"named\": true,\n \"fields\": {\n \"constraint\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"constraint\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"default_type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"type_parameters\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_parameter\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_predicate\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"this\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"type_predicate_annotation\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_predicate\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_query\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"call_expression\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"instantiation_expression\",\n \"named\": true\n },\n {\n \"type\": \"member_expression\",\n \"named\": true\n },\n {\n \"type\": \"subscript_expression\",\n \"named\": true\n },\n {\n \"type\": \"this\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true,\n \"fields\": {\n \"argument\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n }\n ]\n },\n \"operator\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"!\",\n \"named\": false\n },\n {\n \"type\": \"+\",\n \"named\": false\n },\n {\n \"type\": \"-\",\n \"named\": false\n },\n {\n \"type\": \"delete\",\n \"named\": false\n },\n {\n \"type\": \"typeof\",\n \"named\": false\n },\n {\n \"type\": \"void\",\n \"named\": false\n },\n {\n \"type\": \"~\",\n \"named\": false\n }\n ]\n }\n }\n },\n {\n \"type\": \"union_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"update_expression\",\n \"named\": true,\n \"fields\": {\n \"argument\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"operator\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"++\",\n \"named\": false\n },\n {\n \"type\": \"--\",\n \"named\": false\n }\n ]\n }\n }\n },\n {\n \"type\": \"variable_declaration\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"variable_declarator\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"variable_declarator\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_pattern\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"object_pattern\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_annotation\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"while_statement\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n },\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"with_statement\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"statement\",\n \"named\": true\n }\n ]\n },\n \"object\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"yield_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"!\",\n \"named\": false\n },\n {\n \"type\": \"!=\",\n \"named\": false\n },\n {\n \"type\": \"!==\",\n \"named\": false\n },\n {\n \"type\": \"\\\"\",\n \"named\": false\n },\n {\n \"type\": \"${\",\n \"named\": false\n },\n {\n \"type\": \"%\",\n \"named\": false\n },\n {\n \"type\": \"%=\",\n \"named\": false\n },\n {\n \"type\": \"&\",\n \"named\": false\n },\n {\n \"type\": \"&&\",\n \"named\": false\n },\n {\n \"type\": \"&&=\",\n \"named\": false\n },\n {\n \"type\": \"&=\",\n \"named\": false\n },\n {\n \"type\": \"\'\",\n \"named\": false\n },\n {\n \"type\": \"(\",\n \"named\": false\n },\n {\n \"type\": \")\",\n \"named\": false\n },\n {\n \"type\": \"*\",\n \"named\": false\n },\n {\n \"type\": \"**\",\n \"named\": false\n },\n {\n \"type\": \"**=\",\n \"named\": false\n },\n {\n \"type\": \"*=\",\n \"named\": false\n },\n {\n \"type\": \"+\",\n \"named\": false\n },\n {\n \"type\": \"++\",\n \"named\": false\n },\n {\n \"type\": \"+=\",\n \"named\": false\n },\n {\n \"type\": \"+?:\",\n \"named\": false\n },\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"-\",\n \"named\": false\n },\n {\n \"type\": \"--\",\n \"named\": false\n },\n {\n \"type\": \"-=\",\n \"named\": false\n },\n {\n \"type\": \"-?:\",\n \"named\": false\n },\n {\n \"type\": \".\",\n \"named\": false\n },\n {\n \"type\": \"...\",\n \"named\": false\n },\n {\n \"type\": \"/\",\n \"named\": false\n },\n {\n \"type\": \"/=\",\n \"named\": false\n },\n {\n \"type\": \"/>\",\n \"named\": false\n },\n {\n \"type\": \":\",\n \"named\": false\n },\n {\n \"type\": \";\",\n \"named\": false\n },\n {\n \"type\": \"<\",\n \"named\": false\n },\n {\n \"type\": \"</\",\n \"named\": false\n },\n {\n \"type\": \"<<\",\n \"named\": false\n },\n {\n \"type\": \"<<=\",\n \"named\": false\n },\n {\n \"type\": \"<=\",\n \"named\": false\n },\n {\n \"type\": \"=\",\n \"named\": false\n },\n {\n \"type\": \"==\",\n \"named\": false\n },\n {\n \"type\": \"===\",\n \"named\": false\n },\n {\n \"type\": \"=>\",\n \"named\": false\n },\n {\n \"type\": \">\",\n \"named\": false\n },\n {\n \"type\": \">=\",\n \"named\": false\n },\n {\n \"type\": \">>\",\n \"named\": false\n },\n {\n \"type\": \">>=\",\n \"named\": false\n },\n {\n \"type\": \">>>\",\n \"named\": false\n },\n {\n \"type\": \">>>=\",\n \"named\": false\n },\n {\n \"type\": \"?\",\n \"named\": false\n },\n {\n \"type\": \"?.\",\n \"named\": false\n },\n {\n \"type\": \"?:\",\n \"named\": false\n },\n {\n \"type\": \"??\",\n \"named\": false\n },\n {\n \"type\": \"??=\",\n \"named\": false\n },\n {\n \"type\": \"@\",\n \"named\": false\n },\n {\n \"type\": \"[\",\n \"named\": false\n },\n {\n \"type\": \"]\",\n \"named\": false\n },\n {\n \"type\": \"^\",\n \"named\": false\n },\n {\n \"type\": \"^=\",\n \"named\": false\n },\n {\n \"type\": \"`\",\n \"named\": false\n },\n {\n \"type\": \"abstract\",\n \"named\": false\n },\n {\n \"type\": \"accessor\",\n \"named\": false\n },\n {\n \"type\": \"any\",\n \"named\": false\n },\n {\n \"type\": \"as\",\n \"named\": false\n },\n {\n \"type\": \"asserts\",\n \"named\": false\n },\n {\n \"type\": \"async\",\n \"named\": false\n },\n {\n \"type\": \"await\",\n \"named\": false\n },\n {\n \"type\": \"boolean\",\n \"named\": false\n },\n {\n \"type\": \"break\",\n \"named\": false\n },\n {\n \"type\": \"case\",\n \"named\": false\n },\n {\n \"type\": \"catch\",\n \"named\": false\n },\n {\n \"type\": \"class\",\n \"named\": false\n },\n {\n \"type\": \"comment\",\n \"named\": true\n },\n {\n \"type\": \"const\",\n \"named\": false\n },\n {\n \"type\": \"continue\",\n \"named\": false\n },\n {\n \"type\": \"debugger\",\n \"named\": false\n },\n {\n \"type\": \"declare\",\n \"named\": false\n },\n {\n \"type\": \"default\",\n \"named\": false\n },\n {\n \"type\": \"delete\",\n \"named\": false\n },\n {\n \"type\": \"do\",\n \"named\": false\n },\n {\n \"type\": \"else\",\n \"named\": false\n },\n {\n \"type\": \"enum\",\n \"named\": false\n },\n {\n \"type\": \"escape_sequence\",\n \"named\": true\n },\n {\n \"type\": \"export\",\n \"named\": false\n },\n {\n \"type\": \"extends\",\n \"named\": false\n },\n {\n \"type\": \"false\",\n \"named\": true\n },\n {\n \"type\": \"finally\",\n \"named\": false\n },\n {\n \"type\": \"for\",\n \"named\": false\n },\n {\n \"type\": \"from\",\n \"named\": false\n },\n {\n \"type\": \"function\",\n \"named\": false\n },\n {\n \"type\": \"get\",\n \"named\": false\n },\n {\n \"type\": \"glimmer_closing_tag\",\n \"named\": true\n },\n {\n \"type\": \"glimmer_opening_tag\",\n \"named\": true\n },\n {\n \"type\": \"global\",\n \"named\": false\n },\n {\n \"type\": \"hash_bang_line\",\n \"named\": true\n },\n {\n \"type\": \"html_character_reference\",\n \"named\": true\n },\n {\n \"type\": \"html_comment\",\n \"named\": true\n },\n {\n \"type\": \"if\",\n \"named\": false\n },\n {\n \"type\": \"implements\",\n \"named\": false\n },\n {\n \"type\": \"import\",\n \"named\": false\n },\n {\n \"type\": \"in\",\n \"named\": false\n },\n {\n \"type\": \"infer\",\n \"named\": false\n },\n {\n \"type\": \"instanceof\",\n \"named\": false\n },\n {\n \"type\": \"interface\",\n \"named\": false\n },\n {\n \"type\": \"is\",\n \"named\": false\n },\n {\n \"type\": \"keyof\",\n \"named\": false\n },\n {\n \"type\": \"let\",\n \"named\": false\n },\n {\n \"type\": \"module\",\n \"named\": false\n },\n {\n \"type\": \"namespace\",\n \"named\": false\n },\n {\n \"type\": \"never\",\n \"named\": false\n },\n {\n \"type\": \"new\",\n \"named\": false\n },\n {\n \"type\": \"null\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": false\n },\n {\n \"type\": \"object\",\n \"named\": false\n },\n {\n \"type\": \"of\",\n \"named\": false\n },\n {\n \"type\": \"override\",\n \"named\": false\n },\n {\n \"type\": \"private\",\n \"named\": false\n },\n {\n \"type\": \"private_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"protected\",\n \"named\": false\n },\n {\n \"type\": \"public\",\n \"named\": false\n },\n {\n \"type\": \"readonly\",\n \"named\": false\n },\n {\n \"type\": \"regex_flags\",\n \"named\": true\n },\n {\n \"type\": \"regex_pattern\",\n \"named\": true\n },\n {\n \"type\": \"require\",\n \"named\": false\n },\n {\n \"type\": \"return\",\n \"named\": false\n },\n {\n \"type\": \"satisfies\",\n \"named\": false\n },\n {\n \"type\": \"set\",\n \"named\": false\n },\n {\n \"type\": \"shorthand_property_identifier\",\n \"named\": true\n },\n {\n \"type\": \"shorthand_property_identifier_pattern\",\n \"named\": true\n },\n {\n \"type\": \"statement_identifier\",\n \"named\": true\n },\n {\n \"type\": \"static\",\n \"named\": false\n },\n {\n \"type\": \"string\",\n \"named\": false\n },\n {\n \"type\": \"string_fragment\",\n \"named\": true\n },\n {\n \"type\": \"super\",\n \"named\": true\n },\n {\n \"type\": \"switch\",\n \"named\": false\n },\n {\n \"type\": \"symbol\",\n \"named\": false\n },\n {\n \"type\": \"target\",\n \"named\": false\n },\n {\n \"type\": \"this\",\n \"named\": true\n },\n {\n \"type\": \"this_type\",\n \"named\": true\n },\n {\n \"type\": \"throw\",\n \"named\": false\n },\n {\n \"type\": \"true\",\n \"named\": true\n },\n {\n \"type\": \"try\",\n \"named\": false\n },\n {\n \"type\": \"type\",\n \"named\": false\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"typeof\",\n \"named\": false\n },\n {\n \"type\": \"undefined\",\n \"named\": true\n },\n {\n \"type\": \"unique symbol\",\n \"named\": false\n },\n {\n \"type\": \"unknown\",\n \"named\": false\n },\n {\n \"type\": \"using\",\n \"named\": false\n },\n {\n \"type\": \"var\",\n \"named\": false\n },\n {\n \"type\": \"void\",\n \"named\": false\n },\n {\n \"type\": \"while\",\n \"named\": false\n },\n {\n \"type\": \"with\",\n \"named\": false\n },\n {\n \"type\": \"yield\",\n \"named\": false\n },\n {\n \"type\": \"{\",\n \"named\": false\n },\n {\n \"type\": \"{|\",\n \"named\": false\n },\n {\n \"type\": \"|\",\n \"named\": false\n },\n {\n \"type\": \"|=\",\n \"named\": false\n },\n {\n \"type\": \"||\",\n \"named\": false\n },\n {\n \"type\": \"||=\",\n \"named\": false\n },\n {\n \"type\": \"|}\",\n \"named\": false\n },\n {\n \"type\": \"}\",\n \"named\": false\n },\n {\n \"type\": \"~\",\n \"named\": false\n }\n]";
Expand description
The content of the node-types.json
file for TypeScript.