import { FastifyRequest } from "fastify";
import { MultipartFile } from "@fastify/multipart";
export interface StorageFile {
    size: number;
    fieldName: string;
    encoding: string;
    mimetype: string;
    originalFilename: string;
}
export interface Storage<T extends StorageFile = StorageFile, K = any> {
    handleFile: (file: MultipartFile, req: FastifyRequest) => Promise<T>;
    removeFile: (file: T, force?: boolean) => Promise<void> | void;
    options?: K;
}
