payload
Version:
Node, React and MongoDB Headless CMS and Application Framework
40 lines • 1.65 kB
TypeScript
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