'a ->
object
  method connect : ('a -> unit) -> unit
  method fire : 'a -> unit
  method get : 'a
  method lock : (unit -> unit) -> unit
  method on_check : 'a -> (bool -> unit) -> unit
  method on_event : (unit -> unit) -> unit
  method on_value : 'a -> (unit -> unit) -> unit
  method send : ('a -> unit) -> unit -> unit
  method set : 'a -> unit
  method set_enabled : bool -> unit
end