sig
  type caller_query
  type caller_response
  type callee_query
  type callee_response
  val dispatch_multi :
    Versioned_rpc.Connection_with_menu.t ->
    Versioned_rpc.Both_convert.Plain.S.caller_query ->
    Versioned_rpc.Both_convert.Plain.S.caller_response Core.Std.Or_error.t
    Import.Deferred.t
  val implement_multi :
    ?log_not_previously_seen_version:(name:string -> int -> unit) ->
    ('state ->
     Versioned_rpc.Both_convert.Plain.S.callee_query ->
     Versioned_rpc.Both_convert.Plain.S.callee_response Import.Deferred.t) ->
    'state Rpc.Implementation.t list
  val versions : unit -> Core.Std.Int.Set.t
end