/// <reference types="node" />
import fse from 'fs-extra';
import multer from 'multer';
import { IFileDriver } from '@server/drivers/file.driver';
export default class FileSystemDriver implements IFileDriver {
    private dir;
    private provider;
    constructor();
    getUpload: () => multer.Multer;
    getPath: (key: string) => string;
    getName: () => string;
    write: (key: string, data: any) => Promise<{
        key: string;
        provider: string;
    }>;
    createReadStream: (key: string, options: any) => fse.ReadStream;
    createWriteStream: (key: string, options: any) => fse.WriteStream;
    stat: (key: string) => Promise<any>;
    read: (key: string) => Promise<Buffer>;
    delete: (params: string | string[]) => Promise<void>;
    copy: (src: string, dest: string) => Promise<void>;
}
