Future<bool> until<T>(bool Function(TState state) predicate) { return _controller.stream.any(predicate); }