import { WorkerBridge } from "./worker/worker-bridge"; import { InitializationOptions } from "./model/configuration/initialization-options"; import { DocumentScannerViewConfiguration } from "./model/configuration/document-scanner-view-configuration"; import { BarcodeScannerViewConfiguration } from "./model/configuration/barcode-scanner-view-configuration"; import { CroppingViewConfiguration } from "./model/configuration/cropping-view-configuration"; import { IDocumentScannerHandle } from "./interfaces/i-document-scanner-handle"; import { IBarcodeScannerHandle } from "./interfaces/i-barcode-scanner-handle"; import { ICroppingViewHandle } from "./interfaces/i-cropping-view-handle"; import { PdfGenerator } from './service/pdf-generator'; import { TiffGenerator } from './service/tiff-generator'; import { PublicUtils } from "./service/public-utils"; import { MrzScannerViewConfiguration } from "./model/configuration/mrz-scanner-view-configuration"; import { IMrzScannerHandle } from "./interfaces/i-mrz-scanner-handle"; import { TextPatternScannerViewConfiguration } from "./model/configuration/text-pattern-scanner-view-configuration"; import { VinScannerViewConfiguration } from "./model/configuration/vin-scanner-view-configuration"; import { ITextPatternScannerHandle } from "./interfaces/i-text-pattern-scanner-handle"; import ScanbotSDKUI from "./ui2/scanbot-sdk-ui"; import { Image, DeepPartial, BarcodeScannerConfiguration, BarcodeDocumentFormat, MrzScannerConfiguration, DocumentQualityAnalyzerConfiguration, PdfConfiguration, TiffGeneratorParameters, DocumentDataExtractorConfiguration, BarcodeDocumentParserResult, DocumentQualityAnalyzer, CheckScannerConfiguration, DocumentScannerConfiguration, LicenseInfo, BridgeApiEntrypoint } from "./core-types"; import * as Config from "./core-types"; import { DocumentDataExtractorViewConfiguration } from "./model/configuration/document-data-extractor-view-configuration"; import { ConsumeType } from "./consume-type"; import { Stats } from "./utils/stats"; import { BrowserCameras } from "./utils/browser-cameras"; import { SBStorage } from "./service/storage/sb-storage"; import { ICheckScannerHandle } from "./interfaces/i-check-scanner-handle"; import { CheckScannerViewConfiguration } from "./model/configuration/check-scanner-view-configuration"; import { IDocumentDataExtractorHandle } from "./interfaces/i-document-data-extractor-handle"; export default class ScanbotSDK { /** @internal */ bridge: WorkerBridge; private initialized; private static defaultEnginePath; /** @internal */ static instance: ScanbotSDK; private static _ui2; get API(): BridgeApiEntrypoint; static get UI(): typeof ScanbotSDKUI; static initialize(options: InitializationOptions): Promise; storage: SBStorage; /** * View Components */ createDocumentScanner(configuration: DocumentScannerViewConfiguration): Promise; createMrzScanner(configuration: MrzScannerViewConfiguration): Promise; createBarcodeScanner(configuration: BarcodeScannerViewConfiguration): Promise; createCheckScanner(config: CheckScannerViewConfiguration): Promise; openCroppingView(configuration: CroppingViewConfiguration): Promise; createTextPatternScanner(configuration: TextPatternScannerViewConfiguration): Promise; createVinScanner(configuration: VinScannerViewConfiguration): Promise; createDocumentQualityAnalyzer(configuration: DocumentQualityAnalyzerConfiguration): Promise; createDocumentDataExtractor(config: DocumentDataExtractorViewConfiguration): Promise; /** * Image Operations */ toDataUrl(imageBuffer: ArrayBuffer): Promise; /** * @param image {@displayType `Image`} {@link Image} * @param config {@displayType `DeepPartial`} {@link DocumentScannerConfiguration} * @param consumeType {@displayType `ConsumeType`} {@link ConsumeType} */ detectDocument(image: Image, config?: DeepPartial, consumeType?: ConsumeType): Promise; detectAndCropDocument(image: Image, consumeImage?: ConsumeType): Promise; /** * @param image An image URL (e.g. Data URL or HTTP URL) or an Image object * @param config {@displayType `DeepPartial`} {@link BarcodeScannerConfiguration} * @param consumeType {@displayType `ConsumeType`} {@link ConsumeType} * */ detectBarcodes(image: string | Image, config?: DeepPartial, consumeType?: ConsumeType): Promise; parseBarcodeDocument(acceptedDocumentFormats: BarcodeDocumentFormat[], rawBarcodeData: string): Promise; createCheckScannerEngine(config?: CheckScannerConfiguration): Promise; createDocumentDataExtractorEngine(config?: DocumentDataExtractorConfiguration): Promise; createMrzScannerEngine(config?: MrzScannerConfiguration): Promise; createOcrEngine(): Promise; createImageProcessor(): Promise; /** * Misc. Features */ getLicenseInfo(): Promise; /** @param options {@displayType `DeepPartial`} {@link PdfConfiguration}*/ beginPdf(options: DeepPartial): Promise; /** @param options {@displayType `DeepPartial`} {@link TiffGeneratorParameters} */ beginTiff(options?: DeepPartial): Promise; imageToJpeg(image: Image, consumeImage?: ConsumeType): Promise; get version(): string; private _utils; get utils(): PublicUtils; /** @internal */ getBridge(consumeImage: ConsumeType): { __hasModuleFunction: (functionName: string) => Promise; __callModuleFunction: (functionName: string, args?: any[]) => Promise; BarcodeDocumentParser: Config.WorkerBarcodeDocumentParser; BarcodeScanner: Config.WorkerBarcodeScanner; CheckScanner: Config.WorkerCheckScanner; CreditCardScanner: Config.WorkerCreditCardScanner; DocumentClassifier: Config.WorkerDocumentClassifier; DocumentDataExtractor: Config.WorkerDocumentDataExtractor; DocumentQualityAnalyzer: Config.WorkerDocumentQualityAnalyzer; DocumentScanner: Config.WorkerDocumentScanner; ImageManipulator: Config.WorkerImageManipulator; ImageProcessor: Config.WorkerImageProcessor; MrzScanner: Config.WorkerMrzScanner; MrzParser: Config.WorkerMrzParser; OcrEngine: Config.WorkerOcrEngine; TextPatternScanner: Config.WorkerTextPatternScanner; VinScanner: Config.WorkerVinScanner; initialize: (licenseKey?: string, enginePath?: string, appId?: string, options?: Config.InitializeOptions) => Promise; getLicenseInfo: () => Promise; encodeJpeg: (image: Image, quality?: number) => Promise; beginPdf: (options: { attributes?: { author?: string; creator?: string; title?: string; subject?: string; keywords?: string; }; pageSize?: Config.PageSize; pageDirection?: Config.PageDirection; pageFit?: Config.PageFit; dpi?: number; jpegQuality?: number; resamplingMethod?: Config.ResamplingMethod; binarizationFilter?: ({ filterType?: number; } & { readonly _type: "LegacyFilter"; }) | ({ outputMode?: Config.OutputMode; } & { readonly _type: "ScanbotBinarizationFilter"; }) | ({ outputMode?: Config.OutputMode; denoise?: number; radius?: number; preset?: Config.BinarizationFilterPreset; } & { readonly _type: "CustomBinarizationFilter"; }) | ({ contrastEnhancement?: number; colorEnhancement?: number; paperWhitening?: number; paperWhiteningBias?: number; } & { readonly _type: "ColorDocumentFilter"; }) | ({ contrastEnhancement?: number; colorEnhancement?: number; paperSaturation?: number; paperLightness?: number; } & { readonly _type: "ColorDocumentShadowRemovalFilter"; }) | ({ brightness?: number; } & { readonly _type: "BrightnessFilter"; }) | ({ contrast?: number; } & { readonly _type: "ContrastFilter"; }) | ({ borderWidthFraction?: number; blackOutliersFraction?: number; whiteOutliersFraction?: number; } & { readonly _type: "GrayscaleFilter"; }) | ({ blackPoint?: number; whitePoint?: number; } & { readonly _type: "WhiteBlackPointFilter"; }); }) => Promise>; addPageToPdf: (pdfOperation: Config.ObjectId<"PdfGenerationContext">, image: Image, binarization?: Config.PageBinarization) => Promise; addPageToPdfWithOcr: (pdfOperation: Config.ObjectId<"PdfGenerationContext">, image: Image, binarization?: Config.PageBinarization) => Promise; completePdf: (pdfOperation: Config.ObjectId<"PdfGenerationContext">) => Promise; beginTiff: (options: { compression?: Config.CompressionMode; jpegQuality?: number; zipCompressionLevel?: number; dpi?: number; userFields?: { tag?: number; name?: string; value?: ({ value?: number; } & { readonly _type: "UserFieldDoubleValue"; }) | ({ value?: string; } & { readonly _type: "UserFieldStringValue"; }) | ({ value?: number; } & { readonly _type: "UserFieldIntValue"; }); }[]; binarizationFilter?: ({ filterType?: number; } & { readonly _type: "LegacyFilter"; }) | ({ outputMode?: Config.OutputMode; } & { readonly _type: "ScanbotBinarizationFilter"; }) | ({ outputMode?: Config.OutputMode; denoise?: number; radius?: number; preset?: Config.BinarizationFilterPreset; } & { readonly _type: "CustomBinarizationFilter"; }) | ({ contrastEnhancement?: number; colorEnhancement?: number; paperWhitening?: number; paperWhiteningBias?: number; } & { readonly _type: "ColorDocumentFilter"; }) | ({ contrastEnhancement?: number; colorEnhancement?: number; paperSaturation?: number; paperLightness?: number; } & { readonly _type: "ColorDocumentShadowRemovalFilter"; }) | ({ brightness?: number; } & { readonly _type: "BrightnessFilter"; }) | ({ contrast?: number; } & { readonly _type: "ContrastFilter"; }) | ({ borderWidthFraction?: number; blackOutliersFraction?: number; whiteOutliersFraction?: number; } & { readonly _type: "GrayscaleFilter"; }) | ({ blackPoint?: number; whitePoint?: number; } & { readonly _type: "WhiteBlackPointFilter"; }); }) => Promise>; addPageToTiff: (tiffOperation: Config.ObjectId<"TiffGenerationContext">, image: Image, binarization: Config.PageBinarization) => Promise; completeTiff: (tiffOperation: Config.ObjectId<"TiffGenerationContext">) => Promise; releaseObject: (objectToken: Config.ObjectId) => Promise; version: () => Promise; }; private licenseCheck; static cameras: BrowserCameras; static Config: typeof Config; /** * Used for testing purposes only. * @internal */ static _stats: Stats; }