Wait for an event to occur
factory Waitable.Event(Future Function(Online) action) => WaitableEvent(action);