sig
  type t = {
    bag :
      (Raw_signal_manager.Signal.t -> unit) Core.Std.sexp_opaque
      Core.Std.Bag.t;
  }
  val sexp_of_t : Raw_signal_manager.Handlers.t -> Sexplib.Sexp.t
  val create : unit -> Raw_signal_manager.Handlers.t
  val add :
    Raw_signal_manager.Handlers.t ->
    (Raw_signal_manager.Signal.t -> unit) Core.Std.sexp_opaque ->
    (Raw_signal_manager.Signal.t -> unit) Core.Std.sexp_opaque
    Core.Std.Bag.Elt.t
  val remove :
    Raw_signal_manager.Handlers.t ->
    (Raw_signal_manager.Signal.t -> unit) Core.Std.sexp_opaque
    Core.Std.Bag.Elt.t -> unit
  val deliver :
    Raw_signal_manager.Handlers.t -> Raw_signal_manager.Signal.t -> unit
end