import type { AddPageOptions } from './types/base/AddPageOptions'; import type { CreateDocumentOptions } from './types/base/CreateDocumentOptions'; import type { ModifyPageOptions } from './types/base/ModifyPageOptions'; import type { ImageInput, ResultWrapper } from './types/base/customTypes'; import type { Page } from './types/base/types'; import type { DocumentQualityAnalyzerConfiguration, DocumentQualityAnalyzerResult } from './types/core/document_quality_analyzer/DocumentQualityAnalyzerTypes'; import type { DocumentData } from './types/core/document_scanner/DocumentData'; import type { DocumentScannerConfiguration, DocumentScanningResult } from './types/core/document_scanner/DocumentScannerTypes'; import type { CroppingConfiguration } from './types/core/ui_v2/document/CroppingConfiguration'; import type { DocumentScanningFlow } from './types/core/ui_v2/document/DocumentScanningFlow'; /** * Entry point for all document features. */ export declare const ScanbotDocument: { /** * Creates a document from the provided images with the specified options. * @param {ImageInput[]} params.images - The images to be used for document creation. * @param {CreateDocumentOptions} params.options - The options to be used for document creation. * @returns {Promise} - Created document. */ createDocumentFromImages(params: { images?: ImageInput[]; options?: CreateDocumentOptions; }): Promise; /** * Creates a document from the provided PDF file with the specified options. * @param {string} params.pdfFileUri - The PDF file uri to be used for document creation. * @param {CreateDocumentOptions} params.options - The options to be used for document creation. * @returns {Promise} - Created document. */ createDocumentFromPdf(params: { pdfFileUri: string; options?: CreateDocumentOptions; }): Promise; /** * Creates a document from the provided legacy pages with the specified image size limit. * @param {Page[]} params.pages - The legacy pages to be used for document creation. Legacy filters that are set on the pages will be ignored. Please switch to ParametricFilters instead. * @param {number} params.documentImageSizeLimit - The maximum size of the longest edge of the document image. If the image exceeds this limit, it will be downscaled proportionally. Default is 0 * @returns {Promise} - Created document. * @deprecated */ createDocumentFromLegacyPages(params: { pages: Page[]; documentImageSizeLimit?: number; }): Promise; /** * Checks if a document with the specified Uuid exists. * @param {string} documentUuid - The Uuid of the document. * @returns {Promise} - True if the document exists, false otherwise. */ documentExists(documentUuid: string): Promise; /** * Loads the document with the specified Uuid. * @param {string} documentUuid - The Uuid of the document. * @returns {Promise} - Loaded document. */ loadDocument(documentUuid: string): Promise; /** * Retrieves the Uuids of all stored documents. * @returns {Promise} - List of stored document Uuids. */ getStoredDocumentUuids(): Promise; /** * Clones the document with the specified Uuid. * @param {string} documentUuid - The Uuid of the document to be cloned. * @returns {Promise} - Cloned document. */ cloneDocument(documentUuid: string): Promise; /** * Deletes the document with the specified Uuid. * @param {string} documentUuid - The Uuid of the document to be deleted. * @returns {Promise} */ deleteDocument(documentUuid: string): Promise; /** * Deletes all stored documents. * @returns {Promise} */ deleteAllDocuments(): Promise; /** * Adds new pages from the provided images to the document with the specified Uuid. * @param {string} params.documentUuid - The Uuid of the document to which pages will be added. * @param {ImageInput[]} params.images - The images to be added as new pages. * @param {AddPageOptions} params.options - The options to be used when adding pages. * @returns {Promise} - Updated document with added pages. */ addPages(params: { documentUuid: string; images: ImageInput[]; options?: AddPageOptions; }): Promise; /** * Moves a page within the document to a new position. * @param {string} params.documentUuid - The Uuid of the document containing the page to be moved. * @param {number} params.fromIndex - The index of the page to be moved. * @param {number} params.toIndex - The new index position for the page. * @returns {Promise} - Updated document with the page moved to the new position. */ movePage(params: { documentUuid: string; fromIndex: number; toIndex: number; }): Promise; /** * Modifies a page within the document using the specified options. * @param {string} params.documentUuid - The Uuid of the document containing the page to be modified. * @param {string} params.pageUuid - The Uuid of the page to be modified. * @param {ModifyPageOptions} params.options - The options specifying the modifications to be made to the page. * @returns {Promise} - Updated document with the modified page. */ modifyPage(params: { documentUuid: string; pageUuid: string; options?: ModifyPageOptions; }): Promise; /** * Removes pages with the specified Uuids from the document. * @param {string} params.documentUuid - The Uuid of the document from which pages will be removed. * @param {string[]} params.pageUuids - The Uuids of the pages to be removed. * @returns {Promise} - Updated document with the specified pages removed. */ removePages(params: { documentUuid: string; pageUuids: string[]; }): Promise; /** * Removes all pages from the document with the specified Uuid. * @param {string} documentUuid - The Uuid of the document from which all pages will be removed. * @returns {Promise} - Updated document with all pages removed. */ removeAllPages(documentUuid: string): Promise; /** * Opens the Ready-To-Use UI Document Scanner screen with the desired configuration. * @param {DocumentScanningFlow} configuration - The configuration to be used for the document scanner. * @returns {Promise>} - Scanned document. */ startScanner(configuration: DocumentScanningFlow): Promise>; /** * Opens the Ready-To-Use UI Cropping screen with the desired configuration. * @param {CroppingConfiguration} configuration - The configuration to be used for the cropping screen. * @returns {Promise>} - Updated document after cropping. */ startCroppingScreen(configuration: CroppingConfiguration): Promise>; /** * Scans a document from the provided image. * @param {ImageInput} params.image - The image to be scanned. * @param {DocumentScannerConfiguration} params.configuration - The configuration to be used for scanning. * @returns {Promise} - Result of the scanning process. */ scanFromImage(params: { image: ImageInput; configuration: DocumentScannerConfiguration; }): Promise; /** * Analyzes the quality of the document on the provided image. * @param {ImageInput} params.image - The image to be analyzed. * @param {DocumentQualityAnalyzerConfiguration} params.configuration - The configuration to be used for analysis. * @returns {Promise} - Result of the quality analysis. */ analyzeQualityOnImage(params: { image: ImageInput; configuration: DocumentQualityAnalyzerConfiguration; }): Promise; };