export default class ResultIterable implements AsyncIterable, Promise { private onComplete?; error?: Error; results: T[]; get resultMetadata(): Promise; private resolvable; private _resultMetadata; private readonly pullQueue; private readonly pushQueue; get [Symbol.toStringTag](): string; constructor(onComplete?: () => void); push(value: T, index?: number): void; done(resultMetadata?: TMeta): void; reject(error: Error, resultMetadata?: TMeta): void; then(onfulfilled?: ((value: T[]) => PromiseLike | TResult1) | undefined | null, onrejected?: ((reason: any) => PromiseLike | TResult2) | undefined | null): Promise; catch(onrejected?: ((reason: any) => PromiseLike | TResult) | undefined | null): Promise; finally(onfinally?: (() => void) | undefined | null): Promise; [Symbol.asyncIterator](): AsyncIterator; private iteratorResultReturn; private iteratorResultThrow; private iteratorResultNext; }