pub const NODE_TYPES: &'static str = "[\n {\n \"type\": \"FALSE\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"NULL\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"TRUE\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"alias\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"column_definitions\",\n \"named\": true\n },\n {\n \"type\": \"column_names\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alignment\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_owner\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_sequence\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"alter_sequence\",\n \"named\": true\n },\n {\n \"type\": \"alter_table\",\n \"named\": true\n },\n {\n \"type\": \"schema\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_table\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"alter_table_action\",\n \"named\": true\n },\n {\n \"type\": \"alter_table_rename_column\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_table_action\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"alter_owner\",\n \"named\": true\n },\n {\n \"type\": \"alter_table_action_add\",\n \"named\": true\n },\n {\n \"type\": \"alter_table_action_alter_column\",\n \"named\": true\n },\n {\n \"type\": \"alter_table_action_set\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_table_action_add\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"check\",\n \"named\": true\n },\n {\n \"type\": \"exclude\",\n \"named\": true\n },\n {\n \"type\": \"foreign_key\",\n \"named\": true\n },\n {\n \"type\": \"initial_mode\",\n \"named\": true\n },\n {\n \"type\": \"mode\",\n \"named\": true\n },\n {\n \"type\": \"primary_key\",\n \"named\": true\n },\n {\n \"type\": \"table_column\",\n \"named\": true\n },\n {\n \"type\": \"unique\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_table_action_alter_column\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_table_action_set\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alter_table_rename_column\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"analyze\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"array_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"assigment_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"auto_increment_constraint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"begin_statement\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"(\",\n \"named\": false\n },\n {\n \"type\": \")\",\n \"named\": false\n },\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_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 \"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\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"(\",\n \"named\": false\n },\n {\n \"type\": \")\",\n \"named\": false\n },\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"binary_operator\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"canonical\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"category\",\n \"named\": false,\n \"fields\": {\n \"content\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"content\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"check\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"check_constraint\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"collatable\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"collation\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"column_definitions\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"table_column\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"column_names\",\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\": \"comment_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"commit_statement\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"constrained_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"null_constraint\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_domain_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"check_constraint\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"null_constraint\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_extension_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"schema\",\n \"named\": true\n },\n {\n \"type\": \"version\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_function_parameter\",\n \"named\": true,\n \"fields\": {\n \"argmode\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"IN\",\n \"named\": false\n },\n {\n \"type\": \"INOUT\",\n \"named\": false\n },\n {\n \"type\": \"OUT\",\n \"named\": false\n },\n {\n \"type\": \"VARIADIC\",\n \"named\": false\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"constrained_type\",\n \"named\": true\n },\n {\n \"type\": \"default\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_function_parameters\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"create_function_parameter\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_function_statement\",\n \"named\": true,\n \"fields\": {\n \"replace\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"CREATE_OR_REPLACE_FUNCTION\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_OR_REPLACE_PROCEDURE\",\n \"named\": false\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"constrained_type\",\n \"named\": true\n },\n {\n \"type\": \"create_function_parameters\",\n \"named\": true\n },\n {\n \"type\": \"deterministic_hint\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"external_hint\",\n \"named\": true\n },\n {\n \"type\": \"function_body\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"language\",\n \"named\": true\n },\n {\n \"type\": \"null_hint\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"optimizer_hint\",\n \"named\": true\n },\n {\n \"type\": \"parallel_hint\",\n \"named\": true\n },\n {\n \"type\": \"setof\",\n \"named\": true\n },\n {\n \"type\": \"sql_hint\",\n \"named\": true\n },\n {\n \"type\": \"sql_security_hint\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_index_include_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 }\n },\n {\n \"type\": \"create_index_statement\",\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 },\n \"table_name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"create_index_include_clause\",\n \"named\": true\n },\n {\n \"type\": \"create_index_with_clause\",\n \"named\": true\n },\n {\n \"type\": \"index_table_parameters\",\n \"named\": true\n },\n {\n \"type\": \"unique_constraint\",\n \"named\": true\n },\n {\n \"type\": \"using_clause\",\n \"named\": true\n },\n {\n \"type\": \"where_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_index_with_clause\",\n \"named\": true,\n \"fields\": {\n \"storage_parameter\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_materialized_view_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"data_hint\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"tablespace_hint\",\n \"named\": true\n },\n {\n \"type\": \"using_clause\",\n \"named\": true\n },\n {\n \"type\": \"view_body\",\n \"named\": true\n },\n {\n \"type\": \"view_columns\",\n \"named\": true\n },\n {\n \"type\": \"view_options\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_role_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_schema_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_sequence\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"create_sequence\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_table_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"select_statement\",\n \"named\": true\n },\n {\n \"type\": \"table_parameters\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_trigger_statement\",\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 \"on_table\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"trigger_body\",\n \"named\": true\n },\n {\n \"type\": \"trigger_condition\",\n \"named\": true\n },\n {\n \"type\": \"trigger_event\",\n \"named\": true\n },\n {\n \"type\": \"trigger_order\",\n \"named\": true\n },\n {\n \"type\": \"trigger_preferencing\",\n \"named\": true\n },\n {\n \"type\": \"trigger_reference\",\n \"named\": true\n },\n {\n \"type\": \"trigger_time\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_type_statement\",\n \"named\": true,\n \"fields\": {\n \"type_name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_spec_base\",\n \"named\": true\n },\n {\n \"type\": \"type_spec_composite\",\n \"named\": true\n },\n {\n \"type\": \"type_spec_enum\",\n \"named\": true\n },\n {\n \"type\": \"type_spec_range\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"create_view_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"view_body\",\n \"named\": true\n },\n {\n \"type\": \"view_check_option\",\n \"named\": true\n },\n {\n \"type\": \"view_columns\",\n \"named\": true\n },\n {\n \"type\": \"view_options\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"cte\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"delete_statement\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"insert_statement\",\n \"named\": true\n },\n {\n \"type\": \"select_statement\",\n \"named\": true\n },\n {\n \"type\": \"update_statement\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"cube_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"expression_list\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"data_hint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"declare_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"default_clause\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"default\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"default_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"delete_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"from_clause\",\n \"named\": true\n },\n {\n \"type\": \"where_clause\",\n \"named\": true\n },\n {\n \"type\": \"with_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"delimiter\",\n \"named\": false,\n \"fields\": {\n \"content\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"content\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"deterministic_hint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"direction_constraint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"distinct_from\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"dotted_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\": \"drop_statement\",\n \"named\": true,\n \"fields\": {\n \"kind\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"EXTENSION\",\n \"named\": false\n },\n {\n \"type\": \"INDEX\",\n \"named\": false\n },\n {\n \"type\": \"MATERIALIZED_VIEW\",\n \"named\": false\n },\n {\n \"type\": \"TABLE\",\n \"named\": false\n },\n {\n \"type\": \"TABLESPACE\",\n \"named\": false\n },\n {\n \"type\": \"VIEW\",\n \"named\": false\n }\n ]\n },\n \"target\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"element\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"exclude\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"exclude_entry\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"exclude_entry\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"binary_operator\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"op_class\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"expression_list\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"external_hint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"fetch_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"number\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"filter_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"where_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"foreign_key\",\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\": \"references_constraint\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"frame_bound\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"frame_clause\",\n \"named\": true,\n \"fields\": {\n \"frame_end\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"frame_bound\",\n \"named\": true\n }\n ]\n },\n \"frame_start\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"frame_bound\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"frame_exclusion\",\n \"named\": true\n },\n {\n \"type\": \"frame_kind\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"frame_exclusion\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"frame_kind\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"from_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"alias\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"join_clause\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"tablesample_clause\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"function_body\",\n \"named\": true,\n \"fields\": {\n \"begin_label\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"end_label\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"link_symbol\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"obj_file\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"script\": {\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\": \"alter_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_domain_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_extension_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_index_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_materialized_view_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_role_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_schema_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_table_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_type_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_view_statement\",\n \"named\": true\n },\n {\n \"type\": \"declare_statement\",\n \"named\": true\n },\n {\n \"type\": \"delete_statement\",\n \"named\": true\n },\n {\n \"type\": \"drop_statement\",\n \"named\": true\n },\n {\n \"type\": \"grant_statement\",\n \"named\": true\n },\n {\n \"type\": \"insert_statement\",\n \"named\": true\n },\n {\n \"type\": \"pg_command\",\n \"named\": true\n },\n {\n \"type\": \"return_statement\",\n \"named\": true\n },\n {\n \"type\": \"select_statement\",\n \"named\": true\n },\n {\n \"type\": \"set_statement\",\n \"named\": true\n },\n {\n \"type\": \"update_statement\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"function_call\",\n \"named\": true,\n \"fields\": {\n \"arguments\": {\n \"multiple\": true,\n \"required\": false,\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\": \"ALL\",\n \"named\": false\n },\n {\n \"type\": \"DISTINCT\",\n \"named\": false\n },\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"order_by_clause\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n },\n \"function\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"filter_clause\",\n \"named\": true\n },\n {\n \"type\": \"over_clause\",\n \"named\": true\n },\n {\n \"type\": \"with_ordinality\",\n \"named\": true\n },\n {\n \"type\": \"within_group_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"grant_statement\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"DATABASE\",\n \"named\": false\n },\n {\n \"type\": \"SCHEMA\",\n \"named\": false\n },\n {\n \"type\": \"SEQUENCE\",\n \"named\": false\n },\n {\n \"type\": \"TABLE\",\n \"named\": false\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"group_by_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"group_expression\",\n \"named\": true\n },\n {\n \"type\": \"having_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"group_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"cube_clause\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"grouping_sets_clause\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rollup_clause\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"grouping_sets_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression_list\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"having_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"identifier\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"in_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"tuple\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"index_table_parameters\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"op_class\",\n \"named\": true\n },\n {\n \"type\": \"ordered_expression\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"initial_mode\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"input\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"insert_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"select_statement\",\n \"named\": true\n },\n {\n \"type\": \"set_clause\",\n \"named\": true\n },\n {\n \"type\": \"values_clause\",\n \"named\": true\n },\n {\n \"type\": \"with_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"is_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"distinct_from\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"join_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"alias\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"join_clause\",\n \"named\": true\n },\n {\n \"type\": \"join_condition\",\n \"named\": true\n },\n {\n \"type\": \"join_type\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"tablesample_clause\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n },\n {\n \"type\": \"using_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"join_condition\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"join_type\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"json_access\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"like\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"limit_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"number\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"mode\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"multirange_type_name\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"named_constraint\",\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\": \"null_constraint\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"NULL\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"null_hint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"offset_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"number\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"on_delete_action\",\n \"named\": true,\n \"fields\": {\n \"action\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"CASCADE\",\n \"named\": false\n },\n {\n \"type\": \"RESTRICT\",\n \"named\": false\n },\n {\n \"type\": \"SET_NULL\",\n \"named\": false\n }\n ]\n }\n }\n },\n {\n \"type\": \"on_update_action\",\n \"named\": true,\n \"fields\": {\n \"action\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"CASCADE\",\n \"named\": false\n },\n {\n \"type\": \"RESTRICT\",\n \"named\": false\n },\n {\n \"type\": \"SET_NULL\",\n \"named\": false\n }\n ]\n }\n }\n },\n {\n \"type\": \"op_class\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"optimizer_hint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"order_by_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"order_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"order_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"ordered_expression\",\n \"named\": true,\n \"fields\": {\n \"order\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ASC\",\n \"named\": false\n },\n {\n \"type\": \"DESC\",\n \"named\": false\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"output\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"over_clause\",\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\": \"window_definition\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"parallel_hint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"partition_by_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"pg_command\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"preferred\",\n \"named\": false,\n \"fields\": {\n \"content\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"content\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"primary_key\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"primary_key_constraint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"receive\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"references_constraint\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"on_delete_action\",\n \"named\": true\n },\n {\n \"type\": \"on_update_action\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"rename\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"repeatable_clause\",\n \"named\": true,\n \"fields\": {\n \"seed\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"(\",\n \"named\": false\n },\n {\n \"type\": \")\",\n \"named\": false\n },\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\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\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_statement\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"rollback_statement\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"rollup_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"expression_list\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"alias\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"with_ordinality\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"schema\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"alter_owner\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"rename\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"select_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"select_clause_body\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"select_clause_body\",\n \"named\": true,\n \"fields\": {\n \"into\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"alias\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"select_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"from_clause\",\n \"named\": true\n },\n {\n \"type\": \"group_by_clause\",\n \"named\": true\n },\n {\n \"type\": \"limit_clause\",\n \"named\": true\n },\n {\n \"type\": \"offset_clause\",\n \"named\": true\n },\n {\n \"type\": \"order_by_clause\",\n \"named\": true\n },\n {\n \"type\": \"select_clause\",\n \"named\": true\n },\n {\n \"type\": \"where_clause\",\n \"named\": true\n },\n {\n \"type\": \"window_clause\",\n \"named\": true\n },\n {\n \"type\": \"with_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"select_statement\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"send\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"set_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"set_clause_body\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"set_clause_body\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"assigment_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"set_statement\",\n \"named\": true,\n \"fields\": {\n \"scope\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"LOCAL\",\n \"named\": false\n },\n {\n \"type\": \"SESSION\",\n \"named\": false\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"setof\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"constrained_type\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"source_file\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"alter_statement\",\n \"named\": true\n },\n {\n \"type\": \"begin_statement\",\n \"named\": true\n },\n {\n \"type\": \"comment_statement\",\n \"named\": true\n },\n {\n \"type\": \"commit_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_domain_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_extension_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_function_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_index_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_materialized_view_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_role_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_schema_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_table_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_trigger_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_type_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_view_statement\",\n \"named\": true\n },\n {\n \"type\": \"delete_statement\",\n \"named\": true\n },\n {\n \"type\": \"drop_statement\",\n \"named\": true\n },\n {\n \"type\": \"grant_statement\",\n \"named\": true\n },\n {\n \"type\": \"insert_statement\",\n \"named\": true\n },\n {\n \"type\": \"pg_command\",\n \"named\": true\n },\n {\n \"type\": \"rollback_statement\",\n \"named\": true\n },\n {\n \"type\": \"select_statement\",\n \"named\": true\n },\n {\n \"type\": \"set_statement\",\n \"named\": true\n },\n {\n \"type\": \"truncate_statement\",\n \"named\": true\n },\n {\n \"type\": \"update_statement\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"sql_hint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"sql_security_hint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"storage\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"string\",\n \"named\": true,\n \"fields\": {\n \"content\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"content\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"subscript\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"subtype\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"subtype_diff\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"subtype_opclass\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"table_column\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"auto_increment_constraint\",\n \"named\": true\n },\n {\n \"type\": \"check_constraint\",\n \"named\": true\n },\n {\n \"type\": \"default_clause\",\n \"named\": true\n },\n {\n \"type\": \"direction_constraint\",\n \"named\": true\n },\n {\n \"type\": \"named_constraint\",\n \"named\": true\n },\n {\n \"type\": \"null_constraint\",\n \"named\": true\n },\n {\n \"type\": \"primary_key_constraint\",\n \"named\": true\n },\n {\n \"type\": \"references_constraint\",\n \"named\": true\n },\n {\n \"type\": \"unique_constraint\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"table_parameters\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"check\",\n \"named\": true\n },\n {\n \"type\": \"exclude\",\n \"named\": true\n },\n {\n \"type\": \"foreign_key\",\n \"named\": true\n },\n {\n \"type\": \"initial_mode\",\n \"named\": true\n },\n {\n \"type\": \"mode\",\n \"named\": true\n },\n {\n \"type\": \"primary_key\",\n \"named\": true\n },\n {\n \"type\": \"table_column\",\n \"named\": true\n },\n {\n \"type\": \"unique\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"tablesample_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"repeatable_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"tablespace_hint\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"trigger_body\",\n \"named\": true,\n \"fields\": {\n \"arguments\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n },\n \"begin_label\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"end_label\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"function\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"alter_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_domain_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_extension_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_index_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_materialized_view_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_role_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_schema_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_table_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_type_statement\",\n \"named\": true\n },\n {\n \"type\": \"create_view_statement\",\n \"named\": true\n },\n {\n \"type\": \"declare_statement\",\n \"named\": true\n },\n {\n \"type\": \"delete_statement\",\n \"named\": true\n },\n {\n \"type\": \"drop_statement\",\n \"named\": true\n },\n {\n \"type\": \"grant_statement\",\n \"named\": true\n },\n {\n \"type\": \"insert_statement\",\n \"named\": true\n },\n {\n \"type\": \"pg_command\",\n \"named\": true\n },\n {\n \"type\": \"return_statement\",\n \"named\": true\n },\n {\n \"type\": \"select_statement\",\n \"named\": true\n },\n {\n \"type\": \"set_statement\",\n \"named\": true\n },\n {\n \"type\": \"update_statement\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"trigger_condition\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"trigger_event\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"trigger_order\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"trigger_preferencing\",\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\": \"trigger_reference\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"trigger_time\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"truncate_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"tuple\",\n \"named\": true,\n \"fields\": {\n \"elements\": {\n \"multiple\": true,\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\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_cast\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_spec_base\",\n \"named\": true,\n \"fields\": {\n \"value\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"VARIABLE\",\n \"named\": false\n },\n {\n \"type\": \"alignment\",\n \"named\": false\n },\n {\n \"type\": \"analyze\",\n \"named\": false\n },\n {\n \"type\": \"category\",\n \"named\": false\n },\n {\n \"type\": \"collatable\",\n \"named\": false\n },\n {\n \"type\": \"default\",\n \"named\": false\n },\n {\n \"type\": \"delimiter\",\n \"named\": false\n },\n {\n \"type\": \"element\",\n \"named\": false\n },\n {\n \"type\": \"input\",\n \"named\": false\n },\n {\n \"type\": \"internallength\",\n \"named\": false\n },\n {\n \"type\": \"like\",\n \"named\": false\n },\n {\n \"type\": \"output\",\n \"named\": false\n },\n {\n \"type\": \"preferred\",\n \"named\": false\n },\n {\n \"type\": \"receive\",\n \"named\": false\n },\n {\n \"type\": \"send\",\n \"named\": false\n },\n {\n \"type\": \"storage\",\n \"named\": false\n },\n {\n \"type\": \"subscript\",\n \"named\": false\n },\n {\n \"type\": \"typmod_in\",\n \"named\": false\n },\n {\n \"type\": \"typmod_out\",\n \"named\": false\n }\n ]\n }\n }\n },\n {\n \"type\": \"type_spec_composite\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array_type\",\n \"named\": true\n },\n {\n \"type\": \"constrained_type\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"type\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_spec_enum\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_spec_range\",\n \"named\": true,\n \"fields\": {\n \"value\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"canonical\",\n \"named\": false\n },\n {\n \"type\": \"collation\",\n \"named\": false\n },\n {\n \"type\": \"multirange_type_name\",\n \"named\": false\n },\n {\n \"type\": \"subtype\",\n \"named\": false\n },\n {\n \"type\": \"subtype_diff\",\n \"named\": false\n },\n {\n \"type\": \"subtype_opclass\",\n \"named\": false\n }\n ]\n }\n }\n },\n {\n \"type\": \"typmod_in\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"typmod_out\",\n \"named\": false,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true,\n \"fields\": {\n \"operand\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"(\",\n \"named\": false\n },\n {\n \"type\": \")\",\n \"named\": false\n },\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_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 }\n }\n },\n {\n \"type\": \"unique\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"unique_constraint\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"update_statement\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"from_clause\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"set_clause\",\n \"named\": true\n },\n {\n \"type\": \"where_clause\",\n \"named\": true\n },\n {\n \"type\": \"with_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"using_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"values_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fetch_clause\",\n \"named\": true\n },\n {\n \"type\": \"limit_clause\",\n \"named\": true\n },\n {\n \"type\": \"offset_clause\",\n \"named\": true\n },\n {\n \"type\": \"order_by_clause\",\n \"named\": true\n },\n {\n \"type\": \"values_clause_item\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"values_clause_item\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"version\",\n \"named\": true,\n \"fields\": {\n \"content\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"content\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"view_body\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"select_statement\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"values_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"view_check_option\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"view_columns\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"view_option\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"assigment_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"view_options\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"view_option\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"where_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"FALSE\",\n \"named\": true\n },\n {\n \"type\": \"NULL\",\n \"named\": true\n },\n {\n \"type\": \"TRUE\",\n \"named\": true\n },\n {\n \"type\": \"argument_reference\",\n \"named\": true\n },\n {\n \"type\": \"array_element_access\",\n \"named\": true\n },\n {\n \"type\": \"asterisk_expression\",\n \"named\": true\n },\n {\n \"type\": \"at_time_zone_expression\",\n \"named\": true\n },\n {\n \"type\": \"binary_expression\",\n \"named\": true\n },\n {\n \"type\": \"boolean_expression\",\n \"named\": true\n },\n {\n \"type\": \"conditional_expression\",\n \"named\": true\n },\n {\n \"type\": \"dotted_name\",\n \"named\": true\n },\n {\n \"type\": \"function_call\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"in_expression\",\n \"named\": true\n },\n {\n \"type\": \"interval_expression\",\n \"named\": true\n },\n {\n \"type\": \"is_expression\",\n \"named\": true\n },\n {\n \"type\": \"json_access\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"rows_from_expression\",\n \"named\": true\n },\n {\n \"type\": \"select_subexpression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"type_cast\",\n \"named\": true\n },\n {\n \"type\": \"unary_expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"window_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\": \"window_definition\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"window_definition\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"frame_clause\",\n \"named\": true\n },\n {\n \"type\": \"order_by_clause\",\n \"named\": true\n },\n {\n \"type\": \"partition_by_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"with_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"cte\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"with_ordinality\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"within_group_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"order_by_clause\",\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\": \"ADD\",\n \"named\": false\n },\n {\n \"type\": \"AFTER\",\n \"named\": false\n },\n {\n \"type\": \"ALL\",\n \"named\": false\n },\n {\n \"type\": \"ALTER\",\n \"named\": false\n },\n {\n \"type\": \"ALTER_COLUMN\",\n \"named\": false\n },\n {\n \"type\": \"AND\",\n \"named\": false\n },\n {\n \"type\": \"AS\",\n \"named\": false\n },\n {\n \"type\": \"ASC\",\n \"named\": false\n },\n {\n \"type\": \"ATOMIC\",\n \"named\": false\n },\n {\n \"type\": \"AT_TIME_ZONE\",\n \"named\": false\n },\n {\n \"type\": \"AUTO_INCREMENT\",\n \"named\": false\n },\n {\n \"type\": \"BEFORE\",\n \"named\": false\n },\n {\n \"type\": \"BEGIN\",\n \"named\": false\n },\n {\n \"type\": \"BETWEEN\",\n \"named\": false\n },\n {\n \"type\": \"BY\",\n \"named\": false\n },\n {\n \"type\": \"CACHE\",\n \"named\": false\n },\n {\n \"type\": \"CALLED_ON_NULL_INPUT\",\n \"named\": false\n },\n {\n \"type\": \"CASCADE\",\n \"named\": false\n },\n {\n \"type\": \"CASCADED\",\n \"named\": false\n },\n {\n \"type\": \"CASE\",\n \"named\": false\n },\n {\n \"type\": \"CHECK\",\n \"named\": false\n },\n {\n \"type\": \"CHECK_OPTION\",\n \"named\": false\n },\n {\n \"type\": \"COLUMN\",\n \"named\": false\n },\n {\n \"type\": \"COMMENT_ON\",\n \"named\": false\n },\n {\n \"type\": \"COMMIT\",\n \"named\": false\n },\n {\n \"type\": \"CONCURRENTLY\",\n \"named\": false\n },\n {\n \"type\": \"CONSTRAINT\",\n \"named\": false\n },\n {\n \"type\": \"CONTAINS_SQL\",\n \"named\": false\n },\n {\n \"type\": \"COST\",\n \"named\": false\n },\n {\n \"type\": \"CREATE\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_DOMAIN\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_EXTENSION\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_MATERIALIZED_VIEW\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_OR_REPLACE_FUNCTION\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_OR_REPLACE_PROCEDURE\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_ROLE\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_SCHEMA\",\n \"named\": false\n },\n {\n \"type\": \"CREATE_TYPE\",\n \"named\": false\n },\n {\n \"type\": \"CUBE\",\n \"named\": false\n },\n {\n \"type\": \"CURRENT_ROLE\",\n \"named\": false\n },\n {\n \"type\": \"CURRENT_ROW\",\n \"named\": false\n },\n {\n \"type\": \"CURRENT_USER\",\n \"named\": false\n },\n {\n \"type\": \"DATA\",\n \"named\": false\n },\n {\n \"type\": \"DATABASE\",\n \"named\": false\n },\n {\n \"type\": \"DECLARE\",\n \"named\": false\n },\n {\n \"type\": \"DEFAULT\",\n \"named\": false\n },\n {\n \"type\": \"DEFERRABLE\",\n \"named\": false\n },\n {\n \"type\": \"DEFERRED\",\n \"named\": false\n },\n {\n \"type\": \"DEFINER\",\n \"named\": false\n },\n {\n \"type\": \"DELETE\",\n \"named\": false\n },\n {\n \"type\": \"DESC\",\n \"named\": false\n },\n {\n \"type\": \"DETERMINISTIC\",\n \"named\": false\n },\n {\n \"type\": \"DISTINCT\",\n \"named\": false\n },\n {\n \"type\": \"DISTINCT_FROM\",\n \"named\": false\n },\n {\n \"type\": \"DROP\",\n \"named\": false\n },\n {\n \"type\": \"EACH\",\n \"named\": false\n },\n {\n \"type\": \"ELSE\",\n \"named\": false\n },\n {\n \"type\": \"END\",\n \"named\": false\n },\n {\n \"type\": \"ENUM\",\n \"named\": false\n },\n {\n \"type\": \"EXCLUDE\",\n \"named\": false\n },\n {\n \"type\": \"EXCLUDE_CURRENT_ROW\",\n \"named\": false\n },\n {\n \"type\": \"EXCLUDE_GROUP\",\n \"named\": false\n },\n {\n \"type\": \"EXCLUDE_NO_OTHERS\",\n \"named\": false\n },\n {\n \"type\": \"EXCLUDE_TIES\",\n \"named\": false\n },\n {\n \"type\": \"EXECUTE\",\n \"named\": false\n },\n {\n \"type\": \"EXISTS\",\n \"named\": false\n },\n {\n \"type\": \"EXTENSION\",\n \"named\": false\n },\n {\n \"type\": \"EXTERNAL\",\n \"named\": false\n },\n {\n \"type\": \"FALSE\",\n \"named\": false\n },\n {\n \"type\": \"FETCH\",\n \"named\": false\n },\n {\n \"type\": \"FILTER\",\n \"named\": false\n },\n {\n \"type\": \"FIRST\",\n \"named\": false\n },\n {\n \"type\": \"FOLLOWING\",\n \"named\": false\n },\n {\n \"type\": \"FOLLOWS\",\n \"named\": false\n },\n {\n \"type\": \"FOR\",\n \"named\": false\n },\n {\n \"type\": \"FOREIGN_KEY\",\n \"named\": false\n },\n {\n \"type\": \"FROM\",\n \"named\": false\n },\n {\n \"type\": \"FULL\",\n \"named\": false\n },\n {\n \"type\": \"FUNCTION\",\n \"named\": false\n },\n {\n \"type\": \"GRANT\",\n \"named\": false\n },\n {\n \"type\": \"GROUP\",\n \"named\": false\n },\n {\n \"type\": \"GROUPING_SETS\",\n \"named\": false\n },\n {\n \"type\": \"GROUPS\",\n \"named\": false\n },\n {\n \"type\": \"GROUP_BY\",\n \"named\": false\n },\n {\n \"type\": \"HAVING\",\n \"named\": false\n },\n {\n \"type\": \"IF\",\n \"named\": false\n },\n {\n \"type\": \"IF_EXISTS\",\n \"named\": false\n },\n {\n \"type\": \"IF_NOT_EXISTS\",\n \"named\": false\n },\n {\n \"type\": \"IMMEDIATE\",\n \"named\": false\n },\n {\n \"type\": \"IMMUTABLE\",\n \"named\": false\n },\n {\n \"type\": \"IN\",\n \"named\": false\n },\n {\n \"type\": \"INCLUDE\",\n \"named\": false\n },\n {\n \"type\": \"INCREMENT\",\n \"named\": false\n },\n {\n \"type\": \"INDEX\",\n \"named\": false\n },\n {\n \"type\": \"INITIALLY\",\n \"named\": false\n },\n {\n \"type\": \"INNER\",\n \"named\": false\n },\n {\n \"type\": \"INOUT\",\n \"named\": false\n },\n {\n \"type\": \"INSERT\",\n \"named\": false\n },\n {\n \"type\": \"INSTEAD_OF\",\n \"named\": false\n },\n {\n \"type\": \"INTO\",\n \"named\": false\n },\n {\n \"type\": \"INVOKER\",\n \"named\": false\n },\n {\n \"type\": \"IS\",\n \"named\": false\n },\n {\n \"type\": \"JOIN\",\n \"named\": false\n },\n {\n \"type\": \"LANGUAGE\",\n \"named\": false\n },\n {\n \"type\": \"LAST\",\n \"named\": false\n },\n {\n \"type\": \"LATERAL\",\n \"named\": false\n },\n {\n \"type\": \"LEAKPROOF\",\n \"named\": false\n },\n {\n \"type\": \"LEFT\",\n \"named\": false\n },\n {\n \"type\": \"LIMIT\",\n \"named\": false\n },\n {\n \"type\": \"LOCAL\",\n \"named\": false\n },\n {\n \"type\": \"MATERIALIZED\",\n \"named\": false\n },\n {\n \"type\": \"MATERIALIZED_VIEW\",\n \"named\": false\n },\n {\n \"type\": \"MAXVALUE\",\n \"named\": false\n },\n {\n \"type\": \"MINVALUE\",\n \"named\": false\n },\n {\n \"type\": \"MODIFIES_SQL_DATA\",\n \"named\": false\n },\n {\n \"type\": \"NATURAL\",\n \"named\": false\n },\n {\n \"type\": \"NEW\",\n \"named\": false\n },\n {\n \"type\": \"NEXT\",\n \"named\": false\n },\n {\n \"type\": \"NO\",\n \"named\": false\n },\n {\n \"type\": \"NOT\",\n \"named\": false\n },\n {\n \"type\": \"NOT_DEFERRABLE\",\n \"named\": false\n },\n {\n \"type\": \"NO_SQL\",\n \"named\": false\n },\n {\n \"type\": \"NULL\",\n \"named\": false\n },\n {\n \"type\": \"NULLS\",\n \"named\": false\n },\n {\n \"type\": \"OF\",\n \"named\": false\n },\n {\n \"type\": \"OFFSET\",\n \"named\": false\n },\n {\n \"type\": \"OLD\",\n \"named\": false\n },\n {\n \"type\": \"ON\",\n \"named\": false\n },\n {\n \"type\": \"ONLY\",\n \"named\": false\n },\n {\n \"type\": \"ON_DELETE\",\n \"named\": false\n },\n {\n \"type\": \"ON_UPDATE\",\n \"named\": false\n },\n {\n \"type\": \"OR\",\n \"named\": false\n },\n {\n \"type\": \"ORDER_BY\",\n \"named\": false\n },\n {\n \"type\": \"OR_REPLACE\",\n \"named\": false\n },\n {\n \"type\": \"OUT\",\n \"named\": false\n },\n {\n \"type\": \"OUTER\",\n \"named\": false\n },\n {\n \"type\": \"OVER\",\n \"named\": false\n },\n {\n \"type\": \"OWNED_BY\",\n \"named\": false\n },\n {\n \"type\": \"OWNER_TO\",\n \"named\": false\n },\n {\n \"type\": \"PARALLEL\",\n \"named\": false\n },\n {\n \"type\": \"PARTITION_BY\",\n \"named\": false\n },\n {\n \"type\": \"PRECEDES\",\n \"named\": false\n },\n {\n \"type\": \"PRECEDING\",\n \"named\": false\n },\n {\n \"type\": \"PRECISION\",\n \"named\": false\n },\n {\n \"type\": \"PRIMARY_KEY\",\n \"named\": false\n },\n {\n \"type\": \"PRIVILEGES\",\n \"named\": false\n },\n {\n \"type\": \"PROCEDURE\",\n \"named\": false\n },\n {\n \"type\": \"PUBLIC\",\n \"named\": false\n },\n {\n \"type\": \"RANGE\",\n \"named\": false\n },\n {\n \"type\": \"READS_SQL_DATA\",\n \"named\": false\n },\n {\n \"type\": \"RECURSIVE\",\n \"named\": false\n },\n {\n \"type\": \"REFERENCES\",\n \"named\": false\n },\n {\n \"type\": \"REFERENCING\",\n \"named\": false\n },\n {\n \"type\": \"RENAME\",\n \"named\": false\n },\n {\n \"type\": \"RENAME_TO\",\n \"named\": false\n },\n {\n \"type\": \"REPEATABLE\",\n \"named\": false\n },\n {\n \"type\": \"RESTRICT\",\n \"named\": false\n },\n {\n \"type\": \"RESTRICTED\",\n \"named\": false\n },\n {\n \"type\": \"RETURN\",\n \"named\": false\n },\n {\n \"type\": \"RETURNS\",\n \"named\": false\n },\n {\n \"type\": \"RETURNS_NULL_ON_NULL_INPUT\",\n \"named\": false\n },\n {\n \"type\": \"RIGHT\",\n \"named\": false\n },\n {\n \"type\": \"ROLLBACK\",\n \"named\": false\n },\n {\n \"type\": \"ROLLUP\",\n \"named\": false\n },\n {\n \"type\": \"ROW\",\n \"named\": false\n },\n {\n \"type\": \"ROWS\",\n \"named\": false\n },\n {\n \"type\": \"ROWS_FROM\",\n \"named\": false\n },\n {\n \"type\": \"SAFE\",\n \"named\": false\n },\n {\n \"type\": \"SCHEMA\",\n \"named\": false\n },\n {\n \"type\": \"SECURITY_DEFINER\",\n \"named\": false\n },\n {\n \"type\": \"SECURITY_INVOKER\",\n \"named\": false\n },\n {\n \"type\": \"SELECT\",\n \"named\": false\n },\n {\n \"type\": \"SEQUENCE\",\n \"named\": false\n },\n {\n \"type\": \"SESSION\",\n \"named\": false\n },\n {\n \"type\": \"SESSION_USER\",\n \"named\": false\n },\n {\n \"type\": \"SET\",\n \"named\": false\n },\n {\n \"type\": \"SETOF\",\n \"named\": false\n },\n {\n \"type\": \"SET_DEFAULT\",\n \"named\": false\n },\n {\n \"type\": \"SET_NULL\",\n \"named\": false\n },\n {\n \"type\": \"SQL_SECURITY\",\n \"named\": false\n },\n {\n \"type\": \"STABLE\",\n \"named\": false\n },\n {\n \"type\": \"START\",\n \"named\": false\n },\n {\n \"type\": \"STATEMENT\",\n \"named\": false\n },\n {\n \"type\": \"STRICT\",\n \"named\": false\n },\n {\n \"type\": \"SUPPORT\",\n \"named\": false\n },\n {\n \"type\": \"TABLE\",\n \"named\": false\n },\n {\n \"type\": \"TABLESAMPLE\",\n \"named\": false\n },\n {\n \"type\": \"TABLESPACE\",\n \"named\": false\n },\n {\n \"type\": \"TEMP\",\n \"named\": false\n },\n {\n \"type\": \"TEMPORARY\",\n \"named\": false\n },\n {\n \"type\": \"THEN\",\n \"named\": false\n },\n {\n \"type\": \"TIME_ZONE\",\n \"named\": false\n },\n {\n \"type\": \"TO\",\n \"named\": false\n },\n {\n \"type\": \"TRANSACTION\",\n \"named\": false\n },\n {\n \"type\": \"TRANSFORM_FOR_TYPE\",\n \"named\": false\n },\n {\n \"type\": \"TRIGGER\",\n \"named\": false\n },\n {\n \"type\": \"TRUE\",\n \"named\": false\n },\n {\n \"type\": \"TRUNCATE\",\n \"named\": false\n },\n {\n \"type\": \"UNBOUNDED_FOLLOWING\",\n \"named\": false\n },\n {\n \"type\": \"UNBOUNDED_PRECEDING\",\n \"named\": false\n },\n {\n \"type\": \"UNIQUE\",\n \"named\": false\n },\n {\n \"type\": \"UNSAFE\",\n \"named\": false\n },\n {\n \"type\": \"UPDATE\",\n \"named\": false\n },\n {\n \"type\": \"USAGE\",\n \"named\": false\n },\n {\n \"type\": \"USING\",\n \"named\": false\n },\n {\n \"type\": \"VALUES\",\n \"named\": false\n },\n {\n \"type\": \"VARIABLE\",\n \"named\": false\n },\n {\n \"type\": \"VARIADIC\",\n \"named\": false\n },\n {\n \"type\": \"VARYING\",\n \"named\": false\n },\n {\n \"type\": \"VERSION\",\n \"named\": false\n },\n {\n \"type\": \"VIEW\",\n \"named\": false\n },\n {\n \"type\": \"VOLATILE\",\n \"named\": false\n },\n {\n \"type\": \"WHEN\",\n \"named\": false\n },\n {\n \"type\": \"WHERE\",\n \"named\": false\n },\n {\n \"type\": \"WINDOW\",\n \"named\": false\n },\n {\n \"type\": \"WITH\",\n \"named\": false\n },\n {\n \"type\": \"WITHIN_GROUP\",\n \"named\": false\n },\n {\n \"type\": \"WITHOUT\",\n \"named\": false\n },\n {\n \"type\": \"WITHOUT_OIDS\",\n \"named\": false\n },\n {\n \"type\": \"WITH_GRANT_OPTION\",\n \"named\": false\n },\n {\n \"type\": \"WITH_ORDINALITY\",\n \"named\": false\n },\n {\n \"type\": \"WORK\",\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\": \"alignment\",\n \"named\": false\n },\n {\n \"type\": \"analyze\",\n \"named\": false\n },\n {\n \"type\": \"canonical\",\n \"named\": false\n },\n {\n \"type\": \"category\",\n \"named\": false\n },\n {\n \"type\": \"collatable\",\n \"named\": false\n },\n {\n \"type\": \"collation\",\n \"named\": false\n },\n {\n \"type\": \"comment\",\n \"named\": true\n },\n {\n \"type\": \"content\",\n \"named\": true\n },\n {\n \"type\": \"default\",\n \"named\": false\n },\n {\n \"type\": \"delimiter\",\n \"named\": false\n },\n {\n \"type\": \"element\",\n \"named\": false\n },\n {\n \"type\": \"input\",\n \"named\": false\n },\n {\n \"type\": \"internallength\",\n \"named\": false\n },\n {\n \"type\": \"language\",\n \"named\": true\n },\n {\n \"type\": \"like\",\n \"named\": false\n },\n {\n \"type\": \"multirange_type_name\",\n \"named\": false\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"output\",\n \"named\": false\n },\n {\n \"type\": \"passedbyvalue\",\n \"named\": false\n },\n {\n \"type\": \"preferred\",\n \"named\": false\n },\n {\n \"type\": \"receive\",\n \"named\": false\n },\n {\n \"type\": \"send\",\n \"named\": false\n },\n {\n \"type\": \"storage\",\n \"named\": false\n },\n {\n \"type\": \"subscript\",\n \"named\": false\n },\n {\n \"type\": \"subtype\",\n \"named\": false\n },\n {\n \"type\": \"subtype_diff\",\n \"named\": false\n },\n {\n \"type\": \"subtype_opclass\",\n \"named\": false\n },\n {\n \"type\": \"typmod_in\",\n \"named\": false\n },\n {\n \"type\": \"typmod_out\",\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 this grammar.