import type { SaveImageOptions } from './types/core/image/ImageRefTypes'; import type { ImageRotation } from './types/core/image/ImageTypes'; import type { ImageRef } from './types/core/image/image'; import type { ParametricFilter } from './types/core/image_processing/ParametricFilters'; import type { Point } from './types/core/utils/utils'; /** * Entry point for all image processing features. */ export declare const ScanbotImageProcessor: { /** * Applies the given filters on the image. * @param {string} params.imageFileUri - File uri of the image to be processed. * @param {ParametricFilter[]} params.filters - List of filters to be applied on the image. * @param {boolean} params.overwrite - Whether to overwrite the original image file or create a new file. Default is false * @param {SaveImageOptions} params.saveOptions - Options for saving the image. * @returns {Promise} - File uri of the image with applied filters. */ applyFiltersOnImageFile(params: { imageFileUri: string; filters: ParametricFilter[]; overwrite?: boolean; saveOptions?: SaveImageOptions; }): Promise; /** * Applies the given filters on the image. * @param {ImageRef} params.image - Reference of the image to be processed. * @param {ParametricFilter[]} params.filters - List of filters to be applied on the image. * @returns {Promise} - Reference of the image with applied filters. */ applyFilters(params: { image: ImageRef; filters: ParametricFilter[]; }): Promise; /** * Rotates the image by the given rotation degree. * @param {string} params.imageFileUri - File uri of the image to be rotated. * @param {ImageRotation} params.rotation - Rotation degree. * @param {boolean} params.overwrite - Whether to overwrite the original image file or create a new file. Default is false * @param {SaveImageOptions} params.saveOptions - Options for saving the image. * @returns {Promise} - File uri of the rotated image. */ rotateImageFile(params: { imageFileUri: string; rotation: ImageRotation; overwrite?: boolean; saveOptions?: SaveImageOptions; }): Promise; /** * Rotates the image by the given rotation degree. This methods must be wrapped inside an autorelease pool. * @param {ImageRef} params.image - Reference of the image to be rotated. * @param {ImageRotation} params.rotation - Rotation degree. * @returns {Promise} - Reference of the rotated image. */ rotate(params: { image: ImageRef; rotation: ImageRotation; }): Promise; /** * Resizes the image to fit within the given maximum size for the longest edge. * @param {string} params.imageFileUri - File uri of the image to be resized. * @param {number} params.maxSize - Maximum size for the longest edge of the image. * @param {boolean} params.overwrite - Whether to overwrite the original image file or create a new file. Default is false * @param {SaveImageOptions} params.saveOptions - Options for saving the image. * @returns {Promise} - File uri of the resized image. */ resizeImageFile(params: { imageFileUri: string; maxSize: number; overwrite?: boolean; saveOptions?: SaveImageOptions; }): Promise; /** * Resizes the image to fit within the given maximum size for the longest edge. * @param {ImageRef} params.image - Reference of the image to be resized. * @param {number} params.maxSize - Maximum size for the longest edge of the image. * @returns {Promise} - Reference of the resized image. */ resize(params: { image: ImageRef; maxSize: number; }): Promise; /** * Crops the image to the given polygon area. * @param {string} params.imageFileUri - File uri of the image to be cropped. * @param {Point[]} params.polygon - Polygon defining the area to be cropped. Points needs to be represented in percentage values (0.0 - 1.0) and the order should be top-left, top-right, bottom-right, bottom-left. * @param {boolean} params.overwrite - Whether to overwrite the original image file or create a new file. Default is false * @param {SaveImageOptions} params.saveOptions - Options for saving the image. * @returns {Promise} - File uri of the cropped image. */ cropImageFile(params: { imageFileUri: string; polygon: Point[]; overwrite?: boolean; saveOptions?: SaveImageOptions; }): Promise; /** * Crops the image to the given polygon area. * @param {ImageRef} params.image - Reference of the image to be cropped. * @param {Point[]} params.polygon - Polygon defining the area to be cropped. Points needs to be represented in percentage values (0.0 - 1.0) and the order should be top-left, top-right, bottom-right, bottom-left. * @returns {Promise} - Reference of the cropped image. */ crop(params: { image: ImageRef; polygon: Point[]; }): Promise; /** * Reads image data from the given file uri and returns it as a Base 64 encoded string. * @param {string} imageFileUri - File uri of the image to be read. * @returns {Promise} - The Base 64 encoded representation of the image. */ readImageData(imageFileUri: string): Promise; };