@@ -0,0 +1,15 @@
+'use strict';
+
+async function* asyncIterator() {
+  while (true) {
+    const value = await this.next();
+    if (!value) {
+      await this.close();
+      return;
+    }
+
+    yield value;
+  }
+}
+
+exports.asyncIterator = asyncIterator;
nit: can we stick to the same file naming conventions used throughout the module? I know it's not the greatest, but I don't think a world where we have mixed conventions feels any better.