   private var manager: TimerManagerType?
   
   /// Current timer time.
-  private(set) var time: Double
+  public private(set) var time: Double
   
   /// The gap between executions in seconds.
-  private(set) var interval: Double = 0
+  public private(set) var interval: Double = 0
   
   /// Whether the timer is in paused state or not.
-  private(set) var paused: Bool = false
+  public private(set) var paused: Bool = false
   
   /**
    

 */
public class Countdown: Timer {
  
  override func tick(every interval: Double, _ update: (Double) -> ()) {
    let interval = interval > 0 ? -interval : interval
    
    if time == 0 {

      - interval: The delay of execution in seconds.
      - update: A closure to handle the timer call.
   */
  public class func once(after interval: Double = 1.0, _ update: () -> ()) {
    
    var manager = Manager.init(interval: interval, time: 0, repeats: false)
    manager?.resumeHandler = { _ in update() }
