import type { BeeClient } from "../clients";
export interface ReaderOptions {
    beeClient: BeeClient;
}
export interface ReaderDownloadOptions {
    maxResponseSize?: number;
    signal?: AbortSignal;
    onDownloadProgress?(completion: number): void;
}
export declare abstract class BaseReader<T, I, R = unknown> {
    constructor(identifier: I, opts: ReaderOptions);
    abstract download(opts?: ReaderDownloadOptions): Promise<T>;
    rawResponse: R | undefined;
}
//# sourceMappingURL=base-reader.d.ts.map