sig
  type t = private Limiter.limiter
  val create_exn :
    now:Time.t -> max_concurrent_jobs:int -> Limiter.Throttle.t
  val try_start_job :
    Limiter.Throttle.t ->
    now:Time.t -> [ `Max_concurrent_jobs_running | `Start ]
  val finish_job : Limiter.Throttle.t -> now:Time.t -> unit
end