Module Util_lwt_seaboar.Timer

val sleep : int
type 'a t =
  1. | Timer of {
    1. clock : unit Lwt.t Stdlib.ref;
    2. cancel : bool Stdlib.ref;
    3. force_finish : bool Stdlib.ref;
    4. timer_handler_data : 'a;
    5. elapsed : int Stdlib.ref;
    6. remaining : int Stdlib.ref;
    }
module Acc : sig ... end
val mk' : ?elapsed:int -> (expired:bool -> 'a -> unit) -> 'a -> int -> 'a t
val mk : ?elapsed:int -> (expired:bool -> 'a -> unit) -> 'a -> int -> ('a t, [> `Msg of string ]) Stdlib.result
val cancel : 'a t -> unit
val force_finish : 'a t -> unit
val encode : ('a -> SE.value) -> 'a t -> SE.value
val decode : (expired:bool -> 'a -> unit) -> 'a Seaboar__.Decode.t -> 'a t Seaboar__.Decode.t