UNPKG

jsm-utilities

Version:
30 lines (29 loc) 908 B
import mongoose from "mongoose"; interface ApplyChunksParams<T extends object> { query: mongoose.Query<(T & mongoose.Document)[], T & mongoose.Document>; onChunk?: (items: (T & mongoose.Document)[], page: number, progress: number) => Promise<void>; onItem?: (item: T & mongoose.Document, index: number, page: number, progress: number) => Promise<void>; chunkSize?: number; maxItems?: number; totalCount?: number; log?: boolean; } /** * * @param {number} chunkSize * - optional * - default 100 * @param {number} maxItems * - optional * - default -1 * @param {number} totalCount * - optional * - default 0 * @update 2020-12-06 added allowDiskUse(true) to query */ export declare const applyOnDocumentChunks: <T extends object = object>(params: ApplyChunksParams<T>) => Promise<{ totalProcessed: number; totalPages: number; completed: boolean; }>; export {};