/// import { AnyIterable, IX } from "./types"; import { ProgressReportOptions } from "./helpers"; export declare function onLastItem(fn: () => any): (q: AnyIterable) => AsyncGenerator; export interface CacheIterOptions extends ProgressReportOptions { /** * Where cache data will be stored? */ cacheFolder: string; /** * Is cache enabled? */ enabled?: boolean; /** * When reference id changes cache folder will be regenerated. */ referenceId?: string; /** * Format cache in human readable `JSON` format. */ nice?: { buffer: number; }; logger?: Pick; } export declare function _cacheIter(data: AnyIterable, options: CacheIterOptions): IX; /** * Cache iterator output to file. * Useful when we need develop complex iterator pipelines. * @include ./CacheIterOptions.md * @example * import { cacheIter } from 'iterparse' * * getFeed() // If cache exists get feed function will not be called * .pipe(cacheIter({ cacheFolder: "./_cache" })) * .count() * * @example * import { cacheIter } from 'iterparse' * * const cachedIter = cacheIter(getFeed(), { cacheFolder: "./_cache" }) * * for await (const item of cachedIter) { * console.log(item) * } * @category Utility */ export declare function cacheIter(options: CacheIterOptions): (data: AnyIterable) => IX; export declare function cacheIter(data: AnyIterable, options: CacheIterOptions): IX; //# sourceMappingURL=cache.d.ts.map