# AUTOGENERATED FROM _localdev postgres instance WITH
#    $ edb gen-sql-introspection

"""Declarations of information schema and pg_catalog"""

from typing import *

ColumnName = str
ColumnType = str | None

INFORMATION_SCHEMA: Dict[str, List[Tuple[ColumnName, ColumnType]]] = {
    "administrable_role_authorizations": [
        ("grantee", "sql_identifier"),
        ("role_name", "sql_identifier"),
        ("is_grantable", "yes_or_no"),
    ],
    "applicable_roles": [
        ("grantee", "sql_identifier"),
        ("role_name", "sql_identifier"),
        ("is_grantable", "yes_or_no"),
    ],
    "attributes": [
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("attribute_name", "sql_identifier"),
        ("ordinal_position", "cardinal_number"),
        ("attribute_default", "character_data"),
        ("is_nullable", "yes_or_no"),
        ("data_type", "character_data"),
        ("character_maximum_length", "cardinal_number"),
        ("character_octet_length", "cardinal_number"),
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("numeric_precision", "cardinal_number"),
        ("numeric_precision_radix", "cardinal_number"),
        ("numeric_scale", "cardinal_number"),
        ("datetime_precision", "cardinal_number"),
        ("interval_type", "character_data"),
        ("interval_precision", "cardinal_number"),
        ("attribute_udt_catalog", "sql_identifier"),
        ("attribute_udt_schema", "sql_identifier"),
        ("attribute_udt_name", "sql_identifier"),
        ("scope_catalog", "sql_identifier"),
        ("scope_schema", "sql_identifier"),
        ("scope_name", "sql_identifier"),
        ("maximum_cardinality", "cardinal_number"),
        ("dtd_identifier", "sql_identifier"),
        ("is_derived_reference_attribute", "yes_or_no"),
    ],
    "character_sets": [
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
        ("character_repertoire", "sql_identifier"),
        ("form_of_use", "sql_identifier"),
        ("default_collate_catalog", "sql_identifier"),
        ("default_collate_schema", "sql_identifier"),
        ("default_collate_name", "sql_identifier"),
    ],
    "check_constraint_routine_usage": [
        ("constraint_catalog", "sql_identifier"),
        ("constraint_schema", "sql_identifier"),
        ("constraint_name", "sql_identifier"),
        ("specific_catalog", "sql_identifier"),
        ("specific_schema", "sql_identifier"),
        ("specific_name", "sql_identifier"),
    ],
    "check_constraints": [
        ("constraint_catalog", "sql_identifier"),
        ("constraint_schema", "sql_identifier"),
        ("constraint_name", "sql_identifier"),
        ("check_clause", "character_data"),
    ],
    "collation_character_set_applicability": [
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
    ],
    "collations": [
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("pad_attribute", "character_data"),
    ],
    "column_column_usage": [
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
        ("dependent_column", "sql_identifier"),
    ],
    "column_domain_usage": [
        ("domain_catalog", "sql_identifier"),
        ("domain_schema", "sql_identifier"),
        ("domain_name", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
    ],
    "column_options": [
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
        ("option_name", "sql_identifier"),
        ("option_value", "character_data"),
    ],
    "column_privileges": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
    ],
    "column_udt_usage": [
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
    ],
    "columns": [
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
        ("ordinal_position", "cardinal_number"),
        ("column_default", "character_data"),
        ("is_nullable", "yes_or_no"),
        ("data_type", "character_data"),
        ("character_maximum_length", "cardinal_number"),
        ("character_octet_length", "cardinal_number"),
        ("numeric_precision", "cardinal_number"),
        ("numeric_precision_radix", "cardinal_number"),
        ("numeric_scale", "cardinal_number"),
        ("datetime_precision", "cardinal_number"),
        ("interval_type", "character_data"),
        ("interval_precision", "cardinal_number"),
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("domain_catalog", "sql_identifier"),
        ("domain_schema", "sql_identifier"),
        ("domain_name", "sql_identifier"),
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("scope_catalog", "sql_identifier"),
        ("scope_schema", "sql_identifier"),
        ("scope_name", "sql_identifier"),
        ("maximum_cardinality", "cardinal_number"),
        ("dtd_identifier", "sql_identifier"),
        ("is_self_referencing", "yes_or_no"),
        ("is_identity", "yes_or_no"),
        ("identity_generation", "character_data"),
        ("identity_start", "character_data"),
        ("identity_increment", "character_data"),
        ("identity_maximum", "character_data"),
        ("identity_minimum", "character_data"),
        ("identity_cycle", "yes_or_no"),
        ("is_generated", "character_data"),
        ("generation_expression", "character_data"),
        ("is_updatable", "yes_or_no"),
    ],
    "constraint_column_usage": [
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
        ("constraint_catalog", "sql_identifier"),
        ("constraint_schema", "sql_identifier"),
        ("constraint_name", "sql_identifier"),
    ],
    "constraint_table_usage": [
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("constraint_catalog", "sql_identifier"),
        ("constraint_schema", "sql_identifier"),
        ("constraint_name", "sql_identifier"),
    ],
    "data_type_privileges": [
        ("object_catalog", "sql_identifier"),
        ("object_schema", "sql_identifier"),
        ("object_name", "sql_identifier"),
        ("object_type", "character_data"),
        ("dtd_identifier", "sql_identifier"),
    ],
    "domain_constraints": [
        ("constraint_catalog", "sql_identifier"),
        ("constraint_schema", "sql_identifier"),
        ("constraint_name", "sql_identifier"),
        ("domain_catalog", "sql_identifier"),
        ("domain_schema", "sql_identifier"),
        ("domain_name", "sql_identifier"),
        ("is_deferrable", "yes_or_no"),
        ("initially_deferred", "yes_or_no"),
    ],
    "domain_udt_usage": [
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("domain_catalog", "sql_identifier"),
        ("domain_schema", "sql_identifier"),
        ("domain_name", "sql_identifier"),
    ],
    "domains": [
        ("domain_catalog", "sql_identifier"),
        ("domain_schema", "sql_identifier"),
        ("domain_name", "sql_identifier"),
        ("data_type", "character_data"),
        ("character_maximum_length", "cardinal_number"),
        ("character_octet_length", "cardinal_number"),
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("numeric_precision", "cardinal_number"),
        ("numeric_precision_radix", "cardinal_number"),
        ("numeric_scale", "cardinal_number"),
        ("datetime_precision", "cardinal_number"),
        ("interval_type", "character_data"),
        ("interval_precision", "cardinal_number"),
        ("domain_default", "character_data"),
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("scope_catalog", "sql_identifier"),
        ("scope_schema", "sql_identifier"),
        ("scope_name", "sql_identifier"),
        ("maximum_cardinality", "cardinal_number"),
        ("dtd_identifier", "sql_identifier"),
    ],
    "element_types": [
        ("object_catalog", "sql_identifier"),
        ("object_schema", "sql_identifier"),
        ("object_name", "sql_identifier"),
        ("object_type", "character_data"),
        ("collection_type_identifier", "sql_identifier"),
        ("data_type", "character_data"),
        ("character_maximum_length", "cardinal_number"),
        ("character_octet_length", "cardinal_number"),
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("numeric_precision", "cardinal_number"),
        ("numeric_precision_radix", "cardinal_number"),
        ("numeric_scale", "cardinal_number"),
        ("datetime_precision", "cardinal_number"),
        ("interval_type", "character_data"),
        ("interval_precision", "cardinal_number"),
        ("domain_default", "character_data"),
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("scope_catalog", "sql_identifier"),
        ("scope_schema", "sql_identifier"),
        ("scope_name", "sql_identifier"),
        ("maximum_cardinality", "cardinal_number"),
        ("dtd_identifier", "sql_identifier"),
    ],
    "enabled_roles": [
        ("role_name", "sql_identifier"),
    ],
    "foreign_data_wrapper_options": [
        ("foreign_data_wrapper_catalog", "sql_identifier"),
        ("foreign_data_wrapper_name", "sql_identifier"),
        ("option_name", "sql_identifier"),
        ("option_value", "character_data"),
    ],
    "foreign_data_wrappers": [
        ("foreign_data_wrapper_catalog", "sql_identifier"),
        ("foreign_data_wrapper_name", "sql_identifier"),
        ("authorization_identifier", "sql_identifier"),
        ("library_name", "character_data"),
        ("foreign_data_wrapper_language", "character_data"),
    ],
    "foreign_server_options": [
        ("foreign_server_catalog", "sql_identifier"),
        ("foreign_server_name", "sql_identifier"),
        ("option_name", "sql_identifier"),
        ("option_value", "character_data"),
    ],
    "foreign_servers": [
        ("foreign_server_catalog", "sql_identifier"),
        ("foreign_server_name", "sql_identifier"),
        ("foreign_data_wrapper_catalog", "sql_identifier"),
        ("foreign_data_wrapper_name", "sql_identifier"),
        ("foreign_server_type", "character_data"),
        ("foreign_server_version", "character_data"),
        ("authorization_identifier", "sql_identifier"),
    ],
    "foreign_table_options": [
        ("foreign_table_catalog", "sql_identifier"),
        ("foreign_table_schema", "sql_identifier"),
        ("foreign_table_name", "sql_identifier"),
        ("option_name", "sql_identifier"),
        ("option_value", "character_data"),
    ],
    "foreign_tables": [
        ("foreign_table_catalog", "sql_identifier"),
        ("foreign_table_schema", "sql_identifier"),
        ("foreign_table_name", "sql_identifier"),
        ("foreign_server_catalog", "sql_identifier"),
        ("foreign_server_name", "sql_identifier"),
    ],
    "information_schema_catalog_name": [
        ("catalog_name", "sql_identifier"),
    ],
    "key_column_usage": [
        ("constraint_catalog", "sql_identifier"),
        ("constraint_schema", "sql_identifier"),
        ("constraint_name", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
        ("ordinal_position", "cardinal_number"),
        ("position_in_unique_constraint", "cardinal_number"),
    ],
    "parameters": [
        ("specific_catalog", "sql_identifier"),
        ("specific_schema", "sql_identifier"),
        ("specific_name", "sql_identifier"),
        ("ordinal_position", "cardinal_number"),
        ("parameter_mode", "character_data"),
        ("is_result", "yes_or_no"),
        ("as_locator", "yes_or_no"),
        ("parameter_name", "sql_identifier"),
        ("data_type", "character_data"),
        ("character_maximum_length", "cardinal_number"),
        ("character_octet_length", "cardinal_number"),
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("numeric_precision", "cardinal_number"),
        ("numeric_precision_radix", "cardinal_number"),
        ("numeric_scale", "cardinal_number"),
        ("datetime_precision", "cardinal_number"),
        ("interval_type", "character_data"),
        ("interval_precision", "cardinal_number"),
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("scope_catalog", "sql_identifier"),
        ("scope_schema", "sql_identifier"),
        ("scope_name", "sql_identifier"),
        ("maximum_cardinality", "cardinal_number"),
        ("dtd_identifier", "sql_identifier"),
        ("parameter_default", "character_data"),
    ],
    "referential_constraints": [
        ("constraint_catalog", "sql_identifier"),
        ("constraint_schema", "sql_identifier"),
        ("constraint_name", "sql_identifier"),
        ("unique_constraint_catalog", "sql_identifier"),
        ("unique_constraint_schema", "sql_identifier"),
        ("unique_constraint_name", "sql_identifier"),
        ("match_option", "character_data"),
        ("update_rule", "character_data"),
        ("delete_rule", "character_data"),
    ],
    "role_column_grants": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
    ],
    "role_routine_grants": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("specific_catalog", "sql_identifier"),
        ("specific_schema", "sql_identifier"),
        ("specific_name", "sql_identifier"),
        ("routine_catalog", "sql_identifier"),
        ("routine_schema", "sql_identifier"),
        ("routine_name", "sql_identifier"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
    ],
    "role_table_grants": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
        ("with_hierarchy", "yes_or_no"),
    ],
    "role_udt_grants": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
    ],
    "role_usage_grants": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("object_catalog", "sql_identifier"),
        ("object_schema", "sql_identifier"),
        ("object_name", "sql_identifier"),
        ("object_type", "character_data"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
    ],
    "routine_privileges": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("specific_catalog", "sql_identifier"),
        ("specific_schema", "sql_identifier"),
        ("specific_name", "sql_identifier"),
        ("routine_catalog", "sql_identifier"),
        ("routine_schema", "sql_identifier"),
        ("routine_name", "sql_identifier"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
    ],
    "routines": [
        ("specific_catalog", "sql_identifier"),
        ("specific_schema", "sql_identifier"),
        ("specific_name", "sql_identifier"),
        ("routine_catalog", "sql_identifier"),
        ("routine_schema", "sql_identifier"),
        ("routine_name", "sql_identifier"),
        ("routine_type", "character_data"),
        ("module_catalog", "sql_identifier"),
        ("module_schema", "sql_identifier"),
        ("module_name", "sql_identifier"),
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("data_type", "character_data"),
        ("character_maximum_length", "cardinal_number"),
        ("character_octet_length", "cardinal_number"),
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("numeric_precision", "cardinal_number"),
        ("numeric_precision_radix", "cardinal_number"),
        ("numeric_scale", "cardinal_number"),
        ("datetime_precision", "cardinal_number"),
        ("interval_type", "character_data"),
        ("interval_precision", "cardinal_number"),
        ("type_udt_catalog", "sql_identifier"),
        ("type_udt_schema", "sql_identifier"),
        ("type_udt_name", "sql_identifier"),
        ("scope_catalog", "sql_identifier"),
        ("scope_schema", "sql_identifier"),
        ("scope_name", "sql_identifier"),
        ("maximum_cardinality", "cardinal_number"),
        ("dtd_identifier", "sql_identifier"),
        ("routine_body", "character_data"),
        ("routine_definition", "character_data"),
        ("external_name", "character_data"),
        ("external_language", "character_data"),
        ("parameter_style", "character_data"),
        ("is_deterministic", "yes_or_no"),
        ("sql_data_access", "character_data"),
        ("is_null_call", "yes_or_no"),
        ("sql_path", "character_data"),
        ("schema_level_routine", "yes_or_no"),
        ("max_dynamic_result_sets", "cardinal_number"),
        ("is_user_defined_cast", "yes_or_no"),
        ("is_implicitly_invocable", "yes_or_no"),
        ("security_type", "character_data"),
        ("to_sql_specific_catalog", "sql_identifier"),
        ("to_sql_specific_schema", "sql_identifier"),
        ("to_sql_specific_name", "sql_identifier"),
        ("as_locator", "yes_or_no"),
        ("created", "time_stamp"),
        ("last_altered", "time_stamp"),
        ("new_savepoint_level", "yes_or_no"),
        ("is_udt_dependent", "yes_or_no"),
        ("result_cast_from_data_type", "character_data"),
        ("result_cast_as_locator", "yes_or_no"),
        ("result_cast_char_max_length", "cardinal_number"),
        ("result_cast_char_octet_length", "cardinal_number"),
        ("result_cast_char_set_catalog", "sql_identifier"),
        ("result_cast_char_set_schema", "sql_identifier"),
        ("result_cast_char_set_name", "sql_identifier"),
        ("result_cast_collation_catalog", "sql_identifier"),
        ("result_cast_collation_schema", "sql_identifier"),
        ("result_cast_collation_name", "sql_identifier"),
        ("result_cast_numeric_precision", "cardinal_number"),
        ("result_cast_numeric_precision_radix", "cardinal_number"),
        ("result_cast_numeric_scale", "cardinal_number"),
        ("result_cast_datetime_precision", "cardinal_number"),
        ("result_cast_interval_type", "character_data"),
        ("result_cast_interval_precision", "cardinal_number"),
        ("result_cast_type_udt_catalog", "sql_identifier"),
        ("result_cast_type_udt_schema", "sql_identifier"),
        ("result_cast_type_udt_name", "sql_identifier"),
        ("result_cast_scope_catalog", "sql_identifier"),
        ("result_cast_scope_schema", "sql_identifier"),
        ("result_cast_scope_name", "sql_identifier"),
        ("result_cast_maximum_cardinality", "cardinal_number"),
        ("result_cast_dtd_identifier", "sql_identifier"),
    ],
    "schemata": [
        ("catalog_name", "sql_identifier"),
        ("schema_name", "sql_identifier"),
        ("schema_owner", "sql_identifier"),
        ("default_character_set_catalog", "sql_identifier"),
        ("default_character_set_schema", "sql_identifier"),
        ("default_character_set_name", "sql_identifier"),
        ("sql_path", "character_data"),
    ],
    "sequences": [
        ("sequence_catalog", "sql_identifier"),
        ("sequence_schema", "sql_identifier"),
        ("sequence_name", "sql_identifier"),
        ("data_type", "character_data"),
        ("numeric_precision", "cardinal_number"),
        ("numeric_precision_radix", "cardinal_number"),
        ("numeric_scale", "cardinal_number"),
        ("start_value", "character_data"),
        ("minimum_value", "character_data"),
        ("maximum_value", "character_data"),
        ("increment", "character_data"),
        ("cycle_option", "yes_or_no"),
    ],
    "sql_features": [
        ("feature_id", "character_data"),
        ("feature_name", "character_data"),
        ("sub_feature_id", "character_data"),
        ("sub_feature_name", "character_data"),
        ("is_supported", "yes_or_no"),
        ("is_verified_by", "character_data"),
        ("comments", "character_data"),
    ],
    "sql_implementation_info": [
        ("implementation_info_id", "character_data"),
        ("implementation_info_name", "character_data"),
        ("integer_value", "cardinal_number"),
        ("character_value", "character_data"),
        ("comments", "character_data"),
    ],
    "sql_parts": [
        ("feature_id", "character_data"),
        ("feature_name", "character_data"),
        ("is_supported", "yes_or_no"),
        ("is_verified_by", "character_data"),
        ("comments", "character_data"),
    ],
    "sql_sizing": [
        ("sizing_id", "cardinal_number"),
        ("sizing_name", "character_data"),
        ("supported_value", "cardinal_number"),
        ("comments", "character_data"),
    ],
    "table_constraints": [
        ("constraint_catalog", "sql_identifier"),
        ("constraint_schema", "sql_identifier"),
        ("constraint_name", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("constraint_type", "character_data"),
        ("is_deferrable", "yes_or_no"),
        ("initially_deferred", "yes_or_no"),
        ("enforced", "yes_or_no"),
    ],
    "table_privileges": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
        ("with_hierarchy", "yes_or_no"),
    ],
    "tables": [
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("table_type", "character_data"),
        ("self_referencing_column_name", "sql_identifier"),
        ("reference_generation", "character_data"),
        ("user_defined_type_catalog", "sql_identifier"),
        ("user_defined_type_schema", "sql_identifier"),
        ("user_defined_type_name", "sql_identifier"),
        ("is_insertable_into", "yes_or_no"),
        ("is_typed", "yes_or_no"),
        ("commit_action", "character_data"),
    ],
    "transforms": [
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("specific_catalog", "sql_identifier"),
        ("specific_schema", "sql_identifier"),
        ("specific_name", "sql_identifier"),
        ("group_name", "sql_identifier"),
        ("transform_type", "character_data"),
    ],
    "triggered_update_columns": [
        ("trigger_catalog", "sql_identifier"),
        ("trigger_schema", "sql_identifier"),
        ("trigger_name", "sql_identifier"),
        ("event_object_catalog", "sql_identifier"),
        ("event_object_schema", "sql_identifier"),
        ("event_object_table", "sql_identifier"),
        ("event_object_column", "sql_identifier"),
    ],
    "triggers": [
        ("trigger_catalog", "sql_identifier"),
        ("trigger_schema", "sql_identifier"),
        ("trigger_name", "sql_identifier"),
        ("event_manipulation", "character_data"),
        ("event_object_catalog", "sql_identifier"),
        ("event_object_schema", "sql_identifier"),
        ("event_object_table", "sql_identifier"),
        ("action_order", "cardinal_number"),
        ("action_condition", "character_data"),
        ("action_statement", "character_data"),
        ("action_orientation", "character_data"),
        ("action_timing", "character_data"),
        ("action_reference_old_table", "sql_identifier"),
        ("action_reference_new_table", "sql_identifier"),
        ("action_reference_old_row", "sql_identifier"),
        ("action_reference_new_row", "sql_identifier"),
        ("created", "time_stamp"),
    ],
    "udt_privileges": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("udt_catalog", "sql_identifier"),
        ("udt_schema", "sql_identifier"),
        ("udt_name", "sql_identifier"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
    ],
    "usage_privileges": [
        ("grantor", "sql_identifier"),
        ("grantee", "sql_identifier"),
        ("object_catalog", "sql_identifier"),
        ("object_schema", "sql_identifier"),
        ("object_name", "sql_identifier"),
        ("object_type", "character_data"),
        ("privilege_type", "character_data"),
        ("is_grantable", "yes_or_no"),
    ],
    "user_defined_types": [
        ("user_defined_type_catalog", "sql_identifier"),
        ("user_defined_type_schema", "sql_identifier"),
        ("user_defined_type_name", "sql_identifier"),
        ("user_defined_type_category", "character_data"),
        ("is_instantiable", "yes_or_no"),
        ("is_final", "yes_or_no"),
        ("ordering_form", "character_data"),
        ("ordering_category", "character_data"),
        ("ordering_routine_catalog", "sql_identifier"),
        ("ordering_routine_schema", "sql_identifier"),
        ("ordering_routine_name", "sql_identifier"),
        ("reference_type", "character_data"),
        ("data_type", "character_data"),
        ("character_maximum_length", "cardinal_number"),
        ("character_octet_length", "cardinal_number"),
        ("character_set_catalog", "sql_identifier"),
        ("character_set_schema", "sql_identifier"),
        ("character_set_name", "sql_identifier"),
        ("collation_catalog", "sql_identifier"),
        ("collation_schema", "sql_identifier"),
        ("collation_name", "sql_identifier"),
        ("numeric_precision", "cardinal_number"),
        ("numeric_precision_radix", "cardinal_number"),
        ("numeric_scale", "cardinal_number"),
        ("datetime_precision", "cardinal_number"),
        ("interval_type", "character_data"),
        ("interval_precision", "cardinal_number"),
        ("source_dtd_identifier", "sql_identifier"),
        ("ref_dtd_identifier", "sql_identifier"),
    ],
    "user_mapping_options": [
        ("authorization_identifier", "sql_identifier"),
        ("foreign_server_catalog", "sql_identifier"),
        ("foreign_server_name", "sql_identifier"),
        ("option_name", "sql_identifier"),
        ("option_value", "character_data"),
    ],
    "user_mappings": [
        ("authorization_identifier", "sql_identifier"),
        ("foreign_server_catalog", "sql_identifier"),
        ("foreign_server_name", "sql_identifier"),
    ],
    "view_column_usage": [
        ("view_catalog", "sql_identifier"),
        ("view_schema", "sql_identifier"),
        ("view_name", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("column_name", "sql_identifier"),
    ],
    "view_routine_usage": [
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("specific_catalog", "sql_identifier"),
        ("specific_schema", "sql_identifier"),
        ("specific_name", "sql_identifier"),
    ],
    "view_table_usage": [
        ("view_catalog", "sql_identifier"),
        ("view_schema", "sql_identifier"),
        ("view_name", "sql_identifier"),
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
    ],
    "views": [
        ("table_catalog", "sql_identifier"),
        ("table_schema", "sql_identifier"),
        ("table_name", "sql_identifier"),
        ("view_definition", "character_data"),
        ("check_option", "character_data"),
        ("is_updatable", "yes_or_no"),
        ("is_insertable_into", "yes_or_no"),
        ("is_trigger_updatable", "yes_or_no"),
        ("is_trigger_deletable", "yes_or_no"),
        ("is_trigger_insertable_into", "yes_or_no"),
    ]
}
PG_CATALOG: Dict[str, List[Tuple[ColumnName, ColumnType]]] = {
    "pg_aggregate": [
        ("aggfnoid", "regproc"),
        ("aggkind", "\"char\""),
        ("aggnumdirectargs", "smallint"),
        ("aggtransfn", "regproc"),
        ("aggfinalfn", "regproc"),
        ("aggcombinefn", "regproc"),
        ("aggserialfn", "regproc"),
        ("aggdeserialfn", "regproc"),
        ("aggmtransfn", "regproc"),
        ("aggminvtransfn", "regproc"),
        ("aggmfinalfn", "regproc"),
        ("aggfinalextra", "boolean"),
        ("aggmfinalextra", "boolean"),
        ("aggfinalmodify", "\"char\""),
        ("aggmfinalmodify", "\"char\""),
        ("aggsortop", "oid"),
        ("aggtranstype", "oid"),
        ("aggtransspace", "integer"),
        ("aggmtranstype", "oid"),
        ("aggmtransspace", "integer"),
        ("agginitval", "text"),
        ("aggminitval", "text"),
    ],
    "pg_am": [
        ("oid", "oid"),
        ("amname", "name"),
        ("amhandler", "regproc"),
        ("amtype", "\"char\""),
    ],
    "pg_amop": [
        ("oid", "oid"),
        ("amopfamily", "oid"),
        ("amoplefttype", "oid"),
        ("amoprighttype", "oid"),
        ("amopstrategy", "smallint"),
        ("amoppurpose", "\"char\""),
        ("amopopr", "oid"),
        ("amopmethod", "oid"),
        ("amopsortfamily", "oid"),
    ],
    "pg_amproc": [
        ("oid", "oid"),
        ("amprocfamily", "oid"),
        ("amproclefttype", "oid"),
        ("amprocrighttype", "oid"),
        ("amprocnum", "smallint"),
        ("amproc", "regproc"),
    ],
    "pg_attrdef": [
        ("oid", "oid"),
        ("adrelid", "oid"),
        ("adnum", "smallint"),
        ("adbin", "pg_node_tree"),
    ],
    "pg_attribute": [
        ("attrelid", "oid"),
        ("attname", "name"),
        ("atttypid", "oid"),
        ("attstattarget", "integer"),
        ("attlen", "smallint"),
        ("attnum", "smallint"),
        ("attndims", "integer"),
        ("attcacheoff", "integer"),
        ("atttypmod", "integer"),
        ("attbyval", "boolean"),
        ("attstorage", "\"char\""),
        ("attalign", "\"char\""),
        ("attnotnull", "boolean"),
        ("atthasdef", "boolean"),
        ("atthasmissing", "boolean"),
        ("attidentity", "\"char\""),
        ("attgenerated", "\"char\""),
        ("attisdropped", "boolean"),
        ("attislocal", "boolean"),
        ("attinhcount", "integer"),
        ("attcollation", "oid"),
        ("attacl", None),
        ("attoptions", None),
        ("attfdwoptions", None),
        ("attmissingval", None),
    ],
    "pg_auth_members": [
        ("roleid", "oid"),
        ("member", "oid"),
        ("grantor", "oid"),
        ("admin_option", "boolean"),
    ],
    "pg_authid": [
        ("oid", "oid"),
        ("rolname", "name"),
        ("rolsuper", "boolean"),
        ("rolinherit", "boolean"),
        ("rolcreaterole", "boolean"),
        ("rolcreatedb", "boolean"),
        ("rolcanlogin", "boolean"),
        ("rolreplication", "boolean"),
        ("rolbypassrls", "boolean"),
        ("rolconnlimit", "integer"),
        ("rolpassword", "text"),
        ("rolvaliduntil", "timestamp with time zone"),
    ],
    "pg_available_extension_versions": [
        ("name", "name"),
        ("version", "text"),
        ("installed", "boolean"),
        ("superuser", "boolean"),
        ("trusted", "boolean"),
        ("relocatable", "boolean"),
        ("schema", "name"),
        ("requires", None),
        ("comment", "text"),
    ],
    "pg_available_extensions": [
        ("name", "name"),
        ("default_version", "text"),
        ("installed_version", "text"),
        ("comment", "text"),
    ],
    "pg_cast": [
        ("oid", "oid"),
        ("castsource", "oid"),
        ("casttarget", "oid"),
        ("castfunc", "oid"),
        ("castcontext", "\"char\""),
        ("castmethod", "\"char\""),
    ],
    "pg_class": [
        ("oid", "oid"),
        ("relname", "name"),
        ("relnamespace", "oid"),
        ("reltype", "oid"),
        ("reloftype", "oid"),
        ("relowner", "oid"),
        ("relam", "oid"),
        ("relfilenode", "oid"),
        ("reltablespace", "oid"),
        ("relpages", "integer"),
        ("reltuples", "real"),
        ("relallvisible", "integer"),
        ("reltoastrelid", "oid"),
        ("relhasindex", "boolean"),
        ("relisshared", "boolean"),
        ("relpersistence", "\"char\""),
        ("relkind", "\"char\""),
        ("relnatts", "smallint"),
        ("relchecks", "smallint"),
        ("relhasrules", "boolean"),
        ("relhastriggers", "boolean"),
        ("relhassubclass", "boolean"),
        ("relrowsecurity", "boolean"),
        ("relforcerowsecurity", "boolean"),
        ("relispopulated", "boolean"),
        ("relreplident", "\"char\""),
        ("relispartition", "boolean"),
        ("relrewrite", "oid"),
        ("relfrozenxid", "xid"),
        ("relminmxid", "xid"),
        ("relacl", None),
        ("reloptions", None),
        ("relpartbound", "pg_node_tree"),
    ],
    "pg_collation": [
        ("oid", "oid"),
        ("collname", "name"),
        ("collnamespace", "oid"),
        ("collowner", "oid"),
        ("collprovider", "\"char\""),
        ("collisdeterministic", "boolean"),
        ("collencoding", "integer"),
        ("collcollate", "name"),
        ("collctype", "name"),
        ("collversion", "text"),
    ],
    "pg_config": [
        ("name", "text"),
        ("setting", "text"),
    ],
    "pg_constraint": [
        ("oid", "oid"),
        ("conname", "name"),
        ("connamespace", "oid"),
        ("contype", "\"char\""),
        ("condeferrable", "boolean"),
        ("condeferred", "boolean"),
        ("convalidated", "boolean"),
        ("conrelid", "oid"),
        ("contypid", "oid"),
        ("conindid", "oid"),
        ("conparentid", "oid"),
        ("confrelid", "oid"),
        ("confupdtype", "\"char\""),
        ("confdeltype", "\"char\""),
        ("confmatchtype", "\"char\""),
        ("conislocal", "boolean"),
        ("coninhcount", "integer"),
        ("connoinherit", "boolean"),
        ("conkey", None),
        ("confkey", None),
        ("conpfeqop", None),
        ("conppeqop", None),
        ("conffeqop", None),
        ("conexclop", None),
        ("conbin", "pg_node_tree"),
    ],
    "pg_conversion": [
        ("oid", "oid"),
        ("conname", "name"),
        ("connamespace", "oid"),
        ("conowner", "oid"),
        ("conforencoding", "integer"),
        ("contoencoding", "integer"),
        ("conproc", "regproc"),
        ("condefault", "boolean"),
    ],
    "pg_cursors": [
        ("name", "text"),
        ("statement", "text"),
        ("is_holdable", "boolean"),
        ("is_binary", "boolean"),
        ("is_scrollable", "boolean"),
        ("creation_time", "timestamp with time zone"),
    ],
    "pg_database": [
        ("oid", "oid"),
        ("datname", "name"),
        ("datdba", "oid"),
        ("encoding", "integer"),
        ("datcollate", "name"),
        ("datctype", "name"),
        ("datistemplate", "boolean"),
        ("datallowconn", "boolean"),
        ("datconnlimit", "integer"),
        ("datlastsysoid", "oid"),
        ("datfrozenxid", "xid"),
        ("datminmxid", "xid"),
        ("dattablespace", "oid"),
        ("datacl", None),
    ],
    "pg_db_role_setting": [
        ("setdatabase", "oid"),
        ("setrole", "oid"),
        ("setconfig", None),
    ],
    "pg_default_acl": [
        ("oid", "oid"),
        ("defaclrole", "oid"),
        ("defaclnamespace", "oid"),
        ("defaclobjtype", "\"char\""),
        ("defaclacl", None),
    ],
    "pg_depend": [
        ("classid", "oid"),
        ("objid", "oid"),
        ("objsubid", "integer"),
        ("refclassid", "oid"),
        ("refobjid", "oid"),
        ("refobjsubid", "integer"),
        ("deptype", "\"char\""),
    ],
    "pg_description": [
        ("objoid", "oid"),
        ("classoid", "oid"),
        ("objsubid", "integer"),
        ("description", "text"),
    ],
    "pg_enum": [
        ("oid", "oid"),
        ("enumtypid", "oid"),
        ("enumsortorder", "real"),
        ("enumlabel", "name"),
    ],
    "pg_event_trigger": [
        ("oid", "oid"),
        ("evtname", "name"),
        ("evtevent", "name"),
        ("evtowner", "oid"),
        ("evtfoid", "oid"),
        ("evtenabled", "\"char\""),
        ("evttags", None),
    ],
    "pg_extension": [
        ("oid", "oid"),
        ("extname", "name"),
        ("extowner", "oid"),
        ("extnamespace", "oid"),
        ("extrelocatable", "boolean"),
        ("extversion", "text"),
        ("extconfig", None),
        ("extcondition", None),
    ],
    "pg_file_settings": [
        ("sourcefile", "text"),
        ("sourceline", "integer"),
        ("seqno", "integer"),
        ("name", "text"),
        ("setting", "text"),
        ("applied", "boolean"),
        ("error", "text"),
    ],
    "pg_foreign_data_wrapper": [
        ("oid", "oid"),
        ("fdwname", "name"),
        ("fdwowner", "oid"),
        ("fdwhandler", "oid"),
        ("fdwvalidator", "oid"),
        ("fdwacl", None),
        ("fdwoptions", None),
    ],
    "pg_foreign_server": [
        ("oid", "oid"),
        ("srvname", "name"),
        ("srvowner", "oid"),
        ("srvfdw", "oid"),
        ("srvtype", "text"),
        ("srvversion", "text"),
        ("srvacl", None),
        ("srvoptions", None),
    ],
    "pg_foreign_table": [
        ("ftrelid", "oid"),
        ("ftserver", "oid"),
        ("ftoptions", None),
    ],
    "pg_group": [
        ("groname", "name"),
        ("grosysid", "oid"),
        ("grolist", None),
    ],
    "pg_hba_file_rules": [
        ("line_number", "integer"),
        ("type", "text"),
        ("database", None),
        ("user_name", None),
        ("address", "text"),
        ("netmask", "text"),
        ("auth_method", "text"),
        ("options", None),
        ("error", "text"),
    ],
    "pg_index": [
        ("indexrelid", "oid"),
        ("indrelid", "oid"),
        ("indnatts", "smallint"),
        ("indnkeyatts", "smallint"),
        ("indisunique", "boolean"),
        ("indisprimary", "boolean"),
        ("indisexclusion", "boolean"),
        ("indimmediate", "boolean"),
        ("indisclustered", "boolean"),
        ("indisvalid", "boolean"),
        ("indcheckxmin", "boolean"),
        ("indisready", "boolean"),
        ("indislive", "boolean"),
        ("indisreplident", "boolean"),
        ("indkey", None),
        ("indcollation", None),
        ("indclass", None),
        ("indoption", None),
        ("indexprs", "pg_node_tree"),
        ("indpred", "pg_node_tree"),
    ],
    "pg_indexes": [
        ("schemaname", "name"),
        ("tablename", "name"),
        ("indexname", "name"),
        ("tablespace", "name"),
        ("indexdef", "text"),
    ],
    "pg_inherits": [
        ("inhrelid", "oid"),
        ("inhparent", "oid"),
        ("inhseqno", "integer"),
    ],
    "pg_init_privs": [
        ("objoid", "oid"),
        ("classoid", "oid"),
        ("objsubid", "integer"),
        ("privtype", "\"char\""),
        ("initprivs", None),
    ],
    "pg_language": [
        ("oid", "oid"),
        ("lanname", "name"),
        ("lanowner", "oid"),
        ("lanispl", "boolean"),
        ("lanpltrusted", "boolean"),
        ("lanplcallfoid", "oid"),
        ("laninline", "oid"),
        ("lanvalidator", "oid"),
        ("lanacl", None),
    ],
    "pg_largeobject": [
        ("loid", "oid"),
        ("pageno", "integer"),
        ("data", "bytea"),
    ],
    "pg_largeobject_metadata": [
        ("oid", "oid"),
        ("lomowner", "oid"),
        ("lomacl", None),
    ],
    "pg_locks": [
        ("locktype", "text"),
        ("database", "oid"),
        ("relation", "oid"),
        ("page", "integer"),
        ("tuple", "smallint"),
        ("virtualxid", "text"),
        ("transactionid", "xid"),
        ("classid", "oid"),
        ("objid", "oid"),
        ("objsubid", "smallint"),
        ("virtualtransaction", "text"),
        ("pid", "integer"),
        ("mode", "text"),
        ("granted", "boolean"),
        ("fastpath", "boolean"),
    ],
    "pg_matviews": [
        ("schemaname", "name"),
        ("matviewname", "name"),
        ("matviewowner", "name"),
        ("tablespace", "name"),
        ("hasindexes", "boolean"),
        ("ispopulated", "boolean"),
        ("definition", "text"),
    ],
    "pg_namespace": [
        ("oid", "oid"),
        ("nspname", "name"),
        ("nspowner", "oid"),
        ("nspacl", None),
    ],
    "pg_opclass": [
        ("oid", "oid"),
        ("opcmethod", "oid"),
        ("opcname", "name"),
        ("opcnamespace", "oid"),
        ("opcowner", "oid"),
        ("opcfamily", "oid"),
        ("opcintype", "oid"),
        ("opcdefault", "boolean"),
        ("opckeytype", "oid"),
    ],
    "pg_operator": [
        ("oid", "oid"),
        ("oprname", "name"),
        ("oprnamespace", "oid"),
        ("oprowner", "oid"),
        ("oprkind", "\"char\""),
        ("oprcanmerge", "boolean"),
        ("oprcanhash", "boolean"),
        ("oprleft", "oid"),
        ("oprright", "oid"),
        ("oprresult", "oid"),
        ("oprcom", "oid"),
        ("oprnegate", "oid"),
        ("oprcode", "regproc"),
        ("oprrest", "regproc"),
        ("oprjoin", "regproc"),
    ],
    "pg_opfamily": [
        ("oid", "oid"),
        ("opfmethod", "oid"),
        ("opfname", "name"),
        ("opfnamespace", "oid"),
        ("opfowner", "oid"),
    ],
    "pg_partitioned_table": [
        ("partrelid", "oid"),
        ("partstrat", "\"char\""),
        ("partnatts", "smallint"),
        ("partdefid", "oid"),
        ("partattrs", None),
        ("partclass", None),
        ("partcollation", None),
        ("partexprs", "pg_node_tree"),
    ],
    "pg_policies": [
        ("schemaname", "name"),
        ("tablename", "name"),
        ("policyname", "name"),
        ("permissive", "text"),
        ("roles", None),
        ("cmd", "text"),
        ("qual", "text"),
        ("with_check", "text"),
    ],
    "pg_policy": [
        ("oid", "oid"),
        ("polname", "name"),
        ("polrelid", "oid"),
        ("polcmd", "\"char\""),
        ("polpermissive", "boolean"),
        ("polroles", None),
        ("polqual", "pg_node_tree"),
        ("polwithcheck", "pg_node_tree"),
    ],
    "pg_prepared_statements": [
        ("name", "text"),
        ("statement", "text"),
        ("prepare_time", "timestamp with time zone"),
        ("parameter_types", None),
        ("from_sql", "boolean"),
    ],
    "pg_prepared_xacts": [
        ("transaction", "xid"),
        ("gid", "text"),
        ("prepared", "timestamp with time zone"),
        ("owner", "name"),
        ("database", "name"),
    ],
    "pg_proc": [
        ("oid", "oid"),
        ("proname", "name"),
        ("pronamespace", "oid"),
        ("proowner", "oid"),
        ("prolang", "oid"),
        ("procost", "real"),
        ("prorows", "real"),
        ("provariadic", "oid"),
        ("prosupport", "regproc"),
        ("prokind", "\"char\""),
        ("prosecdef", "boolean"),
        ("proleakproof", "boolean"),
        ("proisstrict", "boolean"),
        ("proretset", "boolean"),
        ("provolatile", "\"char\""),
        ("proparallel", "\"char\""),
        ("pronargs", "smallint"),
        ("pronargdefaults", "smallint"),
        ("prorettype", "oid"),
        ("proargtypes", None),
        ("proallargtypes", None),
        ("proargmodes", None),
        ("proargnames", None),
        ("proargdefaults", "pg_node_tree"),
        ("protrftypes", None),
        ("prosrc", "text"),
        ("probin", "text"),
        ("proconfig", None),
        ("proacl", None),
    ],
    "pg_publication": [
        ("oid", "oid"),
        ("pubname", "name"),
        ("pubowner", "oid"),
        ("puballtables", "boolean"),
        ("pubinsert", "boolean"),
        ("pubupdate", "boolean"),
        ("pubdelete", "boolean"),
        ("pubtruncate", "boolean"),
        ("pubviaroot", "boolean"),
    ],
    "pg_publication_rel": [
        ("oid", "oid"),
        ("prpubid", "oid"),
        ("prrelid", "oid"),
    ],
    "pg_publication_tables": [
        ("pubname", "name"),
        ("schemaname", "name"),
        ("tablename", "name"),
    ],
    "pg_range": [
        ("rngtypid", "oid"),
        ("rngsubtype", "oid"),
        ("rngcollation", "oid"),
        ("rngsubopc", "oid"),
        ("rngcanonical", "regproc"),
        ("rngsubdiff", "regproc"),
    ],
    "pg_replication_origin": [
        ("roident", "oid"),
        ("roname", "text"),
    ],
    "pg_replication_origin_status": [
        ("local_id", "oid"),
        ("external_id", "text"),
        ("remote_lsn", "pg_lsn"),
        ("local_lsn", "pg_lsn"),
    ],
    "pg_replication_slots": [
        ("slot_name", "name"),
        ("plugin", "name"),
        ("slot_type", "text"),
        ("datoid", "oid"),
        ("database", "name"),
        ("temporary", "boolean"),
        ("active", "boolean"),
        ("active_pid", "integer"),
        ("xmin", "xid"),
        ("catalog_xmin", "xid"),
        ("restart_lsn", "pg_lsn"),
        ("confirmed_flush_lsn", "pg_lsn"),
        ("wal_status", "text"),
        ("safe_wal_size", "bigint"),
    ],
    "pg_rewrite": [
        ("oid", "oid"),
        ("rulename", "name"),
        ("ev_class", "oid"),
        ("ev_type", "\"char\""),
        ("ev_enabled", "\"char\""),
        ("is_instead", "boolean"),
        ("ev_qual", "pg_node_tree"),
        ("ev_action", "pg_node_tree"),
    ],
    "pg_roles": [
        ("rolname", "name"),
        ("rolsuper", "boolean"),
        ("rolinherit", "boolean"),
        ("rolcreaterole", "boolean"),
        ("rolcreatedb", "boolean"),
        ("rolcanlogin", "boolean"),
        ("rolreplication", "boolean"),
        ("rolconnlimit", "integer"),
        ("rolpassword", "text"),
        ("rolvaliduntil", "timestamp with time zone"),
        ("rolbypassrls", "boolean"),
        ("rolconfig", None),
        ("oid", "oid"),
    ],
    "pg_rules": [
        ("schemaname", "name"),
        ("tablename", "name"),
        ("rulename", "name"),
        ("definition", "text"),
    ],
    "pg_seclabel": [
        ("objoid", "oid"),
        ("classoid", "oid"),
        ("objsubid", "integer"),
        ("provider", "text"),
        ("label", "text"),
    ],
    "pg_seclabels": [
        ("objoid", "oid"),
        ("classoid", "oid"),
        ("objsubid", "integer"),
        ("objtype", "text"),
        ("objnamespace", "oid"),
        ("objname", "text"),
        ("provider", "text"),
        ("label", "text"),
    ],
    "pg_sequence": [
        ("seqrelid", "oid"),
        ("seqtypid", "oid"),
        ("seqstart", "bigint"),
        ("seqincrement", "bigint"),
        ("seqmax", "bigint"),
        ("seqmin", "bigint"),
        ("seqcache", "bigint"),
        ("seqcycle", "boolean"),
    ],
    "pg_sequences": [
        ("schemaname", "name"),
        ("sequencename", "name"),
        ("sequenceowner", "name"),
        ("data_type", "regtype"),
        ("start_value", "bigint"),
        ("min_value", "bigint"),
        ("max_value", "bigint"),
        ("increment_by", "bigint"),
        ("cycle", "boolean"),
        ("cache_size", "bigint"),
        ("last_value", "bigint"),
    ],
    "pg_settings": [
        ("name", "text"),
        ("setting", "text"),
        ("unit", "text"),
        ("category", "text"),
        ("short_desc", "text"),
        ("extra_desc", "text"),
        ("context", "text"),
        ("vartype", "text"),
        ("source", "text"),
        ("min_val", "text"),
        ("max_val", "text"),
        ("enumvals", None),
        ("boot_val", "text"),
        ("reset_val", "text"),
        ("sourcefile", "text"),
        ("sourceline", "integer"),
        ("pending_restart", "boolean"),
    ],
    "pg_shadow": [
        ("usename", "name"),
        ("usesysid", "oid"),
        ("usecreatedb", "boolean"),
        ("usesuper", "boolean"),
        ("userepl", "boolean"),
        ("usebypassrls", "boolean"),
        ("passwd", "text"),
        ("valuntil", "timestamp with time zone"),
        ("useconfig", None),
    ],
    "pg_shdepend": [
        ("dbid", "oid"),
        ("classid", "oid"),
        ("objid", "oid"),
        ("objsubid", "integer"),
        ("refclassid", "oid"),
        ("refobjid", "oid"),
        ("deptype", "\"char\""),
    ],
    "pg_shdescription": [
        ("objoid", "oid"),
        ("classoid", "oid"),
        ("description", "text"),
    ],
    "pg_shmem_allocations": [
        ("name", "text"),
        ("off", "bigint"),
        ("size", "bigint"),
        ("allocated_size", "bigint"),
    ],
    "pg_shseclabel": [
        ("objoid", "oid"),
        ("classoid", "oid"),
        ("provider", "text"),
        ("label", "text"),
    ],
    "pg_stat_activity": [
        ("datid", "oid"),
        ("datname", "name"),
        ("pid", "integer"),
        ("leader_pid", "integer"),
        ("usesysid", "oid"),
        ("usename", "name"),
        ("application_name", "text"),
        ("client_addr", "inet"),
        ("client_hostname", "text"),
        ("client_port", "integer"),
        ("backend_start", "timestamp with time zone"),
        ("xact_start", "timestamp with time zone"),
        ("query_start", "timestamp with time zone"),
        ("state_change", "timestamp with time zone"),
        ("wait_event_type", "text"),
        ("wait_event", "text"),
        ("state", "text"),
        ("backend_xid", "xid"),
        ("backend_xmin", "xid"),
        ("query", "text"),
        ("backend_type", "text"),
    ],
    "pg_stat_all_indexes": [
        ("relid", "oid"),
        ("indexrelid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("indexrelname", "name"),
        ("idx_scan", "bigint"),
        ("idx_tup_read", "bigint"),
        ("idx_tup_fetch", "bigint"),
    ],
    "pg_stat_all_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("seq_scan", "bigint"),
        ("seq_tup_read", "bigint"),
        ("idx_scan", "bigint"),
        ("idx_tup_fetch", "bigint"),
        ("n_tup_ins", "bigint"),
        ("n_tup_upd", "bigint"),
        ("n_tup_del", "bigint"),
        ("n_tup_hot_upd", "bigint"),
        ("n_live_tup", "bigint"),
        ("n_dead_tup", "bigint"),
        ("n_mod_since_analyze", "bigint"),
        ("n_ins_since_vacuum", "bigint"),
        ("last_vacuum", "timestamp with time zone"),
        ("last_autovacuum", "timestamp with time zone"),
        ("last_analyze", "timestamp with time zone"),
        ("last_autoanalyze", "timestamp with time zone"),
        ("vacuum_count", "bigint"),
        ("autovacuum_count", "bigint"),
        ("analyze_count", "bigint"),
        ("autoanalyze_count", "bigint"),
    ],
    "pg_stat_archiver": [
        ("archived_count", "bigint"),
        ("last_archived_wal", "text"),
        ("last_archived_time", "timestamp with time zone"),
        ("failed_count", "bigint"),
        ("last_failed_wal", "text"),
        ("last_failed_time", "timestamp with time zone"),
        ("stats_reset", "timestamp with time zone"),
    ],
    "pg_stat_bgwriter": [
        ("checkpoints_timed", "bigint"),
        ("checkpoints_req", "bigint"),
        ("checkpoint_write_time", "double precision"),
        ("checkpoint_sync_time", "double precision"),
        ("buffers_checkpoint", "bigint"),
        ("buffers_clean", "bigint"),
        ("maxwritten_clean", "bigint"),
        ("buffers_backend", "bigint"),
        ("buffers_backend_fsync", "bigint"),
        ("buffers_alloc", "bigint"),
        ("stats_reset", "timestamp with time zone"),
    ],
    "pg_stat_database": [
        ("datid", "oid"),
        ("datname", "name"),
        ("numbackends", "integer"),
        ("xact_commit", "bigint"),
        ("xact_rollback", "bigint"),
        ("blks_read", "bigint"),
        ("blks_hit", "bigint"),
        ("tup_returned", "bigint"),
        ("tup_fetched", "bigint"),
        ("tup_inserted", "bigint"),
        ("tup_updated", "bigint"),
        ("tup_deleted", "bigint"),
        ("conflicts", "bigint"),
        ("temp_files", "bigint"),
        ("temp_bytes", "bigint"),
        ("deadlocks", "bigint"),
        ("checksum_failures", "bigint"),
        ("checksum_last_failure", "timestamp with time zone"),
        ("blk_read_time", "double precision"),
        ("blk_write_time", "double precision"),
        ("stats_reset", "timestamp with time zone"),
    ],
    "pg_stat_database_conflicts": [
        ("datid", "oid"),
        ("datname", "name"),
        ("confl_tablespace", "bigint"),
        ("confl_lock", "bigint"),
        ("confl_snapshot", "bigint"),
        ("confl_bufferpin", "bigint"),
        ("confl_deadlock", "bigint"),
    ],
    "pg_stat_gssapi": [
        ("pid", "integer"),
        ("gss_authenticated", "boolean"),
        ("principal", "text"),
        ("encrypted", "boolean"),
    ],
    "pg_stat_progress_analyze": [
        ("pid", "integer"),
        ("datid", "oid"),
        ("datname", "name"),
        ("relid", "oid"),
        ("phase", "text"),
        ("sample_blks_total", "bigint"),
        ("sample_blks_scanned", "bigint"),
        ("ext_stats_total", "bigint"),
        ("ext_stats_computed", "bigint"),
        ("child_tables_total", "bigint"),
        ("child_tables_done", "bigint"),
        ("current_child_table_relid", "oid"),
    ],
    "pg_stat_progress_basebackup": [
        ("pid", "integer"),
        ("phase", "text"),
        ("backup_total", "bigint"),
        ("backup_streamed", "bigint"),
        ("tablespaces_total", "bigint"),
        ("tablespaces_streamed", "bigint"),
    ],
    "pg_stat_progress_cluster": [
        ("pid", "integer"),
        ("datid", "oid"),
        ("datname", "name"),
        ("relid", "oid"),
        ("command", "text"),
        ("phase", "text"),
        ("cluster_index_relid", "oid"),
        ("heap_tuples_scanned", "bigint"),
        ("heap_tuples_written", "bigint"),
        ("heap_blks_total", "bigint"),
        ("heap_blks_scanned", "bigint"),
        ("index_rebuild_count", "bigint"),
    ],
    "pg_stat_progress_create_index": [
        ("pid", "integer"),
        ("datid", "oid"),
        ("datname", "name"),
        ("relid", "oid"),
        ("index_relid", "oid"),
        ("command", "text"),
        ("phase", "text"),
        ("lockers_total", "bigint"),
        ("lockers_done", "bigint"),
        ("current_locker_pid", "bigint"),
        ("blocks_total", "bigint"),
        ("blocks_done", "bigint"),
        ("tuples_total", "bigint"),
        ("tuples_done", "bigint"),
        ("partitions_total", "bigint"),
        ("partitions_done", "bigint"),
    ],
    "pg_stat_progress_vacuum": [
        ("pid", "integer"),
        ("datid", "oid"),
        ("datname", "name"),
        ("relid", "oid"),
        ("phase", "text"),
        ("heap_blks_total", "bigint"),
        ("heap_blks_scanned", "bigint"),
        ("heap_blks_vacuumed", "bigint"),
        ("index_vacuum_count", "bigint"),
        ("max_dead_tuples", "bigint"),
        ("num_dead_tuples", "bigint"),
    ],
    "pg_stat_replication": [
        ("pid", "integer"),
        ("usesysid", "oid"),
        ("usename", "name"),
        ("application_name", "text"),
        ("client_addr", "inet"),
        ("client_hostname", "text"),
        ("client_port", "integer"),
        ("backend_start", "timestamp with time zone"),
        ("backend_xmin", "xid"),
        ("state", "text"),
        ("sent_lsn", "pg_lsn"),
        ("write_lsn", "pg_lsn"),
        ("flush_lsn", "pg_lsn"),
        ("replay_lsn", "pg_lsn"),
        ("write_lag", "interval"),
        ("flush_lag", "interval"),
        ("replay_lag", "interval"),
        ("sync_priority", "integer"),
        ("sync_state", "text"),
        ("reply_time", "timestamp with time zone"),
    ],
    "pg_stat_slru": [
        ("name", "text"),
        ("blks_zeroed", "bigint"),
        ("blks_hit", "bigint"),
        ("blks_read", "bigint"),
        ("blks_written", "bigint"),
        ("blks_exists", "bigint"),
        ("flushes", "bigint"),
        ("truncates", "bigint"),
        ("stats_reset", "timestamp with time zone"),
    ],
    "pg_stat_ssl": [
        ("pid", "integer"),
        ("ssl", "boolean"),
        ("version", "text"),
        ("cipher", "text"),
        ("bits", "integer"),
        ("client_dn", "text"),
        ("client_serial", "numeric"),
        ("issuer_dn", "text"),
    ],
    "pg_stat_subscription": [
        ("subid", "oid"),
        ("subname", "name"),
        ("pid", "integer"),
        ("relid", "oid"),
        ("received_lsn", "pg_lsn"),
        ("last_msg_send_time", "timestamp with time zone"),
        ("last_msg_receipt_time", "timestamp with time zone"),
        ("latest_end_lsn", "pg_lsn"),
        ("latest_end_time", "timestamp with time zone"),
    ],
    "pg_stat_sys_indexes": [
        ("relid", "oid"),
        ("indexrelid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("indexrelname", "name"),
        ("idx_scan", "bigint"),
        ("idx_tup_read", "bigint"),
        ("idx_tup_fetch", "bigint"),
    ],
    "pg_stat_sys_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("seq_scan", "bigint"),
        ("seq_tup_read", "bigint"),
        ("idx_scan", "bigint"),
        ("idx_tup_fetch", "bigint"),
        ("n_tup_ins", "bigint"),
        ("n_tup_upd", "bigint"),
        ("n_tup_del", "bigint"),
        ("n_tup_hot_upd", "bigint"),
        ("n_live_tup", "bigint"),
        ("n_dead_tup", "bigint"),
        ("n_mod_since_analyze", "bigint"),
        ("n_ins_since_vacuum", "bigint"),
        ("last_vacuum", "timestamp with time zone"),
        ("last_autovacuum", "timestamp with time zone"),
        ("last_analyze", "timestamp with time zone"),
        ("last_autoanalyze", "timestamp with time zone"),
        ("vacuum_count", "bigint"),
        ("autovacuum_count", "bigint"),
        ("analyze_count", "bigint"),
        ("autoanalyze_count", "bigint"),
    ],
    "pg_stat_user_functions": [
        ("funcid", "oid"),
        ("schemaname", "name"),
        ("funcname", "name"),
        ("calls", "bigint"),
        ("total_time", "double precision"),
        ("self_time", "double precision"),
    ],
    "pg_stat_user_indexes": [
        ("relid", "oid"),
        ("indexrelid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("indexrelname", "name"),
        ("idx_scan", "bigint"),
        ("idx_tup_read", "bigint"),
        ("idx_tup_fetch", "bigint"),
    ],
    "pg_stat_user_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("seq_scan", "bigint"),
        ("seq_tup_read", "bigint"),
        ("idx_scan", "bigint"),
        ("idx_tup_fetch", "bigint"),
        ("n_tup_ins", "bigint"),
        ("n_tup_upd", "bigint"),
        ("n_tup_del", "bigint"),
        ("n_tup_hot_upd", "bigint"),
        ("n_live_tup", "bigint"),
        ("n_dead_tup", "bigint"),
        ("n_mod_since_analyze", "bigint"),
        ("n_ins_since_vacuum", "bigint"),
        ("last_vacuum", "timestamp with time zone"),
        ("last_autovacuum", "timestamp with time zone"),
        ("last_analyze", "timestamp with time zone"),
        ("last_autoanalyze", "timestamp with time zone"),
        ("vacuum_count", "bigint"),
        ("autovacuum_count", "bigint"),
        ("analyze_count", "bigint"),
        ("autoanalyze_count", "bigint"),
    ],
    "pg_stat_wal_receiver": [
        ("pid", "integer"),
        ("status", "text"),
        ("receive_start_lsn", "pg_lsn"),
        ("receive_start_tli", "integer"),
        ("written_lsn", "pg_lsn"),
        ("flushed_lsn", "pg_lsn"),
        ("received_tli", "integer"),
        ("last_msg_send_time", "timestamp with time zone"),
        ("last_msg_receipt_time", "timestamp with time zone"),
        ("latest_end_lsn", "pg_lsn"),
        ("latest_end_time", "timestamp with time zone"),
        ("slot_name", "text"),
        ("sender_host", "text"),
        ("sender_port", "integer"),
        ("conninfo", "text"),
    ],
    "pg_stat_xact_all_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("seq_scan", "bigint"),
        ("seq_tup_read", "bigint"),
        ("idx_scan", "bigint"),
        ("idx_tup_fetch", "bigint"),
        ("n_tup_ins", "bigint"),
        ("n_tup_upd", "bigint"),
        ("n_tup_del", "bigint"),
        ("n_tup_hot_upd", "bigint"),
    ],
    "pg_stat_xact_sys_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("seq_scan", "bigint"),
        ("seq_tup_read", "bigint"),
        ("idx_scan", "bigint"),
        ("idx_tup_fetch", "bigint"),
        ("n_tup_ins", "bigint"),
        ("n_tup_upd", "bigint"),
        ("n_tup_del", "bigint"),
        ("n_tup_hot_upd", "bigint"),
    ],
    "pg_stat_xact_user_functions": [
        ("funcid", "oid"),
        ("schemaname", "name"),
        ("funcname", "name"),
        ("calls", "bigint"),
        ("total_time", "double precision"),
        ("self_time", "double precision"),
    ],
    "pg_stat_xact_user_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("seq_scan", "bigint"),
        ("seq_tup_read", "bigint"),
        ("idx_scan", "bigint"),
        ("idx_tup_fetch", "bigint"),
        ("n_tup_ins", "bigint"),
        ("n_tup_upd", "bigint"),
        ("n_tup_del", "bigint"),
        ("n_tup_hot_upd", "bigint"),
    ],
    "pg_statio_all_indexes": [
        ("relid", "oid"),
        ("indexrelid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("indexrelname", "name"),
        ("idx_blks_read", "bigint"),
        ("idx_blks_hit", "bigint"),
    ],
    "pg_statio_all_sequences": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("blks_read", "bigint"),
        ("blks_hit", "bigint"),
    ],
    "pg_statio_all_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("heap_blks_read", "bigint"),
        ("heap_blks_hit", "bigint"),
        ("idx_blks_read", "bigint"),
        ("idx_blks_hit", "bigint"),
        ("toast_blks_read", "bigint"),
        ("toast_blks_hit", "bigint"),
        ("tidx_blks_read", "bigint"),
        ("tidx_blks_hit", "bigint"),
    ],
    "pg_statio_sys_indexes": [
        ("relid", "oid"),
        ("indexrelid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("indexrelname", "name"),
        ("idx_blks_read", "bigint"),
        ("idx_blks_hit", "bigint"),
    ],
    "pg_statio_sys_sequences": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("blks_read", "bigint"),
        ("blks_hit", "bigint"),
    ],
    "pg_statio_sys_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("heap_blks_read", "bigint"),
        ("heap_blks_hit", "bigint"),
        ("idx_blks_read", "bigint"),
        ("idx_blks_hit", "bigint"),
        ("toast_blks_read", "bigint"),
        ("toast_blks_hit", "bigint"),
        ("tidx_blks_read", "bigint"),
        ("tidx_blks_hit", "bigint"),
    ],
    "pg_statio_user_indexes": [
        ("relid", "oid"),
        ("indexrelid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("indexrelname", "name"),
        ("idx_blks_read", "bigint"),
        ("idx_blks_hit", "bigint"),
    ],
    "pg_statio_user_sequences": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("blks_read", "bigint"),
        ("blks_hit", "bigint"),
    ],
    "pg_statio_user_tables": [
        ("relid", "oid"),
        ("schemaname", "name"),
        ("relname", "name"),
        ("heap_blks_read", "bigint"),
        ("heap_blks_hit", "bigint"),
        ("idx_blks_read", "bigint"),
        ("idx_blks_hit", "bigint"),
        ("toast_blks_read", "bigint"),
        ("toast_blks_hit", "bigint"),
        ("tidx_blks_read", "bigint"),
        ("tidx_blks_hit", "bigint"),
    ],
    "pg_statistic": [
        ("starelid", "oid"),
        ("staattnum", "smallint"),
        ("stainherit", "boolean"),
        ("stanullfrac", "real"),
        ("stawidth", "integer"),
        ("stadistinct", "real"),
        ("stakind1", "smallint"),
        ("stakind2", "smallint"),
        ("stakind3", "smallint"),
        ("stakind4", "smallint"),
        ("stakind5", "smallint"),
        ("staop1", "oid"),
        ("staop2", "oid"),
        ("staop3", "oid"),
        ("staop4", "oid"),
        ("staop5", "oid"),
        ("stacoll1", "oid"),
        ("stacoll2", "oid"),
        ("stacoll3", "oid"),
        ("stacoll4", "oid"),
        ("stacoll5", "oid"),
        ("stanumbers1", None),
        ("stanumbers2", None),
        ("stanumbers3", None),
        ("stanumbers4", None),
        ("stanumbers5", None),
        ("stavalues1", None),
        ("stavalues2", None),
        ("stavalues3", None),
        ("stavalues4", None),
        ("stavalues5", None),
    ],
    "pg_statistic_ext": [
        ("oid", "oid"),
        ("stxrelid", "oid"),
        ("stxname", "name"),
        ("stxnamespace", "oid"),
        ("stxowner", "oid"),
        ("stxstattarget", "integer"),
        ("stxkeys", None),
        ("stxkind", None),
    ],
    "pg_statistic_ext_data": [
        ("stxoid", "oid"),
        ("stxdndistinct", "pg_ndistinct"),
        ("stxddependencies", "pg_dependencies"),
        ("stxdmcv", "pg_mcv_list"),
    ],
    "pg_stats": [
        ("schemaname", "name"),
        ("tablename", "name"),
        ("attname", "name"),
        ("inherited", "boolean"),
        ("null_frac", "real"),
        ("avg_width", "integer"),
        ("n_distinct", "real"),
        ("most_common_vals", None),
        ("most_common_freqs", None),
        ("histogram_bounds", None),
        ("correlation", "real"),
        ("most_common_elems", None),
        ("most_common_elem_freqs", None),
        ("elem_count_histogram", None),
    ],
    "pg_stats_ext": [
        ("schemaname", "name"),
        ("tablename", "name"),
        ("statistics_schemaname", "name"),
        ("statistics_name", "name"),
        ("statistics_owner", "name"),
        ("attnames", None),
        ("kinds", None),
        ("n_distinct", "pg_ndistinct"),
        ("dependencies", "pg_dependencies"),
        ("most_common_vals", None),
        ("most_common_val_nulls", None),
        ("most_common_freqs", None),
        ("most_common_base_freqs", None),
    ],
    "pg_subscription": [
        ("oid", "oid"),
        ("subdbid", "oid"),
        ("subname", "name"),
        ("subowner", "oid"),
        ("subenabled", "boolean"),
        ("subconninfo", "text"),
        ("subslotname", "name"),
        ("subsynccommit", "text"),
        ("subpublications", None),
    ],
    "pg_subscription_rel": [
        ("srsubid", "oid"),
        ("srrelid", "oid"),
        ("srsubstate", "\"char\""),
        ("srsublsn", "pg_lsn"),
    ],
    "pg_tables": [
        ("schemaname", "name"),
        ("tablename", "name"),
        ("tableowner", "name"),
        ("tablespace", "name"),
        ("hasindexes", "boolean"),
        ("hasrules", "boolean"),
        ("hastriggers", "boolean"),
        ("rowsecurity", "boolean"),
    ],
    "pg_tablespace": [
        ("oid", "oid"),
        ("spcname", "name"),
        ("spcowner", "oid"),
        ("spcacl", None),
        ("spcoptions", None),
    ],
    "pg_timezone_abbrevs": [
        ("abbrev", "text"),
        ("utc_offset", "interval"),
        ("is_dst", "boolean"),
    ],
    "pg_timezone_names": [
        ("name", "text"),
        ("abbrev", "text"),
        ("utc_offset", "interval"),
        ("is_dst", "boolean"),
    ],
    "pg_transform": [
        ("oid", "oid"),
        ("trftype", "oid"),
        ("trflang", "oid"),
        ("trffromsql", "regproc"),
        ("trftosql", "regproc"),
    ],
    "pg_trigger": [
        ("oid", "oid"),
        ("tgrelid", "oid"),
        ("tgparentid", "oid"),
        ("tgname", "name"),
        ("tgfoid", "oid"),
        ("tgtype", "smallint"),
        ("tgenabled", "\"char\""),
        ("tgisinternal", "boolean"),
        ("tgconstrrelid", "oid"),
        ("tgconstrindid", "oid"),
        ("tgconstraint", "oid"),
        ("tgdeferrable", "boolean"),
        ("tginitdeferred", "boolean"),
        ("tgnargs", "smallint"),
        ("tgattr", None),
        ("tgargs", "bytea"),
        ("tgqual", "pg_node_tree"),
        ("tgoldtable", "name"),
        ("tgnewtable", "name"),
    ],
    "pg_ts_config": [
        ("oid", "oid"),
        ("cfgname", "name"),
        ("cfgnamespace", "oid"),
        ("cfgowner", "oid"),
        ("cfgparser", "oid"),
    ],
    "pg_ts_config_map": [
        ("mapcfg", "oid"),
        ("maptokentype", "integer"),
        ("mapseqno", "integer"),
        ("mapdict", "oid"),
    ],
    "pg_ts_dict": [
        ("oid", "oid"),
        ("dictname", "name"),
        ("dictnamespace", "oid"),
        ("dictowner", "oid"),
        ("dicttemplate", "oid"),
        ("dictinitoption", "text"),
    ],
    "pg_ts_parser": [
        ("oid", "oid"),
        ("prsname", "name"),
        ("prsnamespace", "oid"),
        ("prsstart", "regproc"),
        ("prstoken", "regproc"),
        ("prsend", "regproc"),
        ("prsheadline", "regproc"),
        ("prslextype", "regproc"),
    ],
    "pg_ts_template": [
        ("oid", "oid"),
        ("tmplname", "name"),
        ("tmplnamespace", "oid"),
        ("tmplinit", "regproc"),
        ("tmpllexize", "regproc"),
    ],
    "pg_type": [
        ("oid", "oid"),
        ("typname", "name"),
        ("typnamespace", "oid"),
        ("typowner", "oid"),
        ("typlen", "smallint"),
        ("typbyval", "boolean"),
        ("typtype", "\"char\""),
        ("typcategory", "\"char\""),
        ("typispreferred", "boolean"),
        ("typisdefined", "boolean"),
        ("typdelim", "\"char\""),
        ("typrelid", "oid"),
        ("typelem", "oid"),
        ("typarray", "oid"),
        ("typinput", "regproc"),
        ("typoutput", "regproc"),
        ("typreceive", "regproc"),
        ("typsend", "regproc"),
        ("typmodin", "regproc"),
        ("typmodout", "regproc"),
        ("typanalyze", "regproc"),
        ("typalign", "\"char\""),
        ("typstorage", "\"char\""),
        ("typnotnull", "boolean"),
        ("typbasetype", "oid"),
        ("typtypmod", "integer"),
        ("typndims", "integer"),
        ("typcollation", "oid"),
        ("typdefaultbin", "pg_node_tree"),
        ("typdefault", "text"),
        ("typacl", None),
    ],
    "pg_user": [
        ("usename", "name"),
        ("usesysid", "oid"),
        ("usecreatedb", "boolean"),
        ("usesuper", "boolean"),
        ("userepl", "boolean"),
        ("usebypassrls", "boolean"),
        ("passwd", "text"),
        ("valuntil", "timestamp with time zone"),
        ("useconfig", None),
    ],
    "pg_user_mapping": [
        ("oid", "oid"),
        ("umuser", "oid"),
        ("umserver", "oid"),
        ("umoptions", None),
    ],
    "pg_user_mappings": [
        ("umid", "oid"),
        ("srvid", "oid"),
        ("srvname", "name"),
        ("umuser", "oid"),
        ("usename", "name"),
        ("umoptions", None),
    ],
    "pg_views": [
        ("schemaname", "name"),
        ("viewname", "name"),
        ("viewowner", "name"),
        ("definition", "text"),
    ]
}
