declare function createSafeIterator(factory: (iterable: Iterable) => Iterator, next: (iterator: Iterator) => any): { new (iterable: Iterable): { /** @private */ _iterator: Iterator; next(): any; [Symbol.iterator]: () => this; }; }; export = createSafeIterator;