sig
  module Monad :
    sig
      type 'a t
      val return : 'a -> 'a Bitcoin.HTTPCLIENT.Monad.t
      val fail : exn -> 'a Bitcoin.HTTPCLIENT.Monad.t
      val bind :
        'a Bitcoin.HTTPCLIENT.Monad.t ->
        ('a -> 'b Bitcoin.HTTPCLIENT.Monad.t) ->
        'b Bitcoin.HTTPCLIENT.Monad.t
      val catch :
        (unit -> 'a Bitcoin.HTTPCLIENT.Monad.t) ->
        (exn -> 'a Bitcoin.HTTPCLIENT.Monad.t) ->
        'a Bitcoin.HTTPCLIENT.Monad.t
    end
  val post_string :
    headers:(string * string) list ->
    inet_addr:Unix.inet_addr ->
    host:string ->
    port:int -> uri:string -> string -> string Bitcoin.HTTPCLIENT.Monad.t
end