sig   type time_diff = Sharp_core.time   type 'a command =       Once of 'a * Sharp_ticker.time_diff     | Every of 'a * Sharp_ticker.time_diff     | NTimes of 'a * Sharp_ticker.time_diff * int   val tick_manager :     'Sharp_ticker.command list ->     'a option Sharp_core.t * ('Sharp_ticker.command -> unit) *     (unit -> unit)   val every :     Sharp_ticker.time_diff -> '-> 'a option Sharp_core.t * (unit -> unit)   val last_for :     Sharp_ticker.time_diff ->     'a option Sharp_core.t -> 'a option Sharp_core.t end