sig
  module type Protocol =
    sig
      val get_requests : unit -> Why3.Itp_communication.ide_request list
      val notify : Why3.Itp_communication.notification -> unit
    end
  val add_registered_lang :
    string ->
    (Why3.Task.task ->
     Why3.Pretty.any_pp Why3.Pp.pp -> Why3.Pretty.any_pp Why3.Pp.pp) ->
    unit
  val set_partial_config : Why3.Whyconf.config -> unit
  module Make :
    Why3.Controller_itp.Scheduler -> Protocol ->
      sig
        val focus_on_loading : (Why3.Task.task -> bool) -> unit
        val init_server :
          ?send_source:bool ->
          Why3.Whyconf.config -> Why3.Env.env -> string -> unit
      end
end