Module EzWsEio

include EzWsEioTypes.S
type 'a r = ('a, string) Stdlib.result
type 'a action = {
  1. send : 'a -> unit r;
  2. close : int option -> unit r;
}
type 'a ws = {
  1. action : 'a action;
  2. conn : unit r Eio.Promise.t;
}
val connect : ?msg:string -> ?protocols:string list -> ?error:(string action -> string -> unit) -> net:[> [ `Generic | `Unix ] Eio.Net.ty ] Eio.Std.r -> sw:Eio.Switch.t -> react:(string action -> string -> unit r) -> string -> string ws r
val connect0 : ?msg:string -> ?protocols:string list -> ?error:(string action -> string -> unit) -> net:[> [ `Generic | `Unix ] Eio.Net.ty ] Eio.Std.r -> sw:Eio.Switch.t -> react:('input action -> ('output, 'error) Stdlib.result -> unit r) -> EzAPI.base_url -> ('input, 'output, 'error, _) EzAPI.ws_service0 -> 'input ws r