sig
  type span_ns = int64
  type trigger
  type t
  val watch :
    delay_ns:Tick.WATCHER.span_ns -> Tick.WATCHER.trigger -> Tick.WATCHER.t
  val unwatch : Tick.WATCHER.t -> unit
  val waiting : Tick.WATCHER.t -> bool
  val linger_ns : Tick.WATCHER.t -> Tick.WATCHER.span_ns
  val delay_ns : Tick.WATCHER.t -> Tick.WATCHER.span_ns
  val trigger : Tick.WATCHER.t -> Tick.WATCHER.trigger
  val fold : ('-> Tick.WATCHER.t -> 'a) -> '-> 'a
end