# sig/nio/bytebuffer.rbs

class NIO::ByteBuffer
  def []: () -> untyped
  def clear: () -> untyped
  def compact: () -> untyped
  def each: () -> untyped
  def flip: () -> untyped
  def full?: () -> untyped
  def get: () -> untyped
  def initialize: () -> void
  def inspect: () -> untyped
  def limit=: () -> untyped
  def mark: () -> untyped
  def position=: () -> untyped
  def put: () -> untyped
  def read_from: () -> untyped
  def remaining: () -> untyped
  def reset: () -> untyped
  def rewind: () -> untyped
  def write_to: () -> untyped
end


# sig/nio/monitor.rbs

class NIO::Monitor
  def add_interest: () -> untyped
  def close: () -> untyped
  def closed?: () -> untyped
  def initialize: () -> void
  def interests=: () -> untyped
  def readable?: () -> untyped
  def remove_interest: () -> untyped
  def writable?: () -> untyped
end


# sig/nio/selector.rbs

class NIO::Selector
  def self.backends: () -> untyped
  def backend: () -> untyped
  def close: () -> untyped
  def closed?: () -> untyped
  def deregister: () -> untyped
  def empty?: () -> untyped
  def initialize: () -> void
  def register: () -> untyped
  def registered?: () -> untyped
  def select: () -> untyped
  def wakeup: () -> untyped
end


# sig/nio.rbs

module NIO
  def self.engine: () -> untyped
  def self.pure?: () -> untyped
end
