import { getMimeType } from "@d3vtool/utils";
import { KazeContext, KazeNextFunction } from "./kaze";
export type FileSizeBytes = number;
export type FilenameMutateFn = (filename: string) => string;
export type KazeFile = {
    fieldName: string;
    fileName: string;
    fileSize: number;
    fileBuffer: Buffer;
    mimeType: ReturnType<typeof getMimeType>;
};
export type FileUploadOptions = {
    limit?: FileSizeBytes;
    fileNameMutateFn?: FilenameMutateFn;
    acceptedMimeType?: ReturnType<typeof getMimeType>[];
};
export declare function fileUpload(options?: FileUploadOptions): (ctx: KazeContext, next: KazeNextFunction) => void;
