export declare function calculateAspectRatioFit(srcWidth: number, srcHeight: number, desiredWidth: number, desiredHeight: number): {
    height: number;
    width: number;
};
export declare function resizeImage(image: string, width: number, height: number, maxWidth: number, maxHeight: number): Promise<{
    height: number;
    url: string;
    width: number;
}>;
export declare function cropImage(image: {
    height: number;
    url: string;
    width: number;
}, options: {
    height: number;
    width: number;
    x: number;
    y: number;
}): Promise<string>;
export declare function rotateImage(image: {
    height: number;
    url: string;
    width: number;
}, rotate: number): Promise<string>;
export declare function getContainedImageSize(img: HTMLImageElement): {
    height: number;
    width: number;
};
export declare function getNaturalWidthHeight(url: string): Promise<[number, number]>;
/**
 * Whether `src` is allowed for persisting an image reference (editor save flows).
 * Accepts `data:image/…`, `blob:`, and URLs that resolve to `http:`, `https:`, `data:`, or `blob`.
 */
export declare function isSaveSrcValid(src: string): boolean;
export declare function convertSrcToBlob(imgSrc: string): Promise<{
    fileExtension: string;
    height: number;
    src: string;
    width: number;
} | null>;
export declare function cleanImageFileName(fileName: string): string;
