module IO = IO
val create : ?read_buf:Stdlib.Buffer.t -> ?write_buf:Stdlib.Buffer.t -> mode:mode -> Cohttp.Request.t -> IO.ic -> IO.oc -> t
val req : t -> Cohttp.Request.t
val upgrade_connection : ?read_buf:Stdlib.Buffer.t -> ?write_buf:Stdlib.Buffer.t -> Cohttp.Request.t -> (t -> unit IO.t) -> [> `Expert of Cohttp.Response.t * (IO.ic -> IO.oc -> unit IO.t) ]