UNPKG

@microblink/blinkid-in-browser-sdk

Version:

A simple ID scanning library for WebAssembly-enabled browsers.

214 lines (213 loc) 5.9 kB
/** * Copyright (c) Microblink Ltd. All rights reserved. */ import { Recognizer, RecognizerResult, RecognizerSettings, MBDate, WasmSDK } from "../../../MicroblinkSDK/DataStructures"; import { BarcodeData } from "../../BlinkBarcode/BarcodeData"; /** * A settings object that is used for configuring the IdBarcodeRecognizer. */ export declare class IdBarcodeRecognizerSettings implements RecognizerSettings { } /** * The result of image recognition when using the IdBarcodeRecognizer. */ export interface IdBarcodeRecognizerResult extends RecognizerResult { /** * The additional name information of the document owner. */ readonly additionalNameInformation: string; /** * The address of the document owner. */ readonly address: string; /** * The raw, unparsed barcode data. */ readonly barcodeData: BarcodeData; /** * The city address portion of the document owner. */ readonly city: string; /** * The date of birth of the document owner. */ readonly dateOfBirth: MBDate; /** * The date of expiry of the document. */ readonly dateOfExpiry: MBDate; /** * The date of issue of the document. */ readonly dateOfIssue: MBDate; /** * The additional number of the document. */ readonly documentAdditionalNumber: string; /** * The document number. */ readonly documentNumber: string; /** * The document type deduced from the recognized barcode */ readonly documentType: IdBarcodeDocumentType; /** * The employer of the document owner. */ readonly employer: string; /** * The additional privileges granted to the driver license owner. */ readonly endorsements: string; /** * Document specific extended elements that contain all barcode fields in their original form. * The indices of specific data within the array are given by the BarcodeElementKey enum. * * For example, to obtain the first name you can use extendedElements[BarcodeElementKey.CustomerFirstName]. * * Currently this is only filled for AAMVACompliant documents. */ readonly extendedElements: Array<string>; /** * The first name of the document owner. */ readonly firstName: string; /** * The full name of the document owner. */ readonly fullName: string; /** * The issuing authority of the document. */ readonly issuingAuthority: string; /** * The jurisdiction code address portion of the document owner. */ readonly jurisdiction: string; /** * The last name of the document owner. */ readonly lastName: string; /** * The marital status of the document owner. */ readonly maritalStatus: string; /** * The middle name of the document owner. */ readonly middleName: string; /** * The nationality of the documet owner. */ readonly nationality: string; /** * The personal identification number. */ readonly personalIdNumber: string; /** * The place of birth of the document owner. */ readonly placeOfBirth: string; /** * The postal code address portion of the document owner. */ readonly postalCode: string; /** * The profession of the document owner. */ readonly profession: string; /** * The race of the document owner. */ readonly race: string; /** * The religion of the document owner. */ readonly religion: string; /** * The residential stauts of the document owner. */ readonly residentialStatus: string; /** * The restrictions to driving privileges for the driver license owner. */ readonly restrictions: string; /** * The sex of the document owner. */ readonly sex: string; /** * The street address portion of the document owner. */ readonly street: string; /** * The type of vehicle the driver license owner has privilege to drive. */ readonly vehicleClass: string; } /** * The ID Barcode Recognizer is used for scanning barcodes on ID documents. */ export interface IdBarcodeRecognizer extends Recognizer { /** Returns the currently applied IdBarcodeRecognizerSettings. */ currentSettings(): Promise<IdBarcodeRecognizerSettings>; /** Applies new settings to the recognizer. */ updateSettings(newSettings: IdBarcodeRecognizerSettings): Promise<void>; /** Returns the current result of the recognition. */ getResult(): Promise<IdBarcodeRecognizerResult>; } /** * This function is used to create a new instance of `IdBarcodeRecognizer`. * @param wasmSDK Instance of WasmSDK which will be used to communicate with the WebAssembly module. */ export declare function createIdBarcodeRecognizer(wasmSDK: WasmSDK): Promise<IdBarcodeRecognizer>; /** * Represents the type of scanned document */ export declare enum IdBarcodeDocumentType { /** * No document was scanned */ None = 0, /** * AAMVACompliant document was scanned */ AAMVACompliant = 1, /** * ArgentinaID document was scanned */ ArgentinaID = 2, /** * ArgentinaAlienID document was scanned */ ArgentinaAlienID = 3, /** * ArgentinaDL document was scanned */ ArgentinaDL = 4, /** * ColombiaID document was scanned */ ColombiaID = 5, /** * ColombiaDL document was scanned */ ColombiaDL = 6, /** * NigeriaVoterID document was scanned */ NigeriaVoterID = 7, /** * NigeriaDL document was scanned */ NigeriaDL = 8, /** * PanamaID document was scanned */ PanamaID = 9, /** * SouthAfricaID document was scanned */ SouthAfricaID = 10 }