My only real criticism, is it would be nice if it supported generators/promises as an alternative to for-await syntax.

IxJS [1] already has pipeable functions for working with AsyncIterable (the underlying interface for the proposed for-await-of syntax).

[1] https://github.com/ReactiveX/IxJS