import { Database } from '../operations/interfaces.js';
import { CacheOptions } from '../operations/options.js';
import { Item } from '../types/types.js';
import Queue from './queue.js';
import { Downloader } from '../operations/interfaces.js';
import { DefermentManager } from './defermentManager.js';
import AsyncGeneratorQueue from './asyncGeneratorQueue.js';
import { Pump } from './pump.js';
export declare class CachePump implements Pump {
    #private;
    constructor(database: Database, gathered: AsyncGeneratorQueue<Item>, deferments: DefermentManager, options: CacheOptions);
    add(item: Item): void;
    disposeAsync(): Promise<void>;
    get isDisposed(): boolean;
    pumpItems(params: {
        ids: string[];
        foundItems: Queue<Item>;
        notFoundItems: Queue<string>;
    }): Promise<void>;
    gather(ids: string[], downloader: Downloader): AsyncGenerator<Item>;
}
//# sourceMappingURL=cachePump.d.ts.map