/// import { EventEmitter } from 'node:events'; import { LoaderChunk } from '../global/types.js'; import { BaseCache } from './base-cache.js'; export declare abstract class BaseLoader = Record, M extends Record = Record> extends EventEmitter { private static cache?; static setCache(cache?: BaseCache): void; protected readonly uniqueId: string; private readonly _canIncrementallyLoad; constructor(uniqueId: string, canIncrementallyLoad?: boolean); init(): Promise; get canIncrementallyLoad(): boolean; getUniqueId(): string; private getCustomCacheKey; protected checkInCache(key: string): Promise; protected getFromCache(key: string): Promise>; protected saveToCache(key: string, value: M): Promise; protected deleteFromCache(key: string): Promise; protected loadIncrementalChunk(incrementalGenerator: AsyncGenerator, void, void>): Promise; abstract getChunks(): AsyncGenerator, void, void>; }