@tsocial/tvweb-sdk.lotte 5.32.1 → 5.34.0

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.
@@ -0,0 +1,1830 @@
1
+ declare const ScannerType: {
2
+ readonly ID_CARD: "id_card";
3
+ readonly QR_CODE: "qr_code";
4
+ };
5
+
6
+ declare const defaultSteps: ({
7
+ scannerType: "id_card";
8
+ title: string;
9
+ description: string;
10
+ titleIcon: string;
11
+ cardSide: "front";
12
+ cardType: "vn.national_id";
13
+ enableConfirmPopup: boolean;
14
+ } | {
15
+ scannerType: "id_card";
16
+ title: string;
17
+ description: string;
18
+ titleIcon: string;
19
+ cardSide: "back";
20
+ cardType: "vn.national_id";
21
+ enableConfirmPopup: boolean;
22
+ })[];
23
+
24
+ declare namespace defaultClientSettings {
25
+ namespace data {
26
+ let country: string;
27
+ namespace settings {
28
+ namespace sdk_settings {
29
+ namespace id_detection_settings {
30
+ let show_hold_still_progress: boolean;
31
+ let show_auto_capture_toggle: boolean;
32
+ namespace auto_capture {
33
+ let enable: boolean;
34
+ let show_capture_button: boolean;
35
+ let wait_for_best_image_time_ms: number;
36
+ }
37
+ namespace manual_capture {
38
+ let wait_for_best_image_time_ms_1: number;
39
+ export { wait_for_best_image_time_ms_1 as wait_for_best_image_time_ms };
40
+ }
41
+ namespace card_type_check {
42
+ let enable_1: boolean;
43
+ export { enable_1 as enable };
44
+ }
45
+ namespace track_card_coordinates {
46
+ let enable_2: boolean;
47
+ export { enable_2 as enable };
48
+ export let max_length: number;
49
+ }
50
+ namespace blur_check {
51
+ let enable_3: boolean;
52
+ export { enable_3 as enable };
53
+ export let large_blurry_threshold_auto: number;
54
+ export let large_blurry_threshold_manual: number;
55
+ export let small_blurry_threshold_auto: number;
56
+ export let small_blurry_threshold_manual: number;
57
+ export let large_blurry_decimal: number;
58
+ export let small_blurry_decimal: number;
59
+ }
60
+ namespace blur_check_generic {
61
+ let enable_4: boolean;
62
+ export { enable_4 as enable };
63
+ let large_blurry_threshold_auto_1: number;
64
+ export { large_blurry_threshold_auto_1 as large_blurry_threshold_auto };
65
+ let large_blurry_threshold_manual_1: number;
66
+ export { large_blurry_threshold_manual_1 as large_blurry_threshold_manual };
67
+ let small_blurry_threshold_auto_1: number;
68
+ export { small_blurry_threshold_auto_1 as small_blurry_threshold_auto };
69
+ let small_blurry_threshold_manual_1: number;
70
+ export { small_blurry_threshold_manual_1 as small_blurry_threshold_manual };
71
+ let large_blurry_decimal_1: number;
72
+ export { large_blurry_decimal_1 as large_blurry_decimal };
73
+ let small_blurry_decimal_1: number;
74
+ export { small_blurry_decimal_1 as small_blurry_decimal };
75
+ export namespace full_face_image_ratio {
76
+ let top: number;
77
+ let right: number;
78
+ let left: number;
79
+ let bottom: number;
80
+ }
81
+ }
82
+ namespace face_check_generic {
83
+ namespace front_side {
84
+ let enable_5: boolean;
85
+ export { enable_5 as enable };
86
+ }
87
+ namespace back_side {
88
+ let enable_6: boolean;
89
+ export { enable_6 as enable };
90
+ }
91
+ }
92
+ namespace flashlight_settings {
93
+ let activation_delay_ms_back: number;
94
+ let activation_delay_ms_front: number;
95
+ let duration_ms_back: number;
96
+ let duration_ms_front: number;
97
+ let enable_back: boolean;
98
+ let enable_front: boolean;
99
+ }
100
+ namespace glare_check {
101
+ let enable_7: boolean;
102
+ export { enable_7 as enable };
103
+ export let threshold: number;
104
+ }
105
+ namespace glare_check_generic {
106
+ let enable_8: boolean;
107
+ export { enable_8 as enable };
108
+ let threshold_1: number;
109
+ export { threshold_1 as threshold };
110
+ }
111
+ let disable_capture_button_if_alert: boolean;
112
+ namespace exif_data_settings {
113
+ let enable_9: boolean;
114
+ export { enable_9 as enable };
115
+ }
116
+ namespace id_detection {
117
+ let enable_10: boolean;
118
+ export { enable_10 as enable };
119
+ export let card_type_model_mapping: {
120
+ 'vn.national_id': {
121
+ model: string;
122
+ force_off_detection: boolean;
123
+ };
124
+ 'vn.cccd_new': {
125
+ model: string;
126
+ force_off_detection: boolean;
127
+ };
128
+ 'vn.*': {
129
+ model: string;
130
+ force_off_detection: boolean;
131
+ };
132
+ 'global.passport': {
133
+ model: string;
134
+ force_off_detection: boolean;
135
+ };
136
+ 'ph.national_id': {
137
+ model: string;
138
+ force_off_detection: boolean;
139
+ };
140
+ 'ph.*': {
141
+ model: string;
142
+ force_off_detection: boolean;
143
+ };
144
+ };
145
+ }
146
+ namespace limit_time_settings {
147
+ let enable_11: boolean;
148
+ export { enable_11 as enable };
149
+ export let limit_time_second: number;
150
+ export let video_partial_length_seconds: number;
151
+ export let max_retry_count: number;
152
+ export let non_stoppable: boolean;
153
+ }
154
+ namespace record_video {
155
+ let enable_record_full_session_front: boolean;
156
+ let enable_record_full_session_back: boolean;
157
+ let enable_record_from_capture_bestframe_front: boolean;
158
+ let enable_record_from_capture_bestframe_back: boolean;
159
+ let video_frame_size_width: null;
160
+ let video_frame_size_height: null;
161
+ let bitrate: number;
162
+ let fps: number;
163
+ }
164
+ namespace save_frame_settings {
165
+ let enable_12: boolean;
166
+ export { enable_12 as enable };
167
+ export let frames_interval_ms: number;
168
+ export let quality: number;
169
+ }
170
+ namespace scan_qr_settings {
171
+ let enable_13: boolean;
172
+ export { enable_13 as enable };
173
+ export let enable_validation: boolean;
174
+ let limit_time_second_1: number;
175
+ export { limit_time_second_1 as limit_time_second };
176
+ let non_stoppable_1: boolean;
177
+ export { non_stoppable_1 as non_stoppable };
178
+ let max_retry_count_1: number;
179
+ export { max_retry_count_1 as max_retry_count };
180
+ export let scan_via_image: null;
181
+ export let scan_via_step: null;
182
+ }
183
+ namespace virtual_cam_hashes {
184
+ let web: boolean;
185
+ let mobile: boolean;
186
+ }
187
+ namespace image_settings {
188
+ let ideal_width: null;
189
+ let ideal_height: null;
190
+ let ideal_width_mobile_web: null;
191
+ let ideal_height_mobile_web: null;
192
+ let image_quality: number;
193
+ }
194
+ }
195
+ }
196
+ }
197
+ }
198
+ }
199
+
200
+ declare const ErrorDuration: {
201
+ readonly SHORT: 500;
202
+ readonly LONG: 1500;
203
+ readonly TERMINATE: 3000;
204
+ };
205
+ declare const AlertErrors: {
206
+ readonly wrong_orientation: {
207
+ readonly code: "wrong_orientation";
208
+ readonly msg: {
209
+ readonly en: "You are using landscape mode. Please rotate screen to portrait mode and retry.";
210
+ readonly vi: "Bạn đang sử dụng chế độ màn hình xoay ngang. Vui lòng quay màn hình theo chiều dọc và thực hiện lại.";
211
+ readonly 'es-mx': "Estás usando el modo horizontal. Gira la pantalla al modo vertical y vuelve a intentarlo.";
212
+ };
213
+ };
214
+ readonly no_face: {
215
+ readonly code: "no_face";
216
+ readonly msg: {
217
+ readonly en: "Please position your face in the frame";
218
+ readonly vi: "Vui lòng đưa khuôn mặt vào trong khung hình";
219
+ readonly 'es-mx': "Por favor coloque su cara en el marco";
220
+ };
221
+ };
222
+ readonly partial_face: {
223
+ readonly code: "partial_face";
224
+ readonly msg: {
225
+ readonly en: "Please fit your face completely in frame";
226
+ readonly vi: "Vui lòng đặt trọn vẹn khuôn mặt vào trong khung hình";
227
+ readonly 'es-mx': "Por favor, ajuste su cara completamente al marco";
228
+ };
229
+ };
230
+ readonly multiple_faces: {
231
+ readonly code: "multiple_faces";
232
+ readonly msg: {
233
+ readonly en: "Multiple faces detected";
234
+ readonly vi: "Phát hiện nhiều khuôn mặt trong khung hình";
235
+ readonly 'es-mx': "Mas de una cara detectada";
236
+ };
237
+ };
238
+ readonly face_too_small: {
239
+ readonly code: "face_too_small";
240
+ readonly msg: {
241
+ readonly en: "Please move your face closer to the camera";
242
+ readonly vi: "Vui lòng đưa mặt lại gần camera hơn";
243
+ readonly 'es-mx': "Por favor, acerque su rostro a la camara";
244
+ };
245
+ };
246
+ readonly face_too_large: {
247
+ readonly code: "face_too_large";
248
+ readonly msg: {
249
+ readonly en: "Please move your face further from the camera";
250
+ readonly vi: "Vui lòng đưa mặt ra xa camera hơn";
251
+ readonly 'es-mx': "Por favor, aleje su rostro de la camara";
252
+ };
253
+ };
254
+ readonly face_out_of_box: {
255
+ readonly code: "face_out_of_box";
256
+ readonly msg: {
257
+ readonly en: "Please fit your face completely in frame";
258
+ readonly vi: "Vui lòng đặt trọn vẹn khuôn mặt vào trong khung hình";
259
+ readonly 'es-mx': "Por favor, ajuste su cara completamente al marco.";
260
+ };
261
+ };
262
+ readonly liveness_too_fast: {
263
+ readonly code: "liveness_too_fast";
264
+ readonly msg: {
265
+ readonly en: "Please turn your head more slowly";
266
+ readonly vi: "Vui lòng xoay khuôn mặt chậm hơn";
267
+ readonly 'es-mx': "Por favor, gira la cabeza más lentamente";
268
+ };
269
+ };
270
+ readonly liveness_terminated: {
271
+ readonly code: "liveness_terminated";
272
+ readonly msg: {
273
+ readonly en: "Please try again.";
274
+ readonly vi: "Vui lòng thực hiện lại.";
275
+ readonly 'es-mx': "Por favor, intente de nuevo";
276
+ };
277
+ };
278
+ readonly liveness_terminated_face_tracking: {
279
+ readonly code: "liveness_terminated_face_tracking";
280
+ readonly msg: {
281
+ readonly en: "You need to turn your face SLOWLY.\nPlease try again.";
282
+ readonly vi: "Bạn cần quay CHẬM lại.\nVui lòng thực hiện lại.";
283
+ readonly 'es-mx': "Necesita girar su cara lentamente\nPor favor, intente de nuevo";
284
+ };
285
+ };
286
+ readonly liveness_terminated_no_face: {
287
+ readonly code: "liveness_terminated_no_face";
288
+ readonly msg: {
289
+ readonly en: "Your face was missing for too long.\nPlease try again.";
290
+ readonly vi: "Khuôn mặt không nằm trong khung hình.\nXin vui lòng thử lại.";
291
+ readonly 'es-mx': "Su cara no aparecio por mucho tiempo\nPor favor, intente de nuevo";
292
+ };
293
+ };
294
+ readonly liveness_terminated_time_out: {
295
+ readonly code: "liveness_terminated_time_out";
296
+ readonly msg: {
297
+ readonly en: "You need to complete within <%= x %> seconds.\nPlease try again";
298
+ readonly vi: "Bạn cần hoàn thành trong <%= x %> giây.\nXin vui lòng thử lại";
299
+ readonly 'es-mx': "Necesita completar el proceso entre <%= x %> segundos.\nPor favor, intente de nuevo";
300
+ };
301
+ };
302
+ readonly liveness_blurry: {
303
+ readonly code: "liveness_blurry";
304
+ readonly msg: {
305
+ readonly en: "Image is too blurry. Please ensure your face is in focus.";
306
+ readonly vi: "Hình ảnh bị mờ. Vui lòng đảm bảo khuôn mặt của bạn rõ nét.";
307
+ readonly 'es-mx': "La imagen está borrosa.\nMejore la iluminación y estabilice su dispositivo";
308
+ };
309
+ };
310
+ readonly card_sanity_not_good: {
311
+ readonly code: "card_sanity_not_good";
312
+ readonly msg: {
313
+ readonly en: "Card sanity not good";
314
+ readonly vi: "Card sanity chưa đạt";
315
+ readonly 'es-mx': "La calidad de la imagen de la tarjeta no es buena";
316
+ };
317
+ };
318
+ readonly id_detector_validate_angle_error: {
319
+ readonly code: "id_detector_validate_angle_error";
320
+ readonly msg: {
321
+ readonly en: "Please place ID card straight, not tilted";
322
+ readonly vi: "Vui lòng đặt giấy tờ thẳng, không bị nghiêng khi chụp";
323
+ readonly 'es-mx': "Sostenga la identificación plana y mirando hacia la cámara";
324
+ };
325
+ };
326
+ readonly client_web_setting_not_found: {
327
+ readonly code: "client_web_setting_not_found";
328
+ readonly msg: "Client Web Setting Not Found";
329
+ };
330
+ readonly id_detector_no_cards: {
331
+ readonly code: "id_detector_no_cards";
332
+ readonly msg: {
333
+ readonly en: "Please place the <%= side %> of your ID card\nfully inside the frame";
334
+ readonly vi: "Vui lòng đặt toàn bộ mặt <%= side %> GTTT\nvào khung hình";
335
+ readonly 'es-mx': "Mantenga el <%= side %> de su identificacion completamente dentro del marco.";
336
+ };
337
+ };
338
+ readonly id_detector_card_too_small: {
339
+ readonly code: "id_detector_card_too_small";
340
+ readonly msg: {
341
+ readonly en: "Please move ID card CLOSER\n (occupy 50-95% of the frame)";
342
+ readonly vi: "Vui lòng đưa giấy tờ lại GẦN hơn\n (chiếm 50-95% khung hình)";
343
+ readonly 'es-mx': "Por favor, acerque la identificación";
344
+ };
345
+ };
346
+ readonly id_detector_error_incomplete: {
347
+ readonly code: "id_detector_error_incomplete";
348
+ readonly msg: {
349
+ readonly en: "Please move ID card FARTHER\n (occupy 50-95% of the frame)";
350
+ readonly vi: "Vui lòng đưa giấy tờ ra XA hơn\n (chiếm 50-95% khung hình)";
351
+ readonly 'es-mx': "Por favor, coloque la identificación completamente en el marco";
352
+ };
353
+ };
354
+ readonly glare_detected: {
355
+ readonly code: "glare_detected";
356
+ readonly msg: {
357
+ readonly en: "Glare is detected. Please adjust the shooting angle";
358
+ readonly vi: "Ảnh bị chói / lóa. Vui lòng điều chỉnh góc chụp.";
359
+ readonly 'es-mx': "Se detectó deslumbramiento.\nIntente inclinar la tarjeta o cambiar el ángulo";
360
+ };
361
+ };
362
+ readonly id_detector_error_front_side_no_faces: {
363
+ readonly code: "id_detector_error_front_side_no_faces";
364
+ readonly msg: {
365
+ readonly en: "Please capture the front side of ID card";
366
+ readonly vi: "Vui lòng chụp mặt trước của giấy tờ";
367
+ readonly 'es-mx': "Por favor, capture el frente de la identificación";
368
+ };
369
+ };
370
+ readonly id_detector_error_front_side_multiple_faces: {
371
+ readonly code: "id_detector_error_front_side_multiple_faces";
372
+ readonly msg: {
373
+ readonly en: "Please capture the front side of one ID card only (remove other items out of the frame)";
374
+ readonly vi: "Vui lòng chụp mặt trước 1 giấy tờ duy nhất";
375
+ readonly 'es-mx': "Por favor, asegúrese de que solo haya una identificación dentro del marco";
376
+ };
377
+ };
378
+ readonly id_detector_error_back_side_has_faces: {
379
+ readonly code: "id_detector_error_back_side_has_faces";
380
+ readonly msg: {
381
+ readonly en: "Please capture the back side of ID card";
382
+ readonly vi: "Vui lòng chụp mặt sau của giấy tờ";
383
+ readonly 'es-mx': "Por favor, capture el reverso de la identificación";
384
+ };
385
+ };
386
+ readonly id_detector_error_blur: {
387
+ readonly code: "id_detector_error_blur";
388
+ readonly msg: {
389
+ readonly en: "Blurry photo detected. Please capture again for a clearer image";
390
+ readonly vi: "Ảnh bị mờ. Vui lòng chụp lại để có ảnh rõ nét hơn";
391
+ readonly 'es-mx': "Foto borrosa, capture de nuevo para una mejor imagen";
392
+ };
393
+ };
394
+ readonly id_detector_error_blurry: {
395
+ readonly code: "id_detector_error_blurry";
396
+ readonly msg: {
397
+ readonly en: "The image is blurry";
398
+ readonly vi: "Ảnh bị mờ, không đọc được chữ";
399
+ readonly 'es-mx': "La imagen está borrosa.\nMejore la iluminación y estabilice su dispositivo";
400
+ };
401
+ };
402
+ readonly not_allowed_card_types: {
403
+ readonly code: "not_allowed_card_types";
404
+ readonly msg: {
405
+ readonly en: "Please use the required ID cards";
406
+ readonly vi: "Vui lòng sử dụng GTTT được yêu cầu";
407
+ readonly 'es-mx': "Por favor, utilice la identificación requerida";
408
+ };
409
+ };
410
+ readonly not_frontal_face: {
411
+ readonly code: "not_frontal_face";
412
+ readonly msg: {
413
+ readonly en: "Please look straight to camera.";
414
+ readonly vi: "Vui lòng nhìn thẳng vào camera.";
415
+ readonly 'es-mx': "Por favor, mira directamente a la cámara";
416
+ };
417
+ };
418
+ readonly close_eye: {
419
+ readonly code: "close_eye";
420
+ readonly msg: {
421
+ readonly vi: "Vui lòng mở to mắt";
422
+ readonly en: "Open your eyes clearly";
423
+ readonly 'es-mx': "Por favor, abre bien los ojos";
424
+ };
425
+ };
426
+ };
427
+ declare const LicenseErrors: {
428
+ readonly license_invalid: {
429
+ readonly code: "license_invalid";
430
+ readonly msg: {
431
+ readonly en: "Invalid license";
432
+ readonly vi: "License không hợp lệ";
433
+ readonly 'es-mx': "Licencia inválida";
434
+ };
435
+ };
436
+ readonly license_rate_limit_exceeded: {
437
+ readonly code: "license_rate_limit_exceeded";
438
+ readonly msg: {
439
+ readonly en: "Invalid license";
440
+ readonly vi: "Quá số lần thử";
441
+ };
442
+ };
443
+ readonly license_internal_server_error: {
444
+ readonly code: "license_internal_server_error";
445
+ readonly msg: {
446
+ readonly en: "Internal server error";
447
+ readonly vi: "Lỗi server";
448
+ };
449
+ };
450
+ readonly license_unknown_error: {
451
+ readonly code: "license_unknown_error";
452
+ readonly msg: {
453
+ readonly en: "Unknown error";
454
+ readonly vi: "Lỗi không xác định";
455
+ };
456
+ };
457
+ };
458
+ declare const BillingErrors: {
459
+ readonly billing_invalid_config: {
460
+ readonly code: "billing_invalid_config";
461
+ readonly msg: {
462
+ readonly en: "Invalid billing configuration";
463
+ readonly vi: "Cấu hình billing không hợp lệ";
464
+ };
465
+ };
466
+ readonly billing_failed: {
467
+ readonly code: "billing_failed";
468
+ readonly msg: {
469
+ readonly en: "Billing failed";
470
+ readonly vi: "Billing không thành công";
471
+ };
472
+ };
473
+ };
474
+ declare const Errors: {
475
+ readonly billing_invalid_config: {
476
+ readonly code: "billing_invalid_config";
477
+ readonly msg: {
478
+ readonly en: "Invalid billing configuration";
479
+ readonly vi: "Cấu hình billing không hợp lệ";
480
+ };
481
+ };
482
+ readonly billing_failed: {
483
+ readonly code: "billing_failed";
484
+ readonly msg: {
485
+ readonly en: "Billing failed";
486
+ readonly vi: "Billing không thành công";
487
+ };
488
+ };
489
+ readonly license_invalid: {
490
+ readonly code: "license_invalid";
491
+ readonly msg: {
492
+ readonly en: "Invalid license";
493
+ readonly vi: "License không hợp lệ";
494
+ readonly 'es-mx': "Licencia inválida";
495
+ };
496
+ };
497
+ readonly license_rate_limit_exceeded: {
498
+ readonly code: "license_rate_limit_exceeded";
499
+ readonly msg: {
500
+ readonly en: "Invalid license";
501
+ readonly vi: "Quá số lần thử";
502
+ };
503
+ };
504
+ readonly license_internal_server_error: {
505
+ readonly code: "license_internal_server_error";
506
+ readonly msg: {
507
+ readonly en: "Internal server error";
508
+ readonly vi: "Lỗi server";
509
+ };
510
+ };
511
+ readonly license_unknown_error: {
512
+ readonly code: "license_unknown_error";
513
+ readonly msg: {
514
+ readonly en: "Unknown error";
515
+ readonly vi: "Lỗi không xác định";
516
+ };
517
+ };
518
+ readonly wrong_orientation: {
519
+ readonly code: "wrong_orientation";
520
+ readonly msg: {
521
+ readonly en: "You are using landscape mode. Please rotate screen to portrait mode and retry.";
522
+ readonly vi: "Bạn đang sử dụng chế độ màn hình xoay ngang. Vui lòng quay màn hình theo chiều dọc và thực hiện lại.";
523
+ readonly 'es-mx': "Estás usando el modo horizontal. Gira la pantalla al modo vertical y vuelve a intentarlo.";
524
+ };
525
+ };
526
+ readonly no_face: {
527
+ readonly code: "no_face";
528
+ readonly msg: {
529
+ readonly en: "Please position your face in the frame";
530
+ readonly vi: "Vui lòng đưa khuôn mặt vào trong khung hình";
531
+ readonly 'es-mx': "Por favor coloque su cara en el marco";
532
+ };
533
+ };
534
+ readonly partial_face: {
535
+ readonly code: "partial_face";
536
+ readonly msg: {
537
+ readonly en: "Please fit your face completely in frame";
538
+ readonly vi: "Vui lòng đặt trọn vẹn khuôn mặt vào trong khung hình";
539
+ readonly 'es-mx': "Por favor, ajuste su cara completamente al marco";
540
+ };
541
+ };
542
+ readonly multiple_faces: {
543
+ readonly code: "multiple_faces";
544
+ readonly msg: {
545
+ readonly en: "Multiple faces detected";
546
+ readonly vi: "Phát hiện nhiều khuôn mặt trong khung hình";
547
+ readonly 'es-mx': "Mas de una cara detectada";
548
+ };
549
+ };
550
+ readonly face_too_small: {
551
+ readonly code: "face_too_small";
552
+ readonly msg: {
553
+ readonly en: "Please move your face closer to the camera";
554
+ readonly vi: "Vui lòng đưa mặt lại gần camera hơn";
555
+ readonly 'es-mx': "Por favor, acerque su rostro a la camara";
556
+ };
557
+ };
558
+ readonly face_too_large: {
559
+ readonly code: "face_too_large";
560
+ readonly msg: {
561
+ readonly en: "Please move your face further from the camera";
562
+ readonly vi: "Vui lòng đưa mặt ra xa camera hơn";
563
+ readonly 'es-mx': "Por favor, aleje su rostro de la camara";
564
+ };
565
+ };
566
+ readonly face_out_of_box: {
567
+ readonly code: "face_out_of_box";
568
+ readonly msg: {
569
+ readonly en: "Please fit your face completely in frame";
570
+ readonly vi: "Vui lòng đặt trọn vẹn khuôn mặt vào trong khung hình";
571
+ readonly 'es-mx': "Por favor, ajuste su cara completamente al marco.";
572
+ };
573
+ };
574
+ readonly liveness_too_fast: {
575
+ readonly code: "liveness_too_fast";
576
+ readonly msg: {
577
+ readonly en: "Please turn your head more slowly";
578
+ readonly vi: "Vui lòng xoay khuôn mặt chậm hơn";
579
+ readonly 'es-mx': "Por favor, gira la cabeza más lentamente";
580
+ };
581
+ };
582
+ readonly liveness_terminated: {
583
+ readonly code: "liveness_terminated";
584
+ readonly msg: {
585
+ readonly en: "Please try again.";
586
+ readonly vi: "Vui lòng thực hiện lại.";
587
+ readonly 'es-mx': "Por favor, intente de nuevo";
588
+ };
589
+ };
590
+ readonly liveness_terminated_face_tracking: {
591
+ readonly code: "liveness_terminated_face_tracking";
592
+ readonly msg: {
593
+ readonly en: "You need to turn your face SLOWLY.\nPlease try again.";
594
+ readonly vi: "Bạn cần quay CHẬM lại.\nVui lòng thực hiện lại.";
595
+ readonly 'es-mx': "Necesita girar su cara lentamente\nPor favor, intente de nuevo";
596
+ };
597
+ };
598
+ readonly liveness_terminated_no_face: {
599
+ readonly code: "liveness_terminated_no_face";
600
+ readonly msg: {
601
+ readonly en: "Your face was missing for too long.\nPlease try again.";
602
+ readonly vi: "Khuôn mặt không nằm trong khung hình.\nXin vui lòng thử lại.";
603
+ readonly 'es-mx': "Su cara no aparecio por mucho tiempo\nPor favor, intente de nuevo";
604
+ };
605
+ };
606
+ readonly liveness_terminated_time_out: {
607
+ readonly code: "liveness_terminated_time_out";
608
+ readonly msg: {
609
+ readonly en: "You need to complete within <%= x %> seconds.\nPlease try again";
610
+ readonly vi: "Bạn cần hoàn thành trong <%= x %> giây.\nXin vui lòng thử lại";
611
+ readonly 'es-mx': "Necesita completar el proceso entre <%= x %> segundos.\nPor favor, intente de nuevo";
612
+ };
613
+ };
614
+ readonly liveness_blurry: {
615
+ readonly code: "liveness_blurry";
616
+ readonly msg: {
617
+ readonly en: "Image is too blurry. Please ensure your face is in focus.";
618
+ readonly vi: "Hình ảnh bị mờ. Vui lòng đảm bảo khuôn mặt của bạn rõ nét.";
619
+ readonly 'es-mx': "La imagen está borrosa.\nMejore la iluminación y estabilice su dispositivo";
620
+ };
621
+ };
622
+ readonly card_sanity_not_good: {
623
+ readonly code: "card_sanity_not_good";
624
+ readonly msg: {
625
+ readonly en: "Card sanity not good";
626
+ readonly vi: "Card sanity chưa đạt";
627
+ readonly 'es-mx': "La calidad de la imagen de la tarjeta no es buena";
628
+ };
629
+ };
630
+ readonly id_detector_validate_angle_error: {
631
+ readonly code: "id_detector_validate_angle_error";
632
+ readonly msg: {
633
+ readonly en: "Please place ID card straight, not tilted";
634
+ readonly vi: "Vui lòng đặt giấy tờ thẳng, không bị nghiêng khi chụp";
635
+ readonly 'es-mx': "Sostenga la identificación plana y mirando hacia la cámara";
636
+ };
637
+ };
638
+ readonly client_web_setting_not_found: {
639
+ readonly code: "client_web_setting_not_found";
640
+ readonly msg: "Client Web Setting Not Found";
641
+ };
642
+ readonly id_detector_no_cards: {
643
+ readonly code: "id_detector_no_cards";
644
+ readonly msg: {
645
+ readonly en: "Please place the <%= side %> of your ID card\nfully inside the frame";
646
+ readonly vi: "Vui lòng đặt toàn bộ mặt <%= side %> GTTT\nvào khung hình";
647
+ readonly 'es-mx': "Mantenga el <%= side %> de su identificacion completamente dentro del marco.";
648
+ };
649
+ };
650
+ readonly id_detector_card_too_small: {
651
+ readonly code: "id_detector_card_too_small";
652
+ readonly msg: {
653
+ readonly en: "Please move ID card CLOSER\n (occupy 50-95% of the frame)";
654
+ readonly vi: "Vui lòng đưa giấy tờ lại GẦN hơn\n (chiếm 50-95% khung hình)";
655
+ readonly 'es-mx': "Por favor, acerque la identificación";
656
+ };
657
+ };
658
+ readonly id_detector_error_incomplete: {
659
+ readonly code: "id_detector_error_incomplete";
660
+ readonly msg: {
661
+ readonly en: "Please move ID card FARTHER\n (occupy 50-95% of the frame)";
662
+ readonly vi: "Vui lòng đưa giấy tờ ra XA hơn\n (chiếm 50-95% khung hình)";
663
+ readonly 'es-mx': "Por favor, coloque la identificación completamente en el marco";
664
+ };
665
+ };
666
+ readonly glare_detected: {
667
+ readonly code: "glare_detected";
668
+ readonly msg: {
669
+ readonly en: "Glare is detected. Please adjust the shooting angle";
670
+ readonly vi: "Ảnh bị chói / lóa. Vui lòng điều chỉnh góc chụp.";
671
+ readonly 'es-mx': "Se detectó deslumbramiento.\nIntente inclinar la tarjeta o cambiar el ángulo";
672
+ };
673
+ };
674
+ readonly id_detector_error_front_side_no_faces: {
675
+ readonly code: "id_detector_error_front_side_no_faces";
676
+ readonly msg: {
677
+ readonly en: "Please capture the front side of ID card";
678
+ readonly vi: "Vui lòng chụp mặt trước của giấy tờ";
679
+ readonly 'es-mx': "Por favor, capture el frente de la identificación";
680
+ };
681
+ };
682
+ readonly id_detector_error_front_side_multiple_faces: {
683
+ readonly code: "id_detector_error_front_side_multiple_faces";
684
+ readonly msg: {
685
+ readonly en: "Please capture the front side of one ID card only (remove other items out of the frame)";
686
+ readonly vi: "Vui lòng chụp mặt trước 1 giấy tờ duy nhất";
687
+ readonly 'es-mx': "Por favor, asegúrese de que solo haya una identificación dentro del marco";
688
+ };
689
+ };
690
+ readonly id_detector_error_back_side_has_faces: {
691
+ readonly code: "id_detector_error_back_side_has_faces";
692
+ readonly msg: {
693
+ readonly en: "Please capture the back side of ID card";
694
+ readonly vi: "Vui lòng chụp mặt sau của giấy tờ";
695
+ readonly 'es-mx': "Por favor, capture el reverso de la identificación";
696
+ };
697
+ };
698
+ readonly id_detector_error_blur: {
699
+ readonly code: "id_detector_error_blur";
700
+ readonly msg: {
701
+ readonly en: "Blurry photo detected. Please capture again for a clearer image";
702
+ readonly vi: "Ảnh bị mờ. Vui lòng chụp lại để có ảnh rõ nét hơn";
703
+ readonly 'es-mx': "Foto borrosa, capture de nuevo para una mejor imagen";
704
+ };
705
+ };
706
+ readonly id_detector_error_blurry: {
707
+ readonly code: "id_detector_error_blurry";
708
+ readonly msg: {
709
+ readonly en: "The image is blurry";
710
+ readonly vi: "Ảnh bị mờ, không đọc được chữ";
711
+ readonly 'es-mx': "La imagen está borrosa.\nMejore la iluminación y estabilice su dispositivo";
712
+ };
713
+ };
714
+ readonly not_allowed_card_types: {
715
+ readonly code: "not_allowed_card_types";
716
+ readonly msg: {
717
+ readonly en: "Please use the required ID cards";
718
+ readonly vi: "Vui lòng sử dụng GTTT được yêu cầu";
719
+ readonly 'es-mx': "Por favor, utilice la identificación requerida";
720
+ };
721
+ };
722
+ readonly not_frontal_face: {
723
+ readonly code: "not_frontal_face";
724
+ readonly msg: {
725
+ readonly en: "Please look straight to camera.";
726
+ readonly vi: "Vui lòng nhìn thẳng vào camera.";
727
+ readonly 'es-mx': "Por favor, mira directamente a la cámara";
728
+ };
729
+ };
730
+ readonly close_eye: {
731
+ readonly code: "close_eye";
732
+ readonly msg: {
733
+ readonly vi: "Vui lòng mở to mắt";
734
+ readonly en: "Open your eyes clearly";
735
+ readonly 'es-mx': "Por favor, abre bien los ojos";
736
+ };
737
+ };
738
+ readonly not_supported: {
739
+ readonly code: "not_supported";
740
+ readonly msg: {
741
+ readonly en: "Camera is not well-supported on this device/browser. Please try another one.";
742
+ readonly vi: "Camera không được hỗ trợ. Vui lòng thử trình duyệt hoặc thiết bị khác.";
743
+ };
744
+ };
745
+ readonly camera_timeout: {
746
+ readonly code: "camera_timeout";
747
+ readonly msg: {
748
+ readonly en: "Can't access camera. Please check camera permission, try again or try another browser/device";
749
+ readonly vi: "Không thể truy cập camera. Vui lòng kiểm tra quyền truy cập camera, đóng các tab/app khác đang sử dụng camera hoặc thử lại trên trình duyệt/thiết bị khác.";
750
+ };
751
+ };
752
+ readonly unable_to_load_model: {
753
+ readonly code: "unable_to_load_model";
754
+ readonly msg: {
755
+ readonly en: "Unable to load model on this device/browser. Please try another one.";
756
+ readonly vi: "Không thể load model. Vui lòng thử trình duyệt hoặc thiết bị khác.";
757
+ };
758
+ };
759
+ readonly no_permission: {
760
+ readonly code: "no_permission";
761
+ readonly msg: {
762
+ readonly en: "Please grant the permission to access the camera.";
763
+ readonly vi: "Vui lòng cấp quyền để truy cập camera.";
764
+ };
765
+ };
766
+ readonly api_call_error: {
767
+ readonly code: "api_call_error";
768
+ readonly msg: {
769
+ readonly en: "Api call error";
770
+ readonly vi: "Lỗi call api";
771
+ };
772
+ };
773
+ readonly upload_error: {
774
+ readonly code: "upload_error";
775
+ readonly msg: {
776
+ readonly en: "Upload error";
777
+ readonly vi: "Lỗi upload";
778
+ };
779
+ };
780
+ readonly sanity_check_error: {
781
+ readonly code: "sanity_check_error";
782
+ readonly msg: {
783
+ readonly en: "Sanity check error";
784
+ readonly vi: "Lỗi check sanity";
785
+ };
786
+ };
787
+ readonly read_id_card_error: {
788
+ readonly code: "read_id_card_error";
789
+ readonly msg: {
790
+ readonly en: "Read id card error";
791
+ readonly vi: "Lỗi read id card";
792
+ };
793
+ };
794
+ readonly detect_id_tampering_error: {
795
+ readonly code: "detect_id_tampering_error";
796
+ readonly msg: {
797
+ readonly en: "Detect id tampering error";
798
+ readonly vi: "Lỗi detect id tampering";
799
+ };
800
+ };
801
+ readonly detect_id_card_error: {
802
+ readonly code: "detect_id_card_error";
803
+ readonly msg: {
804
+ readonly en: "Can't detect id card type";
805
+ readonly vi: "Không thể detect id card type";
806
+ };
807
+ };
808
+ readonly missing_front_id_card: {
809
+ readonly code: "missing_front_id_card";
810
+ readonly msg: {
811
+ readonly en: "Missing front id";
812
+ readonly vi: "Không tìm thấy front id";
813
+ };
814
+ };
815
+ readonly server_error: {
816
+ readonly code: "server_error";
817
+ readonly msg: "Server error";
818
+ };
819
+ readonly not_readable: {
820
+ readonly code: "CameraInUseError";
821
+ readonly msg: {
822
+ readonly vi: "Camera đang được sử dụng bởi ứng dụng/tab khác.";
823
+ readonly en: "Camera already in use by another app/tab.";
824
+ };
825
+ };
826
+ readonly invalid_card_type_config: {
827
+ readonly code: "invalid_card_type_config";
828
+ readonly msg: {
829
+ readonly en: "Invalid card type config";
830
+ readonly vi: "Cấu hình loại thẻ không hợp lệ";
831
+ };
832
+ };
833
+ readonly max_retry_reached: {
834
+ readonly code: "max_retry_reached";
835
+ readonly msg: {
836
+ readonly vi: "Đã quá số lần thử";
837
+ readonly en: "Maximum retries reached";
838
+ };
839
+ };
840
+ readonly sdk_timeout_reached: {
841
+ readonly code: "sdk_timeout_reached";
842
+ readonly msg: {
843
+ readonly vi: "Đã quá thời gian thực hiện";
844
+ readonly en: "SDK timeout reached";
845
+ };
846
+ };
847
+ readonly flashing_color_error: {
848
+ readonly code: "flashing_color_error";
849
+ readonly msg: {
850
+ readonly en: "Flashing color error";
851
+ readonly vi: "Lỗi flashing color";
852
+ };
853
+ };
854
+ };
855
+
856
+ declare const FaceDirection: {
857
+ readonly FRONTAL: "frontal";
858
+ readonly LEFT: "left";
859
+ readonly RIGHT: "right";
860
+ readonly UP: "up";
861
+ readonly DOWN: "down";
862
+ };
863
+ declare const FaceAuthenticationMode: {
864
+ readonly REGISTRATION: "registration";
865
+ readonly AUTHENTICATION: "authentication";
866
+ };
867
+ declare const FaceAuthMethod: {
868
+ readonly STANDARD_AUTHEN: "passive";
869
+ readonly ADVANCED_AUTHEN_ACTIVE: "active";
870
+ readonly EDGE_AUTHEN: "flash_edge";
871
+ readonly ADVANCED_AUTHEN_FLASH: "flash_advanced";
872
+ readonly LIGHT_AUTHEN: "light";
873
+ readonly FLASH_8: "flash_8";
874
+ readonly FLASH_16: "flash_16";
875
+ readonly FLASH_32: "flash_32";
876
+ readonly PASSIVE_V2: "passive_v2";
877
+ };
878
+
879
+ declare const Mode: {
880
+ readonly ACTIVE: "active";
881
+ readonly PASSIVE: "passive";
882
+ readonly PASSIVE_V2: "passive_v2";
883
+ readonly FLASH: "flash";
884
+ readonly FLASH_EDGE: "flash_edge";
885
+ readonly FLASH_ADVANCED: "flash_advanced";
886
+ readonly FLASH_8: "flash_8";
887
+ readonly FLASH_16: "flash_16";
888
+ readonly FLASH_32: "flash_32";
889
+ };
890
+ declare const Messages: {
891
+ readonly REMAIN_TIME: {
892
+ readonly en: "Remaining: <%= x %> second(s)";
893
+ readonly vi: "Còn lại: <%= x %> giây";
894
+ readonly 'es-mx': "Restante: <%= x %> segundos";
895
+ };
896
+ };
897
+ declare const TrackLivenessEvents: {
898
+ readonly start_camera: "user_activity.start";
899
+ readonly show_warmup: "user_activity.show";
900
+ readonly capture_up_face: "user_activity.up";
901
+ readonly capture_left_face: "user_activity.left";
902
+ readonly capture_right_face: "user_activity.right";
903
+ readonly capture_frontal_face: "user_activity.frontal";
904
+ readonly finish_capture: "user_activity";
905
+ readonly finish_load_model: "sdk.load_model";
906
+ readonly show_alert: "sdk_ui.show_alert";
907
+ readonly liveness_detection_done: "sdk_mode.liveness";
908
+ };
909
+
910
+ declare const IDCardSide: {
911
+ readonly FRONT: "front";
912
+ readonly BACK: "back";
913
+ };
914
+ declare const IDCardType: {
915
+ readonly VN: "vn.national_id";
916
+ };
917
+ declare const IDCardMessage: {
918
+ readonly REMAINING_TIME: {
919
+ readonly en: "Remaining: <%= x %> second(s)";
920
+ readonly vi: "Còn lại: <%= x %> giây";
921
+ };
922
+ readonly TIMEOUT_INSTRUCTION: {
923
+ readonly en: "You need to take the picture within <%= x %> seconds.\nPlease try again.";
924
+ readonly vi: "Bạn cần hoàn thành việc chụp giấy tờ trong <%= x %> giây.\nVui lòng thử lại.";
925
+ };
926
+ };
927
+
928
+ declare const EkycFlow: {
929
+ readonly FULL_FLOW: "FULL_FLOW";
930
+ readonly ID_CARD: "ID_CARD";
931
+ readonly FACE: "FACE";
932
+ };
933
+
934
+ declare const IdCardModelName: {
935
+ readonly model_vn: "model_vn";
936
+ readonly model_ph: "model_ph";
937
+ readonly model_vn_1: "model_vn_1";
938
+ };
939
+
940
+ type CardBboxes = {
941
+ lapType: 'small' | 'large';
942
+ bboxes: [number, number, number, number][];
943
+ };
944
+ declare const RESIZE_IMAGE_WIDTH = 856;
945
+ declare const RESIZE_IMAGE_HEIGHT = 540;
946
+ declare const VnCardsBboxes: Record<string, CardBboxes[]>;
947
+
948
+ type CardType = {
949
+ back_qr: {
950
+ exist: boolean;
951
+ };
952
+ code: string;
953
+ front_qr: {
954
+ exist: boolean;
955
+ };
956
+ has_back_side: boolean;
957
+ front_face: {
958
+ exist: boolean;
959
+ };
960
+ back_face: {
961
+ exist: boolean;
962
+ };
963
+ name: string;
964
+ orientation: 'horizontal' | 'vertical';
965
+ };
966
+ declare const CardTypes: {
967
+ VnNationalID: CardType;
968
+ VnCMND: CardType;
969
+ VnCMNDNew: CardType;
970
+ VnCCCD: CardType;
971
+ VnCCCDNew: CardType;
972
+ VnPassport: CardType;
973
+ VnTCC: CardType;
974
+ PhNationalID: CardType;
975
+ PhNID: CardType;
976
+ VietnameseCards: CardType[];
977
+ PhilippinesCards: CardType[];
978
+ };
979
+ declare function convertStringToCardType(code: string): CardType;
980
+
981
+ declare const DesignToken: {
982
+ readonly Color: {
983
+ readonly base: {
984
+ readonly white: "#FFFFFF";
985
+ readonly blue: "#0276F1";
986
+ readonly black: "#0F172A";
987
+ };
988
+ readonly blue: {
989
+ readonly 900: "#0276F1";
990
+ readonly 800: "#1B84F2";
991
+ readonly 700: "#3591F4";
992
+ readonly 600: "#4E9FF5";
993
+ readonly 500: "#67ADF7";
994
+ readonly 400: "#81BBF8";
995
+ readonly 300: "#9AC8F9";
996
+ readonly 200: "#B3D6FB";
997
+ readonly 100: "#CCE4FC";
998
+ readonly 50: "#E6F1FE";
999
+ };
1000
+ readonly neutral: {
1001
+ readonly 900: "#0F172A";
1002
+ readonly 800: "#1E293B";
1003
+ readonly 700: "#334155";
1004
+ readonly 600: "#475569";
1005
+ readonly 500: "#64748B";
1006
+ readonly 400: "#94A3B8";
1007
+ readonly 300: "#CBD5E1";
1008
+ readonly 200: "#E2E8F0";
1009
+ readonly 100: "#F1F5F9";
1010
+ readonly 50: "#F2F6FA";
1011
+ };
1012
+ readonly semantic: {
1013
+ readonly info: {
1014
+ readonly 500: "#1A91DC";
1015
+ readonly 400: "#41A4E9";
1016
+ readonly 300: "#7EC3F2";
1017
+ readonly 200: "#BCE0F8";
1018
+ readonly 100: "#E8F4FC";
1019
+ };
1020
+ readonly error: {
1021
+ readonly 500: "#C00000";
1022
+ readonly 400: "#E84848";
1023
+ readonly 300: "#F38B8B";
1024
+ readonly 200: "#F8C1C1";
1025
+ readonly 100: "#FCE8E8";
1026
+ };
1027
+ readonly success: {
1028
+ readonly 500: "#008A55";
1029
+ readonly 400: "#33B179";
1030
+ readonly 300: "#7FD4A7";
1031
+ readonly 200: "#C2EDD6";
1032
+ readonly 100: "#E6F6ED";
1033
+ };
1034
+ readonly warning: {
1035
+ readonly 500: "#FF9900";
1036
+ readonly 400: "#FFB84D";
1037
+ readonly 300: "#FFD280";
1038
+ readonly 200: "#FFE7B3";
1039
+ readonly 100: "#FFF6E0";
1040
+ };
1041
+ };
1042
+ readonly background: {
1043
+ readonly primary: "#FFFFFF";
1044
+ readonly secondary: "#F8FAFC";
1045
+ readonly tertiary: "#E0E6ED";
1046
+ readonly disable: "#CBD5E1";
1047
+ };
1048
+ readonly mask: {
1049
+ readonly 70: "rgba(10, 10, 10, 0.7)";
1050
+ readonly 50: "rgba(10, 10, 10, 0.5)";
1051
+ readonly 30: "rgba(10, 10, 10, 0.3)";
1052
+ };
1053
+ readonly content: {
1054
+ readonly primary: "#020617";
1055
+ readonly secondary: "#475569";
1056
+ readonly tertiary: "#64748B";
1057
+ readonly 'on-bg-color': "#FFFFFF";
1058
+ readonly 'on-bg-color-primary': "#FFFFFF";
1059
+ readonly 'on-bg-color-secondary': "rgba(255, 255, 255, 0.6)";
1060
+ readonly 'on-bg-color-tertiary': "rgba(255, 255, 255, 0.4)";
1061
+ };
1062
+ readonly separators: {
1063
+ readonly primary: "#94A3B8";
1064
+ readonly secondary: "#CBD5E1";
1065
+ readonly tertiary: "#E2E8F0";
1066
+ };
1067
+ };
1068
+ readonly Spacing: {
1069
+ readonly '3xs': "2px";
1070
+ readonly '2xs': "4px";
1071
+ readonly xs: "8px";
1072
+ readonly sm: "12px";
1073
+ readonly base: "16px";
1074
+ readonly lg: "20px";
1075
+ readonly xl: "24px";
1076
+ readonly '2xl': "32px";
1077
+ readonly '3xl': "40px";
1078
+ readonly '4xl': "48px";
1079
+ readonly '5xl': "56px";
1080
+ readonly '6xl': "64px";
1081
+ readonly '7xl': "72px";
1082
+ readonly '8xl': "80px";
1083
+ };
1084
+ readonly FontSize: {
1085
+ readonly '5xl': "32px";
1086
+ readonly '4xl': "28px";
1087
+ readonly '3xl': "26px";
1088
+ readonly '2xl': "24px";
1089
+ readonly xl: "20px";
1090
+ readonly lg: "18px";
1091
+ readonly base: "16px";
1092
+ readonly sm: "14px";
1093
+ readonly xs: "12px";
1094
+ };
1095
+ readonly FontWeight: {
1096
+ readonly 'semi-bold': 600;
1097
+ readonly medium: 500;
1098
+ readonly regular: 400;
1099
+ };
1100
+ readonly LineHeight: {
1101
+ readonly '5xl': "38px";
1102
+ readonly '4xl': "34px";
1103
+ readonly '3xl': "31px";
1104
+ readonly '2xl': "29px";
1105
+ readonly xl: "24px";
1106
+ readonly lg: "25px";
1107
+ readonly base: "22px";
1108
+ readonly sm: "20px";
1109
+ readonly xs: "17px";
1110
+ };
1111
+ readonly FontFamily: {
1112
+ readonly inter: "Inter";
1113
+ };
1114
+ readonly LetterSpacing: {
1115
+ readonly xl: "-1.6px";
1116
+ readonly lg: "-1.2px";
1117
+ readonly md: "-0.8px";
1118
+ readonly sm: "-0.4px";
1119
+ readonly none: "0px";
1120
+ };
1121
+ readonly CornerRadius: {
1122
+ readonly '4xs': "2px";
1123
+ readonly '3xs': "4px";
1124
+ readonly '2xs': "6px";
1125
+ readonly xs: "8px";
1126
+ readonly sm: "12px";
1127
+ readonly base: "16px";
1128
+ readonly lg: "24px";
1129
+ readonly xl: "32px";
1130
+ readonly '2xl': "40px";
1131
+ readonly '3xl': "48px";
1132
+ readonly full: "9999px";
1133
+ };
1134
+ readonly BorderWidth: {
1135
+ readonly sm: "0.5px";
1136
+ readonly base: "1px";
1137
+ readonly lg: "1.5px";
1138
+ readonly xl: "2px";
1139
+ readonly '2xl': "2.5px";
1140
+ readonly '3xl': "3px";
1141
+ readonly '4xl': "3.5px";
1142
+ readonly '5xl': "4px";
1143
+ };
1144
+ readonly Typography: {
1145
+ readonly h1: {
1146
+ readonly fontFamily: "Inter";
1147
+ readonly fontSize: "32px";
1148
+ readonly lineHeight: "38px";
1149
+ readonly fontWeight: 600;
1150
+ readonly letterSpacing: "-0.4px";
1151
+ };
1152
+ readonly h2: {
1153
+ readonly fontFamily: "Inter";
1154
+ readonly fontSize: "28px";
1155
+ readonly lineHeight: "34px";
1156
+ readonly fontWeight: 600;
1157
+ readonly letterSpacing: "-0.4px";
1158
+ };
1159
+ readonly h3: {
1160
+ readonly fontFamily: "Inter";
1161
+ readonly fontSize: "26px";
1162
+ readonly lineHeight: "31px";
1163
+ readonly fontWeight: 600;
1164
+ readonly letterSpacing: "-0.4px";
1165
+ };
1166
+ readonly h4: {
1167
+ readonly fontFamily: "Inter";
1168
+ readonly fontSize: "24px";
1169
+ readonly lineHeight: "29px";
1170
+ readonly fontWeight: 600;
1171
+ readonly letterSpacing: "-0.4px";
1172
+ };
1173
+ readonly h5: {
1174
+ readonly fontFamily: "Inter";
1175
+ readonly fontSize: "20px";
1176
+ readonly lineHeight: "24px";
1177
+ readonly fontWeight: 500;
1178
+ readonly letterSpacing: "-0.4px";
1179
+ };
1180
+ readonly h6: {
1181
+ readonly fontFamily: "Inter";
1182
+ readonly fontSize: "18px";
1183
+ readonly lineHeight: "25px";
1184
+ readonly fontWeight: 400;
1185
+ readonly letterSpacing: "-0.4px";
1186
+ };
1187
+ readonly body: {
1188
+ readonly fontFamily: "Inter";
1189
+ readonly fontSize: "16px";
1190
+ readonly lineHeight: "22px";
1191
+ readonly fontWeight: 400;
1192
+ readonly letterSpacing: "0px";
1193
+ };
1194
+ readonly label: {
1195
+ readonly fontFamily: "Inter";
1196
+ readonly fontSize: "14px";
1197
+ readonly lineHeight: "20px";
1198
+ readonly fontWeight: 400;
1199
+ readonly letterSpacing: "0px";
1200
+ };
1201
+ readonly caption: {
1202
+ readonly fontFamily: "Inter";
1203
+ readonly fontSize: "12px";
1204
+ readonly lineHeight: "17px";
1205
+ readonly fontWeight: 400;
1206
+ readonly letterSpacing: "0px";
1207
+ };
1208
+ };
1209
+ readonly UIText: {
1210
+ readonly large: {
1211
+ readonly fontFamily: "Inter";
1212
+ readonly fontSize: "18px";
1213
+ readonly fontWeight: 400;
1214
+ readonly letterSpacing: "0px";
1215
+ readonly lineHeight: "25px";
1216
+ };
1217
+ readonly largeStrong: {
1218
+ readonly fontFamily: "Inter";
1219
+ readonly fontSize: "18px";
1220
+ readonly fontWeight: 500;
1221
+ readonly letterSpacing: "0px";
1222
+ readonly lineHeight: "25px";
1223
+ };
1224
+ readonly medium: {
1225
+ readonly fontFamily: "Inter";
1226
+ readonly fontSize: "16px";
1227
+ readonly fontWeight: 400;
1228
+ readonly letterSpacing: "0px";
1229
+ readonly lineHeight: "22px";
1230
+ };
1231
+ readonly mediumStrong: {
1232
+ readonly fontFamily: "Inter";
1233
+ readonly fontSize: "16px";
1234
+ readonly fontWeight: 500;
1235
+ readonly letterSpacing: "0px";
1236
+ readonly lineHeight: "22px";
1237
+ };
1238
+ readonly small: {
1239
+ readonly fontFamily: "Inter";
1240
+ readonly fontSize: "14px";
1241
+ readonly fontWeight: 400;
1242
+ readonly letterSpacing: "0px";
1243
+ readonly lineHeight: "20px";
1244
+ };
1245
+ readonly smallStrong: {
1246
+ readonly fontFamily: "Inter";
1247
+ readonly fontSize: "14px";
1248
+ readonly fontWeight: 500;
1249
+ readonly letterSpacing: "0px";
1250
+ readonly lineHeight: "20px";
1251
+ };
1252
+ };
1253
+ readonly Height: {
1254
+ readonly xs: "8px";
1255
+ readonly sm: "16px";
1256
+ readonly md: "20px";
1257
+ readonly lg: "24px";
1258
+ readonly xl: "32px";
1259
+ readonly '2xl': "40px";
1260
+ readonly '3xl': "48px";
1261
+ readonly '4xl': "56px";
1262
+ readonly '5xl': "64px";
1263
+ readonly '6xl': "72px";
1264
+ readonly '7xl': "80px";
1265
+ };
1266
+ };
1267
+
1268
+ declare const BillingService: {
1269
+ readonly selfie: "selfie";
1270
+ readonly qr: "qr";
1271
+ readonly idCard: "id";
1272
+ readonly faceAuth: "face_auth";
1273
+ };
1274
+ declare const ErrorsWithoutBilling: readonly ["not_supported", "camera_timeout", "unable_to_load_model", "no_permission"];
1275
+ declare const BillingStatus: {
1276
+ readonly success: "success";
1277
+ readonly fail: "fail";
1278
+ readonly cancel: "cancel";
1279
+ };
1280
+
1281
+ declare const index$1_AlertErrors: typeof AlertErrors;
1282
+ declare const index$1_BillingErrors: typeof BillingErrors;
1283
+ declare const index$1_BillingService: typeof BillingService;
1284
+ declare const index$1_BillingStatus: typeof BillingStatus;
1285
+ type index$1_CardType = CardType;
1286
+ declare const index$1_CardTypes: typeof CardTypes;
1287
+ declare const index$1_DesignToken: typeof DesignToken;
1288
+ declare const index$1_EkycFlow: typeof EkycFlow;
1289
+ declare const index$1_ErrorDuration: typeof ErrorDuration;
1290
+ declare const index$1_Errors: typeof Errors;
1291
+ declare const index$1_ErrorsWithoutBilling: typeof ErrorsWithoutBilling;
1292
+ declare const index$1_FaceAuthMethod: typeof FaceAuthMethod;
1293
+ declare const index$1_FaceAuthenticationMode: typeof FaceAuthenticationMode;
1294
+ declare const index$1_FaceDirection: typeof FaceDirection;
1295
+ declare const index$1_IDCardMessage: typeof IDCardMessage;
1296
+ declare const index$1_IDCardSide: typeof IDCardSide;
1297
+ declare const index$1_IDCardType: typeof IDCardType;
1298
+ declare const index$1_IdCardModelName: typeof IdCardModelName;
1299
+ declare const index$1_LicenseErrors: typeof LicenseErrors;
1300
+ declare const index$1_Messages: typeof Messages;
1301
+ declare const index$1_Mode: typeof Mode;
1302
+ declare const index$1_RESIZE_IMAGE_HEIGHT: typeof RESIZE_IMAGE_HEIGHT;
1303
+ declare const index$1_RESIZE_IMAGE_WIDTH: typeof RESIZE_IMAGE_WIDTH;
1304
+ declare const index$1_TrackLivenessEvents: typeof TrackLivenessEvents;
1305
+ declare const index$1_VnCardsBboxes: typeof VnCardsBboxes;
1306
+ declare const index$1_convertStringToCardType: typeof convertStringToCardType;
1307
+ declare namespace index$1 {
1308
+ export { index$1_AlertErrors as AlertErrors, index$1_BillingErrors as BillingErrors, index$1_BillingService as BillingService, index$1_BillingStatus as BillingStatus, index$1_CardTypes as CardTypes, index$1_DesignToken as DesignToken, index$1_EkycFlow as EkycFlow, index$1_ErrorDuration as ErrorDuration, index$1_Errors as Errors, index$1_ErrorsWithoutBilling as ErrorsWithoutBilling, index$1_FaceAuthMethod as FaceAuthMethod, index$1_FaceAuthenticationMode as FaceAuthenticationMode, index$1_FaceDirection as FaceDirection, index$1_IDCardMessage as IDCardMessage, index$1_IDCardSide as IDCardSide, index$1_IDCardType as IDCardType, index$1_IdCardModelName as IdCardModelName, index$1_LicenseErrors as LicenseErrors, index$1_Messages as Messages, index$1_Mode as Mode, index$1_RESIZE_IMAGE_HEIGHT as RESIZE_IMAGE_HEIGHT, index$1_RESIZE_IMAGE_WIDTH as RESIZE_IMAGE_WIDTH, index$1_TrackLivenessEvents as TrackLivenessEvents, index$1_VnCardsBboxes as VnCardsBboxes, index$1_convertStringToCardType as convertStringToCardType };
1309
+ export type { index$1_CardType as CardType };
1310
+ }
1311
+
1312
+ declare const _default: {
1313
+ not_supported: string;
1314
+ camera_timeout: string;
1315
+ wrong_orientation: string;
1316
+ unable_to_load_model: string;
1317
+ no_permission: string;
1318
+ not_readable: string;
1319
+ card_sanity_not_good: string;
1320
+ api_call_error: string;
1321
+ upload_error: string;
1322
+ sanity_check_error: string;
1323
+ read_id_card_error: string;
1324
+ detect_id_tampering_error: string;
1325
+ detect_id_card_error: string;
1326
+ missing_front_id_card: string;
1327
+ server_error: string;
1328
+ client_web_setting_not_found: string;
1329
+ no_face: string;
1330
+ partial_face: string;
1331
+ multiple_faces: string;
1332
+ face_too_small: string;
1333
+ face_too_large: string;
1334
+ face_out_of_box: string;
1335
+ close_eye: string;
1336
+ liveness_too_fast: string;
1337
+ liveness_terminated: string;
1338
+ liveness_terminated_face_tracking: string;
1339
+ liveness_terminated_no_face: string;
1340
+ liveness_terminated_time_out: string;
1341
+ id_detector_validate_angle_error: string;
1342
+ id_detector_no_cards: string;
1343
+ id_detector_front_no_cards: string;
1344
+ id_detector_back_no_cards: string;
1345
+ id_detector_card_too_small: string;
1346
+ id_detector_error_incomplete: string;
1347
+ glare_detected: string;
1348
+ id_detector_error_front_side_no_faces: string;
1349
+ id_detector_error_front_side_multiple_faces: string;
1350
+ id_detector_error_back_side_has_faces: string;
1351
+ id_detector_error_blur: string;
1352
+ id_detector_error_blurry: string;
1353
+ not_frontal_face: string;
1354
+ not_allowed_card_types: string;
1355
+ warmup_intro: string;
1356
+ btn_ok: string;
1357
+ btn_use_this_picture: string;
1358
+ btn_try_again: string;
1359
+ remaining_time: string;
1360
+ front_card_title: string;
1361
+ back_card_title: string;
1362
+ front_card_description: string;
1363
+ back_card_description: string;
1364
+ front: string;
1365
+ back: string;
1366
+ timeout_instruction: string;
1367
+ toggle_id_capture_mode: string;
1368
+ 'id_capture.instruction.hold_still': string;
1369
+ 'id_capture.instruction.capturing_done': string;
1370
+ qr_title: string;
1371
+ qr_instructions_title: string;
1372
+ qr_instructions_text: string;
1373
+ qr_instructions_start_button: string;
1374
+ qr_instructions_countdown: string;
1375
+ confirm_popup_valid_qr: string;
1376
+ confirm_popup_invalid_qr: string;
1377
+ qr_invalid_popup_title: string;
1378
+ qr_invalid_popup_description: string;
1379
+ qr_invalid_popup_retry_button: string;
1380
+ qr_invalid_popup_skip_button: string;
1381
+ qr_tooltip: string;
1382
+ session_timeout_popup_description: string;
1383
+ session_timeout_popup_retry_button: string;
1384
+ session_timeout_popup_skip_button: string;
1385
+ left: string;
1386
+ right: string;
1387
+ up: string;
1388
+ frontal: string;
1389
+ 'flash_liveness.title': string;
1390
+ 'flash_liveness.instruction.far_step': string;
1391
+ 'flash_liveness.instruction.close_step': string;
1392
+ 'flash_liveness.instruction.flash_step': string;
1393
+ 'flash_liveness.error.no_face': string;
1394
+ 'flash_liveness.processing': string;
1395
+ 'flash_liveness.error.partial_face': string;
1396
+ 'flash_liveness.error.face_too_small': string;
1397
+ 'flash_liveness.error.face_too_large': string;
1398
+ 'flash_liveness.error.close_eye': string;
1399
+ 'flash_liveness.error.face_not_frontal': string;
1400
+ 'flash_liveness.error.multiple_faces': string;
1401
+ 'flash_liveness.error.face_too_high': string;
1402
+ 'flash_liveness.error.face_too_blurry': string;
1403
+ 'flash_liveness.error.face_not_qualified': string;
1404
+ 'flash_liveness.timeout.remaining': string;
1405
+ 'flash_liveness.timeout.expired': string;
1406
+ 'flash_liveness.error.face_too_bright': string;
1407
+ 'flash_liveness.error.face_too_dark': string;
1408
+ 'passive_liveness_v2.instruction.hold_still': string;
1409
+ 'passive_liveness_v2.instruction.capturing_done': string;
1410
+ };
1411
+ type Translation = typeof _default;
1412
+ type CustomTexts = Partial<Translation> & {
1413
+ [key: string]: string;
1414
+ };
1415
+ interface BlazefaceModel {
1416
+ load(params?: {
1417
+ modelUrl?: string;
1418
+ }): Promise<any>;
1419
+ }
1420
+ interface TFLite {
1421
+ loadTFLiteModel(data: Uint8Array, options?: Record<string, any>): Promise<any>;
1422
+ }
1423
+ interface TensorFlow {
1424
+ enableProdMode(): Promise<void>;
1425
+ setBackend(backend: string): Promise<void>;
1426
+ ready(): Promise<void>;
1427
+ }
1428
+ declare global {
1429
+ interface Window {
1430
+ tf: TensorFlow;
1431
+ blazeface: BlazefaceModel;
1432
+ tflite: TFLite;
1433
+ tv_model_backend_init?: string[];
1434
+ }
1435
+ }
1436
+
1437
+ type NestedPartial<T> = {
1438
+ [K in keyof T]?: T[K] extends object ? NestedPartial<T[K]> : T[K];
1439
+ };
1440
+ type IdCardModelUrlsWithModelName = Record<keyof typeof IdCardModelName, string>;
1441
+ type TfScriptUrls = {
1442
+ tfUrl: string;
1443
+ tfBackendWasmUrl: string;
1444
+ tfBackendCpuUrl: string;
1445
+ tfBackendWebGlUrl: string;
1446
+ tfLiteUrl: string;
1447
+ blazefaceScriptUrl: string;
1448
+ };
1449
+ type ResourceUrls = {
1450
+ blazefaceModelUrl: string;
1451
+ opencvUrl: string;
1452
+ opencvWasmUrl: string;
1453
+ idCardModelUrl: string;
1454
+ wechatQRModelsUrl: string;
1455
+ closeEyesModelUrl: string;
1456
+ qualifyModelUrl: string;
1457
+ tfScriptUrls: TfScriptUrls;
1458
+ idCardModelUrls: IdCardModelUrlsWithModelName;
1459
+ };
1460
+ /**
1461
+ * Interface for configuring service settings. All properties are optional.
1462
+ */
1463
+ interface ServiceSettings {
1464
+ /** Optionally configures the GetClientSettings service. */
1465
+ enableGetClientSettings?: boolean;
1466
+ /** Optionally configures the UploadFrames service. */
1467
+ enableUploadFrames?: boolean;
1468
+ /** Optionally configures the UploadImages service. */
1469
+ enableUploadImages?: boolean;
1470
+ /** Optionally configures the VerifySanityPortrait service. */
1471
+ enableVerifySanityPortrait?: boolean;
1472
+ /** Optionally configures the VerifySanityIDCard service. */
1473
+ enableVerifySanityIDCard?: boolean;
1474
+ /** Optionally configures the VerifyFaceLiveness service. */
1475
+ enableVerifyFaceLiveness?: boolean;
1476
+ /** Optionally configures the DetectIDCardTampering service. */
1477
+ enableDetectIDCardTampering?: boolean;
1478
+ /** Optionally configures the ReadIDCardInfo service. */
1479
+ enableReadIDCardInfo?: boolean;
1480
+ /** Optionally configures the RegisterFace service. */
1481
+ enableRegisterFace?: boolean;
1482
+ /** Optionally configures the AuthenticateFace service. */
1483
+ enableAuthenticateFace?: boolean;
1484
+ }
1485
+
1486
+ type CustomErrors = {
1487
+ [key: string]: {
1488
+ code: string;
1489
+ msg: {
1490
+ [lang: string]: string;
1491
+ };
1492
+ };
1493
+ };
1494
+
1495
+ type BaseTVWebSDKProps = {
1496
+ container: HTMLElement;
1497
+ lang?: 'vi' | 'en' | 'es-mx';
1498
+ assetRoot?: string;
1499
+ resourceRoot?: string;
1500
+ customUrls?: NestedPartial<ResourceUrls>;
1501
+ enableAntiDebug?: boolean;
1502
+ warmupMessage?: string;
1503
+ baseComponent?: Record<string, any>;
1504
+ component?: Record<string, any>;
1505
+ country?: 'vn' | 'ph';
1506
+ idCardContext?: Record<string, any>;
1507
+ exifKey?: string;
1508
+ themeVersion?: 'v1' | 'v2';
1509
+ enableVoice?: boolean;
1510
+ uiSettings?: Record<string, any>;
1511
+ billingSettings?: Record<string, any> | null;
1512
+ };
1513
+ type DeviceInfo = {
1514
+ id: string | null;
1515
+ udid: string | null;
1516
+ sn: string | null;
1517
+ imei: string | null;
1518
+ manufacturer: string | null;
1519
+ deviceName: string | null;
1520
+ wlanMac: string | null;
1521
+ phoneNumber: string | null;
1522
+ location: {
1523
+ latitude: number | null;
1524
+ longitude: number | null;
1525
+ };
1526
+ };
1527
+ type ReadIDCardResult = {
1528
+ stepNumber: number;
1529
+ cardSide: string;
1530
+ cardType: string;
1531
+ image: {
1532
+ blob: Blob;
1533
+ encrypted?: {
1534
+ hex: string;
1535
+ };
1536
+ };
1537
+ error?: any;
1538
+ qrScannedResult?: {
1539
+ result: string;
1540
+ validateResult: {
1541
+ valid: boolean;
1542
+ };
1543
+ image: {
1544
+ blob: Blob;
1545
+ encrypted?: {
1546
+ hex: string;
1547
+ };
1548
+ };
1549
+ recordedVideos?: [
1550
+ {
1551
+ id: string;
1552
+ frames: [];
1553
+ }
1554
+ ];
1555
+ };
1556
+ recordedVideos?: [
1557
+ {
1558
+ id: string;
1559
+ frames: [];
1560
+ }
1561
+ ];
1562
+ fullVideo?: any;
1563
+ capturingVideo?: any;
1564
+ apiResult?: any;
1565
+ };
1566
+ type OutputEncryptionSettings = {
1567
+ key: string;
1568
+ };
1569
+ type APICredentials = {
1570
+ accessKey: string;
1571
+ secretKey: string;
1572
+ apiUrl: string;
1573
+ fallbackUrls?: string[];
1574
+ };
1575
+ type LogCredentials = APICredentials & {
1576
+ userId?: string;
1577
+ enable?: boolean;
1578
+ logSignature?: {
1579
+ timestamp: string;
1580
+ signature: string;
1581
+ logUrl: string;
1582
+ };
1583
+ };
1584
+ type ErrorObject = {
1585
+ code: string;
1586
+ msg: {
1587
+ [lang: string]: string;
1588
+ };
1589
+ };
1590
+ type FlowId = 'face_authen' | 'onboarding' | (string & {});
1591
+ type ReadIDCardOptions = {
1592
+ clientSettings: Record<string, any>;
1593
+ onError: (error: ErrorObject) => void;
1594
+ steps?: Array<{
1595
+ scannerType: 'id_card' | 'qr_code';
1596
+ cardSide?: 'front' | 'back';
1597
+ title?: string;
1598
+ description?: string;
1599
+ titleIcon?: string;
1600
+ cardType?: string;
1601
+ enableConfirmPopup?: boolean;
1602
+ }>;
1603
+ allowedCardTypes?: Array<string | CardType>;
1604
+ detectIdCard?: () => Promise<{
1605
+ card_label: string;
1606
+ }>;
1607
+ onStepDone?: (result: ReadIDCardResult) => void;
1608
+ outputEncryptionSettings?: OutputEncryptionSettings;
1609
+ logCredentials?: LogCredentials;
1610
+ onClose?: () => void;
1611
+ flipVideoHorizontal?: boolean;
1612
+ customTexts?: CustomTexts;
1613
+ customErrors?: CustomErrors;
1614
+ };
1615
+ type ReadIDCardWithApiCallOptions = Omit<ReadIDCardOptions, 'clientSettings'> & {
1616
+ apiCredentials: APICredentials;
1617
+ serviceSettings?: ServiceSettings;
1618
+ flowId?: FlowId;
1619
+ clientSettings?: Record<string, any>;
1620
+ };
1621
+ type LivenessDetectionDoneResult = {
1622
+ steps: Array<{
1623
+ name: string;
1624
+ image: {
1625
+ blob: Blob;
1626
+ encrypted?: {
1627
+ hex: string;
1628
+ };
1629
+ id?: string;
1630
+ };
1631
+ }>;
1632
+ frontalFaces: Array<Blob | {
1633
+ blob: Blob;
1634
+ id: string;
1635
+ }>;
1636
+ frontalFacesEncrypted?: Array<{
1637
+ hex: string;
1638
+ }>;
1639
+ frontalScaledImage?: Blob;
1640
+ capturedFrames: Array<{
1641
+ label: string;
1642
+ base64: string;
1643
+ metadata: string;
1644
+ index: number;
1645
+ }>;
1646
+ video?: Blob;
1647
+ apiCheckPassed?: boolean;
1648
+ verifyFaceLivenessResult?: any;
1649
+ verifyFacePortraitResult?: any;
1650
+ };
1651
+ type Frame = {
1652
+ label: string;
1653
+ base64: string;
1654
+ metadata: string;
1655
+ index: number;
1656
+ };
1657
+ type BaseLivenessDetectionOptions = {
1658
+ mode: typeof Mode[keyof typeof Mode];
1659
+ onLivenessDetectionDone: (result: LivenessDetectionDoneResult) => void;
1660
+ onError: (error: ErrorObject) => void;
1661
+ apiCredentials?: APICredentials;
1662
+ customErrors?: CustomErrors;
1663
+ onProcessing?: () => void;
1664
+ onReset?: () => void;
1665
+ captureFrameSettings?: {
1666
+ enable: boolean;
1667
+ framesIntervalTime: number;
1668
+ framesBatchLength: number;
1669
+ };
1670
+ onFramesCaptured?: (frames: Frame[]) => void;
1671
+ outputEncryptionSettings?: OutputEncryptionSettings;
1672
+ logCredentials?: LogCredentials;
1673
+ customTexts?: CustomTexts;
1674
+ onClose?: () => void;
1675
+ serviceSettings?: ServiceSettings;
1676
+ flowId?: FlowId;
1677
+ extraConfig?: Record<string, any>;
1678
+ };
1679
+ type LivenessDetectionOptions = (BaseLivenessDetectionOptions & {
1680
+ apiCheck: true;
1681
+ clientSettings?: Record<string, any>;
1682
+ }) | (BaseLivenessDetectionOptions & {
1683
+ apiCheck?: false;
1684
+ clientSettings: Record<string, any>;
1685
+ });
1686
+ type FaceImage = {
1687
+ id?: string;
1688
+ base64?: string;
1689
+ blob: Blob;
1690
+ label: string;
1691
+ metadata?: string;
1692
+ encrypted?: string;
1693
+ };
1694
+ type VideoFrame = {
1695
+ index: number;
1696
+ base64: string;
1697
+ label: string;
1698
+ metadata?: string;
1699
+ };
1700
+ type Video = {
1701
+ id?: string;
1702
+ metadata?: string;
1703
+ frames: VideoFrame[];
1704
+ };
1705
+ type GestureFace = {
1706
+ gesture: 'up' | 'left' | 'right' | 'down';
1707
+ images: FaceImage[];
1708
+ };
1709
+ type FaceAuthenticationResult = {
1710
+ customerUserId: string;
1711
+ faces: FaceImage[];
1712
+ videos: Video[];
1713
+ gestureFaces: GestureFace[];
1714
+ selfieType: typeof FaceAuthMethod[keyof typeof FaceAuthMethod];
1715
+ faceType?: 'selfie' | 'id_card' | null;
1716
+ apiResult?: any;
1717
+ };
1718
+ type BaseFaceAuthenticationOptions = {
1719
+ mode: typeof FaceAuthenticationMode[keyof typeof FaceAuthenticationMode];
1720
+ authMethod: typeof FaceAuthMethod[keyof typeof FaceAuthMethod];
1721
+ onDone: (result: FaceAuthenticationResult) => void;
1722
+ onError: (error: ErrorObject) => void;
1723
+ apiCredentials?: APICredentials;
1724
+ customErrors?: CustomErrors;
1725
+ onProcessing?: () => void;
1726
+ onReset?: () => void;
1727
+ captureFrameSettings?: {
1728
+ enable: boolean;
1729
+ framesIntervalTime: number;
1730
+ framesBatchLength: number;
1731
+ };
1732
+ onFramesCaptured?: (frames: Frame[]) => void;
1733
+ outputEncryptionSettings?: OutputEncryptionSettings;
1734
+ logCredentials?: LogCredentials;
1735
+ customTexts?: CustomTexts;
1736
+ onClose?: () => void;
1737
+ serviceSettings?: ServiceSettings;
1738
+ flowId?: FlowId;
1739
+ extraConfig?: Record<string, any>;
1740
+ };
1741
+ type FaceAuthenticationOptions = (BaseFaceAuthenticationOptions & {
1742
+ apiCheck: true;
1743
+ clientSettings?: Record<string, any>;
1744
+ }) | (BaseFaceAuthenticationOptions & {
1745
+ apiCheck?: false;
1746
+ clientSettings: Record<string, any>;
1747
+ });
1748
+
1749
+ declare class BaseTVWebSDK {
1750
+ #private;
1751
+ container: HTMLElement;
1752
+ component: Record<string, any>;
1753
+ commonSettings: Record<string, any>;
1754
+ constructor(constructorProps: BaseTVWebSDKProps);
1755
+ /**
1756
+ * Check the ability to open the camera of the current device.
1757
+ * @deprecated
1758
+ */
1759
+ checkCamera(): any;
1760
+ getListCamera(): Promise<MediaDeviceInfo[]>;
1761
+ getDeviceInfo: () => Promise<DeviceInfo>;
1762
+ initNativeCamera: (props: any) => {
1763
+ openCamera: () => void;
1764
+ };
1765
+ /**
1766
+ *
1767
+ * @deprecated Use `runPreloadEKYCResources` instead
1768
+ */
1769
+ runWarmUpReadIDCard: () => Promise<any>;
1770
+ runPreloadEKYCResources: (onError?: () => void) => Promise<void>;
1771
+ /**
1772
+ * @private
1773
+ */
1774
+ setupBeforeRender: () => void;
1775
+ readIDCardWithApiCall(props: ReadIDCardWithApiCallOptions): void;
1776
+ readIDCardUIOnly(props: ReadIDCardOptions): void;
1777
+ livenessDetection(props: LivenessDetectionOptions): void;
1778
+ ekycFlow(props: any): void;
1779
+ faceAuthentication(props: FaceAuthenticationOptions): void;
1780
+ compareFaces({ accessKey, secretKey, apiUrl, image1, image2, onSuccess, onError }: any): void;
1781
+ destroyView: () => void;
1782
+ closeSDK: () => void;
1783
+ }
1784
+
1785
+ /**
1786
+ * Returns the current SDK version from environment variables
1787
+ * @returns {string | undefined} The SDK version or undefined if not available
1788
+ */
1789
+ declare function getSDKVersion(): string | undefined;
1790
+
1791
+ declare class SDKAdapter {
1792
+ constructor(accessKey?: string, secretKey?: string, apiUrl?: string);
1793
+ apiClient: any;
1794
+ clientSettings(params: any): Promise<any>;
1795
+ uploadImage(params: any): Promise<any>;
1796
+ uploadFiles(params: any, configs?: {}): Promise<any>;
1797
+ requestVerifyIDCard(params: any): Promise<{
1798
+ result: any;
1799
+ } | undefined>;
1800
+ detectIDTampering(params: any): Promise<{
1801
+ result: any;
1802
+ } | undefined>;
1803
+ readIDCard(params: any): Promise<{
1804
+ result: any;
1805
+ } | undefined>;
1806
+ requestVerifyPortrait(params: any): Promise<{
1807
+ result: any;
1808
+ } | undefined>;
1809
+ verifyFaceLiveness(params: any): Promise<{
1810
+ result: any;
1811
+ } | undefined>;
1812
+ compareFaces(params: any): Promise<{
1813
+ result: any;
1814
+ } | undefined>;
1815
+ searchFaces(params: any): Promise<{
1816
+ result: any;
1817
+ } | undefined>;
1818
+ indexFaces(params: any): Promise<{
1819
+ result: any;
1820
+ } | undefined>;
1821
+ }
1822
+
1823
+ declare class TVWebSDK extends BaseTVWebSDK {
1824
+ constructor(props: BaseTVWebSDKProps);
1825
+ livenessDetection(props: LivenessDetectionOptions): void;
1826
+ readIDCardUIOnly(props: ReadIDCardOptions): void;
1827
+ readIDCardWithApiCall(props: ReadIDCardWithApiCallOptions): void;
1828
+ }
1829
+
1830
+ export { index$1 as Constants, TVWebSDK as SDK, SDKAdapter, ScannerType, defaultClientSettings, defaultSteps as defaultReadIDCardSteps, getSDKVersion };