@microblink/blinkid-core 7.4.1 → 7.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/dist/blinkid-core.js +656 -599
  2. package/dist/resources/blinkid-worker.js +517 -707
  3. package/dist/resources/full/advanced/BlinkIdModule.js +4 -4
  4. package/dist/resources/full/advanced/BlinkIdModule.wasm +0 -0
  5. package/dist/resources/full/advanced-threads/BlinkIdModule.js +12 -13
  6. package/dist/resources/full/advanced-threads/BlinkIdModule.wasm +0 -0
  7. package/dist/resources/full/basic/BlinkIdModule.js +8 -8
  8. package/dist/resources/full/basic/BlinkIdModule.wasm +0 -0
  9. package/dist/resources/lightweight/advanced/BlinkIdModule.js +3 -3
  10. package/dist/resources/lightweight/advanced/BlinkIdModule.wasm +0 -0
  11. package/dist/resources/lightweight/advanced-threads/BlinkIdModule.js +5 -5
  12. package/dist/resources/lightweight/advanced-threads/BlinkIdModule.wasm +0 -0
  13. package/dist/resources/lightweight/basic/BlinkIdModule.js +5 -5
  14. package/dist/resources/lightweight/basic/BlinkIdModule.wasm +0 -0
  15. package/dist/resources/size-manifest.json +30 -0
  16. package/package.json +1 -1
  17. package/types/deviceInfo/createDerivedDeviceInfo.d.ts +7 -0
  18. package/types/deviceInfo/createDerivedDeviceInfo.d.ts.map +1 -0
  19. package/types/deviceInfo/createDerivedDeviceInfo.test.d.ts +5 -0
  20. package/types/deviceInfo/createDerivedDeviceInfo.test.d.ts.map +1 -0
  21. package/types/deviceInfo/deviceInfo.d.ts +54 -0
  22. package/types/deviceInfo/deviceInfo.d.ts.map +1 -0
  23. package/types/deviceInfo/getAppleDeviceModel.d.ts +13 -0
  24. package/types/deviceInfo/getAppleDeviceModel.d.ts.map +1 -0
  25. package/types/deviceInfo/getAppleDeviceModel.test.d.ts +5 -0
  26. package/types/deviceInfo/getAppleDeviceModel.test.d.ts.map +1 -0
  27. package/types/deviceInfo/getBrowserFromUserAgent.d.ts +18 -0
  28. package/types/deviceInfo/getBrowserFromUserAgent.d.ts.map +1 -0
  29. package/types/deviceInfo/getBrowserFromUserAgent.test.d.ts +5 -0
  30. package/types/deviceInfo/getBrowserFromUserAgent.test.d.ts.map +1 -0
  31. package/types/deviceInfo/getOsFromUserAgent.d.ts +18 -0
  32. package/types/deviceInfo/getOsFromUserAgent.d.ts.map +1 -0
  33. package/types/deviceInfo/getOsFromUserAgent.test.d.ts +5 -0
  34. package/types/deviceInfo/getOsFromUserAgent.test.d.ts.map +1 -0
  35. package/types/deviceInfo/navigator-types.d.ts +79 -0
  36. package/types/deviceInfo/navigator-types.d.ts.map +1 -0
  37. package/types/index.d.ts +1 -0
  38. package/types/index.d.ts.map +1 -1
  39. package/dist/blinkid-core.js.map +0 -1
  40. package/types/index.rollup.d.ts +0 -2877
@@ -1,2877 +0,0 @@
1
- import { finalizer } from 'comlink';
2
- import { OverrideProperties } from 'type-fest';
3
- import { ProxyMarked } from 'comlink';
4
- import { Remote } from 'comlink';
5
- import type { SetOptional } from 'type-fest';
6
- import { Simplify } from 'type-fest';
7
-
8
- /** Contains detailed address information */
9
- export declare type AddressDetailedInfo = {
10
- /** The address street portion of the document owner */
11
- street: string;
12
- /** The address postal code portion of the document owner */
13
- postalCode: string;
14
- /** The address city portion of the document owner */
15
- city: string;
16
- /** The address jurisdiction code portion of the document owner */
17
- jurisdiction: string;
18
- };
19
-
20
- /** Represents a string result for a specific alphabet */
21
- export declare type AlphabetStringResult = {
22
- /** The value of the string result. */
23
- value: string;
24
- /** The location of the string result. */
25
- location?: Rectangle;
26
- /** The side of the string result. */
27
- side?: ScanningSide;
28
- };
29
-
30
- /**
31
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
32
- */
33
- /** Represents the type of the alphabet used in the document. */
34
- export declare type AlphabetType = "latin" | "arabic" | "cyrillic" | "greek";
35
-
36
- /**
37
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
38
- */
39
- /** Represents level of anonymization performed on the scanning result. */
40
- export declare type AnonymizationMode =
41
- /** DocumentImage is anonymized with black boxes covering sensitive data. */
42
- "image-only"
43
- /** Result fields containing sensitive data are removed from result. */
44
- | "result-fields-only"
45
- /** This mode is combination of ImageOnly and ResultFieldsOnly modes. */
46
- | "full-result";
47
-
48
- /** Data extracted from barcode. */
49
- export declare type BarcodeData = {
50
- /** Format of recognized barcode. */
51
- barcodeType: BarcodeType;
52
- /**
53
- * True if returned result is uncertain, i.e. if scanned barcode was
54
- * incomplete (has parts of it missing).
55
- */
56
- uncertain: boolean;
57
- /** String representation of data inside barcode. */
58
- stringData: string;
59
- /** The raw bytes contained inside barcode. */
60
- rawData: Uint8Array;
61
- };
62
-
63
- /** Represents a key-value pair of a barcode element. */
64
- export declare type BarcodeElement = {
65
- /** The key of the barcode element. */
66
- key: BarcodeElementKey;
67
- /** The value of the barcode element. */
68
- value: string;
69
- };
70
-
71
- /**
72
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
73
- */
74
- /**
75
- * BarcodeElementKey defines additional fields present in the barcode.
76
- * Currently, this is only used for AAMVACompliant documents.
77
- */
78
- export declare type BarcodeElementKey =
79
- /**
80
- * Mandatory on all driver's licenses. All barcodes which are using 3-track
81
- * magnetic stripe encoding used in the interest of smoothing a transition
82
- * from legacy documents shall be designated as "Magnetic". All barcodes which
83
- * are using compact encoding compliant with ISO/IEC 18013-2 shall be
84
- * designated as "Compact". All barcodes (majority) compliant with Mandatory
85
- * PDF417 Bar Code of the American Association of Motor Vehicle Administrators
86
- * (AAMVA) Card Design Standard from AAMVA DL/ID-2000 standard to DL/ID-2013
87
- * shall be designated as "AAMVA".
88
- */
89
- "document-type"
90
- /**
91
- * Mandatory on all driver's licenses.
92
- *
93
- * AAMVA Version Number: This is a decimal value between 0 and 99 that
94
- * specifies the version level of the PDF417 bar code format. Version "0" and "00"
95
- * is reserved for bar codes printed to the specification of the American Association
96
- * of Motor Vehicle Administrators (AAMVA) prior to the adoption of the AAMVA DL/ID-2000
97
- * standard.
98
- *
99
- * - All barcodes compliant with AAMVA DL/ID-2000 standard shall be designated Version "01."
100
- * - All barcodes compliant with AAMVA Card Design Specification version 1.0, dated 09-2003
101
- * shall be designated Version "02."
102
- * - All barcodes compliant with AAMVA Card Design Specification version 2.0, dated 03-2005
103
- * shall be designated Version "03."
104
- * - All barcodes compliant with AAMVA Card Design Standard version 1.0, dated 07-2009
105
- * shall be designated Version "04."
106
- * - All barcodes compliant with AAMVA Card Design Standard version 1.0, dated 07-2010
107
- * shall be designated Version "05."
108
- * - All barcodes compliant with AAMVA Card Design Standard version 1.0, dated 07-2011
109
- * shall be designated Version "06".
110
- * - All barcodes compliant with AAMVA Card Design Standard version 1.0, dated 06-2012
111
- * shall be designated Version "07".
112
- * - All barcodes compliant with this current AAMVA standard shall be designated "08".
113
- *
114
- * Should a need arise requiring major revision to the format, this field provides the
115
- * means to accommodate additional revision.
116
- *
117
- * If the document type is not "AAMVA", this field defines the version number of the
118
- * given document type's standard.
119
- */
120
- | "standard-version-number"
121
- /**
122
- * Mandatory on all AAMVA, Magnetic and Compact barcodes.
123
- *
124
- * Family name of the cardholder. (Family name is sometimes also called "last name" or "surname.")
125
- * Collect full name for record, print as many characters as possible on portrait side of DL/ID.
126
- */
127
- | "customer-family-name"
128
- /**
129
- * Mandatory on all AAMVA, Magnetic and Compact barcodes.
130
- *
131
- * First name of the cardholder.
132
- */
133
- | "customer-first-name"
134
- /**
135
- * Mandatory on all AAMVA, Magnetic and Compact barcodes.
136
- *
137
- * Full name of the individual holding the Driver's License or ID.
138
- *
139
- * The Name field contains up to four portions, separated with the "," delimiter:
140
- * Last Name (required)
141
- * , (required)
142
- * First Name (required)
143
- * , (required if other name portions follow, otherwise optional)
144
- * Middle Name(s) (optional)
145
- * , (required if other name portions follow, otherwise optional)
146
- * Suffix (optional)
147
- * , (optional)
148
- *
149
- * If the individual has more than one middle name they are separated with space.
150
- */
151
- | "customer-full-name"
152
- /**
153
- * Mandatory on all AAMVA, Magnetic and Compact barcodes.
154
- *
155
- * Date on which the cardholder was born. (MMDDCCYY format)
156
- */
157
- | "date-of-birth"
158
- /**
159
- * Mandatory on all AAMVA, Magnetic barcodes. Optional on Compact barcodes.
160
- *
161
- * Gender of the cardholder. 1 = male, 2 = female.
162
- */
163
- | "sex"
164
- /**
165
- * Mandatory on AAMVA 02, 03, 04, 05, 06, 07, 08 barcodes. Optional on AAMVA
166
- * 01, Magnetic and Compact barcodes.
167
- *
168
- * Color of cardholder's eyes. (ANSI D-20 codes)
169
- *
170
- * Code Description
171
- * BLK Black
172
- * BLU Blue
173
- * BRO Brown
174
- * GRY Gray
175
- * GRN Green
176
- * HAZ Hazel
177
- * MAR Maroon
178
- * PNK Pink
179
- * DIC Dichromatic
180
- * UNK Unknown
181
- */
182
- | "eye-color"
183
- /**
184
- * Mandatory on all AAMVA and Magnetic barcodes.
185
- *
186
- * On compact barcodes, use kFullAddress.
187
- *
188
- * Street portion of the cardholder address.
189
- * The place where the registered driver of a vehicle (individual or corporation)
190
- * may be contacted such as a house number, street address, etc.
191
- */
192
- | "address-street"
193
- /**
194
- * Mandatory on all AAMVA and Magnetic barcodes.
195
- *
196
- * On compact barcodes, use kFullAddress.
197
- *
198
- * City portion of the cardholder address.
199
- */
200
- | "address-city"
201
- /**
202
- * Mandatory on all AAMVA and Magnetic barcodes.
203
- *
204
- * On compact barcodes, use kFullAddress.
205
- *
206
- * State portion of the cardholder address.
207
- */
208
- | "address-jurisdiction-code"
209
- /**
210
- * Mandatory on all AAMVA and Magnetic barcodes.
211
- *
212
- * On compact barcodes, use kFullAddress.
213
- *
214
- * Postal code portion of the cardholder address in the U.S. and Canada. If the
215
- * trailing portion of the postal code in the U.S. is not known, zeros can be used
216
- * to fill the trailing set of numbers up to nine (9) digits.
217
- */
218
- | "address-postal-code"
219
- /**
220
- * Mandatory on all AAMVA and Magnetic barcodes. Optional on Compact barcodes.
221
- *
222
- * Full address of the individual holding the Driver's License or ID.
223
- *
224
- * The full address field contains up to four portions, separated with the "," delimiter:
225
- * Street Address (required)
226
- * , (required if other address portions follow, otherwise optional)
227
- * City (optional)
228
- * , (required if other address portions follow, otherwise optional)
229
- * Jurisdiction Code (optional)
230
- * , (required if other address portions follow, otherwise optional)
231
- * ZIP - Postal Code (optional)
232
- */
233
- | "full-address"
234
- /**
235
- * Mandatory on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
236
- * Optional on AAMVA 01 and Magnetic barcodes.
237
- *
238
- * Height of cardholder, either in Inches or in Centimeters.
239
- *
240
- * Inches (in): number of inches followed by " in"
241
- * example: 6'1'' = "73 in"
242
- *
243
- * Centimeters (cm): number of centimeters followed by " cm"
244
- * example: 181 centimeters = "181 cm"
245
- */
246
- | "height"
247
- /**
248
- * Mandatory on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
249
- * Optional on AAMVA 01 and Magnetic barcodes.
250
- *
251
- * Height of cardholder in Inches.
252
- * Example: 5'9'' = "69".
253
- */
254
- | "height-in"
255
- /**
256
- * Mandatory on AAMVA 02, 03, 04, 05, 06, 07, 08 Compact barcodes. Optional on
257
- * AAMVA 01 and Magnetic barcodes.
258
- *
259
- * Height of cardholder in Centimeters.
260
- * Example: 180 Centimeters = "180".
261
- */
262
- | "height-cm"
263
- /**
264
- * Mandatory on AAMVA 04, 05, 06, 07, 08 barcodes. Optional on AAMVA 01, 02,
265
- * 03, Magnetic and Compact barcodes.
266
- *
267
- * Middle name(s) of the cardholder. In the case of multiple middle names they
268
- * shall be separated by space " ".
269
- */
270
- | "customer-middle-name"
271
- /**
272
- * Optional on all AAMVA, Magnetic and Compact barcodes.
273
- *
274
- * Bald, black, blonde, brown, gray, red/auburn, sandy, white, unknown. If the issuing
275
- * jurisdiction wishes to abbreviate colors, the three-character codes provided in ANSI D20 must be
276
- * used.
277
- *
278
- * Code Description
279
- * BAL Bald
280
- * BLK Black
281
- * BLN Blond
282
- * BRO Brown
283
- * GRY Grey
284
- * RED Red/Auburn
285
- * SDY Sandy
286
- * WHI White
287
- * UNK Unknown
288
- */
289
- | "hair-color"
290
- /**
291
- * Mandatory on AAMVA 02 barcodes. Optional on AAMVA 01, 03, 04, 05, 06, 07,
292
- * 08, Magnetic and Compact barcodes.
293
- *
294
- * Name Suffix (If jurisdiction participates in systems requiring name suffix (PDPS, CDLIS, etc.),
295
- * the suffix must be collected and displayed on the DL/ID and in the MRT).
296
- * - JR (Junior)
297
- * - SR (Senior)
298
- * - 1ST or I (First)
299
- * - 2ND or II (Second)
300
- * - 3RD or III (Third)
301
- * - 4TH or IV (Fourth)
302
- * - 5TH or V (Fifth)
303
- * - 6TH or VI (Sixth)
304
- * - 7TH or VII (Seventh)
305
- * - 8TH or VIII (Eighth)
306
- * - 9TH or IX (Ninth)
307
- */
308
- | "name-suffix"
309
- /**
310
- * Optional on all AAMVA and Compact barcodes.
311
- *
312
- * Other name by which the cardholder is known. ALTERNATIVE NAME(S) of the individual
313
- * holding the Driver License or ID.
314
- *
315
- * The Name field contains up to four portions, separated with the "," delimiter:
316
- * AKA Last Name (required)
317
- * , (required)
318
- * AKA First Name (required)
319
- * , (required if other name portions follow, otherwise optional)
320
- * AKA Middle Name(s) (optional)
321
- * , (required if other name portions follow, otherwise optional)
322
- * AKA Suffix (optional)
323
- * , (optional)
324
- *
325
- * If the individual has more than one AKA middle name they are separated with space.
326
- */
327
- | "aka-full-name"
328
- /**
329
- * Optional on all AAMVA and Compact barcodes.
330
- *
331
- * Other family name by which the cardholder is known.
332
- */
333
- | "aka-family-name"
334
- /**
335
- * Optional on all AAMVA and Compact barcodes.
336
- *
337
- * Other given name by which the cardholder is known
338
- */
339
- | "aka-given-name"
340
- /**
341
- * Optional on all AAMVA and Compact barcodes.
342
- *
343
- * Other suffix by which the cardholder is known.
344
- *
345
- * The Suffix Code Portion, if submitted, can contain only the Suffix Codes shown in the following table (e.g., Andrew Johnson, III = JOHNSON@ANDREW@@3RD):
346
- *
347
- * Suffix Meaning or Synonym
348
- * JR Junior
349
- * SR Senior or Esquire 1ST First
350
- * 2ND Second
351
- * 3RD Third
352
- * 4TH Fourth
353
- * 5TH Fifth
354
- * 6TH Sixth
355
- * 7TH Seventh
356
- * 8TH Eighth
357
- * 9TH Ninth
358
- */
359
- | "aka-suffix-name"
360
- /**
361
- * Mandatory on AAMVA 02 barcodes. Optional on AAMVA 01, 03, 04, 05, 06, 07,
362
- * 08, Magnetic and Compact barcodes.
363
- *
364
- * Indicates the approximate weight range of the cardholder:
365
- * 0 = up to 31 kg (up to 70 lbs)
366
- * 1 = 32 – 45 kg (71 – 100 lbs)
367
- * 2 = 46 - 59 kg (101 – 130 lbs)
368
- * 3 = 60 - 70 kg (131 – 160 lbs)
369
- * 4 = 71 - 86 kg (161 – 190 lbs)
370
- * 5 = 87 - 100 kg (191 – 220 lbs)
371
- * 6 = 101 - 113 kg (221 – 250 lbs)
372
- * 7 = 114 - 127 kg (251 – 280 lbs)
373
- * 8 = 128 – 145 kg (281 – 320 lbs)
374
- * 9 = 146+ kg (321+ lbs)
375
- */
376
- | "weight-range"
377
- /**
378
- * Mandatory on AAMVA 02 barcodes. Optional on AAMVA 01, 03, 04, 05, 06, 07,
379
- * 08, Magnetic and Compact barcodes.
380
- *
381
- * Cardholder weight in pounds Example: 185 lb = "185"
382
- */
383
- | "weight-pounds"
384
- /**
385
- * Mandatory on AAMVA 02 barcodes. Optional on AAMVA 01, 03, 04, 05, 06, 07,
386
- * 08, Magnetic and Compact barcodes.
387
- *
388
- * Cardholder weight in kilograms Example: 84 kg = "084"
389
- */
390
- | "weight-kilograms"
391
- /**
392
- * Mandatory on all AAMVA and Compact barcodes.
393
- *
394
- * The number assigned or calculated by the issuing authority.
395
- */
396
- | "customer-id-number"
397
- /**
398
- * Mandatory on AAMVA 04, 05, 06, 07, 08 barcodes. Optional on Compact
399
- * barcodes.
400
- *
401
- * A code that indicates whether a field has been truncated (T), has not been
402
- * truncated (N), or – unknown whether truncated (U).
403
- */
404
- | "family-name-truncation"
405
- /**
406
- * Mandatory on AAMVA 04, 05, 06, 07, 08 barcodes. Optional on Compact
407
- * barcodes.
408
- *
409
- * A code that indicates whether a field has been truncated (T), has not been
410
- * truncated (N), or – unknown whether truncated (U).
411
- */
412
- | "first-name-truncation"
413
- /**
414
- * Mandatory on AAMVA 04, 05, 06, 07, 08 barcodes.
415
- *
416
- * A code that indicates whether a field has been truncated (T), has not been
417
- * truncated (N), or – unknown whether truncated (U).
418
- */
419
- | "middle-name-truncation"
420
- /**
421
- * Optional on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
422
- *
423
- * Country and municipality and/or state/province.
424
- */
425
- | "place-of-birth"
426
- /**
427
- * Optional on all AAMVA barcodes.
428
- *
429
- * On Compact barcodes, use kFullAddress.
430
- *
431
- * Second line of street portion of the cardholder address.
432
- */
433
- | "address-street-2"
434
- /**
435
- * Optional on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
436
- *
437
- * Codes for race or ethnicity of the cardholder, as defined in ANSI D20.
438
- *
439
- * Race:
440
- * Code Description
441
- * AI Alaskan or American Indian (Having Origins in Any of The Original Peoples of
442
- * North America, and Maintaining Cultural Identification Through Tribal
443
- * Affiliation of Community Recognition)
444
- * AP Asian or Pacific Islander (Having Origins in Any of the Original Peoples of
445
- * the Far East, Southeast Asia, or Pacific Islands. This Includes China, India,
446
- * Japan, Korea, the Philippines Islands, and Samoa)
447
- * BK Black (Having Origins in Any of the Black Racial Groups of Africa)
448
- * W White (Having Origins in Any of The Original Peoples of Europe, North Africa,
449
- * or the Middle East)
450
- *
451
- * Ethnicity:
452
- * Code Description
453
- * H Hispanic Origin (A Person of Mexican, Puerto Rican, Cuban, Central or South
454
- * American or Other Spanish Culture or Origin, Regardless of Race)
455
- * O Not of Hispanic Origin (Any Person Other Than Hispanic)
456
- * U Unknown
457
- */
458
- | "race-ethnicity"
459
- /**
460
- * Optional on AAMVA 01 barcodes.
461
- *
462
- * PREFIX to Driver Name. Freeform as defined by issuing jurisdiction.
463
- */
464
- | "name-prefix"
465
- /**
466
- * Mandatory on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
467
- *
468
- * Country in which DL/ID is issued. U.S. = USA, Canada = CAN.
469
- */
470
- | "country-identification"
471
- /**
472
- * Optional on AAMVA version 01.
473
- *
474
- * Driver Residence Street Address 1.
475
- */
476
- | "residence-street-address"
477
- /**
478
- * Optional on AAMVA version 01.
479
- *
480
- * Driver Residence Street Address 2.
481
- */
482
- | "residence-street-address-2"
483
- /**
484
- * Optional on AAMVA version 01.
485
- *
486
- * Driver Residence City
487
- */
488
- | "residence-city"
489
- /**
490
- * Optional on AAMVA version 01.
491
- *
492
- * Driver Residence Jurisdiction Code.
493
- */
494
- | "residence-jurisdiction-code"
495
- /**
496
- * Optional on AAMVA 01 barcodes.
497
- *
498
- * Driver Residence Postal Code.
499
- */
500
- | "residence-postal-code"
501
- /**
502
- * Optional on AAMVA 01 barcodes.
503
- *
504
- * Full residence address of the individual holding the Driver's License or ID.
505
- *
506
- * The full address field contains up to four portions, separated with the "," delimiter:
507
- * Residence Street Address (required)
508
- * , (required if other address portions follow, otherwise optional)
509
- * Residence City (optional)
510
- * , (required if other address portions follow, otherwise optional)
511
- * Residence Jurisdiction Code (optional)
512
- * , (required if other address portions follow, otherwise optional)
513
- * Residence ZIP - Residence Postal Code (optional)
514
- */
515
- | "residence-full-address"
516
- /**
517
- * Optional on AAMVA 05, 06, 07, 08 barcodes.
518
- *
519
- * Date on which the cardholder turns 18 years old. (MMDDCCYY format)
520
- */
521
- | "under-18"
522
- /**
523
- * Optional on AAMVA 05, 06, 07, 08 barcodes.
524
- *
525
- * Date on which the cardholder turns 19 years old. (MMDDCCYY format)
526
- */
527
- | "under-19"
528
- /**
529
- * Optional on AAMVA 05, 06, 07, 08 barcodes.
530
- *
531
- * Date on which the cardholder turns 21 years old. (MMDDCCYY format)
532
- */
533
- | "under-21"
534
- /**
535
- * Optional on AAMVA version 01.
536
- *
537
- * The number assigned to the individual by the Social Security Administration.
538
- */
539
- | "social-security-number"
540
- /**
541
- * Optional on AAMVA version 01.
542
- *
543
- * Driver "AKA" Social Security Number. FORMAT SAME AS DRIVER SOC SEC NUM. ALTERNATIVE NUMBERS(S) used as SS NUM.
544
- */
545
- | "aka-social-security-number"
546
- /**
547
- * Optional on AAMVA 01 barcodes.
548
- *
549
- * ALTERNATIVE MIDDLE NAME(s) or INITIALS of the individual holding the Driver License or ID.
550
- * Hyphenated names acceptable, spaces between names acceptable, but no other
551
- * use of special symbols.
552
- */
553
- | "aka-middle-name"
554
- /**
555
- * Optional on AAMVA 01 barcodes.
556
- *
557
- * ALTERNATIVE PREFIX to Driver Name. Freeform as defined by issuing jurisdiction.
558
- */
559
- | "aka-prefix-name"
560
- /**
561
- * Optional on AAMVA 01, 06, 07, 08 barcodes.
562
- *
563
- * Field that indicates that the cardholder is an organ donor = "1".
564
- */
565
- | "organ-donor"
566
- /**
567
- * Optional on AAMVA 07, 08 barcodes.
568
- *
569
- * Field that indicates that the cardholder is a veteran = "1"
570
- */
571
- | "veteran"
572
- /**
573
- * Optional on AAMVA 01. (MMDDCCYY format)
574
- *
575
- * ALTERNATIVE DATES(S) given as date of birth.
576
- */
577
- | "aka-date-of-birth"
578
- /**
579
- * Mandatory on all AAMVA, Magnetic and Compact barcodes.
580
- *
581
- * This number uniquely identifies the issuing jurisdiction and can
582
- * be obtained by contacting the ISO Issuing Authority (AAMVA)
583
- */
584
- | "issuer-identification-number"
585
- /**
586
- * Mandatory on all AAMVA, Magnetic and Compact barcodes.
587
- *
588
- * If the document is non expiring then "Non expiring" is written in this field.
589
- *
590
- * Date on which the driving and identification privileges granted by the document are
591
- * no longer valid. (MMDDCCYY format)
592
- */
593
- | "document-expiration-date"
594
- /**
595
- * Mandatory on all AAMVA and Compact barcodes. Optional on Magnetic barcodes.
596
- *
597
- * Jurisdiction Version Number: This is a decimal value between 0 and 99 that
598
- * specifies the jurisdiction version level of the PDF417 barcode format.
599
- * Notwithstanding iterations of this standard, jurisdictions implement incremental
600
- * changes to their barcodes, including new jurisdiction-specific data, compression
601
- * algorithms for digitized images, digital signatures, or new truncation
602
- * conventions used for names and addresses. Each change to the barcode format
603
- * within each AAMVA version (above) must be noted, beginning with Jurisdiction
604
- * Version 00.
605
- */
606
- | "jurisdiction-version-number"
607
- /**
608
- * Mandatory on all AAMVA and Magnetic barcodes.
609
- *
610
- * Jurisdiction-specific vehicle class / group code, designating the type
611
- * of vehicle the cardholder has privilege to drive.
612
- */
613
- | "jurisdiction-vehicle-class"
614
- /**
615
- * Mandatory on all AAMVA barcodes. Optional on Magnetic barcodes.
616
- *
617
- * Jurisdiction-specific codes that represent restrictions to driving
618
- * privileges (such as airbrakes, automatic transmission, daylight only, etc.).
619
- */
620
- | "jurisdiction-restriction-codes"
621
- /**
622
- * Mandatory on all AAMVA barcodes. Optional on Magnetic barcodes.
623
- *
624
- * Jurisdiction-specific codes that represent additional privileges
625
- * granted to the cardholder beyond the vehicle class (such as transportation of
626
- * passengers, hazardous materials, operation of motorcycles, etc.).
627
- */
628
- | "jurisdiction-endorsement-codes"
629
- /**
630
- * Mandatory on all AAMVA and Compact barcodes.
631
- *
632
- * Date on which the document was issued. (MMDDCCYY format)
633
- */
634
- | "document-issue-date"
635
- /**
636
- * Mandatory on AAMVA versions 02 and 03.
637
- *
638
- * Federally established codes for vehicle categories, endorsements, and restrictions
639
- * that are generally applicable to commercial motor vehicles. If the vehicle is not a
640
- * commercial vehicle, "NONE" is to be entered.
641
- */
642
- | "federal-commercial-vehicle-codes"
643
- /**
644
- * Optional on all AAMVA barcodes. Mandatory on Compact barcodes.
645
- *
646
- * Jurisdictions may define a subfile to contain jurisdiction-specific information.
647
- * These subfiles are designated with the first character of “Z” and the second
648
- * character is the first letter of the jurisdiction's name. For example, "ZC" would
649
- * be the designator for a California or Colorado jurisdiction-defined subfile, "ZQ"
650
- * would be the designator for a Quebec jurisdiction-defined subfile. In the case of
651
- * a jurisdiction-defined subfile that has a first letter that could be more than
652
- * one jurisdiction (e.g. California, Colorado, Connecticut) then other data, like
653
- * the IIN or address, must be examined to determine the jurisdiction.
654
- */
655
- | "issuing-jurisdiction"
656
- /**
657
- * Optional on all AAMVA barcodes. Mandatory on Compact barcodes.
658
- *
659
- * Standard vehicle classification code(s) for cardholder. This data element is a
660
- * placeholder for future efforts to standardize vehicle classifications.
661
- */
662
- | "standard-vehicle-classification"
663
- /**
664
- * Optional on all AAMVA and Magnetic barcodes.
665
- *
666
- * Name of issuing jurisdiction, for example: Alabama, Alaska ...
667
- */
668
- | "issuing-jurisdiction-name"
669
- /**
670
- * Optional on all AAMVA barcodes.
671
- *
672
- * Standard endorsement code(s) for cardholder. See codes in D20. This data element is a
673
- * placeholder for future efforts to standardize endorsement codes.
674
- *
675
- * Code Description
676
- * H Hazardous Material - This endorsement is required for the operation of any vehicle
677
- * transporting hazardous materials requiring placarding, as defined by U.S.
678
- * Department of Transportation regulations.
679
- * L Motorcycles – Including Mopeds/Motorized Bicycles.
680
- * N Tank - This endorsement is required for the operation of any vehicle transporting,
681
- * as its primary cargo, any liquid or gaseous material within a tank attached to the vehicle.
682
- * O Other Jurisdiction Specific Endorsement(s) - This code indicates one or more
683
- * additional jurisdiction assigned endorsements.
684
- * P Passenger - This endorsement is required for the operation of any vehicle used for
685
- * transportation of sixteen or more occupants, including the driver.
686
- * S School Bus - This endorsement is required for the operation of a school bus. School bus means a
687
- * CMV used to transport pre-primary, primary, or secondary school students from home to school,
688
- * from school to home, or to and from school sponsored events. School bus does not include a
689
- * bus used as common carrier (49 CRF 383.5).
690
- * T Doubles/Triples - This endorsement is required for the operation of any vehicle that would be
691
- * referred to as a double or triple.
692
- * X Combined Tank/HAZ-MAT - This endorsement may be issued to any driver who qualifies for
693
- * both the N and H endorsements.
694
- */
695
- | "standard-endorsement-code"
696
- /**
697
- * Optional on all AAMVA barcodes.
698
- *
699
- * Standard restriction code(s) for cardholder. See codes in D20. This data element is a placeholder
700
- * for future efforts to standardize restriction codes.
701
- *
702
- * Code Description
703
- * B Corrective Lenses
704
- * C Mechanical Devices (Special Brakes, Hand Controls, or Other Adaptive Devices)
705
- * D Prosthetic Aid
706
- * E Automatic Transmission
707
- * F Outside Mirror
708
- * G Limit to Daylight Only
709
- * H Limit to Employment
710
- * I Limited Other
711
- * J Other
712
- * K CDL Intrastate Only
713
- * L Vehicles without air brakes
714
- * M Except Class A bus
715
- * N Except Class A and Class B bus
716
- * O Except Tractor-Trailer
717
- * V Medical Variance Documentation Required
718
- * W Farm Waiver
719
- */
720
- | "standard-restriction-code"
721
- /**
722
- * Optional on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
723
- *
724
- * Text that explains the jurisdiction-specific code(s) for classifications
725
- * of vehicles cardholder is authorized to drive.
726
- */
727
- | "jurisdiction-vehicle-classification-description"
728
- /**
729
- * Optional on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
730
- *
731
- * Text that explains the jurisdiction-specific code(s) that indicates additional
732
- * driving privileges granted to the cardholder beyond the vehicle class.
733
- */
734
- | "jurisdiction-endorsement-code-description"
735
- /**
736
- * Optional on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
737
- *
738
- * Text describing the jurisdiction-specific restriction code(s) that curtail driving privileges.
739
- */
740
- | "jurisdiction-restriction-code-description"
741
- /**
742
- * Optional on AAMVA 02, 03, 04, 05, 06, 07, 08 barcodes.
743
- *
744
- * A string of letters and/or numbers that is affixed to the raw materials (card stock,
745
- * laminate, etc.) used in producing driver's licenses and ID cards. (DHS recommended field)
746
- */
747
- | "inventory-control-number"
748
- /**
749
- * Optional on AAMVA 04, 05, 06, 07, 08 and Compact barcodes.
750
- *
751
- * DHS required field that indicates date of the most recent version change or
752
- * modification to the visible format of the DL/ID. (MMDDCCYY format)
753
- */
754
- | "card-revision-date"
755
- /**
756
- * Mandatory on AAMVA 02, 03, 04, 05, 06, 07, 08 and Magnetic barcodes.
757
- * Optional and Compact barcodes.
758
- *
759
- * Number must uniquely identify a particular document issued to that customer
760
- * from others that may have been issued in the past. This number may serve multiple
761
- * purposes of document discrimination, audit information number, and/or inventory control.
762
- */
763
- | "document-discriminator"
764
- /**
765
- * Optional on AAMVA 04, 05, 06, 07, 08 and Compact barcodes.
766
- *
767
- * DHS required field that indicates that the cardholder has temporary lawful status = "1".
768
- */
769
- | "limited-duration-document"
770
- /**
771
- * Optional on AAMVA 02, 03, 04, 05, 06, 07, 08 and Compact barcodes.
772
- *
773
- * A string of letters and/or numbers that identifies when, where, and by whom a driver's
774
- * license/ID card was made. If audit information is not used on the card or the MRT, it
775
- * must be included in the driver record.
776
- */
777
- | "audit-information"
778
- /**
779
- * Optional on AAMVA 04, 05, 06, 07, 08 and Compact barcodes.
780
- *
781
- * DHS required field that indicates compliance: "M" = materially compliant,
782
- * "F" = fully compliant, and, "N" = non-compliant.
783
- */
784
- | "compliance-type"
785
- /**
786
- * Optional on AAMVA version 01 barcodes.
787
- *
788
- * Issue Timestamp. A string used by some jurisdictions to validate the document against their database.
789
- */
790
- | "issue-timestamp"
791
- /**
792
- * Optional on AAMVA version 01 barcodes.
793
- *
794
- * Driver Permit Expiration Date. MMDDCCYY format. Date permit expires.
795
- */
796
- | "permit-expiration-date"
797
- /**
798
- * Optional on AAMVA version 01 barcodes.
799
- *
800
- * Type of permit.
801
- */
802
- | "permit-identifier"
803
- /**
804
- * Optional on AAMVA version 01 barcodes.
805
- *
806
- * Driver Permit Issue Date. MMDDCCYY format. Date permit was issued.
807
- */
808
- | "permit-issue-date"
809
- /**
810
- * Optional on AAMVA version 01.
811
- *
812
- * Number of duplicate cards issued for a license or ID if any.
813
- */
814
- | "number-of-duplicates"
815
- /**
816
- * Optional on AAMVA 04, 05, 06, 07, 08 and Compact barcodes.
817
- *
818
- * Date on which the hazardous material endorsement granted by the document is
819
- * no longer valid. (MMDDCCYY format)
820
- */
821
- | "hazmat-expiration-date"
822
- /**
823
- * Optional on AAMVA version 01.
824
- *
825
- * Medical Indicator/Codes.
826
- * STATE SPECIFIC. Freeform, Standard "TBD"
827
- */
828
- | "medical-indicator"
829
- /**
830
- * Optional on AAMVA version 01.
831
- *
832
- * Non-Resident Indicator. "Y". Used by some jurisdictions to indicate holder of the document is a non-resident.
833
- */
834
- | "non-resident"
835
- /**
836
- * Optional on AAMVA version 01.
837
- *
838
- * A number or alphanumeric string used by some jurisdictions to identify a "customer" across multiple data bases.
839
- */
840
- | "unique-customer-id"
841
- /**
842
- * Optional on compact barcodes.
843
- *
844
- * Document discriminator.
845
- */
846
- | "data-discriminator"
847
- /**
848
- * Optional on Magnetic barcodes.
849
- *
850
- * Month on which the driving and identification privileges granted by the document are
851
- * no longer valid. (MMYY format)
852
- */
853
- | "document-expiration-month"
854
- /**
855
- * Optional on Magnetic barcodes.
856
- *
857
- * Field that indicates that the driving and identification privileges granted by the
858
- * document are nonexpiring = "1".
859
- */
860
- | "document-nonexpiring"
861
- /**
862
- * Optional on Magnetic barcodes.
863
- *
864
- * Security version being used.
865
- */
866
- | "security-version";
867
-
868
- /**
869
- * Contains data extracted from the barcode
870
- *
871
- * - In case of uncertain results, some of the properties may not be available.
872
- * Their values will be set to `BARCODE_FIELD_UNREADABLE`
873
- */
874
- export declare type BarcodeResult = {
875
- /** The raw, unparsed barcode data. */
876
- barcodeData: BarcodeData;
877
- /** The first name of the document owner. */
878
- firstName: string;
879
- /** The middle name of the document owner. */
880
- middleName: string;
881
- /** The last name of the document owner. */
882
- lastName: string;
883
- /** The full name of the document owner. */
884
- fullName: string;
885
- /** The additional name information of the document owner. */
886
- additionalNameInformation: string;
887
- /** The address of the document owner. */
888
- address: string;
889
- /** The place of birth of the document owner. */
890
- placeOfBirth: string;
891
- /** The nationality of the document owner. */
892
- nationality: string;
893
- /** The race of the document owner. */
894
- race: string;
895
- /** The religion of the document owner. */
896
- religion: string;
897
- /** The profession of the document owner. */
898
- profession: string;
899
- /** The marital status of the document owner. */
900
- maritalStatus: string;
901
- /** The residential status of the document owner. */
902
- residentialStatus: string;
903
- /** The employer of the document owner. */
904
- employer: string;
905
- /** The sex of the document owner. */
906
- sex: string;
907
- /** The date of birth of the document owner. */
908
- dateOfBirth: DateResult<string>;
909
- /** The date of issue of the document. */
910
- dateOfIssue: DateResult<string>;
911
- /** The date of expiry of the document. */
912
- dateOfExpiry: DateResult<string>;
913
- /** The document number. */
914
- documentNumber: string;
915
- /** The personal identification number. */
916
- personalIdNumber: string;
917
- /** The additional number of the document. */
918
- documentAdditionalNumber: string;
919
- /** The issuing authority of the document. */
920
- issuingAuthority: string;
921
- /** The details about the address of the document owner. */
922
- addressDetailedInfo: AddressDetailedInfo;
923
- /** The driver license detailed info. */
924
- driverLicenseDetailedInfo: DriverLicenceDetailedInfo<string>;
925
- /** Document specific extended elements that contain all barcode fields */
926
- extendedElements: Array<BarcodeElement>;
927
- };
928
-
929
- /**
930
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
931
- */
932
- /** Represents the type of scanned barcode */
933
- export declare type BarcodeType =
934
- /** Indicates that QR code has been detected. */
935
- "qr-code"
936
- /** Indicates that Data Matrix 2D barcode has been detected. */
937
- | "data-matrix"
938
- /** Indicates that UPC E 1D barcode has been detected. */
939
- | "upc-e"
940
- /** Indicates that UPC A 1D barcode has been detected. */
941
- | "upc-a"
942
- /** Indicates that EAN 8 1D barcode has been detected. */
943
- | "ean-8"
944
- /** Indicates that EAN 13 1D barcode has been detected. */
945
- | "ean-13"
946
- /** Indicates that Code 128 1D barcode has been detected. */
947
- | "code-128"
948
- /** Indicates that Code 39 1D barcode has been detected. */
949
- | "code-39"
950
- /** Indicates that ITF 1D barcode has been detected. */
951
- | "itf"
952
- /** Indicates that Aztec 2D barcode has been detected. */
953
- | "aztec-barcode"
954
- /** Indicates that PDF417 2D barcode has been detected. */
955
- | "pdf417-barcode";
956
-
957
- /**
958
- * The BlinkID bindings.
959
- *
960
- * @ignore
961
- */
962
- export declare interface BlinkIdBindings {
963
- createBlinkIdScanningSession: (sessionSettings: BlinkIdSessionSettings) => BlinkIdScanningSession;
964
- initializeWithLicenseKey: (licenceKey: string, userId: string, allowHelloMessage: boolean) => LicenseUnlockResult;
965
- submitServerPermission: (serverPermission: unknown) => ServerPermissionSubmitResult;
966
- getActiveLicenseTokenInfo: () => LicenseUnlockResult;
967
- setPingProxyUrl: (url: string) => void;
968
- }
969
-
970
- /**
971
- * Represents the BlinkID core instance.
972
- *
973
- * This type extends the Remote type from Comlink, which is used to proxy calls to the BlinkID worker.
974
- * It simplifies the type to remove unnecessary complexity.
975
- */
976
- export declare type BlinkIdCore = Simplify<Remote<BlinkIdWorkerProxy>>;
977
-
978
- /**
979
- * Configuration options for initializing the BlinkID core.
980
- *
981
- * This type extends the BlinkIdWorkerInitSettings type by making the userId and useLightweightBuild properties optional.
982
- * It allows for partial configuration of the initialization settings.
983
- */
984
- export declare type BlinkIdInitSettings = SetOptional<BlinkIdWorkerInitSettings, "userId" | "useLightweightBuild">;
985
-
986
- /**
987
- * Represents the overall result of the document processing pipeline.
988
- *
989
- * This structure combines the results of input image analysis and processing,
990
- * including detection, document image quality analysis, along with information
991
- * about the completeness of the extraction process for the document.
992
- */
993
- export declare type BlinkIdProcessResult = {
994
- /** Result of the processing and analysis of the input image. */
995
- inputImageAnalysisResult: InputImageAnalysisResult;
996
- /** Completeness of the extraction process. */
997
- resultCompleteness: ResultCompleteness;
998
- };
999
-
1000
- /** Represents the final complete result of the scanning process. */
1001
- export declare type BlinkIdScanningResult = {
1002
- /** Scanning mode used to scan current document */
1003
- mode?: RecognitionMode;
1004
- /** The document class information */
1005
- documentClassInfo: DocumentClassInfo;
1006
- /** Info on whether the data extracted from multiple sides matches */
1007
- dataMatchResult?: DataMatchResult;
1008
- /** The first name of the document owner */
1009
- firstName?: StringResult;
1010
- /** The last name of the document owner */
1011
- lastName?: StringResult;
1012
- /** The full name of the document owner */
1013
- fullName?: StringResult;
1014
- /** The additional name information of the document owner */
1015
- additionalNameInformation?: StringResult;
1016
- /** The localized name of the document owner */
1017
- localizedName?: StringResult;
1018
- /** The father's name of the document owner */
1019
- fathersName?: StringResult;
1020
- /** The mother's name of the document owner */
1021
- mothersName?: StringResult;
1022
- /** The address of the document owner */
1023
- address?: StringResult;
1024
- /** The additional address information of the document owner */
1025
- additionalAddressInformation?: StringResult;
1026
- /** Additional optional address information of the document owner */
1027
- additionalOptionalAddressInformation?: StringResult;
1028
- /** The place of birth of the document owner */
1029
- placeOfBirth?: StringResult;
1030
- /** The nationality of the document owner */
1031
- nationality?: StringResult;
1032
- /** The race of the document owner */
1033
- race?: StringResult;
1034
- /** The religion of the document owner */
1035
- religion?: StringResult;
1036
- /** The profession of the document owner */
1037
- profession?: StringResult;
1038
- /** The marital status of the document owner */
1039
- maritalStatus?: StringResult;
1040
- /** The residential status of the document owner */
1041
- residentialStatus?: StringResult;
1042
- /** The employer of the document owner */
1043
- employer?: StringResult;
1044
- /** The sex of the document owner */
1045
- sex?: StringResult;
1046
- /** The sponsor of the document owner. */
1047
- sponsor?: StringResult;
1048
- /** The blood type of the document owner */
1049
- bloodType?: StringResult;
1050
- /** The document number */
1051
- documentNumber?: StringResult;
1052
- /** The personal identification number */
1053
- personalIdNumber?: StringResult;
1054
- /** The additional number of the document */
1055
- documentAdditionalNumber?: StringResult;
1056
- /** Additional optional number of the document */
1057
- documentOptionalAdditionalNumber?: StringResult;
1058
- /** The additional personal identification number */
1059
- additionalPersonalIdNumber?: StringResult;
1060
- /** The issuing authority of the document */
1061
- issuingAuthority?: StringResult;
1062
- /** The document subtype transcription */
1063
- documentSubtype?: StringResult;
1064
- /** The remarks on the residence permit */
1065
- remarks?: StringResult;
1066
- /** The residence permit type */
1067
- residencePermitType?: StringResult;
1068
- /** The manufacturing year */
1069
- manufacturingYear?: StringResult;
1070
- /** The vehicle type */
1071
- vehicleType?: StringResult;
1072
- /** The eligibility category */
1073
- eligibilityCategory?: StringResult;
1074
- /** The specific document validity */
1075
- specificDocumentValidity?: StringResult;
1076
- /** The visa type of the document */
1077
- visaType?: StringResult;
1078
- /** The vehicle owner */
1079
- vehicleOwner?: StringResult;
1080
- /** The certificate number of the document owner */
1081
- certificateNumber?: StringResult;
1082
- /** The country code of the document owner */
1083
- countryCode?: StringResult;
1084
- /** The national insurance number of the document owner */
1085
- nationalInsuranceNumber?: StringResult;
1086
- /** The date of birth of the document owner */
1087
- dateOfBirth?: DateResult<StringResult>;
1088
- /** The date of issue of the document */
1089
- dateOfIssue?: DateResult<StringResult>;
1090
- /** The date of expiry of the document */
1091
- dateOfExpiry?: DateResult<StringResult>;
1092
- /** Determines if date of expiry is permanent */
1093
- dateOfExpiryPermanent?: boolean;
1094
- /** The driver license detailed info */
1095
- driverLicenseDetailedInfo?: DriverLicenceDetailedInfo<StringResult>;
1096
- /** The dependents info */
1097
- dependentsInfo?: DependentInfo[];
1098
- /** The results of scanning each side of the document */
1099
- subResults: SingleSideScanningResult[];
1100
- };
1101
-
1102
- /** Represents the scanning session for BlinkID */
1103
- export declare type BlinkIdScanningSession = EmbindObject<{
1104
- /**
1105
- * Resets the scanning session to initial state
1106
- *
1107
- * @returns Void if successful, SessionError if failed
1108
- */
1109
- reset: () => void | BlinkIdSessionError;
1110
- /**
1111
- * Processes the input camera frame
1112
- *
1113
- * @param image The frame to process
1114
- * @returns The `BlinkIdProcessResult` if successful, `BlinkIdSessionError` if
1115
- * failed
1116
- */
1117
- process: (image: ImageData) => BlinkIdProcessResult | BlinkIdSessionError;
1118
- /**
1119
- * Returns the result of the scanning session.
1120
- *
1121
- * @returns The `BlinkIdScanningResult`
1122
- */
1123
- getResult: () => BlinkIdScanningResult;
1124
- }>;
1125
-
1126
- /**
1127
- * Represents the error returned from `BlinkIdScanningSession.process` and
1128
- * `BlinkIdScanningSession.reset`.
1129
- */
1130
- export declare type BlinkIdSessionError = {
1131
- /** The error type. */
1132
- error: BlinkIdSessionErrorType;
1133
- };
1134
-
1135
- /**
1136
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1137
- */
1138
- /** Represents the error statuses returned from the `BlinkIDScanningSession`. */
1139
- export declare type BlinkIdSessionErrorType = "document-scanned" | "result-retrieved";
1140
-
1141
- /**
1142
- * Represents the configuration settings for a scanning session.
1143
- *
1144
- * This structure holds the settings related to the resources initialization,
1145
- * input image source, scanning mode, and specific scanning configurations that
1146
- * define how the scanning session should behave.
1147
- *
1148
- * The settings control various aspects of the scanning process including:
1149
- *
1150
- * - Input source (video stream or single photo)
1151
- *
1152
- * - Scanning mode (single or multiple sides)
1153
- *
1154
- * - Document detection and quality analysis
1155
- *
1156
- * - Image processing and result extraction
1157
- *
1158
- * @public
1159
- */
1160
- export declare type BlinkIdSessionSettings = {
1161
- /**
1162
- * The type of image source for the scanning session.
1163
- *
1164
- * Defines whether the images are sourced from a video stream or a single
1165
- * photo, as defined by `InputImageSource`. The default is set to `video` for
1166
- * real-time scanning through a camera feed.
1167
- *
1168
- * - `video` - Uses continuous camera feed for scanning
1169
- *
1170
- * - `photo` - Uses a single captured photo for scanning
1171
- *
1172
- * @defaultValue `video`
1173
- */
1174
- inputImageSource: InputImageSource;
1175
- /**
1176
- * The scanning mode to be used during the scanning session.
1177
- *
1178
- * Specifies whether the scanning is for a single side of a document or
1179
- * multiple sides, as defined in `ScanningMode`. The default is set to
1180
- * `automatic`, which automatically determines the number of sides to scan
1181
- * based on the detected document type.
1182
- *
1183
- * - `automatic` - Automatically determines required sides
1184
- *
1185
- * - `single` - Scans only one side
1186
- *
1187
- * @defaultValue `automatic`
1188
- */
1189
- scanningMode: ScanningMode;
1190
- /**
1191
- * The specific scanning settings for the scanning session.
1192
- *
1193
- * Defines various parameters that control the scanning process including:
1194
- *
1195
- * - Document detection and quality thresholds
1196
- * - Image processing options
1197
- * - Result extraction and validation rules
1198
- * - Document-specific scanning behaviors
1199
- *
1200
- * @see `ScanningSettings` for detailed configuration options
1201
- */
1202
- scanningSettings: ScanningSettings;
1203
- };
1204
-
1205
- /**
1206
- * The BlinkID Wasm module.
1207
- *
1208
- * @ignore
1209
- */
1210
- export declare interface BlinkIdWasmModule extends BlinkIdBindings, EmscriptenModule {
1211
- }
1212
-
1213
- /**
1214
- * The BlinkID worker.
1215
- */
1216
- declare class BlinkIdWorker {
1217
- #private;
1218
- /**
1219
- * The progress status callback.
1220
- */
1221
- progressStatusCallback?: ProgressStatusCallback;
1222
- /**
1223
- * This method initializes everything.
1224
- */
1225
- initBlinkId(settings: BlinkIdWorkerInitSettings, defaultSessionSettings: BlinkIdSessionSettings, progressCallback?: ProgressStatusCallback): Promise<void>;
1226
- /**
1227
- * This method creates a BlinkID scanning session.
1228
- *
1229
- * @param options - The options for the session.
1230
- * @returns The session.
1231
- */
1232
- createBlinkIdScanningSession(options?: PartialBlinkIdSessionSettings): {
1233
- reset: () => void | BlinkIdSessionError;
1234
- getResult: () => BlinkIdScanningResult;
1235
- delete: () => void;
1236
- isDeleted: () => boolean;
1237
- deleteLater: () => void;
1238
- isAliasOf: (other: any) => boolean;
1239
- process: (image: ImageData) => ProcessResultWithBuffer;
1240
- } & {
1241
- /**
1242
- * Gets the settings.
1243
- *
1244
- * @returns The settings.
1245
- */
1246
- getSettings: () => BlinkIdSessionSettings;
1247
- /**
1248
- * Shows the demo overlay.
1249
- *
1250
- * @returns Whether the demo overlay is shown.
1251
- */
1252
- showDemoOverlay: () => boolean;
1253
- /**
1254
- * Shows the production overlay.
1255
- *
1256
- * @returns Whether the production overlay is shown.
1257
- */
1258
- showProductionOverlay: () => boolean;
1259
- } & ProxyMarked;
1260
- /**
1261
- * This method creates a proxy session.
1262
- *
1263
- * @param session - The session.
1264
- * @param sessionSettings - The session settings.
1265
- * @returns The proxy session.
1266
- */
1267
- createProxySession(session: BlinkIdScanningSession, sessionSettings: BlinkIdSessionSettings): WorkerScanningSession & ProxyMarked;
1268
- /**
1269
- * This method is called when the worker is terminated.
1270
- */
1271
- [finalizer](): void;
1272
- /**
1273
- * Terminates the workers and the Wasm runtime.
1274
- */
1275
- terminate(): void;
1276
- /**
1277
- * If the ping is enabled, this method will return 1.
1278
- *
1279
- * @returns 1 if the ping is enabled, 0 otherwise.
1280
- */
1281
- ping(): number;
1282
- }
1283
-
1284
- /**
1285
- * Initialization settings for the BlinkID worker.
1286
- *
1287
- * These settings control how the BlinkID worker is initialized and configured,
1288
- * including resource locations, memory allocation, and build variants.
1289
- */
1290
- export declare type BlinkIdWorkerInitSettings = {
1291
- /**
1292
- * The license key required to unlock and use the BlinkID SDK.
1293
- * This must be a valid license key obtained from Microblink.
1294
- */
1295
- licenseKey: string;
1296
- /**
1297
- * The URL of the Microblink proxy server. This proxy handles requests to Microblink's Baltazar and Ping servers.
1298
- *
1299
- * **Requirements:**
1300
- * - Must be a valid HTTPS URL
1301
- * - The proxy server must implement the expected Microblink API endpoints
1302
- * - This feature is only available if explicitly permitted by your license
1303
- *
1304
- * **Endpoints:**
1305
- * - Ping: `{proxyUrl}/ping`
1306
- * - Baltazar: `{proxyUrl}/api/v2/status/check`
1307
- *
1308
- * @example "https://your-proxy.example.com"
1309
- */
1310
- microblinkProxyUrl?: string;
1311
- /**
1312
- * The parent directory where the `/resources` directory is hosted.
1313
- * Defaults to `window.location.href`, at the root of the current page.
1314
- */
1315
- resourcesLocation?: string;
1316
- /**
1317
- * A unique identifier for the user/session.
1318
- * Used for analytics and tracking purposes.
1319
- */
1320
- userId: string;
1321
- /**
1322
- * The WebAssembly module variant to use.
1323
- * Different variants may offer different performance/size tradeoffs.
1324
- */
1325
- wasmVariant?: WasmVariant;
1326
- /**
1327
- * The initial memory allocation for the Wasm module, in megabytes.
1328
- * Larger values may improve performance but increase memory usage.
1329
- */
1330
- initialMemory?: number;
1331
- /**
1332
- * Whether to use the lightweight build of the SDK.
1333
- * Lightweight builds have reduced size but may have limited functionality.
1334
- */
1335
- useLightweightBuild: boolean;
1336
- };
1337
-
1338
- /**
1339
- * The BlinkID worker proxy.
1340
- */
1341
- export declare type BlinkIdWorkerProxy = Omit<BlinkIdWorker, typeof finalizer>;
1342
-
1343
- /**
1344
- * Options for a C call.
1345
- *
1346
- * @ignore
1347
- */
1348
- export declare interface CCallOpts {
1349
- async?: boolean | undefined;
1350
- }
1351
-
1352
- /**
1353
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1354
- */
1355
- /** Represents countries */
1356
- export declare type Country = "albania" | "algeria" | "argentina" | "australia" | "austria" | "azerbaijan" | "bahrain" | "bangladesh" | "belgium" | "bosnia-and-herzegovina" | "brunei" | "bulgaria" | "cambodia" | "canada" | "chile" | "colombia" | "costa-rica" | "croatia" | "cyprus" | "czechia" | "denmark" | "dominican-republic" | "egypt" | "estonia" | "finland" | "france" | "georgia" | "germany" | "ghana" | "greece" | "guatemala" | "hong-kong" | "hungary" | "india" | "indonesia" | "ireland" | "israel" | "italy" | "jordan" | "kazakhstan" | "kenya" | "kosovo" | "kuwait" | "latvia" | "lithuania" | "malaysia" | "maldives" | "malta" | "mauritius" | "mexico" | "morocco" | "netherlands" | "new-zealand" | "nigeria" | "pakistan" | "panama" | "paraguay" | "philippines" | "poland" | "portugal" | "puerto-rico" | "qatar" | "romania" | "russia" | "saudi-arabia" | "serbia" | "singapore" | "slovakia" | "slovenia" | "south-africa" | "spain" | "sweden" | "switzerland" | "taiwan" | "thailand" | "tunisia" | "turkey" | "uae" | "uganda" | "uk" | "ukraine" | "usa" | "vietnam" | "brazil" | "norway" | "oman" | "ecuador" | "el-salvador" | "sri-lanka" | "peru" | "uruguay" | "bahamas" | "bermuda" | "bolivia" | "china" | "european-union" | "haiti" | "honduras" | "iceland" | "japan" | "luxembourg" | "montenegro" | "nicaragua" | "south-korea" | "venezuela" | "afghanistan" | "aland-islands" | "american-samoa" | "andorra" | "angola" | "anguilla" | "antarctica" | "antigua-and-barbuda" | "armenia" | "aruba" | "bailiwick-of-guernsey" | "bailiwick-of-jersey" | "barbados" | "belarus" | "belize" | "benin" | "bhutan" | "bonaire-saint-eustatius-and-saba" | "botswana" | "bouvet-island" | "british-indian-ocean-territory" | "burkina-faso" | "burundi" | "cameroon" | "cape-verde" | "caribbean-netherlands" | "cayman-islands" | "central-african-republic" | "chad" | "christmas-island" | "cocos-islands" | "comoros" | "congo" | "cook-islands" | "cuba" | "curacao" | "democratic-republic-of-the-congo" | "djibouti" | "dominica" | "east-timor" | "equatorial-guinea" | "eritrea" | "ethiopia" | "falkland-islands" | "faroe-islands" | "federated-states-of-micronesia" | "fiji" | "french-guiana" | "french-polynesia" | "french-southern-territories" | "gabon" | "gambia" | "gibraltar" | "greenland" | "grenada" | "guadeloupe" | "guam" | "guinea" | "guinea-bissau" | "guyana" | "heard-island-and-mcdonald-islands" | "iran" | "iraq" | "isle-of-man" | "ivory-coast" | "jamaica" | "kiribati" | "kyrgyzstan" | "laos" | "lebanon" | "lesotho" | "liberia" | "libya" | "liechtenstein" | "macau" | "madagascar" | "malawi" | "mali" | "marshall-islands" | "martinique" | "mauritania" | "mayotte" | "moldova" | "monaco" | "mongolia" | "montserrat" | "mozambique" | "myanmar" | "namibia" | "nauru" | "nepal" | "new-caledonia" | "niger" | "niue" | "norfolk-island" | "northern-cyprus" | "northern-mariana-islands" | "north-korea" | "north-macedonia" | "palau" | "palestine" | "papua-new-guinea" | "pitcairn" | "reunion" | "rwanda" | "saint-barthelemy" | "saint-helena-ascension-and-tristian-da-cunha" | "saint-kitts-and-nevis" | "saint-lucia" | "saint-martin" | "saint-pierre-and-miquelon" | "saint-vincent-and-the-grenadines" | "samoa" | "san-marino" | "sao-tome-and-principe" | "senegal" | "seychelles" | "sierra-leone" | "sint-maarten" | "solomon-islands" | "somalia" | "south-georgia-and-the-south-sandwich-islands" | "south-sudan" | "sudan" | "suriname" | "svalbard-and-jan-mayen" | "eswatini" | "syria" | "tajikistan" | "tanzania" | "togo" | "tokelau" | "tonga" | "trinidad-and-tobago" | "turkmenistan" | "turks-and-caicos-islands" | "tuvalu" | "united-states-minor-outlying-islands" | "uzbekistan" | "vanuatu" | "vatican-city" | "virgin-islands-british" | "virgin-islands-us" | "wallis-and-futuna" | "western-sahara" | "yemen" | "yugoslavia" | "zambia" | "zimbabwe" | "schengen-area";
1357
-
1358
- /**
1359
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1360
- */
1361
- /**
1362
- * Creates a custom ImageData object with the same properties as the original ImageData.
1363
- * This is a workaround for the performance issue in Chromium browsers.
1364
- *
1365
- * @param imageData - The original ImageData object to be wrapped.
1366
- * @returns A custom ImageData object with the same properties.
1367
- */
1368
- export declare function createCustomImageData(imageData: ImageData): ImageData;
1369
-
1370
- /**
1371
- * Creates a Comlink-proxied Web Worker
1372
- *
1373
- * @param resourcesLocation where the "resources" directory is placed, default
1374
- * is `window.location.href`
1375
- * @returns a Comlink-proxied instance of the Web Worker
1376
- */
1377
- export declare const createProxyWorker: (resourcesLocation?: string) => Promise<Remote<BlinkIdWorkerProxy>>;
1378
-
1379
- /**
1380
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1381
- */
1382
- /**
1383
- * Represents the image cropping options.
1384
- *
1385
- * @public
1386
- */
1387
- export declare type CroppedImageSettings = {
1388
- /**
1389
- * The DPI value for the cropped image - Specifies the resolution of the
1390
- * output image.
1391
- */
1392
- dotsPerInch: number;
1393
- /**
1394
- * The extension factor for the cropped image - Determines the additional
1395
- * space around the detected document. Applicable only to document images.
1396
- * Allowed value is from `0.0` to `1.0`. This determines how much additional
1397
- * space around the detected document should be included in the crop.
1398
- */
1399
- extensionFactor: number;
1400
- /**
1401
- * Whether the document image should be returned - Controls document image
1402
- * output. When true, the cropped document image will be included in the
1403
- * result.
1404
- */
1405
- returnDocumentImage: boolean;
1406
- /**
1407
- * Whether the face image should be returned - Controls face image output.
1408
- * When true, the cropped face image will be included in the result.
1409
- */
1410
- returnFaceImage: boolean;
1411
- /**
1412
- * Whether the signature image should be returned - Controls signature image
1413
- * output. When true, the cropped signature image will be included in the
1414
- * result.
1415
- */
1416
- returnSignatureImage: boolean;
1417
- };
1418
-
1419
- /** Represents the state of data match per field */
1420
- export declare type DataMatchFieldState = {
1421
- /** Type of field on which data match algorithm has been performed. */
1422
- fieldType: DataMatchFieldType;
1423
- /** The state of the data match on the specified field. */
1424
- state: DataMatchState;
1425
- };
1426
-
1427
- /** Type of field on which data match algorithm has been performed. */
1428
- export declare type DataMatchFieldType = "date-of-birth" | "date-of-expiry" | "document-number" | "document-additional-number" | "document-optional-additional-number" | "personal-id-number";
1429
-
1430
- /** Represents the result of the data match algorithm. */
1431
- export declare type DataMatchResult = {
1432
- /** Info on whether the data extracted from multiple sides matches */
1433
- statePerField?: DataMatchFieldState[];
1434
- /** The overall state of the data match. */
1435
- overallState: DataMatchState;
1436
- };
1437
-
1438
- /**
1439
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1440
- */
1441
- /**
1442
- * Result of the data matching algorithm for scanned parts/sides of the
1443
- * document.
1444
- */
1445
- export declare type DataMatchState = "not-performed" | "failed" | "success";
1446
-
1447
- /**
1448
- * Smart date result structure.
1449
- *
1450
- * @template S - The type of the string result.
1451
- */
1452
- export declare type DateResult<S extends string | StringResult> = {
1453
- /** Day in month [1-31] */
1454
- day?: number;
1455
- /** Month in year [1-12] */
1456
- month?: number;
1457
- /** Four digit year */
1458
- year?: number;
1459
- /** Original date string from the document */
1460
- originalString?: S;
1461
- /** Indicates whether this date is filled by internal domain knowledge */
1462
- filledByDomainKnowledge: boolean;
1463
- /** Indicates whether date was parsed successfully */
1464
- successfullyParsed?: boolean;
1465
- };
1466
-
1467
- /**
1468
- * Default session settings for BlinkID core.
1469
- *
1470
- * This is the default session settings for BlinkID core.
1471
- * It is used to initialize the BlinkID core instance, unless overridden by the user.
1472
- *
1473
- * @see BlinkIdSessionSettings for more details.
1474
- */
1475
- export declare const defaultSessionSettings: BlinkIdSessionSettings;
1476
-
1477
- /** The additional information on the document owner's dependents. */
1478
- export declare type DependentInfo = {
1479
- /** The date of birth of the dependent */
1480
- dateOfBirth?: DateResult<StringResult>;
1481
- /** The sex or gender of the dependent */
1482
- sex?: StringResult;
1483
- /** The document number of the dependent */
1484
- documentNumber?: StringResult;
1485
- /** The full name of the dependent */
1486
- fullName?: StringResult;
1487
- };
1488
-
1489
- /**
1490
- * Represents the result of the image crop transformation with additional
1491
- * details.
1492
- */
1493
- export declare type DetailedCroppedImageResult = {
1494
- /** The image data. */
1495
- image: ImageData;
1496
- /** The location of the image. */
1497
- location?: Rectangle;
1498
- /** The side of the image. */
1499
- side?: ScanningSide;
1500
- };
1501
-
1502
- /** Represents the detailed field type. */
1503
- export declare type DetailedFieldType = {
1504
- /** The field type. */
1505
- fieldType: FieldType;
1506
- /** The alphabet type. */
1507
- alphabetType: AlphabetType;
1508
- };
1509
-
1510
- /**
1511
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1512
- */
1513
- /**
1514
- * Represents the different levels of detection sensitivity.
1515
- *
1516
- * DetectionLevel is used to configure detection thresholds and enable or
1517
- * disable detection functionality. The levels range from turning detection off
1518
- * completely to setting various levels of sensitivity (low, mid, high).
1519
- */
1520
- export declare type DetectionLevel = "off" | "low" | "mid" | "high";
1521
-
1522
- /**
1523
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1524
- */
1525
- /**
1526
- * Represents the status of the document detection process.
1527
- *
1528
- * This type represents all possible states that can occur during document detection:
1529
- *
1530
- * - `failed`
1531
- * - Detection has failed
1532
- *
1533
- * - `success`
1534
- * - Document has been successfully detected
1535
- *
1536
- * - `camera-too-far`
1537
- * - Camera is positioned too far from the document
1538
- *
1539
- * - `camera-too-close`
1540
- * - Camera is positioned too close to the document
1541
- *
1542
- * - `camera-angle-too-steep`
1543
- * - Camera angle relative to the document is too steep
1544
- *
1545
- * - `document-too-close-to-camera-edge`
1546
- * - Document is positioned too close to the edge of camera view
1547
- *
1548
- * - `document-partially-visible`
1549
- * - Only part of the document is visible in camera view
1550
- */
1551
- export declare type DetectionStatus = "failed" | "success" | "camera-too-far" | "camera-too-close" | "camera-angle-too-steep" | "document-too-close-to-camera-edge" | "document-partially-visible";
1552
-
1553
- /** Represents the document anonymization settings. */
1554
- export declare type DocumentAnonymizationSettings = {
1555
- /** Specified fields will be anonymized if filter conditions are met. */
1556
- documentFilter?: DocumentFilter;
1557
- /** Fields to be anonymized. */
1558
- fields: FieldType[];
1559
- /** Document number anonymization settings. */
1560
- documentNumberAnonymizationSettings?: DocumentNumberAnonymizationSettings;
1561
- };
1562
-
1563
- /** Represents the document class information. */
1564
- export declare type DocumentClassInfo = {
1565
- /** The document country. */
1566
- country?: Country;
1567
- /** The document region. */
1568
- region?: Region;
1569
- /** The type of the scanned document. */
1570
- type?: DocumentType_2;
1571
- /** The name of the country that issued the scanned document. */
1572
- countryName?: string;
1573
- /** The ISO numeric code of the country that issued the scanned document. */
1574
- isoNumericCountryCode?: string;
1575
- /** The 2-letter ISO code of the country that issued the scanned document. */
1576
- isoAlpha2CountryCode?: string;
1577
- /** The 3-letter ISO code of the country that issued the scanned document. */
1578
- isoAlpha3CountryCode?: string;
1579
- };
1580
-
1581
- /** Represents the document filter. */
1582
- export declare type DocumentFilter = {
1583
- /**
1584
- * If set, only specified country will pass the filter criteria. Otherwise,
1585
- * issuing country will not be taken into account.
1586
- */
1587
- country?: Country;
1588
- /**
1589
- * If set, only specified country will pass the filter criteria. Otherwise,
1590
- * issuing region will not be taken into account.
1591
- */
1592
- region?: Region;
1593
- /**
1594
- * If set, only specified type will pass the filter criteria. Otherwise,
1595
- * issuing type will not be taken into account.
1596
- */
1597
- type?: DocumentType_2;
1598
- };
1599
-
1600
- /**
1601
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1602
- */
1603
- /**
1604
- * DocumentImageColor defines possible color statuses determined from scanned
1605
- * image.
1606
- */
1607
- export declare type DocumentImageColor =
1608
- /** Determining image color status was not performed */
1609
- "not-available"
1610
- /** Black-and-white image scanned */
1611
- | "black-and-white"
1612
- /** Color image scanned */
1613
- | "color";
1614
-
1615
- /** Represents the document number anonymization settings. */
1616
- export declare type DocumentNumberAnonymizationSettings = {
1617
- /**
1618
- * Defines how many digits at the beginning of the document number remain
1619
- * visible after anonymization. Allowed values are `0` to `255`.
1620
- */
1621
- prefixDigitsVisible: number;
1622
- /**
1623
- * Defines how many digits at the end of the document number remain visible
1624
- * after anonymization.
1625
- */
1626
- suffixDigitsVisible: number;
1627
- };
1628
-
1629
- /**
1630
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1631
- */
1632
- /** DocumentOrientation defines possible card orientations. */
1633
- export declare type DocumentOrientation =
1634
- /** Detection was not performed. */
1635
- "not-available"
1636
- /** Horizontal document orientation. */
1637
- | "horizontal"
1638
- /** Vertical document orientation. */
1639
- | "vertical";
1640
-
1641
- /**
1642
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1643
- */
1644
- /** Represents the rotation of the document. */
1645
- export declare type DocumentRotation = "not-available" | "zero" | "clockwise-90" | "counter-clockwise-90" | "upside-down";
1646
-
1647
- /** Represents the document rules. */
1648
- export declare type DocumentRules = {
1649
- /**
1650
- * Specified fields will overrule our document class field rules if filter
1651
- * conditions are met.
1652
- */
1653
- documentFilter?: DocumentFilter;
1654
- /** Fields to overrule our class field rules. */
1655
- fields: DetailedFieldType[];
1656
- };
1657
-
1658
- /**
1659
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1660
- */
1661
- /** Represents document class types */
1662
- declare type DocumentType_2 = "consular-id" | "dl" | "dl-public-services-card" | "employment-pass" | "fin-card" | "id" | "multipurpose-id" | "mykad" | "mykid" | "mypr" | "mytentera" | "pan-card" | "professional-id" | "public-services-card" | "residence-permit" | "resident-id" | "temporary-residence-permit" | "voter-id" | "work-permit" | "ikad" | "military-id" | "mykas" | "social-security-card" | "health-insurance-card" | "passport" | "s-pass" | "address-card" | "alien-id" | "alien-passport" | "green-card" | "minors-id" | "postal-id" | "professional-dl" | "tax-id" | "weapon-permit" | "visa" | "border-crossing-card" | "driver-card" | "global-entry-card" | "mypolis" | "nexus-card" | "passport-card" | "proof-of-age-card" | "refugee-id" | "tribal-id" | "veteran-id" | "citizenship-certificate" | "my-number-card" | "consular-passport" | "minors-passport" | "minors-public-services-card" | "driving-privilege-card" | "asylum-request" | "driver-qualification-card" | "provisional-dl" | "refugee-passport" | "special-id" | "uniformed-services-id" | "immigrant-visa" | "consular-voter-id" | "twic-card" | "exit-entry-permit" | "mainland-travel-permit-taiwan" | "nbi-clearance" | "proof-of-registration" | "temporary-protection-permit" | "afghan-citizen-card" | "eid" | "pass" | "sis-id" | "asic-card" | "bidoon-card" | "interim-health-insurance-card" | "non-voter-id" | "reciprocal-health-insurance-card" | "vehicle-registration" | "esaad-card" | "registration-certificate" | "medical-marijuana-id" | "non-card-tribal-id" | "diplomatic-id";
1663
- export { DocumentType_2 as DocumentType }
1664
-
1665
- /**
1666
- * The download progress.
1667
- */
1668
- declare type DownloadProgress = {
1669
- loaded: number;
1670
- contentLength: number;
1671
- progress: number;
1672
- };
1673
-
1674
- /**
1675
- * Represents detailed information from a driver's license.
1676
- *
1677
- * @template S - The type of the string result.
1678
- */
1679
- export declare type DriverLicenceDetailedInfo<S extends string | StringResult> = {
1680
- /**
1681
- * The restrictions to driving privileges for the United States driver license
1682
- * owner
1683
- */
1684
- restrictions?: S;
1685
- /** The additional privileges granted to the US driver license owner */
1686
- endorsements?: S;
1687
- /** The type of vehicle the driver license owner has privilege to drive */
1688
- vehicleClass?: S;
1689
- /** The driver license conditions */
1690
- conditions?: S;
1691
- /** The additional information on vehicle class */
1692
- vehicleClassesInfo?: VehicleClassInfo<S>[];
1693
- };
1694
-
1695
- /**
1696
- * Specifies an abstract object placed on the WebAssembly heap. Objects placed
1697
- * on the WebAssembly heap are not cleaned up by the garbage collector of the
1698
- * JavaScript engine. The memory used by the object must be cleaned up manually
1699
- * by calling the delete() method.
1700
- *
1701
- * @see https://emscripten.org/docs/porting/connecting_cpp_and_javascript/embind.html#memory-management for more details.
1702
- *
1703
- * @ignore
1704
- */
1705
- export declare type EmbindObject<T extends {}> = T & {
1706
- delete: () => void;
1707
- isDeleted: () => boolean;
1708
- deleteLater: () => void;
1709
- isAliasOf: (other: any) => boolean;
1710
- };
1711
-
1712
- /**
1713
- * The main EmscriptenModule interface.
1714
- *
1715
- * @ignore
1716
- */
1717
- export declare interface EmscriptenModule {
1718
- print(str: string): void;
1719
- printErr(str: string): void;
1720
- arguments: string[];
1721
- environment: EnvironmentType;
1722
- preInit: Array<{
1723
- (): void;
1724
- }>;
1725
- preRun: Array<{
1726
- (): void;
1727
- }>;
1728
- postRun: Array<{
1729
- (): void;
1730
- }>;
1731
- onAbort: {
1732
- (what: any): void;
1733
- };
1734
- onRuntimeInitialized: {
1735
- (): void;
1736
- };
1737
- preinitializedWebGLContext: WebGLRenderingContext;
1738
- noInitialRun: boolean;
1739
- noExitRuntime: boolean;
1740
- logReadFiles: boolean;
1741
- filePackagePrefixURL: string;
1742
- wasmBinary: ArrayBuffer;
1743
- mainScriptUrlOrBlob?: string;
1744
- setStatus: (text: string) => void;
1745
- /**
1746
- * Allows you to provide your own WebAssembly.Memory to use as the memory. The
1747
- * properties used to initialize the memory should match the compiler options.
1748
- * For example, if you set INITIAL_MEMORY to 8MB without memory growth, then
1749
- * the wasmMemory you provide (if any) should have both the 'initial' and
1750
- * 'maximum' set to 128 (due to WASM page sizes being 64KB).
1751
- */
1752
- wasmMemory: WebAssembly.Memory;
1753
- destroy(object: object): void;
1754
- getPreloadedPackage(remotePackageName: string, remotePackageSize: number): ArrayBuffer;
1755
- instantiateWasm(imports: WebAssembly.Imports, successCallback: (module: WebAssembly.Instance) => void): WebAssembly.Exports | undefined;
1756
- locateFile(url: string, scriptDirectory: string): string;
1757
- onCustomMessage(event: MessageEvent): void;
1758
- HEAP: Int32Array;
1759
- IHEAP: Int32Array;
1760
- FHEAP: Float64Array;
1761
- HEAP8: Int8Array;
1762
- HEAP16: Int16Array;
1763
- HEAP32: Int32Array;
1764
- HEAPU8: Uint8Array;
1765
- HEAPU16: Uint16Array;
1766
- HEAPU32: Uint32Array;
1767
- HEAPF32: Float32Array;
1768
- HEAPF64: Float64Array;
1769
- HEAP64: BigInt64Array;
1770
- HEAPU64: BigUint64Array;
1771
- TOTAL_STACK: number;
1772
- TOTAL_MEMORY: number;
1773
- FAST_MEMORY: number;
1774
- addOnPreRun(cb: () => any): void;
1775
- addOnInit(cb: () => any): void;
1776
- addOnPreMain(cb: () => any): void;
1777
- addOnExit(cb: () => any): void;
1778
- addOnPostRun(cb: () => any): void;
1779
- preloadedImages: any;
1780
- preloadedAudios: any;
1781
- _malloc(size: number): number;
1782
- _free(ptr: number): void;
1783
- }
1784
-
1785
- /**
1786
- * A factory function is generated when setting the `MODULARIZE` build option to
1787
- * `1` in your Emscripten build. It return a Promise that resolves to an
1788
- * initialized, ready-to-call `EmscriptenModule` instance.
1789
- *
1790
- * By default, the factory function will be named `Module`. It's recommended to
1791
- * use the `EXPORT_ES6` option, in which the factory function will be the
1792
- * default export. If used without `EXPORT_ES6`, the factory function will be a
1793
- * global variable. You can rename the variable using the `EXPORT_NAME` build
1794
- * option. It's left to you to declare any global variables as needed in your
1795
- * application's types.
1796
- *
1797
- * @param moduleOverrides Default properties for the initialized module.
1798
- *
1799
- * @ignore
1800
- */
1801
- export declare type EmscriptenModuleFactory<T extends EmscriptenModule = EmscriptenModule> = (moduleOverrides?: Partial<T>) => Promise<T>;
1802
-
1803
- /**
1804
- * The environment type.
1805
- *
1806
- * @ignore
1807
- */
1808
- export declare type EnvironmentType = "WEB" | "NODE" | "SHELL" | "WORKER";
1809
-
1810
- /**
1811
- * Extracts the barcode input image from the scanning result.
1812
- *
1813
- * @param blinkIdScanningResult - The scanning result.
1814
- * @returns The barcode input image.
1815
- */
1816
- export declare function extractBarcodeImage(blinkIdScanningResult: BlinkIdScanningResult): ImageData | null;
1817
-
1818
- /**
1819
- * Extracts the face image from the scanning result.
1820
- *
1821
- * @param blinkIdScanningResult - The scanning result.
1822
- * @returns The face image.
1823
- */
1824
- export declare function extractFaceImage(blinkIdScanningResult: BlinkIdScanningResult): ImageData | null;
1825
-
1826
- /**
1827
- * Extracts the document image for a given side from the scanning result.
1828
- *
1829
- * @param blinkIdScanningResult - The scanning result.
1830
- * @param side - The side to extract the document image for.
1831
- * @returns The document image for the given side.
1832
- */
1833
- export declare function extractSideDocumentImage(blinkIdScanningResult: BlinkIdScanningResult, side: ScanningSide): ImageData | null;
1834
-
1835
- /**
1836
- * Extracts the input image for a given side from the scanning result.
1837
- *
1838
- * @param blinkIdScanningResult - The scanning result.
1839
- * @param side - The side to extract the input image for.
1840
- * @returns The input image for the given side.
1841
- */
1842
- export declare function extractSideInputImage(blinkIdScanningResult: BlinkIdScanningResult, side: ScanningSide): ImageData | null;
1843
-
1844
- /**
1845
- * Extracts the signature image from the scanning result.
1846
- *
1847
- * @param blinkIdScanningResult - The scanning result.
1848
- * @returns The signature image.
1849
- */
1850
- export declare function extractSignatureImage(blinkIdScanningResult: BlinkIdScanningResult): ImageData | null;
1851
-
1852
- /** Represents all possible field types that can be extracted from the document. */
1853
- export declare type FieldType = Simplify<keyof VizResult | "mrz">;
1854
-
1855
- /**
1856
- * Gets a cross-origin worker URL as a data URL or blob URL. If the URL is same-origin, it will return the original URL.
1857
- *
1858
- * @param originalWorkerUrl - The original worker URL.
1859
- * @param _options - The options for the worker.
1860
- * @returns A promise that resolves with the cross-origin worker URL.
1861
- */
1862
- export declare const getCrossOriginWorkerURL: (originalWorkerUrl: string, _options?: Options) => Promise<string>;
1863
-
1864
- /**
1865
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1866
- */
1867
- /**
1868
- * Gets the user id from local storage, or generates a new one.
1869
- *
1870
- * This is a workaround for the lack of a user id in the worker scope.
1871
- *
1872
- * @returns a unique user id
1873
- */
1874
- export declare function getUserId(): string;
1875
-
1876
- /**
1877
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1878
- */
1879
- /** ImageAnalysisDetectionStatus defines possible states of detection. */
1880
- export declare type ImageAnalysisDetectionStatus =
1881
- /** Detection was not performed */
1882
- "not-available"
1883
- /** Not detected on input image */
1884
- | "not-detected"
1885
- /** Detected on input image */
1886
- | "detected";
1887
-
1888
- /**
1889
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1890
- */
1891
- /** ImageAnalysisLightingStatus defines possible lighting statuses. */
1892
- export declare type ImageAnalysisLightingStatus =
1893
- /** Status is not available */
1894
- "not-available"
1895
- /** Document lighting is too bright */
1896
- | "too-bright"
1897
- /** Document lighting is too dark */
1898
- | "too-dark"
1899
- /** Document lighting is normal */
1900
- | "normal";
1901
-
1902
- /**
1903
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1904
- */
1905
- /** Represents the types of images that can be extracted from the document. */
1906
- export declare type ImageExtractionType = "face" | "signature" | "document";
1907
-
1908
- /**
1909
- * Represents the results of processing and analyzing an input image.
1910
- *
1911
- * This structure contains the status of the processing, along with detailed
1912
- * results from detection, document quality, and information about the document
1913
- * analysis performed on the input image.
1914
- */
1915
- export declare type InputImageAnalysisResult = {
1916
- /** Status of the processing */
1917
- processingStatus: ProcessingStatus;
1918
- /** List of fields that were expected on the document but were missing */
1919
- missingMandatoryFields: FieldType[];
1920
- /** List of fields that were extracted from the document */
1921
- extractedFields: FieldType[];
1922
- /**
1923
- * List of fields that contained characters which were not expected in that
1924
- * field
1925
- */
1926
- invalidCharacterFields: FieldType[];
1927
- /** List of fields that weren't expected on the document but were present */
1928
- extraPresentFields: FieldType[];
1929
- /** List of failed image extractions */
1930
- imageExtractionFailures: ImageExtractionType[];
1931
- /** Side of the document being scanned */
1932
- scanningSide: ScanningSide;
1933
- /** The status of the document detection */
1934
- documentDetectionStatus: DetectionStatus;
1935
- /** The location of the detected document within an image */
1936
- documentLocation?: Quadrilateral;
1937
- /** Information about the document class */
1938
- documentClassInfo: DocumentClassInfo;
1939
- /** The status of blur detection */
1940
- blurDetectionStatus: ImageAnalysisDetectionStatus;
1941
- /** The status of glare detection */
1942
- glareDetectionStatus: ImageAnalysisDetectionStatus;
1943
- /** The color status of the document image */
1944
- documentColorStatus: DocumentImageColor;
1945
- /** The status of moire pattern detection in the document image */
1946
- documentMoireStatus: ImageAnalysisDetectionStatus;
1947
- /** The status of face detection */
1948
- faceDetectionStatus: ImageAnalysisDetectionStatus;
1949
- /** The status of MRZ detection */
1950
- mrzDetectionStatus: ImageAnalysisDetectionStatus;
1951
- /** The status of barcode detection */
1952
- barcodeDetectionStatus: ImageAnalysisDetectionStatus;
1953
- /** The status of real ID detection */
1954
- realIDDetectionStatus: ImageAnalysisDetectionStatus;
1955
- /** The status of lighting conditions in the document image */
1956
- documentLightingStatus: ImageAnalysisLightingStatus;
1957
- /** The status of hand occlusion detection in the document image */
1958
- documentHandOcclusionStatus: ImageAnalysisDetectionStatus;
1959
- /** The orientation of the document */
1960
- documentOrientation: DocumentOrientation;
1961
- /** The rotation of the document in the frame */
1962
- documentRotation: DocumentRotation;
1963
- };
1964
-
1965
- /**
1966
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
1967
- */
1968
- /**
1969
- * Represents the source type of an image.
1970
- *
1971
- * This type is used to indicate whether an image was obtained from a video
1972
- * stream or a single-source input such as a standalone photo.
1973
- */
1974
- export declare type InputImageSource = "video" | "photo";
1975
-
1976
- /**
1977
- * Error thrown when license unlock fails
1978
- */
1979
- export declare class LicenseError extends Error {
1980
- code: LicenseErrorCode;
1981
- constructor(message: string, code: LicenseErrorCode);
1982
- }
1983
-
1984
- export declare type LicenseErrorCode = "LICENSE_ERROR";
1985
-
1986
- /** The license request. */
1987
- export declare type LicenseRequest = Readonly<{
1988
- /** The license id. */
1989
- licenseId: string;
1990
- /** The licensee. */
1991
- licensee: string;
1992
- /** The application ids. */
1993
- applicationIds: Array<string>;
1994
- /** The package name. */
1995
- packageName: string;
1996
- /** The platform. */
1997
- platform: string;
1998
- /** The sdk name. */
1999
- sdkName: string;
2000
- /** The sdk version. */
2001
- sdkVersion: string;
2002
- }>;
2003
-
2004
- /** The license status response. */
2005
- export declare type LicenseStatusResponse = Record<string, string>;
2006
-
2007
- /** The license token state. */
2008
- export declare type LicenseTokenState = "invalid" | "requires-server-permission" | "valid";
2009
-
2010
- /**
2011
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2012
- */
2013
- /** The license unlock result. */
2014
- export declare type LicenseUnlockResult = Readonly<{
2015
- /** Whether the license is a trial license. */
2016
- isTrial: boolean;
2017
- /** Whether the license has ping enabled. */
2018
- hasPing: boolean;
2019
- /** The license id. */
2020
- licenseId: string;
2021
- /** The licensee. */
2022
- licensee: string;
2023
- /** The application ids. */
2024
- applicationIds: Array<string>;
2025
- /** The package name. */
2026
- packageName: string;
2027
- /** The sdk name. */
2028
- sdkName: string;
2029
- /** The sdk version. */
2030
- sdkVersion: string;
2031
- /** The unlock result. */
2032
- unlockResult: LicenseTokenState;
2033
- /** The license error. */
2034
- licenseError: string;
2035
- /** Whether to show the demo overlay. */
2036
- showDemoOverlay: boolean;
2037
- /** Whether to show the production overlay. */
2038
- showProductionOverlay: boolean;
2039
- /** Whether to allow baltazar proxy. */
2040
- allowBaltazarProxy: boolean;
2041
- /** Whether to allow ping proxy. */
2042
- allowPingProxy: boolean;
2043
- }>;
2044
-
2045
- /**
2046
- * Creates and initializes a BlinkID core instance.
2047
- *
2048
- * @param settings - Configuration for BlinkID initialization including license key and resources location
2049
- * @param progressCallback - Optional callback for tracking resource download progress (WASM, data files)
2050
- * @returns Promise that resolves with initialized BlinkID core instance
2051
- * @throws Error if initialization fails
2052
- */
2053
- export declare function loadBlinkIdCore(settings: BlinkIdInitSettings, progressCallback?: ProgressStatusCallback): Promise<BlinkIdCore>;
2054
-
2055
- /**
2056
- * The load Wasm params.
2057
- */
2058
- export declare type LoadWasmParams = {
2059
- resourceUrl: string;
2060
- variant?: WasmVariant;
2061
- useLightweightBuild: boolean;
2062
- initialMemory?: number;
2063
- };
2064
-
2065
- /** Types of documents that can contain MRZ */
2066
- export declare type MrzDocumentType = "unknown" | "identity-card" | "passport" | "visa" | "green-card" | "mys-pass-imm13p" | "driver-license" | "internal-travel-document" | "border-crossing-card";
2067
-
2068
- /** Result of Machine Readable Zone extraction */
2069
- export declare type MrzResult = {
2070
- /** The entire Machine Readable Zone text */
2071
- rawMrzString: string;
2072
- /** The document code from MRZ */
2073
- documentCode: string;
2074
- /** The document issuer from MRZ */
2075
- issuer: string;
2076
- /** The document number from MRZ */
2077
- documentNumber: string;
2078
- /** The first optional data field from MRZ */
2079
- opt1: string;
2080
- /** The second optional data field from MRZ */
2081
- opt2: string;
2082
- /** The gender/sex from MRZ */
2083
- gender: string;
2084
- /** The nationality code from MRZ */
2085
- nationality: string;
2086
- /** The primary identifier from MRZ */
2087
- primaryId: string;
2088
- /** The secondary identifier from MRZ */
2089
- secondaryId: string;
2090
- /** The full name of the issuing authority */
2091
- issuerName: string;
2092
- /** The full nationality name */
2093
- nationalityName: string;
2094
- /** Whether all check digits are valid */
2095
- verified: boolean;
2096
- /** The date of birth from MRZ */
2097
- dateOfBirth: DateResult<string>;
2098
- /** The date of expiry from MRZ */
2099
- dateOfExpiry: DateResult<string>;
2100
- /** The type of the document */
2101
- documentType: MrzDocumentType;
2102
- /** The opt1 field without padding characters */
2103
- sanitizedOpt1: string;
2104
- /** The opt2 field without padding characters */
2105
- sanitizedOpt2: string;
2106
- /** The nationality code without padding characters */
2107
- sanitizedNationality: string;
2108
- /** The issuer code without padding characters */
2109
- sanitizedIssuer: string;
2110
- /** The document code without padding characters */
2111
- sanitizedDocumentCode: string;
2112
- /** The document number without padding characters */
2113
- sanitizedDocumentNumber: string;
2114
- };
2115
-
2116
- /**
2117
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2118
- */
2119
- /**
2120
- * Options for the getCrossOriginWorkerURL function.
2121
- *
2122
- * @param skipSameOrigin - If true, the function will return the original URL if it is same-origin.
2123
- * @param useBlob - If true, the function will return a blob URL.
2124
- */
2125
- declare type Options = {
2126
- /** If true, the function will return the original URL if it is same-origin. */
2127
- skipSameOrigin?: boolean;
2128
- /** If true, the function will return a blob URL if not same-origin. */
2129
- useBlob?: boolean;
2130
- };
2131
-
2132
- /**
2133
- * The partial BlinkID session settings.
2134
- */
2135
- declare type PartialBlinkIdSessionSettings = OverrideProperties<Partial<BlinkIdSessionSettings>, {
2136
- scanningSettings?: PartialScanningSettings;
2137
- }>;
2138
-
2139
- /**
2140
- * The partial scanning settings.
2141
- */
2142
- declare type PartialScanningSettings = Partial<OverrideProperties<ScanningSettings, {
2143
- croppedImageSettings: Partial<CroppedImageSettings>;
2144
- recognitionModeFilter: Partial<RecognitionModeFilter>;
2145
- customDocumentRules: Partial<DocumentRules>[];
2146
- }>>;
2147
-
2148
- /**
2149
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2150
- */
2151
- /** Represents a 2D point. */
2152
- export declare type Point = {
2153
- /** X-coordinate of the point. */
2154
- x: number;
2155
- /** Y-coordinate of the point. */
2156
- y: number;
2157
- };
2158
-
2159
- /**
2160
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2161
- */
2162
- /**
2163
- * Represents the status of the document processing.
2164
- *
2165
- * ProcessingStatus defines various statuses that can occur during the
2166
- * processing of a document, indicating the success or failure of different
2167
- * stages of the recognition and extraction process.
2168
- */
2169
- export declare type ProcessingStatus =
2170
- /** The document was fully scanned and data was extracted as expected. */
2171
- "success"
2172
- /** The document was not found on the image. */
2173
- | "detection-failed"
2174
- /** Preprocessing of the input image has failed. */
2175
- | "image-preprocessing-failed"
2176
- /**
2177
- * Stability is achieved when the same document is provided on consecutive
2178
- * frames, resulting in a consistent recognition between frames prior to data
2179
- * extraction. Valid only for video feed.
2180
- */
2181
- | "stability-test-failed"
2182
- /**
2183
- * The wrong side of the document is scanned. Front side scan is completed and
2184
- * back side is expected, but not provided by the end-user. Possible also if
2185
- * front is expected at the start of the scanning process and back is
2186
- * presented first by the end-user.
2187
- */
2188
- | "scanning-wrong-side"
2189
- /**
2190
- * Unexpected fields are present on the document and removed from the final
2191
- * result.
2192
- */
2193
- | "field-identification-failed"
2194
- /** Fields expected to appear on the scanned document have not been found. */
2195
- | "mandatory-field-missing"
2196
- /**
2197
- * One of the extracted fields contains a character which does not satisfy the
2198
- * rule defined for that specific field. This processing status can only occur
2199
- * if enableCharacterValidation setting is set to true.
2200
- */
2201
- | "invalid-characters-found"
2202
- /** Failed to return a requested image. */
2203
- | "image-return-failed"
2204
- /** Reading or parsing of the barcode has failed. */
2205
- | "barcode-recognition-failed"
2206
- /** Parsing of the MRZ has failed. */
2207
- | "mrz-parsing-failed"
2208
- /**
2209
- * Currently scanned document has been filtered out by its document class.
2210
- * Occurrence of this processing status is affected by documentFilter
2211
- * setting.
2212
- */
2213
- | "document-filtered"
2214
- /** Document currently not supported. */
2215
- | "unsupported-document"
2216
- /**
2217
- * Front side recognition has completed successfully, and scanning process is
2218
- * waiting for the other side to be scanned.
2219
- */
2220
- | "awaiting-other-side"
2221
- /**
2222
- * If front side recognition has not completed successfully, the back side is
2223
- * not scanned.
2224
- */
2225
- | "not-scanned"
2226
- /**
2227
- * The barcode was not found on the image. This processing status can only
2228
- * occur if document has mandatory barcode.
2229
- */
2230
- | "barcode-detection-failed";
2231
-
2232
- /**
2233
- * The process result with buffer.
2234
- */
2235
- export declare type ProcessResultWithBuffer = BlinkIdProcessResult & {
2236
- arrayBuffer: ArrayBuffer;
2237
- };
2238
-
2239
- /**
2240
- * The progress status callback.
2241
- */
2242
- export declare type ProgressStatusCallback = (progress: DownloadProgress) => void;
2243
-
2244
- /**
2245
- * Error thrown when proxy URL validation fails
2246
- */
2247
- export declare class ProxyUrlValidationError extends Error {
2248
- readonly url: string;
2249
- constructor(message: string, url: string);
2250
- }
2251
-
2252
- /** Represents a quadrilateral shape with signed integer coordinates. */
2253
- export declare type Quadrilateral = {
2254
- /** Upper left point of the quadrilateral. */
2255
- upperLeft: Point;
2256
- /** Upper right point of the quadrilateral. */
2257
- upperRight: Point;
2258
- /** Lower right point of the quadrilateral. */
2259
- lowerRight: Point;
2260
- /** Lower left point of the quadrilateral. */
2261
- lowerLeft: Point;
2262
- };
2263
-
2264
- /**
2265
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2266
- */
2267
- /** RecognitionMode defines possible recognition modes */
2268
- export declare type RecognitionMode =
2269
- /** Recognition of mrz document (does not include visa and passport) */
2270
- "mrz-id"
2271
- /** Recognition of visa mrz. */
2272
- | "mrz-visa"
2273
- /** Recognition of passport mrz. */
2274
- | "mrz-passport"
2275
- /** Recognition of documents that have face photo on the front. */
2276
- | "photo-id"
2277
- /** Detailed document recognition. */
2278
- | "full-recognition"
2279
- /** Recognition of barcode document. */
2280
- | "barcode-id";
2281
-
2282
- /**
2283
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2284
- */
2285
- /**
2286
- * Represents the configuration used to enable/disable recognition of specific
2287
- * document groups.
2288
- *
2289
- * By default, all modes are enabled.
2290
- */
2291
- export declare type RecognitionModeFilter = {
2292
- /** Enable scanning of MRZ IDs. */
2293
- enableMrzId: boolean;
2294
- /** Enable scanning of visa MRZ. */
2295
- enableMrzVisa: boolean;
2296
- /** Enable scanning of Passport MRZ. */
2297
- enableMrzPassport: boolean;
2298
- /** Enable scanning of Photo ID. */
2299
- enablePhotoId: boolean;
2300
- /** Enable scanning of barcode IDs. */
2301
- enableBarcodeId: boolean;
2302
- /** Enable full document recognition. */
2303
- enableFullDocumentRecognition: boolean;
2304
- };
2305
-
2306
- /** Represents a rectangle. */
2307
- export declare type Rectangle = {
2308
- /** X coordinate of the top-left corner of the rectangle. */
2309
- x: number;
2310
- /** Y coordinate of the top-left corner of the rectangle. */
2311
- y: number;
2312
- /** Width of the rectangle. */
2313
- width: number;
2314
- /** Height of the rectangle. */
2315
- height: number;
2316
- };
2317
-
2318
- /**
2319
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2320
- */
2321
- /** Represents regions */
2322
- export declare type Region = "alabama" | "alaska" | "alberta" | "arizona" | "arkansas" | "australian-capital-territory" | "british-columbia" | "california" | "colorado" | "connecticut" | "delaware" | "district-of-columbia" | "florida" | "georgia" | "hawaii" | "idaho" | "illinois" | "indiana" | "iowa" | "kansas" | "kentucky" | "louisiana" | "maine" | "manitoba" | "maryland" | "massachusetts" | "michigan" | "minnesota" | "mississippi" | "missouri" | "montana" | "nebraska" | "nevada" | "new-brunswick" | "new-hampshire" | "new-jersey" | "new-mexico" | "new-south-wales" | "new-york" | "northern-territory" | "north-carolina" | "north-dakota" | "nova-scotia" | "ohio" | "oklahoma" | "ontario" | "oregon" | "pennsylvania" | "quebec" | "queensland" | "rhode-island" | "saskatchewan" | "south-australia" | "south-carolina" | "south-dakota" | "tasmania" | "tennessee" | "texas" | "utah" | "vermont" | "victoria" | "virginia" | "washington" | "western-australia" | "west-virginia" | "wisconsin" | "wyoming" | "yukon" | "ciudad-de-mexico" | "jalisco" | "newfoundland-and-labrador" | "nuevo-leon" | "baja-california" | "chihuahua" | "guanajuato" | "guerrero" | "mexico" | "michoacan" | "new-york-city" | "tamaulipas" | "veracruz" | "chiapas" | "coahuila" | "durango" | "guerrero-cocula" | "guerrero-juchitan" | "guerrero-tepecoacuilco" | "guerrero-tlacoapa" | "gujarat" | "hidalgo" | "karnataka" | "kerala" | "khyber-pakhtunkhwa" | "madhya-pradesh" | "maharashtra" | "morelos" | "nayarit" | "oaxaca" | "puebla" | "punjab" | "queretaro" | "san-luis-potosi" | "sinaloa" | "sonora" | "tabasco" | "tamil-nadu" | "yucatan" | "zacatecas" | "aguascalientes" | "baja-california-sur" | "campeche" | "colima" | "quintana-roo-benito-juarez" | "quintana-roo" | "quintana-roo-solidaridad" | "tlaxcala" | "quintana-roo-cozumel" | "sao-paolo" | "rio-de-janeiro" | "rio-grande-do-sul" | "northwest-territories" | "nunavut" | "prince-edward-island" | "distrito-federal" | "maranhao" | "mato-grosso" | "minas-gerais" | "para" | "parana" | "pernambuco" | "santa-catarina" | "andhra-pradesh" | "ceara" | "goias" | "guerrero-acapulco-de-juarez" | "haryana" | "sergipe" | "alagoas" | "bangsamoro";
2323
-
2324
- /** Represents a remote scanning session. */
2325
- export declare type RemoteScanningSession = Remote<WorkerScanningSession>;
2326
-
2327
- /**
2328
- * Represents a remote worker instance.
2329
- *
2330
- * This type is the return type of the createProxyWorker function, which creates a Comlink-proxied Web Worker.
2331
- * It simplifies the type to remove unnecessary complexity.
2332
- */
2333
- export declare type RemoteWorker = ReturnType<typeof createProxyWorker>;
2334
-
2335
- /**
2336
- * Removes the internals of an Embind object.
2337
- *
2338
- * @param T - The type of the object to remove the internals from.
2339
- * @returns The object with the internals removed.
2340
- *
2341
- * @ignore
2342
- */
2343
- export declare type RemoveEmbindInternals<T> = Omit<T, "delete" | "isDeleted" | "deleteLater" | "isAliasOf">;
2344
-
2345
- /**
2346
- * Represents the completeness of the extraction process for a scanned document.
2347
- *
2348
- * This structure tracks the status of the scanning process and indicates
2349
- * whether specific components of the document, such as the specific fields from
2350
- * the VIZ, MRZ, and barcode, have been successfully extracted.
2351
- */
2352
- export declare type ResultCompleteness = {
2353
- /** The status of the scanning process */
2354
- scanningStatus: ScanningStatus;
2355
- /** Whether the VIZ fields have been extracted */
2356
- vizExtracted: boolean;
2357
- /** Whether the MRZ fields have been extracted */
2358
- mrzExtracted: boolean;
2359
- /** Whether the barcode fields have been extracted */
2360
- barcodeExtracted: boolean;
2361
- /** Whether the document image has been extracted */
2362
- documentImageExtracted: boolean;
2363
- /** Whether the face image has been extracted */
2364
- faceImageExtracted: boolean;
2365
- /** Whether the signature image has been extracted */
2366
- signatureImageExtracted: boolean;
2367
- };
2368
-
2369
- /**
2370
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2371
- */
2372
- /**
2373
- * Represents the mode of document scanning.
2374
- *
2375
- * ScanningMode defines whether the scanning process is limited to a single side
2376
- * of the document or includes multiple sides, automatically identifying how
2377
- * many sides need to be scanned.
2378
- */
2379
- export declare type ScanningMode = "single" | "automatic";
2380
-
2381
- /**
2382
- * Represents the configurable settings for scanning a document.
2383
- *
2384
- * This structure defines various parameters and policies related to the
2385
- * scanning process, including image quality handling, data extraction and
2386
- * anonymization, along with options for frame processing and image extraction.
2387
- */
2388
- export declare type ScanningSettings = {
2389
- /**
2390
- * The level of blur detection in the document image.
2391
- *
2392
- * Defines the severity of blur detected in the document image, as defined in
2393
- * `DetectionLevel`. Values range from `off` (detection NotAvailable) to
2394
- * higher levels of blur detection.
2395
- *
2396
- * `low` – less sensitive to blur; if something is detected as blur, it is
2397
- * almost certainly actual blur, but some amount of blur may not be detected
2398
- * at all.
2399
- *
2400
- * `high` – highly sensitive to blur; it may detect as blur even something
2401
- * that only resembles blur.
2402
- */
2403
- blurDetectionLevel: DetectionLevel;
2404
- /**
2405
- * Indicates whether images with blur in the document image should be skipped.
2406
- *
2407
- * A value of `true` means images with detected blur will be excluded from
2408
- * further processing to prevent blurred images from being used
2409
- *
2410
- * - If `blurDetectionLevel` is `off` - blurred images will be processed
2411
- * - If blur is detected `InputImageAnalysisResult#processingStatus` will be
2412
- * `image-preprocessing-failed` and blur will be reported in the
2413
- * `BlinkIdProcessResult`
2414
- *
2415
- * A value of `false` means images with detected blur will not be excluded
2416
- * from further processing
2417
- *
2418
- * - If `blurDetectionLevel` is not `off` - even if blur is detected, the image
2419
- * will be processed and blur will be reported in the
2420
- * `BlinkIdProcessResult`.
2421
- */
2422
- skipImagesWithBlur: boolean;
2423
- /**
2424
- * The level of glare detection in the document image.
2425
- *
2426
- * Defines the severity of glare detected in the document image, as defined in
2427
- * `DetectionLevel`. Values range from `off` (detection NotAvailable) to
2428
- * higher levels of glare detection.
2429
- *
2430
- * `low` – less sensitive to glare; if something is detected as glare, it is
2431
- * almost certainly actual glare, but some amount of glare may not be detected
2432
- * at all.
2433
- *
2434
- * `high` – highly sensitive to glare; it may detect as glare even something
2435
- * that only resembles glare.
2436
- */
2437
- glareDetectionLevel: DetectionLevel;
2438
- /**
2439
- * Indicates whether images with glare in the document image should be
2440
- * skipped.
2441
- *
2442
- * A value of `true` means images with detected glare will be excluded from
2443
- * further processing to prevent glared images from being used
2444
- *
2445
- * - If `glareDetectionLevel` is `off` - glared images will be processed
2446
- * - If glare is detected `InputImageAnalysisResult#processingStatus` will be
2447
- * `image-preprocessing-failed` and glare will be reported in the
2448
- * `BlinkIdProcessResult`
2449
- *
2450
- * A value of `false` means images with detected glare will not be excluded
2451
- * from further processing
2452
- *
2453
- * - If `glareDetectionLevel` is not `off` - even if glare is detected, the
2454
- * image will be processed and glare will be reported in the
2455
- * `BlinkIdProcessResult`
2456
- */
2457
- skipImagesWithGlare: boolean;
2458
- /**
2459
- * The level of allowed detected tilt of the document in the image.
2460
- *
2461
- * Defines the severity of allowed detected tilt of the document in the image,
2462
- * as defined in `DetectionLevel`. Values range from `off` (detection
2463
- * NotAvailable) to higher levels of allowed tilt.
2464
- *
2465
- * `low` – less sensitive to tilt.
2466
- *
2467
- * `high` – highly sensitive to tilt.
2468
- */
2469
- tiltDetectionLevel: DetectionLevel;
2470
- /**
2471
- * Indicates whether images with inadequate lighting conditions should be
2472
- * rejected.
2473
- *
2474
- * Inadequate lighting conditions are represented as either `too-bright` or
2475
- * `too-dark` document images, as defined in the `ImageAnalysisLightingStatus`
2476
- * type. A value of `true` means images with inadequate lighting conditions
2477
- * will be excluded from further processing to prevent images with inadequate
2478
- * lighting from being used
2479
- *
2480
- * - If inadequate light conditions are detected
2481
- * `InputImageAnalysisResult#processingStatus` will be
2482
- * `image-preprocessing-failed` and lighting status will be reported in the
2483
- * `BlinkIdProcessResult`.
2484
- */
2485
- skipImagesWithInadequateLightingConditions: boolean;
2486
- /**
2487
- * Indicates whether images occluded by hand should be rejected.
2488
- *
2489
- * A value of `true` means images occluded by hand will be excluded from
2490
- * further processing to prevent occluded images from being used
2491
- *
2492
- * - If hand occlusion is detected `InputImageAnalysisResult#processingStatus`
2493
- * will be `image-preprocessing-failed` and hand occlusion status will be
2494
- * reported in the `BlinkIdProcessResult`.
2495
- *
2496
- * This setting is applicable only if `scanCroppedDocumentImage` is false.
2497
- */
2498
- skipImagesOccludedByHand: boolean;
2499
- /**
2500
- * Indicates whether the aggregation of data from multiple images is enabled.
2501
- *
2502
- * Disabling this setting will yield higher-quality captured images, but it
2503
- * may slow down the scanning process due to the additional effort required to
2504
- * find the optimal image.
2505
- *
2506
- * Enabling this setting will simplify the extraction process, but the
2507
- * extracted data will be aggregated from multiple images instead of being
2508
- * sourced from a single image.
2509
- *
2510
- * This only applies when `InputImageSource` is equal to `video` - for images
2511
- * from `photo` source, setting will be ignored.
2512
- */
2513
- combineResultsFromMultipleInputImages: boolean;
2514
- /**
2515
- * Enables barcode recognition to proceed even if the initial VIZ extraction
2516
- * fails.
2517
- *
2518
- * If the barcode recognition is successful, the process will still end in a
2519
- * valid state. This setting is applicable only to images from `photo`
2520
- * source.
2521
- *
2522
- * For multi-side scanning, it is permitted only for the back side.
2523
- */
2524
- enableBarcodeScanOnly: boolean;
2525
- /**
2526
- * Defines custom rules for specific document class.
2527
- *
2528
- * When defining customDocumentRules, `documentFilter` is optionally set to
2529
- * specify the document to which the rule applies, and a `fields` with the
2530
- * appropriate `alphabetType` should be specified as mandatory for that
2531
- * document.
2532
- *
2533
- * If a `fields` is set to a field that is optional for that document or does
2534
- * not exist on it, all fields on the document become optional.
2535
- *
2536
- * If a `fields` is set to a field with an incorrect alphabetType, all fields
2537
- * on the document become optional.
2538
- *
2539
- * If a `fields` is set to a field that doesn't exist in the internal rules,
2540
- * that rule is ignored.
2541
- *
2542
- * When adding multiple `fields`, any field that does not match our rules is
2543
- * ignored. Only fields that comply with our rules are set as mandatory.
2544
- *
2545
- * If the documentFilter fields `country`, `region`, or `type` are set to
2546
- * `null`, all supported values for those fields will be considered. For
2547
- * example, if `country = null`, the rule will apply to all supported
2548
- * countries in BlinkID.
2549
- *
2550
- * By default, document fields are validated using internal rules that define
2551
- * mandatory fields for the scanned document class. This setting allows users
2552
- * to narrow down our internal rules on mandatory fields. All undefined fields
2553
- * will become optional. It is not possible to mark fields as mandatory if
2554
- * they cannot theoretically appear on the document.
2555
- *
2556
- * The more detailed document filter will have priority over the other.
2557
- */
2558
- customDocumentRules: DocumentRules[];
2559
- /**
2560
- * The mode of anonymization applied to the document.
2561
- *
2562
- * Redact specific fields based on requirements or laws regarding a specific
2563
- * document. Data can be redacted from the image, the result or both.
2564
- */
2565
- anonymizationMode?: AnonymizationMode;
2566
- /**
2567
- * Redact fields for specific document class.
2568
- *
2569
- * Fields specified by requirements or laws for a specific document will be
2570
- * redacted regardless of this setting. Based on anonymizationMode setting,
2571
- * data will be redacted from the image, the result or both.
2572
- */
2573
- customDocumentAnonymizationSettings: DocumentAnonymizationSettings[];
2574
- /**
2575
- * Indicates whether input images should be returned.
2576
- *
2577
- * Save the input images at the moment of the data extraction or timeout. This
2578
- * significantly increases memory consumption. The scanning performance is not
2579
- * affected.
2580
- */
2581
- returnInputImages: boolean;
2582
- /**
2583
- * Process only cropped document images.
2584
- *
2585
- * Requires the input image to consist solely of the cropped document image
2586
- * with perspective correction applied. This only applies to images from
2587
- * `photo` input image source - for images from `video` input image source,
2588
- * setting will be ignored.
2589
- */
2590
- scanCroppedDocumentImage: boolean;
2591
- /**
2592
- * Indicates whether character validation is enabled.
2593
- *
2594
- * Allow only results containing expected characters for a given field. Each
2595
- * field is validated against a set of rules. All fields have to be
2596
- * successfully validated in order to successfully scan a document. Setting is
2597
- * used to improve scanning accuracy.
2598
- *
2599
- * If set to `true`, when an invalid character is detected
2600
- * `invalid-characters-found` is returned.
2601
- */
2602
- enableCharacterValidation: boolean;
2603
- /**
2604
- * Defines the minimum required margin (in percentage) between the edge of the
2605
- * input image and the document.
2606
- *
2607
- * Default value is `0.02f` (also recommended value). The setting is
2608
- * applicable only when using images from `video` source. The setting is not
2609
- * applicable if `scanCroppedDocumentImage` is enabled (it will be ignored).
2610
- * This setting is implemented to comply with regulations in certain countries
2611
- * that mandate documents to be stored with adequate margins in the image.
2612
- */
2613
- inputImageMargin: number;
2614
- /**
2615
- * Indicates whether backside of unsupported document should be scanned also.
2616
- *
2617
- * By default, back side of the document will not be scanned if only the front
2618
- * side is supported for a specific document.
2619
- */
2620
- scanUnsupportedBack: boolean;
2621
- /**
2622
- * Indicates whether scanning can continue to the next side despite an
2623
- * uncertain front-side scan.
2624
- *
2625
- * This only applies to images from `photo` input image source - for images
2626
- * from `video` source, setting will be ignored.
2627
- */
2628
- allowUncertainFrontSideScan: boolean;
2629
- /**
2630
- * The maximum allowed mismatches per field during data matching.
2631
- *
2632
- * Configures the maximum number of characters per field that can be
2633
- * inconsistent during data matching. By default, no mismatches are allowed.
2634
- */
2635
- maxAllowedMismatchesPerField: number;
2636
- /**
2637
- * Indicates whether only the passport data page should be scanned.
2638
- *
2639
- * Scan only the data page ( page containing `MRZ` ) of the passport. If set
2640
- * to false, it will be required to scan the second page of certain
2641
- * passports.
2642
- */
2643
- scanPassportDataPageOnly: boolean;
2644
- /**
2645
- * Configures the image cropping settings during scanning process.
2646
- *
2647
- * Allows customization of cropped image handling, such as dotsPerInch,
2648
- * extensionFactor, and whether images should be returned for the entire
2649
- * document, face or signature regions.
2650
- */
2651
- croppedImageSettings: CroppedImageSettings;
2652
- /**
2653
- * The filter for recognition modes.
2654
- *
2655
- * Specifies which recognition modes are enabled during the scanning process,
2656
- * default value enables all modes. Used to enable/disable recognition of
2657
- * specific document groups.
2658
- *
2659
- * @experimental This setting will be removed in upcoming releases.
2660
- */
2661
- recognitionModeFilter: RecognitionModeFilter;
2662
- };
2663
-
2664
- /**
2665
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2666
- */
2667
- /** Represents the side of the document being scanned. */
2668
- export declare type ScanningSide = "first" | "second";
2669
-
2670
- /**
2671
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2672
- */
2673
- /**
2674
- * Represents the different states of a scanning process.
2675
- *
2676
- * ScanningStatus defines the possible statuses that can occur during the
2677
- * scanning operation, specifically for managing the progress of scanning sides
2678
- * and the entire document.
2679
- */
2680
- export declare type ScanningStatus = "scanning-side-in-progress" | "scanning-barcode-in-progress" | "side-scanned" | "document-scanned" | "cancelled";
2681
-
2682
- /** The server permission error. */
2683
- export declare type ServerPermissionError = "network-error" | "remote-lock" | "permission-expired" | "payload-corrupted" | "payload-signature-verification-failed" | "incorrect-token-state" | "detected-skewed-clock";
2684
-
2685
- /** The server permission submit result. */
2686
- export declare type ServerPermissionSubmitResult = Readonly<{
2687
- /** The error. */
2688
- error: ServerPermissionError;
2689
- /** The lease. */
2690
- lease: number;
2691
- /** The network error description. */
2692
- networkErrorDescription?: string;
2693
- }>;
2694
-
2695
- /** Results of scanning a single side of a document */
2696
- export declare type SingleSideScanningResult = {
2697
- /** The data extracted from the Visual Inspection Zone */
2698
- viz?: VizResult;
2699
- /** The data extracted from the Machine Readable Zone */
2700
- mrz?: MrzResult;
2701
- /** The data extracted from the barcode */
2702
- barcode?: BarcodeResult;
2703
- /** The input image */
2704
- inputImage?: ImageData;
2705
- /** The input image containing parsable barcode */
2706
- barcodeInputImage?: ImageData;
2707
- /** The cropped document image */
2708
- documentImage?: ImageData;
2709
- /** The cropped face image */
2710
- faceImage?: DetailedCroppedImageResult;
2711
- /** The cropped signature image */
2712
- signatureImage?: DetailedCroppedImageResult;
2713
- };
2714
-
2715
- /** Represents multi string results with mandatory entries for all alphabets */
2716
- export declare type StringResult = {
2717
- [key in AlphabetType]: AlphabetStringResult;
2718
- };
2719
-
2720
- /**
2721
- * Tests if local storage is available in the browser
2722
- */
2723
- export declare function testLocalStorage(): boolean;
2724
-
2725
- /**
2726
- * Represents the information about the vehicle class.
2727
- *
2728
- * @template S - The type of the string result.
2729
- */
2730
- export declare type VehicleClassInfo<S extends string | StringResult> = {
2731
- /** The type of vehicle the driver license owner has privilege to drive. */
2732
- vehicleClass?: S;
2733
- /** The type of driver licence. */
2734
- licenceType?: S;
2735
- /** The date since licence is effective. */
2736
- effectiveDate?: DateResult<S>;
2737
- /** The date of expiry of licence. */
2738
- expiryDate?: DateResult<S>;
2739
- };
2740
-
2741
- /** VizResult contains data extracted from the Visual Inspection Zone. */
2742
- export declare type VizResult = {
2743
- /** The first name of the document owner */
2744
- firstName?: StringResult;
2745
- /** The last name of the document owner */
2746
- lastName?: StringResult;
2747
- /** The full name of the document owner */
2748
- fullName?: StringResult;
2749
- /** The additional name information of the document owner */
2750
- additionalNameInformation?: StringResult;
2751
- /** The localized name of the document owner */
2752
- localizedName?: StringResult;
2753
- /** The father's name of the document owner */
2754
- fathersName?: StringResult;
2755
- /** The mother's name of the document owner */
2756
- mothersName?: StringResult;
2757
- /** The address of the document owner */
2758
- address?: StringResult;
2759
- /** The additional address information of the document owner */
2760
- additionalAddressInformation?: StringResult;
2761
- /** Additional optional address information of the document owner */
2762
- additionalOptionalAddressInformation?: StringResult;
2763
- /** The place of birth of the document owner */
2764
- placeOfBirth?: StringResult;
2765
- /** The nationality of the document owner */
2766
- nationality?: StringResult;
2767
- /** The race of the document owner */
2768
- race?: StringResult;
2769
- /** The religion of the document owner */
2770
- religion?: StringResult;
2771
- /** The profession of the document owner */
2772
- profession?: StringResult;
2773
- /** The marital status of the document owner */
2774
- maritalStatus?: StringResult;
2775
- /** The residential status of the document owner */
2776
- residentialStatus?: StringResult;
2777
- /** The employer of the document owner */
2778
- employer?: StringResult;
2779
- /** The sex of the document owner */
2780
- sex?: StringResult;
2781
- /** The sponsor of the document owner */
2782
- sponsor?: StringResult;
2783
- /** The blood type of the document owner */
2784
- bloodType?: StringResult;
2785
- /** The date of birth of the document owner */
2786
- dateOfBirth?: DateResult<StringResult>;
2787
- /** The date of issue of the document */
2788
- dateOfIssue?: DateResult<StringResult>;
2789
- /** The date of expiry of the document */
2790
- dateOfExpiry?: DateResult<StringResult>;
2791
- /** Determines if date of expiry is permanent */
2792
- dateOfExpiryPermanent?: boolean;
2793
- /** The document number */
2794
- documentNumber?: StringResult;
2795
- /** The personal identification number */
2796
- personalIdNumber?: StringResult;
2797
- /** The additional number of the document */
2798
- documentAdditionalNumber?: StringResult;
2799
- /** Additional optional number of the document */
2800
- documentOptionalAdditionalNumber?: StringResult;
2801
- /** The additional personal identification number */
2802
- additionalPersonalIdNumber?: StringResult;
2803
- /** The issuing authority of the document */
2804
- issuingAuthority?: StringResult;
2805
- /** The visa type of the document */
2806
- visaType?: StringResult;
2807
- /** The driver license detailed info */
2808
- driverLicenseDetailedInfo?: DriverLicenceDetailedInfo<StringResult>;
2809
- /** The transcription of the document subtype */
2810
- documentSubtype?: StringResult;
2811
- /** The remarks on the residence permit */
2812
- remarks?: StringResult;
2813
- /** The residence permit type */
2814
- residencePermitType?: StringResult;
2815
- /** The manufacturing year */
2816
- manufacturingYear?: StringResult;
2817
- /** The vehicle type */
2818
- vehicleType?: StringResult;
2819
- /** The eligibility category */
2820
- eligibilityCategory?: StringResult;
2821
- /** The specific document validity */
2822
- specificDocumentValidity?: StringResult;
2823
- /** The dependents info */
2824
- dependentsInfo?: DependentInfo[];
2825
- /** The vehicle owner */
2826
- vehicleOwner?: StringResult;
2827
- /** The certificate number of the document owner */
2828
- certificateNumber?: StringResult;
2829
- /** The country code of the document owner */
2830
- countryCode?: StringResult;
2831
- /** The national insurance number of the document owner */
2832
- nationalInsuranceNumber?: StringResult;
2833
- };
2834
-
2835
- /**
2836
- * The WASM variant.
2837
- */
2838
- declare type WasmVariant = "basic" | "advanced" | "advanced-threads";
2839
-
2840
- /**
2841
- * Copyright (c) 2025 Microblink Ltd. All rights reserved.
2842
- */
2843
- /**
2844
- * The WebAssembly module, for compatibility.
2845
- *
2846
- * @ignore
2847
- */
2848
- export declare interface WebAssemblyModule {
2849
- }
2850
-
2851
- /**
2852
- * The worker scanning session.
2853
- */
2854
- export declare type WorkerScanningSession = OverrideProperties<BlinkIdScanningSession, {
2855
- process: (image: ImageData) => ProcessResultWithBuffer;
2856
- }> & {
2857
- /**
2858
- * Gets the settings.
2859
- *
2860
- * @returns The settings.
2861
- */
2862
- getSettings: () => BlinkIdSessionSettings;
2863
- /**
2864
- * Shows the demo overlay.
2865
- *
2866
- * @returns Whether the demo overlay is shown.
2867
- */
2868
- showDemoOverlay: () => boolean;
2869
- /**
2870
- * Shows the production overlay.
2871
- *
2872
- * @returns Whether the production overlay is shown.
2873
- */
2874
- showProductionOverlay: () => boolean;
2875
- };
2876
-
2877
- export { }