/** * An async iterable data-structure that wraps another async-iterable * so that iteration happens lazily, but can be restarted at any time. * * Multiple callers can iterate the same iterable concurrently. */ export default class RestartableAsyncIterable { private _cache; private _done; private _iterator; private _nextPromise; constructor(inner: Iterable | AsyncIterable); [Symbol.asyncIterator](): AsyncIterator; private _internalNextElement; private _next; }