/// <reference types="node" />
import { Readable, ReadableOptions } from "stream";
declare abstract class BaseMultiReadable extends Readable {
    protected __streams: Readable[];
    private __read;
    constructor(streams: Readable[], opts?: ReadableOptions);
    _read(size: number): void;
    _destroy(error: Error | null, callback: (error?: Error | null) => void): void;
    protected abstract __start(): Promise<void>;
    protected __get_size(): Promise<number>;
}
export declare class MultiBufferReadable extends BaseMultiReadable {
    constructor(streams: Readable[], opts?: MultiBufferReadableOptions);
    protected __start(): Promise<void>;
}
export interface MultiBufferReadableOptions extends Omit<ReadableOptions, "objectMode"> {
}
export declare class MultiObjectReadable extends BaseMultiReadable {
    constructor(streams: Readable[], opts?: MultiObjectReadableOptions);
    protected __start(): Promise<void>;
}
export interface MultiObjectReadableOptions extends Omit<ReadableOptions, "objectMode"> {
}
export {};
