# sig/timeout.rbs class Timeout::Request def done?: () -> bool def expired?: (Float now) -> false def finished: () -> true def initialize: (Thread thread, Integer timeout, Class exception_class, String message) -> void end # sig/timeout.rbs module Timeout def self.ensure_timeout_thread_created: () -> nil def timeout: (Integer sec, ?Class klass, ?String message, ) -> TCPSocket end