///
import { ReadStream } from 'fs';
import { Response } from 'express';
export declare type Downloadable = string | ReadStream | Buffer | object | Array;
export declare class Download {
readonly download: DownloadType;
readonly mimeType?: string;
readonly fileName: string;
static from(download: Downloadable, mimeType?: string, fileName?: string): StreamDownload | PathDownload | BufferDownload;
constructor(download: DownloadType, mimeType?: string, fileName?: string);
getFileName(): string;
}
export declare class StreamDownload extends Download {
handle(res: Response): void;
}
export declare class BufferDownload extends Download {
handle(res: Response): void;
}
export declare class PathDownload extends Download {
handle(res: Response): void;
getFileName(): string;
}