@microblink/blinkid-in-browser-sdk
Version:
A simple ID scanning library for WebAssembly-enabled browsers.
1,076 lines • 74.9 kB
TypeScript
/* eslint-disable */
/* tslint:disable */
/**
* This is an autogenerated file created by the Stencil compiler.
* It contains typing information for all components that exist in this project.
*/
import { HTMLStencilElement, JSXBase } from "./stencil-public-runtime";
import { BlinkIDVariant } from "@microblink/blinkid-in-browser-sdk";
import { CameraEntry, CameraExperience, CameraExperienceState, CameraExperienceStateDurations, EventReady, EventScanError, EventScanSuccess, FeedbackMessage, ProductIntegrationInfo, SDKError } from "./utils/data-structures";
import { TranslationService } from "./utils/translation.service";
import { MbHelpCallbacks } from "./components/shared/mb-help/mb-help.model";
import { SdkService } from "./utils/sdk.service";
export namespace Components {
interface BlinkidInBrowser {
/**
* Write a hello message to the browser console when license check is successfully performed. Hello message will contain the name and version of the SDK, which are required information for all support tickets. Default value is true.
*/
"allowHelloMessage": boolean;
/**
* Dictates if the Help Screens Floating-Action-Button (Fab) is offered. (in the bottom right corner of the Camera Experience). Default value is 'true'.
*/
"allowHelpScreensFab": boolean;
/**
* Dictates if the Help Screens Onboarding is active. Onboarding is a process of opening the Help Screens initial guides when the Camera Experience is being started. Default value is 'true'.
*/
"allowHelpScreensOnboarding": boolean;
/**
* Dictates if the Help Screens Onboarding process is being started on every Camera Experience start, or just on the first one. Default value is 'false' - onboarding ran only once.
*/
"allowHelpScreensOnboardingPerpetuity": boolean;
/**
* Overrides the BlinkID build that will be loaded. The `lightweight` variant is smaller but doesn't support barcode deblurring. This variant is loaded by default on mobile devices. The `full` version is loaded by default on desktop devices.
*/
"blinkIdVariant"?: BlinkIDVariant;
/**
* Configure camera experience state timeout durations
*/
"cameraExperienceStateDurations": CameraExperienceStateDurations;
/**
* Camera device ID passed from root component. Client can choose which camera to turn on if array of cameras exists.
*/
"cameraId": string | null;
/**
* Set to 'false' if component should not enable drag and drop functionality. Default value is 'true'.
*/
"enableDrag": boolean;
/**
* Absolute location of WASM and related JS/data files. Useful when resource files should be loaded over CDN, or when web frameworks/libraries are used which store resources in specific locations, e.g. inside "assets" folder. Important: if engine is hosted on another origin, CORS must be enabled between two hosts. That is, server where engine is hosted must have 'Access-Control-Allow-Origin' header for the location of the web app. Important: SDK and WASM resources must be from the same version of package. Default value is empty string, i.e. "". In case of empty string, value of "window.location.origin" property is going to be used.
*/
"engineLocation": string;
/**
* Define whether to use 'FULLSCREEN' or 'INLINE' gallery dropdown type. If 'FULLSCREEN' is used, when a user drags an image over the UI component, an overlay will pop up and cover the whole screen. If 'INLINE' is used, there is no fullscreen overlay, but rather the overlay is restricted to the size of the UI component. Default value is 'INLINE'.
*/
"galleryDropType": "FULLSCREEN" | "INLINE";
/**
* Define whether to use 'FULLSCREEN' or 'INLINE' gallery overlay type. If 'FULLSCREEN' is used, when a user selects an image from which data should be extracted, an overlay will pop up and cover the whole screen. On the other hand, if 'INLINE' is used, there is no overlay but rather a 'Processing' message inside the UI component. Default value is 'INLINE'.
*/
"galleryOverlayType": "FULLSCREEN" | "INLINE";
/**
* Get information about product integration.
*/
"getProductIntegrationInfo": () => Promise<ProductIntegrationInfo>;
/**
* Miliseconds timeout on which the "Need Help?" tooltip is turned on. First timeout is started each time the Camera Experience starts and is being reset every time the Help Screens are consumed. Default value is 15000 - 15 seconds.
*/
"helpScreensTooltipPauseTimeout": number;
/**
* If set to 'true', UI component will not display feedback, i.e. information and error messages. Setting this attribute to 'false' won't disable 'scanError' and 'scanInfo' events. Default value is 'false'.
*/
"hideFeedback": boolean;
/**
* If set to 'true', UI component will become visible after successful SDK initialization. Also, error screen is not going to be displayed in case of initialization error. If set to 'false', loading and error screens of the UI component will be visible during initialization and in case of an error. Default value is 'false'.
*/
"hideLoadingAndErrorUi": boolean;
/**
* Hover state of iconCameraDefault.
*/
"iconCameraActive": string;
/**
* Provide alternative camera icon. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative camera icon. Image is scaled to 20x20 pixels.
*/
"iconCameraDefault": string;
/**
* Hover state of iconGalleryDefault.
*/
"iconGalleryActive": string;
/**
* Provide alternative gallery icon. This icon is also used during drag and drop action. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative gallery icon. Image is scaled to 20x20 pixels. In drag and drop dialog image is scaled to 24x24 pixels.
*/
"iconGalleryDefault": string;
/**
* Provide alternative completed icon. This icon is used when gallery scanning process is done, in case that `galleryOverlayType` property is set to `INLINE`. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative icon. Image is scaled to 24x24 pixels.
*/
"iconGalleryScanningCompleted": string;
/**
* Provide alternative invalid format icon which is used during drag and drop action. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative icon. Image is scaled to 24x24 pixels.
*/
"iconInvalidFormat": string;
/**
* Provide alternative loading icon. CSS rotation is applied to this icon. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative icon. Image is scaled to 24x24 pixels.
*/
"iconSpinnerFromGalleryExperience": string;
/**
* Provide alternative loading icon. CSS rotation is applied to this icon. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative icon. Image is scaled to 24x24 pixels.
*/
"iconSpinnerScreenLoading": string;
/**
* License key which is going to be used to unlock WASM library. Keep in mind that UI component will reinitialize every time license key is changed.
*/
"licenseKey": string;
/**
* URL to the ping proxy service. Ping proxy is a server which is hosted on you own infrastructure and forwards ping messages from SDK to the Microblink servers. That way web application which has integrated this SDK will only directly communicate with your own servers. In order to use this service, you need a `ALLOW PING PROXY` permission in your license.
*/
"pingProxyUrl": string | null;
/**
* List of recognizers which should be used. Available recognizers for BlinkID: - IdBarcodeRecognizer - BlinkIdSingleSideRecognizer - BlinkIdMultiSideRecognizer - cannot be used in combination with other recognizers - when defined, scan from image is not available Recognizers can be defined by setting HTML attribute "recognizers", for example: `<blinkid-in-browser recognizers="IdBarcodeRecognizer,BlinkIdSingleSideRecognizer"></blinkid-in-browser>`
*/
"rawRecognizers": string;
/**
* Set custom translations for UI component. List of available translation keys can be found in `src/utils/translation.service.ts` file.
*/
"rawTranslations": string;
/**
* Amount of time in milliseconds before the recognition process is resumed after it is being paused previously. This setting applies only to video recognition. Keep in mind that the timer starts after the front side was scanned . This behaviour ensures that the user has enough time to flip the document and place its back side in front of the camera device.
*/
"recognitionPauseTimeout": number;
/**
* Amount of time in milliseconds before the recognition process is cancelled regardless of whether recognition was successful or not. This setting applies only to video recognition. Keep in mind that the timer starts after the first non-empty result. This behaviour ensures that the user has enough time to take out the document and place it in front of the camera device.
*/
"recognitionTimeout": number;
/**
* Specify recognizer options. This option can only bet set as a JavaScript property. Pass an object to `recognizerOptions` property where each key represents a recognizer, while the value represents desired recognizer options. ``` blinkId.recognizerOptions = { 'BlinkIdSingleSideRecognizer': { 'returnFullDocumentImage': true, // When setting values for enums, check the source code to see possible values. // For AnonymizationMode we can see the list of possible values in // `src/Recognizers/BlinkID/Generic/AnonymizationMode.ts` file. 'anonymizationMode': 0 } } ``` For a full list of available recognizer options see source code of a recognizer. For example, list of available recognizer options for BlinkIdSingleSideRecognizer can be seen in the `src/Recognizers/BlinkID/Generic/BlinkIdSingleSideRecognizer.ts` file.
*/
"recognizerOptions": { [key: string]: any };
/**
* List of recognizers which should be used. Available recognizers for BlinkID: - IdBarcodeRecognizer - BlinkIdSingleSideRecognizer - BlinkIdMultiSideRecognizer - cannot be used in combination with other recognizers - when defined, scan from image is not available Recognizers can be defined by setting JS property "recognizers", for example: ``` const blinkId = document.querySelector('blinkid-in-browser'); blinkId.recognizers = ['IdBarcodeRecognizer', 'BlinkIdSingleSideRecognizer']; ```
*/
"recognizers": Array<string>;
/**
* Set to 'true' if scan from camera should be enabled. If set to 'true' and camera is not available or disabled, related button will be visible but disabled. Default value is 'true'.
*/
"scanFromCamera": boolean;
/**
* Set to 'true' if scan from image should be enabled. Default value is 'true'.
*/
"scanFromImage": boolean;
/**
* Show message alongside UI component. Possible values for `state` are 'FEEDBACK_ERROR' | 'FEEDBACK_INFO' | 'FEEDBACK_OK'.
*/
"setUiMessage": (state: "FEEDBACK_ERROR" | "FEEDBACK_INFO" | "FEEDBACK_OK", message: string) => Promise<void>;
/**
* Control UI state of camera overlay. Possible values are 'ERROR' | 'LOADING' | 'NONE' | 'SUCCESS'. In case of state `ERROR` and if `showModalWindows` is set to `true`, modal window with error message will be displayed. Otherwise, UI will close.
*/
"setUiState": (state: "ERROR" | "LOADING" | "NONE" | "SUCCESS") => Promise<void>;
/**
* Set to 'true' if text labels should be displayed below action buttons. Default value is 'false'.
*/
"showActionLabels": boolean;
/**
* Set to 'true' if for Barcode scanning camera feedback message should be displayed on camera screen. Default value is 'false'.
*/
"showCameraFeedbackBarcodeMessage": boolean;
/**
* Set to 'true' if modal window should be displayed in case of an error. Default value is 'false'.
*/
"showModalWindows": boolean;
/**
* Starts camera scan using camera overlay with usage instructions.
*/
"startCameraScan": () => Promise<void>;
/**
* Starts image scan, emits results from provided file.
* @param file File to scan
*/
"startImageScan": (file: File) => Promise<void>;
/**
* Starts multi-side image scan, emits results from provided files.
* @param firstFile File to scan as first image
* @param secondFile File to scan as second image
*/
"startMultiSideImageScan": (firstFile: File, secondFile: File) => Promise<void>;
/**
* Set to 'true' if scan from image should execute twice in case that first result is empty. If enabled, this option will add/remove 'scanCroppedDocumentImage' recognizer option for the second scan action.
*/
"thoroughScanFromImage": boolean;
/**
* Set custom translations for UI component. List of available translation keys can be found in `src/utils/translation.service.ts` file.
*/
"translations": { [key: string]: string };
/**
* Defines the type of the WebAssembly build that will be loaded. If omitted, SDK will determine the best possible WebAssembly build which should be loaded based on the browser support. Available WebAssembly builds: - 'BASIC' - 'ADVANCED' - 'ADVANCED_WITH_THREADS' For more information about different WebAssembly builds, check out the `src/MicroblinkSDK/WasmType.ts` file.
*/
"wasmType": string;
/**
* The absolute location of the Web Worker script file that loads the WebAssembly module. Important: the worker script must be served via HTTPS and must be of the same origin as the initiator. See https://github.com/w3c/ServiceWorker/issues/940 (same applies for Web Workers). Important: SDK, worker script and WebAssembly resources must be from the same version of the package. The default value is an empty string, i.e. "", and in that case, the worker script is loaded from the default location in resources folder.
*/
"workerLocation": string;
}
interface MbApiProcessStatus {
/**
* State value of API processing received from parent element ('loading' or 'success').
*/
"state": "ERROR" | "LOADING" | "NONE" | "SUCCESS";
/**
* Instance of TranslationService passed from parent component.
*/
"translationService": TranslationService;
/**
* Element visibility, default is 'false'.
*/
"visible": boolean;
}
interface MbButton {
"buttonTitle": string;
/**
* Function to call on click
*/
"clickHandler": (ev: UIEvent) => void;
/**
* Set to 'true' if button should be disabled, and if click events should not be triggered.
*/
"disabled": boolean;
/**
* Passed description text for image element from parent component.
*/
"imageAlt": string;
/**
* Passed image from parent component.
*/
"imageSrcActive": string;
/**
* Passed image from parent component.
*/
"imageSrcDefault": string;
/**
* Set to string which should be displayed below the icon. If omitted, nothing will show.
*/
"label": string;
/**
* Set to 'true' if button should enter 'selected' state.
*/
"selected": boolean;
/**
* Set to 'true' if button should be visible.
*/
"visible": boolean;
}
interface MbButtonClassic {
/**
* Function to call on click
*/
"clickHandler": (ev: UIEvent) => void;
/**
* Set to 'true' if button should be disabled, and if click events should not be triggered.
*/
"disabled": boolean;
/**
* Set to 'true' if button should be inverted style.
*/
"inverted": boolean;
/**
* Set to 'true' if default event should be prevented.
*/
"preventDefault": boolean;
"quit": boolean;
}
interface MbCameraExperience {
/**
* Dictates if Help Screens usage is allowed (turned on).
*/
"allowHelpScreens": boolean;
/**
* See description in public component.
*/
"allowHelpScreensFab": boolean;
/**
* See description in public component.
*/
"allowHelpScreensOnboarding": boolean;
/**
* See description in public component.
*/
"allowHelpScreensOnboardingPerpetuity": boolean;
/**
* Api state passed from root component.
*/
"apiState": string;
/**
* Configure camera experience state timeout durations
*/
"cameraExperienceStateDurations": CameraExperienceStateDurations;
/**
* Camera horizontal state passed from root component. Horizontal camera image can be mirrored
*/
"cameraFlipped": boolean;
"clearIsCameraActive": boolean;
/**
* See description in public component.
*/
"helpScreensTooltipPauseTimeout": number;
/**
* Initializes Help Screens.
*/
"initializeHelpScreens": (callbacks: MbHelpCallbacks) => Promise<void>;
/**
* Opens Help Screens in the Onboarding mode.
*/
"openHelpScreensOnboarding": () => Promise<void>;
/**
* Populate list of camera devices.
*/
"populateCameraDevices": () => Promise<void>;
/**
* Set camera state to initial method.
*/
"resetState": () => Promise<void>;
/**
* Change active camera.
*/
"setActiveCamera": (cameraId: string) => Promise<void>;
/**
* Method is exposed outside which allow us to control Camera Flip state from parent component.
*/
"setCameraFlipState": (isFlipped: boolean) => Promise<void>;
/**
* Set camera state which includes animation and message.
*/
"setState": (state: CameraExperienceState, isBackSide?: boolean, force?: boolean) => Promise<void>;
/**
* Show camera feedback message on camera for Barcode scanning
*/
"showCameraFeedbackBarcodeMessage": boolean;
/**
* Unless specifically granted by your license key, you are not allowed to modify or remove the Microblink logo displayed on the bottom of the camera overlay.
*/
"showOverlay": boolean;
/**
* Show scanning line on camera
*/
"showScanningLine": boolean;
/**
* Terminates Help Screens.
*/
"terminateHelpScreens": () => Promise<void>;
/**
* Instance of TranslationService passed from root component.
*/
"translationService": TranslationService;
/**
* Choose desired camera experience. Each experience type must be implemented in this component.
*/
"type": CameraExperience;
}
interface MbCameraSelection {
"clearIsCameraActive": boolean;
/**
* Populate list of camera devices.
*/
"populateCameraDevices": () => Promise<void>;
/**
* Change active camera.
*/
"setActiveCamera": (cameraId: string) => Promise<void>;
}
interface MbCameraToolbar {
/**
* Whether the camera is flipped, this property will be flip the relevant icon.
*/
"cameraFlipped": boolean;
"clearIsCameraActive": boolean;
/**
* Whether to show 'Camera flip' button.
*/
"enableCameraFlip": boolean;
/**
* Populate list of camera devices.
*/
"populateCameraDevices": () => Promise<void>;
/**
* Change active camera.
*/
"setActiveCamera": (cameraId: string) => Promise<void>;
/**
* Set to `true` if close button should be displayed.
*/
"showClose": boolean;
}
interface MbCompleted {
/**
* Value of `src` attribute for <img> element.
*/
"icon": string;
}
interface MbComponent {
/**
* See description in public component.
*/
"allowHelloMessage": boolean;
/**
* Dictates if Help Screens usage is allowed (turned on).
*/
"allowHelpScreens": boolean;
/**
* See description in public component.
*/
"allowHelpScreensFab": boolean;
/**
* See description in public component.
*/
"allowHelpScreensOnboarding": boolean;
/**
* See description in public component.
*/
"allowHelpScreensOnboardingPerpetuity": boolean;
"blinkIdVariant"?: BlinkIDVariant;
/**
* See description in public component.
*/
"cameraExperienceStateDurations": CameraExperienceStateDurations;
/**
* Camera device ID passed from root component.
*/
"cameraId": string | null;
/**
* See description in public component.
*/
"enableDrag": boolean;
/**
* See description in public component.
*/
"engineLocation": string;
/**
* See description in public component.
*/
"galleryDropType": "FULLSCREEN" | "INLINE";
/**
* See description in public component.
*/
"galleryOverlayType": "FULLSCREEN" | "INLINE";
/**
* See description in public component.
*/
"helpScreensTooltipPauseTimeout": number;
/**
* See description in public component.
*/
"hideLoadingAndErrorUi": boolean;
/**
* See description in public component.
*/
"iconCameraActive": string;
/**
* See description in public component.
*/
"iconCameraDefault": string;
/**
* See description in public component.
*/
"iconDragAndDropGalleryDefault": string;
/**
* See description in public component.
*/
"iconDragAndDropWarningDefault": string;
/**
* See description in public component.
*/
"iconGalleryActive": string;
/**
* See description in public component.
*/
"iconGalleryDefault": string;
/**
* See description in public component.
*/
"iconGalleryScanningCompleted": string;
/**
* See description in public component.
*/
"iconInvalidFormat": string;
/**
* See description in public component.
*/
"iconSpinnerFromGalleryExperience": string;
/**
* See description in public component.
*/
"iconSpinnerScreenLoading": string;
/**
* See description in public component.
*/
"includeSuccessFrame": boolean;
/**
* See description in public component.
*/
"licenseKey": string;
/**
* See description in public component.
*/
"pingProxyUrl": string | null;
/**
* See description in public component.
*/
"recognitionPauseTimeout": number;
/**
* See description in public component.
*/
"recognitionTimeout": number;
/**
* See description in public component.
*/
"recognizerOptions": { [key: string]: any };
/**
* See description in public component.
*/
"recognizers": Array<string>;
/**
* See description in public component.
*/
"rtl": boolean;
/**
* See description in public component.
*/
"scanFromCamera": boolean;
/**
* See description in public component.
*/
"scanFromImage": boolean;
/**
* Instance of SdkService passed from root component.
*/
"sdkService": SdkService;
/**
* Method is exposed outside which allow us to control UI state from parent component. In case of state `ERROR` and if `showModalWindows` is set to `true`, modal window with error message will be displayed.
*/
"setUiState": (state: "ERROR" | "LOADING" | "NONE" | "SUCCESS") => Promise<void>;
/**
* See description in public component.
*/
"showActionLabels": boolean;
/**
* See description in public component.
*/
"showCameraFeedbackBarcodeMessage": boolean;
/**
* See description in public component.
*/
"showModalWindows": boolean;
/**
* See description in public component.
*/
"showScanningLine": boolean;
/**
* Starts camera scan using camera overlay with usage instructions.
*/
"startCameraScan": () => Promise<void>;
/**
* Starts image scan, emits results from provided file.
* @param file File to scan
*/
"startImageScan": (file: File) => Promise<void>;
/**
* Starts multi-side image scan, emits results from provided files.
* @param firstFile File to scan as first image
* @param secondFile File to scan as second image
*/
"startMultiSideImageScan": (firstFile: File, secondFile: File) => Promise<void>;
/**
* See description in public component.
*/
"thoroughScanFromImage": boolean;
/**
* Instance of TranslationService passed from root component.
*/
"translationService": TranslationService;
/**
* See description in public component.
*/
"wasmType": string | null;
/**
* See description in public component.
*/
"workerLocation": string;
}
interface MbContainer {
}
interface MbFeedback {
/**
* Call when FeedbackMessage which should be displayed.
*/
"show": (feedback: FeedbackMessage) => Promise<void>;
/**
* Set to 'true' if component should be visible.
*/
"visible": boolean;
}
interface MbHelp {
/**
* Dictates if usage is allowed (turned on).
*/
"allow": boolean;
/**
* Dictates if Floating-Action-Button (Fab) is shown.
*/
"allowFab": boolean;
/**
* Dictates if the onboarding is allowed.
*/
"allowOnboarding": boolean;
/**
* Dictates if onboarding is executed all the time, or just once.
*/
"allowOnboardingPerpetuity": boolean;
/**
* Closes modal.
*/
"close": () => Promise<void>;
/**
* Initializes - starts tooltip timer, etc.
*/
"initialize": (callbacks: MbHelpCallbacks) => Promise<void>;
/**
* Opens modal for Help Screens purpose.
*/
"openHelpScreens": () => Promise<void>;
/**
* Opens modal for Onboarding purpose.
*/
"openOnboarding": () => Promise<void>;
/**
* Terminates - cancels tooltip timer, closes modal, etc.
*/
"terminate": () => Promise<void>;
/**
* Dictates Milliseconds after which a "Need Help?" tooltip will be shown.
*/
"tooltipPauseTimeout": number;
/**
* Translation service.
*/
"translationService": TranslationService;
}
interface MbImageBox {
/**
* Text which should be displayed inside 'Add image' anchor element when file is not selected.
*/
"anchorText": string;
/**
* Text which represents name of the image.
*/
"boxTitle": string;
/**
* Clear input image.
*/
"clear": () => Promise<void>;
}
interface MbModal {
/**
* Center component
*/
"centered": boolean;
/**
* Passed body content from parent component
*/
"content": string;
/**
* Center content inside modal
*/
"contentCentered": boolean;
/**
* Show shadow drop
*/
"elevated": boolean;
/**
* Whether to hide the close button or not.
*/
"hideCloseButton": boolean;
/**
* Whether to hide the footer or not
*/
"hideFooter": boolean;
/**
* Passed title content from parent component
*/
"modalTitle": string;
/**
* Whether to show back arrow or not
*/
"showBackButton": boolean;
/**
* Show modal content
*/
"visible": boolean;
}
interface MbOverlay {
/**
* Set to 'false' if overlay should not cover whole screen.
*/
"fullscreen": boolean;
/**
* Set to 'true' if overlay should be visible.
*/
"visible": boolean;
}
interface MbProgressTracker {
/**
* Current step. Steps start from 1 up to the size number. Default is 1.
*/
"current": number;
/**
* Steps count. Default is 3.
*/
"size": number;
}
interface MbScreen {
/**
* Set to 'true' if screen should be visible.
*/
"visible": boolean;
}
interface MbSpinner {
/**
* Value of `src` attribute for <img> element.
*/
"icon": string;
/**
* Spinner size, can be 'default' or 'large'.
*/
"size": string;
}
interface MbTooltip {
"arrowPosition"?: | "arrow-left"
| "arrow-right"
| "arrow-up"
| "arrow-down"
| "arrow-none";
"containerWidth"?: string;
"message": string;
"show": boolean;
"showInfoIcon"?: boolean;
"showWarningIcon"?: boolean;
"textAlign"?: "text-center" | "text-left" | "text-right";
}
interface MbTooltipAdvanced {
"arrowPosition"?: | "arrow-left"
| "arrow-right"
| "arrow-up"
| "arrow-up-left"
| "arrow-up-right"
| "arrow-down"
| "arrow-down-left"
| "arrow-down-right";
"message": string;
"show": boolean;
"textAlign"?: "text-center" | "text-left" | "text-right";
}
}
export interface BlinkidInBrowserCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLBlinkidInBrowserElement;
}
export interface MbApiProcessStatusCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLMbApiProcessStatusElement;
}
export interface MbCameraExperienceCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLMbCameraExperienceElement;
}
export interface MbCameraSelectionCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLMbCameraSelectionElement;
}
export interface MbCameraToolbarCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLMbCameraToolbarElement;
}
export interface MbComponentCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLMbComponentElement;
}
export interface MbImageBoxCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLMbImageBoxElement;
}
export interface MbModalCustomEvent<T> extends CustomEvent<T> {
detail: T;
target: HTMLMbModalElement;
}
declare global {
interface HTMLBlinkidInBrowserElement extends Components.BlinkidInBrowser, HTMLStencilElement {
}
var HTMLBlinkidInBrowserElement: {
prototype: HTMLBlinkidInBrowserElement;
new (): HTMLBlinkidInBrowserElement;
};
interface HTMLMbApiProcessStatusElement extends Components.MbApiProcessStatus, HTMLStencilElement {
}
var HTMLMbApiProcessStatusElement: {
prototype: HTMLMbApiProcessStatusElement;
new (): HTMLMbApiProcessStatusElement;
};
interface HTMLMbButtonElement extends Components.MbButton, HTMLStencilElement {
}
var HTMLMbButtonElement: {
prototype: HTMLMbButtonElement;
new (): HTMLMbButtonElement;
};
interface HTMLMbButtonClassicElement extends Components.MbButtonClassic, HTMLStencilElement {
}
var HTMLMbButtonClassicElement: {
prototype: HTMLMbButtonClassicElement;
new (): HTMLMbButtonClassicElement;
};
interface HTMLMbCameraExperienceElement extends Components.MbCameraExperience, HTMLStencilElement {
}
var HTMLMbCameraExperienceElement: {
prototype: HTMLMbCameraExperienceElement;
new (): HTMLMbCameraExperienceElement;
};
interface HTMLMbCameraSelectionElement extends Components.MbCameraSelection, HTMLStencilElement {
}
var HTMLMbCameraSelectionElement: {
prototype: HTMLMbCameraSelectionElement;
new (): HTMLMbCameraSelectionElement;
};
interface HTMLMbCameraToolbarElement extends Components.MbCameraToolbar, HTMLStencilElement {
}
var HTMLMbCameraToolbarElement: {
prototype: HTMLMbCameraToolbarElement;
new (): HTMLMbCameraToolbarElement;
};
interface HTMLMbCompletedElement extends Components.MbCompleted, HTMLStencilElement {
}
var HTMLMbCompletedElement: {
prototype: HTMLMbCompletedElement;
new (): HTMLMbCompletedElement;
};
interface HTMLMbComponentElement extends Components.MbComponent, HTMLStencilElement {
}
var HTMLMbComponentElement: {
prototype: HTMLMbComponentElement;
new (): HTMLMbComponentElement;
};
interface HTMLMbContainerElement extends Components.MbContainer, HTMLStencilElement {
}
var HTMLMbContainerElement: {
prototype: HTMLMbContainerElement;
new (): HTMLMbContainerElement;
};
interface HTMLMbFeedbackElement extends Components.MbFeedback, HTMLStencilElement {
}
var HTMLMbFeedbackElement: {
prototype: HTMLMbFeedbackElement;
new (): HTMLMbFeedbackElement;
};
interface HTMLMbHelpElement extends Components.MbHelp, HTMLStencilElement {
}
var HTMLMbHelpElement: {
prototype: HTMLMbHelpElement;
new (): HTMLMbHelpElement;
};
interface HTMLMbImageBoxElement extends Components.MbImageBox, HTMLStencilElement {
}
var HTMLMbImageBoxElement: {
prototype: HTMLMbImageBoxElement;
new (): HTMLMbImageBoxElement;
};
interface HTMLMbModalElement extends Components.MbModal, HTMLStencilElement {
}
var HTMLMbModalElement: {
prototype: HTMLMbModalElement;
new (): HTMLMbModalElement;
};
interface HTMLMbOverlayElement extends Components.MbOverlay, HTMLStencilElement {
}
var HTMLMbOverlayElement: {
prototype: HTMLMbOverlayElement;
new (): HTMLMbOverlayElement;
};
interface HTMLMbProgressTrackerElement extends Components.MbProgressTracker, HTMLStencilElement {
}
var HTMLMbProgressTrackerElement: {
prototype: HTMLMbProgressTrackerElement;
new (): HTMLMbProgressTrackerElement;
};
interface HTMLMbScreenElement extends Components.MbScreen, HTMLStencilElement {
}
var HTMLMbScreenElement: {
prototype: HTMLMbScreenElement;
new (): HTMLMbScreenElement;
};
interface HTMLMbSpinnerElement extends Components.MbSpinner, HTMLStencilElement {
}
var HTMLMbSpinnerElement: {
prototype: HTMLMbSpinnerElement;
new (): HTMLMbSpinnerElement;
};
interface HTMLMbTooltipElement extends Components.MbTooltip, HTMLStencilElement {
}
var HTMLMbTooltipElement: {
prototype: HTMLMbTooltipElement;
new (): HTMLMbTooltipElement;
};
interface HTMLMbTooltipAdvancedElement extends Components.MbTooltipAdvanced, HTMLStencilElement {
}
var HTMLMbTooltipAdvancedElement: {
prototype: HTMLMbTooltipAdvancedElement;
new (): HTMLMbTooltipAdvancedElement;
};
interface HTMLElementTagNameMap {
"blinkid-in-browser": HTMLBlinkidInBrowserElement;
"mb-api-process-status": HTMLMbApiProcessStatusElement;
"mb-button": HTMLMbButtonElement;
"mb-button-classic": HTMLMbButtonClassicElement;
"mb-camera-experience": HTMLMbCameraExperienceElement;
"mb-camera-selection": HTMLMbCameraSelectionElement;
"mb-camera-toolbar": HTMLMbCameraToolbarElement;
"mb-completed": HTMLMbCompletedElement;
"mb-component": HTMLMbComponentElement;
"mb-container": HTMLMbContainerElement;
"mb-feedback": HTMLMbFeedbackElement;
"mb-help": HTMLMbHelpElement;
"mb-image-box": HTMLMbImageBoxElement;
"mb-modal": HTMLMbModalElement;
"mb-overlay": HTMLMbOverlayElement;
"mb-progress-tracker": HTMLMbProgressTrackerElement;
"mb-screen": HTMLMbScreenElement;
"mb-spinner": HTMLMbSpinnerElement;
"mb-tooltip": HTMLMbTooltipElement;
"mb-tooltip-advanced": HTMLMbTooltipAdvancedElement;
}
}
declare namespace LocalJSX {
interface BlinkidInBrowser {
/**
* Write a hello message to the browser console when license check is successfully performed. Hello message will contain the name and version of the SDK, which are required information for all support tickets. Default value is true.
*/
"allowHelloMessage"?: boolean;
/**
* Dictates if the Help Screens Floating-Action-Button (Fab) is offered. (in the bottom right corner of the Camera Experience). Default value is 'true'.
*/
"allowHelpScreensFab"?: boolean;
/**
* Dictates if the Help Screens Onboarding is active. Onboarding is a process of opening the Help Screens initial guides when the Camera Experience is being started. Default value is 'true'.
*/
"allowHelpScreensOnboarding"?: boolean;
/**
* Dictates if the Help Screens Onboarding process is being started on every Camera Experience start, or just on the first one. Default value is 'false' - onboarding ran only once.
*/
"allowHelpScreensOnboardingPerpetuity"?: boolean;
/**
* Overrides the BlinkID build that will be loaded. The `lightweight` variant is smaller but doesn't support barcode deblurring. This variant is loaded by default on mobile devices. The `full` version is loaded by default on desktop devices.
*/
"blinkIdVariant"?: BlinkIDVariant;
/**
* Configure camera experience state timeout durations
*/
"cameraExperienceStateDurations"?: CameraExperienceStateDurations;
/**
* Camera device ID passed from root component. Client can choose which camera to turn on if array of cameras exists.
*/
"cameraId"?: string | null;
/**
* Set to 'false' if component should not enable drag and drop functionality. Default value is 'true'.
*/
"enableDrag"?: boolean;
/**
* Absolute location of WASM and related JS/data files. Useful when resource files should be loaded over CDN, or when web frameworks/libraries are used which store resources in specific locations, e.g. inside "assets" folder. Important: if engine is hosted on another origin, CORS must be enabled between two hosts. That is, server where engine is hosted must have 'Access-Control-Allow-Origin' header for the location of the web app. Important: SDK and WASM resources must be from the same version of package. Default value is empty string, i.e. "". In case of empty string, value of "window.location.origin" property is going to be used.
*/
"engineLocation"?: string;
/**
* Define whether to use 'FULLSCREEN' or 'INLINE' gallery dropdown type. If 'FULLSCREEN' is used, when a user drags an image over the UI component, an overlay will pop up and cover the whole screen. If 'INLINE' is used, there is no fullscreen overlay, but rather the overlay is restricted to the size of the UI component. Default value is 'INLINE'.
*/
"galleryDropType"?: "FULLSCREEN" | "INLINE";
/**
* Define whether to use 'FULLSCREEN' or 'INLINE' gallery overlay type. If 'FULLSCREEN' is used, when a user selects an image from which data should be extracted, an overlay will pop up and cover the whole screen. On the other hand, if 'INLINE' is used, there is no overlay but rather a 'Processing' message inside the UI component. Default value is 'INLINE'.
*/
"galleryOverlayType"?: "FULLSCREEN" | "INLINE";
/**
* Miliseconds timeout on which the "Need Help?" tooltip is turned on. First timeout is started each time the Camera Experience starts and is being reset every time the Help Screens are consumed. Default value is 15000 - 15 seconds.
*/
"helpScreensTooltipPauseTimeout"?: number;
/**
* If set to 'true', UI component will not display feedback, i.e. information and error messages. Setting this attribute to 'false' won't disable 'scanError' and 'scanInfo' events. Default value is 'false'.
*/
"hideFeedback"?: boolean;
/**
* If set to 'true', UI component will become visible after successful SDK initialization. Also, error screen is not going to be displayed in case of initialization error. If set to 'false', loading and error screens of the UI component will be visible during initialization and in case of an error. Default value is 'false'.
*/
"hideLoadingAndErrorUi"?: boolean;
/**
* Hover state of iconCameraDefault.
*/
"iconCameraActive"?: string;
/**
* Provide alternative camera icon. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative camera icon. Image is scaled to 20x20 pixels.
*/
"iconCameraDefault"?: string;
/**
* Hover state of iconGalleryDefault.
*/
"iconGalleryActive"?: string;
/**
* Provide alternative gallery icon. This icon is also used during drag and drop action. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative gallery icon. Image is scaled to 20x20 pixels. In drag and drop dialog image is scaled to 24x24 pixels.
*/
"iconGalleryDefault"?: string;
/**
* Provide alternative completed icon. This icon is used when gallery scanning process is done, in case that `galleryOverlayType` property is set to `INLINE`. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative icon. Image is scaled to 24x24 pixels.
*/
"iconGalleryScanningCompleted"?: string;
/**
* Provide alternative invalid format icon which is used during drag and drop action. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative icon. Image is scaled to 24x24 pixels.
*/
"iconInvalidFormat"?: string;
/**
* Provide alternative loading icon. CSS rotation is applied to this icon. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative icon. Image is scaled to 24x24 pixels.
*/
"iconSpinnerFromGalleryExperience"?: string;
/**
* Provide alternative loading icon. CSS rotation is applied to this icon. Every value that is placed here is passed as a value of `src` attribute to <img> element. This attribute can be used to provide location, base64 or any URL of alternative icon. Image is scaled to 24x24 pixels.
*/
"iconSpinnerScreenLoading"?: string;
/**
* License key which is going to be used to unlock WASM library. Keep in mind that UI component will reinitialize every time license key is changed.
*/
"licenseKey"?: string;
/**
* Event which is emitted when camera scan is started, i.e. when user clicks on _scan from camera_ button.
*/
"onCameraScanStarted"?: (event: BlinkidInBrowserCustomEvent<null>) => void;
/**
* Event which is emitted during initialization of UI component. Each event contains `code` property which has deatils about fatal errror.
*/
"onFatalError"?: (event: BlinkidInBrowserCustomEvent<SDKError>) => void;
/**
* Event which is emitted during positive or negative user feedback. If attribute/property `hideFeedback` is set to `false`, UI component will display the feedback.
*/
"onFeedback"?: (event: BlinkidInBrowserCustomEvent<FeedbackMessage>) => void;
/**
* Event which is emitted when image scan is started, i.e. when user clicks on _scan from gallery button.
*/
"onImageScanStarted"?: (event: BlinkidInBrowserCustomEvent<null>) => void;
/**
* Event which is emitted when UI component is successfully initialized and ready for use.
*/
"onReady"?: (event: BlinkidInBrowserCustomEvent<EventReady>) => void;
/**
* Event which is emitted when scan is aborted, i.e. when user clicks on close from the gallery toolbar, or presses escape key.
*/
"onScanAborted"?: (event: BlinkidInBrowserCustomEvent<null>) => void;
/**
* Event which is emitted during or immediately after scan error.
*/
"onScanError"?: (event: BlinkidInBrowserCustomEvent<EventScanError>) => void;
/**
* Event which is emitted after successful scan. This event contains recognition results.
*/
"onScanSuccess"?: (event: BlinkidInBrowserCustomEvent<EventScanSuccess>) => void;
/**
* URL to the ping proxy service. Ping proxy is a server which is hosted on you own infrastructure and forwards ping messages from SDK to the Microblink servers. That way web application which has integrated this SDK will only directly communicate with your own servers. In order to use this service, you need a `ALLOW PING PROXY` permission in your license.
*/
"pingProxyUrl"?: string | null;
/**
* List of recognizers which should be used. Available recognizers for BlinkID: - IdBarcodeRecognizer - BlinkIdSingleSideRecognizer - BlinkIdMultiSideRecognizer - cannot be used in combination with other recognizers - when defined, scan from image is not available Recognizers can be defined by setting HTML attribute "recognizers", for example: `<blinkid-in-browser recognizers="IdBarcodeRecognizer,BlinkIdSingleSideRecognizer"></blinkid-in-browser>`
*/
"rawRecognizers"?: string;
/**
* Set custom translations for UI component. List of available translation keys can be found in `src/utils/translation.service.ts` file.
*/
"rawTranslations"?: string;
/**
* Amount of time in milliseconds before the recognition process is resumed after it is being paused previously. This setting applies only to video recognition. Keep in mind that the timer starts after the front side was scanned . This behaviour ensures that the user has enough time to flip the document and place its back side in front of the camera device.
*/
"recognitionPauseTimeout"?: number;
/**
* Amount of time in milliseconds before the recognition process is cancelled regardless of whether recognition was successful or not. This setting applies only to video recognition. Keep in mi