`module Time_ns : sig ... end`
`module Alarm : sig ... end`
`module Alarm_precision = Core_kernel.Timing_wheel_ns.Alarm_precision`
`val default_timing_wheel_config : Core_kernel.Timing_wheel_ns.Config.t`
`type callback``= unit ‑> unit```
`module T1 : sig ... end`
`type t``= Core_kernel.read T1.t```
`val sexp_of_t : t ‑> Base.Sexp.t`
`val invariant : 'a T1.t ‑> unit`
`module Read_write : sig ... end`
`val is_wall_clock : 'a T1.t ‑> bool`
`val read_only : [> Core_kernel.read ] T1.t ‑> t`
`val fire : 'a T1.t ‑> T1.Event.t ‑> unit`
`val alarm_precision : 'a T1.t ‑> Core_kernel.Timing_wheel_ns.Time.Span.t`
`val now : 'a T1.t ‑> Time_ns.t`
`val timing_wheel_now : 'a T1.t ‑> Core_kernel.Timing_wheel_ns.Time.t`
`val schedule : 'a T1.t ‑> T1.Event.t ‑> unit`
`module Event : sig ... end`
`val run_after : 'a T1.t ‑> Core_kernel.Time_ns.Span.t ‑> (unit ‑> unit) ‑> unit`
`val run_at : 'a T1.t ‑> Time_ns.t ‑> (unit ‑> unit) ‑> unit`
`val run_at_intervals : 'a T1.t ‑> Time_ns.Span.t ‑> (unit ‑> unit) ‑> unit`
`type send_exn``= Async_kernel__.Monitor0.t ‑> ?⁠backtrace:[ `Get | `This of Core_kernel.Backtrace.t ] ‑> exn ‑> unit```
`val run_fired_events : 'a T1.t ‑> send_exn:send_exn option ‑> unit`
`val advance_clock : 'a T1.t ‑> to_:Core_kernel.Timing_wheel_ns.Time.t ‑> send_exn:send_exn option ‑> unit`
`val fire_past_alarms : 'a T1.t ‑> send_exn:send_exn option ‑> unit`
`val advance : 'a T1.t ‑> to_:Core_kernel.Timing_wheel_ns.Time.t ‑> send_exn:send_exn option ‑> unit`
`val advance_by_alarms : 'a T1.t ‑> to_:Time_ns.t ‑> (unit, Core_kernel.Error.t) Core_kernel._result`