import { DocumentData } from '../../internal-common/src/public-types/document.public-types';
import { QueryBuilder } from './query/query-builder.factory';
/**
 * Result of the `visitQueryResults` function.
 * @category Database
 */
export interface VisitQueryResultsStats {
    /** Count of documents visited. */
    count: number;
    /** Time in millis spent in the function. */
    time: number;
}
/**
 * Reads all objects from the query in a safe way (with pagination) and calls callback() on every object.
 * The iteration is interrupted if error is thrown.
 * @category Database
 */
export declare function visitQueryResults<T extends DocumentData>(query: QueryBuilder<T>, callback: (t: T) => Promise<unknown>, pageSize?: number): Promise<VisitQueryResultsStats>;
