`include T1.Event`
`module Status = T1.Event.Status`
`type t``= Async_kernel__.Types.Event.t``=` `{`

`mutable alarm : Async_kernel__.Job_or_event.t Alarm.t;`
`mutable at : Time_ns.t;`
`callback : unit ‑> unit;`
`execution_context : Async_kernel.Execution_context.t;`
`mutable interval : Time_ns.Span.t option;`
`mutable next_fired : t;`
`mutable status : Status.t;`

`}```
`val status : t ‑> Status.t`
`val set_status : t ‑> Status.t ‑> unit`
`val next_fired : t ‑> t`
`val set_next_fired : t ‑> t ‑> unit`
`val interval : t ‑> Time_ns.Span.t option`
`val set_interval : t ‑> Time_ns.Span.t option ‑> unit`
`val execution_context : t ‑> Async_kernel.Execution_context.t`
`val callback : t ‑> unit ‑> unit`
`val at : t ‑> Time_ns.t`
`val set_at : t ‑> Time_ns.t ‑> unit`
`val alarm : t ‑> Async_kernel__.Job_or_event.t Alarm.t`
`val set_alarm : t ‑> Async_kernel__.Job_or_event.t Alarm.t ‑> unit`
`module Fields = T1.Event.Fields`
`val none : t`
`val is_none : t ‑> bool`
`val is_some : t ‑> bool`
`val sexp_of_t : t ‑> Base.Sexp.t`
`val invariant : t ‑> unit`
`val compare_at : t ‑> t ‑> int`
`val set_status : t ‑> Status.t ‑> unit`
`val add : 'a T1.t ‑> at:Time_ns.t ‑> interval:Time_ns.Span.t option ‑> callback:(unit ‑> unit) ‑> t`
`val at : 'a T1.t ‑> Time_ns.t ‑> (unit ‑> unit) ‑> t`
`val after : 'a T1.t ‑> Core_kernel.Time_ns.Span.t ‑> (unit ‑> unit) ‑> t`
`val at_intervals : 'a T1.t ‑> Time_ns.Span.t ‑> (unit ‑> unit) ‑> t`
`module Abort_result : sig ... end`
`val abort : 'a T1.t ‑> T1.Event.t ‑> Abort_result.t`
`val abort_if_possible : 'a T1.t ‑> T1.Event.t ‑> unit`
`val abort_exn : 'a T1.t ‑> T1.Event.t ‑> unit`