# sig/pg/basic_type_map_based_on_result.rbs

class PG::BasicTypeMapBasedOnResult < PG::TypeMapByOid
  def initialize: () -> void
end


# sig/pg/basic_type_map_for_queries.rbs

class PG::BasicTypeMapForQueries < PG::TypeMapByClass
  def array_encoders_by_klass: () -> untyped
  def coder_by_name: () -> untyped
  def encode_array_as=: () -> untyped
  def get_array_type: () -> untyped
  def init_encoders: () -> untyped
  def initialize: () -> void
  def populate_encoder_list: () -> untyped
  def raise_undefined_type: () -> untyped
  def undefined: () -> untyped
end


# sig/pg/basic_type_map_for_results.rbs

class PG::BasicTypeMapForResults < PG::TypeMapByOid
  def initialize: () -> void
end


# sig/pg/basic_type_map_for_results.rbs

class PG::BasicTypeMapForResults::WarningTypeMap < PG::BasicTypeMapForResults::PG::TypeMapInRuby
  def initialize: () -> void
  def typecast_result_value: () -> untyped
end


# sig/pg/basic_type_registry.rbs

class PG::BasicTypeRegistry
  def alias_type: () -> untyped
  def coders_for: () -> untyped
  def initialize: () -> void
  def register_coder: () -> untyped
  def register_default_types: () -> untyped
  def register_type: () -> untyped
end


# sig/pg/basic_type_registry.rbs

class PG::BasicTypeRegistry::CoderMap
  def coder_by_name: () -> untyped
  def coder_by_oid: () -> untyped
  def initialize: () -> void
end


# sig/pg/basic_type_registry.rbs

class PG::BasicTypeRegistry::CoderMapsBundle
  def each_format: () -> untyped
  def init_maps: () -> untyped
  def initialize: () -> void
  def map_for: () -> untyped
end


# sig/pg/binary_decoder/timestamp.rbs

class PG::BinaryDecoder::TimestampLocal < PG::BinaryDecoder::Timestamp
  def initialize: () -> void
end


# sig/pg/binary_decoder/timestamp.rbs

class PG::BinaryDecoder::TimestampUtc < PG::BinaryDecoder::Timestamp
  def initialize: () -> void
end


# sig/pg/binary_decoder/timestamp.rbs

class PG::BinaryDecoder::TimestampUtcToLocal < PG::BinaryDecoder::Timestamp
  def initialize: () -> void
end


# sig/pg/binary_encoder/timestamp.rbs

class PG::BinaryEncoder::TimestampLocal < PG::BinaryEncoder::Timestamp
  def initialize: () -> void
end


# sig/pg/binary_encoder/timestamp.rbs

class PG::BinaryEncoder::TimestampUtc < PG::BinaryEncoder::Timestamp
  def initialize: () -> void
end


# sig/pg/coder.rbs

class PG::Coder
  def ==: () -> untyped
  def dup: () -> untyped
  def initialize: () -> void
  def inspect: () -> untyped
  def inspect_short: () -> untyped
  def marshal_dump: () -> untyped
  def marshal_load: () -> untyped
  def to_h: () -> untyped
end


# sig/pg/coder.rbs

class PG::CompositeCoder < PG::Coder
  def inspect: () -> untyped
  def to_h: () -> untyped
end


# sig/pg/connection.rbs

class PG::Connection
  def self.conndefaults_hash: () -> untyped
  def self.connect_hash_to_string: () -> untyped
  def self.parse_connect_args: () -> untyped
  def self.quote_connstr: () -> untyped
  def async_api=: () -> untyped
  def async_connect_or_reset: () -> untyped
  def async_send_api=: () -> untyped
  def cancel: () -> untyped
  def check_socket: () -> untyped
  def conndefaults: () -> untyped
  def conndefaults_hash: () -> untyped
  def connect_to_hosts: () -> untyped
  def conninfo_hash: () -> untyped
  def copy_data: () -> untyped
  def encrypt_password: () -> untyped
  def get_copy_data: () -> untyped
  def get_result: () -> untyped
  def host_is_named_pipe?: () -> untyped
  def inspect: () -> untyped
  def isnonblocking: () -> untyped
  def new: () -> untyped
  def ping: () -> untyped
  def put_copy_data: () -> untyped
  def put_copy_end: () -> untyped
  def reset: () -> untyped
  def setnonblocking: () -> untyped
  def ssl_attributes: () -> untyped
  def transaction: () -> untyped
end


# sig/pg/coder.rbs

class PG::CopyCoder < PG::Coder
  def to_h: () -> untyped
end


# sig/pg/exceptions.rbs

class PG::Error < PG::StandardError
  def initialize: () -> void
end


# sig/pg/coder.rbs

class PG::RecordCoder < PG::Coder
  def to_h: () -> untyped
end


# sig/pg/result.rbs

class PG::Result
  def field_names_as: () -> untyped
  def inspect: () -> untyped
  def map_types!: () -> untyped
end


# sig/pg/text_decoder/date.rbs

class PG::TextDecoder::Date < PG::TextDecoder::SimpleDecoder
  def decode: () -> untyped
end


# sig/pg/text_decoder/json.rbs

class PG::TextDecoder::JSON < PG::TextDecoder::SimpleDecoder
  def decode: () -> untyped
end


# sig/pg/text_decoder/timestamp.rbs

class PG::TextDecoder::TimestampLocal < PG::TextDecoder::Timestamp
  def initialize: () -> void
end


# sig/pg/text_decoder/timestamp.rbs

class PG::TextDecoder::TimestampUtc < PG::TextDecoder::Timestamp
  def initialize: () -> void
end


# sig/pg/text_decoder/timestamp.rbs

class PG::TextDecoder::TimestampUtcToLocal < PG::TextDecoder::Timestamp
  def initialize: () -> void
end


# sig/pg/text_encoder/date.rbs

class PG::TextEncoder::Date < PG::TextEncoder::SimpleEncoder
  def encode: () -> untyped
end


# sig/pg/text_encoder/inet.rbs

class PG::TextEncoder::Inet < PG::TextEncoder::SimpleEncoder
  def encode: () -> untyped
end


# sig/pg/text_encoder/json.rbs

class PG::TextEncoder::JSON < PG::TextEncoder::SimpleEncoder
  def encode: () -> untyped
end


# sig/pg/text_encoder/timestamp.rbs

class PG::TextEncoder::TimestampUtc < PG::TextEncoder::SimpleEncoder
  def encode: () -> untyped
end


# sig/pg/text_encoder/timestamp.rbs

class PG::TextEncoder::TimestampWithTimeZone < PG::TextEncoder::SimpleEncoder
  def encode: () -> untyped
end


# sig/pg/text_encoder/timestamp.rbs

class PG::TextEncoder::TimestampWithoutTimeZone < PG::TextEncoder::SimpleEncoder
  def encode: () -> untyped
end


# sig/pg/tuple.rbs

class PG::Tuple
  def each_key: () -> untyped
  def has_key?: () -> untyped
  def inspect: () -> untyped
  def keys: () -> untyped
end


# sig/pg/type_map_by_column.rbs

class PG::TypeMapByColumn
  def inspect: () -> untyped
  def oids: () -> untyped
end


# sig/pg.rbs

module PG
  def self.connect: () -> untyped
  def self.make_shareable: () -> untyped
  def self.make_shareable: () -> untyped
  def self.version_string: () -> untyped
end


# sig/pg/basic_type_registry.rbs

module PG::BasicTypeRegistry::Checker
  def build_coder_maps: () -> untyped
  def check_format_and_direction: () -> untyped
end


# sig/pg/coder.rbs

module PG::Coder::BinaryFormatting
  def initialize: () -> void
end
