import type { CreatePDFArguments, DetectBarcodesOnImageArguments, DocumentQualityAnalyzerArguments, ExtractImagesFromPdfArguments, ExtractPagesFromPdfArguments, PerformOCRArguments, RecognizeGenericDocumentArguments, RecognizeMedicalCertificateArguments, WriteTIFFArguments } from './arguments';
import type { BarcodeScannerConfiguration, BatchBarcodeScannerConfiguration, CheckRecognizerConfiguration, CroppingConfiguration, DocumentScannerConfiguration, FinderDocumentScannerConfiguration, GenericDocumentRecognizerConfiguration, HealthInsuranceCardScannerConfiguration, LicensePlateScannerConfiguration, MedicalCertificateRecognizerConfiguration, MrzScannerConfiguration, ScanbotSdkConfiguration, TextDataScannerConfiguration, VinScannerConfiguration } from './configurations';
import type { DocumentScannerMetadata, ResultWrapper, ResultWrapperWithMetadata } from './customTypes';
import type { DocumentData } from './document/DocumentData';
import type { ParametricFilter } from './document/ParametricFilters';
import type { CheckDocumentModelRootType } from './documents/CheckDocumentModel';
import type { AddPageParams, CreateDocumentParams, DocumentFromLegacyPagesParams, ModifyPageParams, MovePageParams, PDFFromDocumentParams, RemovePageParams, TIFFFromDocumentParams } from './parameters';
import type { ApplyImageFiltersResult, BarcodeScannerResult, BatchBarcodeScannerResult, CheckRecognizerResult, CreatePDFResult, CreateTIFFResult, CroppingResult, DetectBarcodesOnImageResult, DetectDocumentResult, DocumentExistsResult, DocumentQualityAnalyzerResult, DocumentScannerResult, ExtractImagesFromPdfResult, ExtractPagesFromPdfResult, GenericDocumentRecognizerResult, GetImageDataResult, GetLicenseInfoResult, GetOCRConfigsResult, HealthInsuranceCardScannerResult, InitializeSDKResult, LicensePlateScannerResult, MedicalCertificateScannerResult, MrzScannerResult, PerformOCRResult, RecognizeEHICResult, RecognizeGenericDocumentResult, RecognizeMedicalCertificateResult, RecognizeMRZResult, RefreshImageUrisResult, RotateImageResult, StoredDocumentIDsResult, TextDataScannerResult, VinScannerResult, WriteTIFFResult } from './results';
import type { ApplyImageFiltersOnPageResult, CreatePageResult, DetectDocumentOnPageResult, Page, RotatePageResult, SetDocumentImageResult } from './types';
export interface _ScanbotSDKCapacitorInternalPlugin {
    createDocument(params: CreateDocumentParams): Promise<ResultWrapper<DocumentData>>;
    createDocumentFromLegacyPages(params: DocumentFromLegacyPagesParams): Promise<ResultWrapper<DocumentData>>;
    createDocumentFromPDF(params: {
        pdfUri: string;
    }): Promise<ResultWrapper<DocumentData>>;
    documentExists(params: {
        documentID: string;
    }): Promise<ResultWrapper<DocumentExistsResult>>;
    loadDocument(params: {
        documentID: string;
    }): Promise<ResultWrapper<DocumentData>>;
    storedDocumentIDs(): Promise<ResultWrapper<StoredDocumentIDsResult>>;
    cloneDocument(params: {
        documentID: string;
    }): Promise<ResultWrapper<DocumentData>>;
    deleteDocument(params: {
        documentID: string;
    }): Promise<ResultWrapper<void>>;
    deleteAllDocuments(): Promise<ResultWrapper<void>>;
    createPDFForDocument(params: PDFFromDocumentParams): Promise<ResultWrapper<CreatePDFResult>>;
    createTIFF(params: TIFFFromDocumentParams): Promise<ResultWrapper<CreateTIFFResult>>;
    addPage(params: AddPageParams): Promise<ResultWrapper<DocumentData>>;
    movePage(params: MovePageParams): Promise<ResultWrapper<DocumentData>>;
    modifyPage(params: ModifyPageParams): Promise<ResultWrapper<DocumentData>>;
    removePageFromDocument(params: RemovePageParams): Promise<ResultWrapper<DocumentData>>;
    removeAllPages(params: {
        documentID: string;
    }): Promise<ResultWrapper<DocumentData>>;
    startDocumentScanner(configuration: DocumentScannerConfiguration): Promise<ResultWrapperWithMetadata<DocumentScannerResult, DocumentScannerMetadata>>;
    closeDocumentScanner(): Promise<void>;
    startFinderDocumentScanner(configuration: FinderDocumentScannerConfiguration): Promise<ResultWrapper<DocumentScannerResult>>;
    closeFinderDocumentScanner(): Promise<void>;
    startCroppingScreen(args: {
        page: Page;
        configuration: CroppingConfiguration;
    }): Promise<ResultWrapper<CroppingResult>>;
    closeCroppingScreen(): Promise<void>;
    startMrzScanner(configuration: MrzScannerConfiguration): Promise<ResultWrapper<MrzScannerResult>>;
    closeMrzScanner(): Promise<void>;
    startBarcodeScanner(configuration: BarcodeScannerConfiguration): Promise<ResultWrapper<BarcodeScannerResult>>;
    closeBarcodeScanner(): Promise<void>;
    startBatchBarcodeScanner(configuration: BatchBarcodeScannerConfiguration): Promise<ResultWrapper<BatchBarcodeScannerResult>>;
    closeBatchBarcodeScanner(): Promise<void>;
    startEHICScanner(configuration: HealthInsuranceCardScannerConfiguration): Promise<ResultWrapper<HealthInsuranceCardScannerResult>>;
    closeEHICScanner(): Promise<void>;
    startTextDataScanner(configuration: TextDataScannerConfiguration): Promise<ResultWrapper<TextDataScannerResult>>;
    closeTextDataScanner(): Promise<void>;
    startLicensePlateScanner(configuration: LicensePlateScannerConfiguration): Promise<ResultWrapper<LicensePlateScannerResult>>;
    closeLicensePlateScanner(): Promise<void>;
    startMedicalCertificateRecognizer(configuration: MedicalCertificateRecognizerConfiguration): Promise<ResultWrapper<MedicalCertificateScannerResult>>;
    closeMedicalCertificateRecognizer(): Promise<void>;
    startGenericDocumentRecognizer(configuration: GenericDocumentRecognizerConfiguration): Promise<ResultWrapper<GenericDocumentRecognizerResult>>;
    closeGenericDocumentRecognizer(): Promise<void>;
    startCheckRecognizer(configuration: CheckRecognizerConfiguration): Promise<ResultWrapper<CheckRecognizerResult>>;
    closeCheckRecognizer(): Promise<void>;
    startVinScanner(configuration: VinScannerConfiguration): Promise<ResultWrapper<VinScannerResult>>;
    closeVinScanner(): Promise<void>;
    initializeSDK(config: ScanbotSdkConfiguration): Promise<ResultWrapper<InitializeSDKResult>>;
    getLicenseInfo(): Promise<ResultWrapper<GetLicenseInfoResult>>;
    detectBarcodesOnImage(args: DetectBarcodesOnImageArguments): Promise<ResultWrapper<DetectBarcodesOnImageResult>>;
    applyImageFilters(args: {
        imageFileUri: string;
        filters: ParametricFilter[];
    }): Promise<ResultWrapper<ApplyImageFiltersResult>>;
    applyImageFiltersOnPage(args: {
        page: Page;
        filters: ParametricFilter[];
    }): Promise<ResultWrapper<ApplyImageFiltersOnPageResult>>;
    getImageData(args: {
        imageFileUri: string;
    }): Promise<ResultWrapper<GetImageDataResult>>;
    rotateImage(args: {
        imageFileUri: string;
        degrees: number;
    }): Promise<ResultWrapper<RotateImageResult>>;
    createPage(args: {
        imageUri: string;
    }): Promise<ResultWrapper<CreatePageResult>>;
    removePage(args: {
        page: Page;
    }): Promise<ResultWrapper<void>>;
    rotatePage(args: {
        page: Page;
        times: number;
    }): Promise<ResultWrapper<RotatePageResult>>;
    setDocumentImage(args: {
        page: Page;
        imageFileUri: string;
    }): Promise<ResultWrapper<SetDocumentImageResult>>;
    detectDocument(args: {
        imageFileUri: string;
    }): Promise<ResultWrapper<DetectDocumentResult>>;
    detectDocumentOnPage(args: {
        page: Page;
    }): Promise<ResultWrapper<DetectDocumentOnPageResult>>;
    documentQualityAnalyzer(args: DocumentQualityAnalyzerArguments): Promise<ResultWrapper<DocumentQualityAnalyzerResult>>;
    extractImagesFromPdf(args: ExtractImagesFromPdfArguments): Promise<ResultWrapper<ExtractImagesFromPdfResult>>;
    extractPagesFromPdf(args: ExtractPagesFromPdfArguments): Promise<ResultWrapper<ExtractPagesFromPdfResult>>;
    recognizeCheck(args: {
        imageFileUri: string;
        acceptedCheckStandards?: CheckDocumentModelRootType[];
    }): Promise<ResultWrapper<CheckRecognizerResult>>;
    recognizeMrz(args: {
        imageFileUri: string;
    }): Promise<ResultWrapper<RecognizeMRZResult>>;
    recognizeMedicalCertificate(args: RecognizeMedicalCertificateArguments): Promise<ResultWrapper<RecognizeMedicalCertificateResult>>;
    recognizeEHIC(args: {
        imageFileUri: string;
    }): Promise<ResultWrapper<RecognizeEHICResult>>;
    recognizeGenericDocument(args: RecognizeGenericDocumentArguments): Promise<ResultWrapper<RecognizeGenericDocumentResult>>;
    refreshImageUris(args: {
        pages: Page[];
    }): Promise<ResultWrapper<RefreshImageUrisResult>>;
    getOCRConfigs(): Promise<ResultWrapper<GetOCRConfigsResult>>;
    cleanup(): Promise<ResultWrapper<void>>;
    performOCR(args: PerformOCRArguments): Promise<ResultWrapper<PerformOCRResult>>;
    createPDF(args: CreatePDFArguments): Promise<ResultWrapper<CreatePDFResult>>;
    writeTIFF(args: WriteTIFFArguments): Promise<ResultWrapper<WriteTIFFResult>>;
}
