import type { UploadedFile } from 'express-fileupload';
import type { UploadEdits } from '../admin/components/views/collections/Edit/types';
import type { SanitizedCollectionConfig } from '../collections/config/types';
import type { PayloadRequest } from '../express/types';
import type { FileSizes, FileToSave, ProbedImageSize } from './types';
type ResizeArgs = {
    config: SanitizedCollectionConfig;
    dimensions: ProbedImageSize;
    file: UploadedFile;
    mimeType: string;
    req: PayloadRequest & {
        query?: {
            uploadEdits?: UploadEdits;
        };
    };
    savedFilename: string;
    staticPath: string;
};
/** Result from resizing and transforming the requested image sizes */
type ImageSizesResult = {
    sizeData: FileSizes;
    sizesToSave: FileToSave[];
};
/**
 * For the provided image sizes, handle the resizing and the transforms
 * (format, trim, etc.) of each requested image size and return the result object.
 * This only handles the image sizes. The transforms of the original image
 * are handled in {@link ./generateFileData.ts}.
 *
 * The image will be resized according to the provided
 * resize config. If no image sizes are requested, the resolved data will be empty.
 * For every image that dos not need to be resized, an result object with `null`
 * parameters will be returned.
 *
 * @param resizeConfig - the resize config
 * @returns the result of the resize operation(s)
 */
export default function resizeAndTransformImageSizes({ config, dimensions, file, mimeType, req, savedFilename, staticPath, }: ResizeArgs): Promise<ImageSizesResult>;
export {};
//# sourceMappingURL=imageResizer.d.ts.map