import { Nullable } from "../../base-types"; import { IIterator } from "./iterator"; import { Query } from "./query"; import { IQueryResult } from "./query-result"; export interface IQueryIterator extends IIterator { readonly current: Nullable; } export declare abstract class QueryIteratorBase implements IQueryIterator { private readonly _query; current: Nullable; constructor(query: Query, result?: T); canMoveNext(): boolean; canMovePrevious(): boolean; moveNextAsync(): Promise; movePreviousAsync(): Promise; reset(): void; abstract getResultAsync(query: Query): Promise; }