# sig/io/stream/shim/buffered.rbs

class BasicSocket
  def buffered=: () -> untyped
  def buffered?: () -> untyped
  def ip_protocol_tcp?: () -> untyped
  def readable?: () -> untyped
end


# sig/io/stream.rbs

class IO
  def self.Stream: () -> untyped
  def buffered=: () -> untyped
  def buffered?: () -> untyped
  def readable?: () -> untyped
end


# sig/io/stream/buffered.rbs

class IO::Stream::Buffered < IO::Stream::Generic
  def self.open: () -> untyped
  def self.wrap: () -> untyped
  def close_read: () -> untyped
  def close_write: () -> untyped
  def closed?: () -> untyped
  def initialize: () -> void
  def readable?: () -> untyped
  def sysclose: () -> untyped
  def sysclose: () -> untyped
  def sysread: () -> untyped
  def syswrite: () -> untyped
  def syswrite: () -> untyped
  def to_io: () -> untyped
end


# sig/io/stream/generic.rbs

class IO::Stream::Generic
  def close: () -> untyped
  def closed?: () -> untyped
  def initialize: () -> void
  def sysclose: () -> untyped
  def sysread: () -> untyped
  def syswrite: () -> untyped
end


# sig/io/stream/string_buffer.rbs

class IO::Stream::StringBuffer < IO::Stream::String
  def <<: () -> untyped
  def initialize: () -> void
end


# sig/io/stream/openssl.rbs

class OpenSSL::SSL::SSLSocket
  def buffered=: () -> untyped
  def buffered?: () -> untyped
  def close_read: () -> untyped
  def close_write: () -> untyped
  def readable?: () -> untyped
  def timeout: () -> untyped
  def timeout=: () -> untyped
  def wait_readable: () -> untyped
  def wait_writable: () -> untyped
end


# sig/io/stream/shim/buffered.rbs

class StringIO
  def buffered=: () -> untyped
  def buffered?: () -> untyped
  def readable?: () -> untyped
end


# sig/io/stream/readable.rbs

module IO::Stream::Readable
  def block_size: () -> untyped
  def block_size=: () -> untyped
  def close_read: () -> untyped
  def consume_read_buffer: () -> untyped
  def discard_until: () -> untyped
  def fill_read_buffer: () -> untyped
  def finish!: () -> untyped
  def finished?: () -> untyped
  def gets: () -> untyped
  def index_of: () -> untyped
  def initialize: () -> void
  def peek: () -> untyped
  def read: () -> untyped
  def read_exactly: () -> untyped
  def read_partial: () -> untyped
  def read_until: () -> untyped
  def readable?: () -> untyped
  def readpartial: () -> untyped
end


# sig/io/stream/writable.rbs

module IO::Stream::Writable
  def <<: () -> untyped
  def close_write: () -> untyped
  def drain: () -> untyped
  def flush: () -> untyped
  def initialize: () -> void
  def puts: () -> untyped
  def write: () -> untyped
end
