@incodetech/core 2.0.0 → 2.0.1-rc.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.
Files changed (178) hide show
  1. package/dist/Actor-CI32dTbG.d.ts +2 -0
  2. package/dist/BaseWasmProvider-C_DLEI40.esm.js +1118 -0
  3. package/dist/BrowserStorageProvider-CuOW1Er2.esm.js +55 -0
  4. package/dist/BrowserTimerProvider-DhNc_x02.esm.js +22 -0
  5. package/dist/ITimerCapability-C67ZRskg.esm.js +7 -0
  6. package/dist/IpifyProvider-D7jx52AL.esm.js +139 -0
  7. package/dist/Manager-C8PrhBOx.d.ts +19 -0
  8. package/dist/MotionSensorProvider-4v7xkqAp.esm.js +254 -0
  9. package/dist/OpenViduRecordingProvider-CMu6XVdc.esm.js +87 -0
  10. package/dist/StateMachine-BCQrZJhf.d.ts +2 -0
  11. package/dist/WasmUtilProvider-j98OJf-S.esm.js +114 -0
  12. package/dist/addressSearch-BpTbTWCa.esm.js +430 -0
  13. package/dist/ae-signature-DDDZmWXj.esm.js +12 -0
  14. package/dist/ae-signature.d.ts +25 -0
  15. package/dist/ae-signature.esm.js +8 -0
  16. package/dist/antifraud.d.ts +57 -0
  17. package/dist/antifraud.esm.js +45 -0
  18. package/dist/antifraudStateMachine-O0TMf6yc.esm.js +39 -0
  19. package/dist/api-CESGtpbH.esm.js +53 -0
  20. package/dist/authentication.d.ts +12 -0
  21. package/dist/authentication.esm.js +25 -0
  22. package/dist/authenticationManager-5M-fKzXx.esm.js +67 -0
  23. package/dist/authenticationManager-C83GNIhl.d.ts +66 -0
  24. package/dist/authenticationStateMachine-BMZqatiF.esm.js +139 -0
  25. package/dist/backCameraStream-DMdMeGk2.esm.js +346 -0
  26. package/dist/browserSimulation-gxD8cSpM.esm.js +20 -0
  27. package/dist/camera-DBSxa6ML.d.ts +4 -0
  28. package/dist/camera-PA2Ljri3.esm.js +22 -0
  29. package/dist/camera.d.ts +15 -0
  30. package/dist/camera.esm.js +5 -0
  31. package/dist/chunk-CRF6K_H_.esm.js +49 -0
  32. package/dist/consent.d.ts +398 -0
  33. package/dist/consent.esm.js +79 -0
  34. package/dist/consentStateMachine-CCT-B60O.esm.js +151 -0
  35. package/dist/cpf-PPz2Njto.esm.js +38 -0
  36. package/dist/cpf-ocr.d.ts +204 -0
  37. package/dist/cpf-ocr.esm.js +177 -0
  38. package/dist/cross-document-data-match.d.ts +34 -0
  39. package/dist/cross-document-data-match.esm.js +71 -0
  40. package/dist/curp-validation.d.ts +188 -0
  41. package/dist/curp-validation.esm.js +110 -0
  42. package/dist/curpValidationStateMachine-CitWLr2c.esm.js +595 -0
  43. package/dist/custom-fields.d.ts +115 -0
  44. package/dist/custom-fields.esm.js +177 -0
  45. package/dist/custom-watchlist.d.ts +66 -0
  46. package/dist/custom-watchlist.esm.js +86 -0
  47. package/dist/dateUtils-UoN5xswP.esm.js +23 -0
  48. package/dist/deepsightLoader-Cm4JIT_z.esm.js +52 -0
  49. package/dist/deepsightService-CEVxzehb.d.ts +412 -0
  50. package/dist/deepsightService-O74l4Y__.esm.js +489 -0
  51. package/dist/device.d.ts +46 -0
  52. package/dist/device.esm.js +106 -0
  53. package/dist/displayErrors-DqJ_IbsG.d.ts +39 -0
  54. package/dist/document-capture.d.ts +906 -0
  55. package/dist/document-capture.esm.js +156 -0
  56. package/dist/document-upload.d.ts +331 -0
  57. package/dist/document-upload.esm.js +203 -0
  58. package/dist/documentCaptureStateMachine-BqzTDy9k.esm.js +394 -0
  59. package/dist/dynamic-forms.d.ts +178 -0
  60. package/dist/dynamic-forms.esm.js +323 -0
  61. package/dist/ekyb.d.ts +148 -0
  62. package/dist/ekyb.esm.js +127 -0
  63. package/dist/ekybStateMachine-BR2let5f.esm.js +674 -0
  64. package/dist/ekyc.d.ts +164 -0
  65. package/dist/ekyc.esm.js +104 -0
  66. package/dist/ekycStateMachine-oeO0Iekd.esm.js +10626 -0
  67. package/dist/electronic-signature.d.ts +4 -0
  68. package/dist/electronic-signature.esm.js +7 -0
  69. package/dist/electronicSignatureManager-D9OHzTpG.esm.js +428 -0
  70. package/dist/email.d.ts +4 -0
  71. package/dist/email.esm.js +9 -0
  72. package/dist/emailManager-DIfnS5g1.d.ts +352 -0
  73. package/dist/emailManager-wAV0LE-H.esm.js +238 -0
  74. package/dist/emailStateMachine-DOf4j58N.esm.js +292 -0
  75. package/dist/endpoints-CnN3SyDa.esm.js +87 -0
  76. package/dist/events-D6-e4vok.esm.js +596 -0
  77. package/dist/events.d.ts +265 -0
  78. package/dist/events.esm.js +4 -0
  79. package/dist/extensibility.d.ts +122 -0
  80. package/dist/extensibility.esm.js +43 -0
  81. package/dist/face-match.d.ts +228 -0
  82. package/dist/face-match.esm.js +173 -0
  83. package/dist/faceCaptureManagerFactory-Dh2PdGlF.esm.js +290 -0
  84. package/dist/faceCaptureManagerFactory-yqtpxjnN.d.ts +690 -0
  85. package/dist/faceCaptureSetup-B3faSpYA.esm.js +873 -0
  86. package/dist/faceMatchStateMachine-DNFrxTFS.esm.js +127 -0
  87. package/dist/flow-events.d.ts +6 -0
  88. package/dist/flow-events.esm.js +0 -0
  89. package/dist/flow.d.ts +358 -0
  90. package/dist/flow.esm.js +825 -0
  91. package/dist/flowCompletionService-DhkT4SRY.d.ts +10 -0
  92. package/dist/flowCompletionService-P54yzGvA.esm.js +13 -0
  93. package/dist/flowServices-DG3IdWw6.esm.js +188 -0
  94. package/dist/geolocation.d.ts +127 -0
  95. package/dist/geolocation.esm.js +89 -0
  96. package/dist/geolocationStateMachine-asasuHY2.esm.js +105 -0
  97. package/dist/getBrowser-BSXUTWXw.esm.js +41 -0
  98. package/dist/getDeviceClass-BSntT9_j.esm.js +14 -0
  99. package/dist/government-validation.d.ts +67 -0
  100. package/dist/government-validation.esm.js +81 -0
  101. package/dist/governmentValidationStateMachine-BDDYrJTo.esm.js +271 -0
  102. package/dist/home.d.ts +99 -0
  103. package/dist/home.esm.js +61 -0
  104. package/dist/http.d.ts +68 -0
  105. package/dist/http.esm.js +3 -0
  106. package/dist/id-ocr.d.ts +635 -0
  107. package/dist/id-ocr.esm.js +86 -0
  108. package/dist/id-verification.d.ts +190 -0
  109. package/dist/id-verification.esm.js +43 -0
  110. package/dist/id.d.ts +24 -0
  111. package/dist/id.esm.js +164 -0
  112. package/dist/idCaptureManager-Fyd0eam-.d.ts +958 -0
  113. package/dist/idCaptureManager-ZPkD7Gjk.esm.js +581 -0
  114. package/dist/idCaptureStateMachine-BK0bPHoc.esm.js +2963 -0
  115. package/dist/idOcrStateMachine-YbjjC_Gg.esm.js +388 -0
  116. package/dist/idVerificationStateMachine-xbw9HP1Z.esm.js +71 -0
  117. package/dist/identity-reuse.d.ts +530 -0
  118. package/dist/identity-reuse.esm.js +274 -0
  119. package/dist/index-BcRG8rtJ.d.ts +97 -0
  120. package/dist/index-DZoqeAo9.d.ts +1177 -0
  121. package/dist/index.d.ts +3 -0
  122. package/dist/index.esm.js +12 -0
  123. package/dist/invokeOnCaptureCallback-rc6kBHo5.esm.js +30 -0
  124. package/dist/lib-BB0B_qQX.esm.js +12499 -0
  125. package/dist/mandatory-consent.d.ts +412 -0
  126. package/dist/mandatory-consent.esm.js +78 -0
  127. package/dist/mandatoryConsentStateMachine-Cnco1jvn.esm.js +126 -0
  128. package/dist/openviduLazy-Cm0XFh_v.esm.js +3 -0
  129. package/dist/openviduLazy-Cok70ZSg.esm.js +12 -0
  130. package/dist/permissionServices-D_i6nzEw.esm.js +50 -0
  131. package/dist/phone.d.ts +4 -0
  132. package/dist/phone.esm.js +9 -0
  133. package/dist/phoneManager-B6M30hKE.d.ts +397 -0
  134. package/dist/phoneManager-DAJbGhlY.esm.js +256 -0
  135. package/dist/phoneStateMachine-CuPARRaT.esm.js +351 -0
  136. package/dist/platform-CfrjKhmi.esm.js +83 -0
  137. package/dist/qe-signature-DFo_Cc-I.esm.js +12 -0
  138. package/dist/qe-signature.d.ts +25 -0
  139. package/dist/qe-signature.esm.js +8 -0
  140. package/dist/recordingService-Ig2UgbLv.esm.js +1003 -0
  141. package/dist/redirect-to-mobile.d.ts +107 -0
  142. package/dist/redirect-to-mobile.esm.js +102 -0
  143. package/dist/redirectToMobileStateMachine-BOEqe46A.esm.js +249 -0
  144. package/dist/runChildModule-CqqwqAkW.esm.js +219 -0
  145. package/dist/selfie.d.ts +26 -0
  146. package/dist/selfie.esm.js +146 -0
  147. package/dist/selfieManager-D0lSgd-J.d.ts +68 -0
  148. package/dist/selfieManager-Duisl7qN.esm.js +60 -0
  149. package/dist/selfieStateMachine-D76whWEf.esm.js +68 -0
  150. package/dist/session-CGtQJJzB.esm.js +3206 -0
  151. package/dist/session.d.ts +217 -0
  152. package/dist/session.esm.js +9 -0
  153. package/dist/setup-C5AITV8m.d.ts +254 -0
  154. package/dist/setup-DsM8IG7k.esm.js +887 -0
  155. package/dist/signature.d.ts +94 -0
  156. package/dist/signature.esm.js +66 -0
  157. package/dist/signatureStateMachine-B5-QVUve.esm.js +132 -0
  158. package/dist/stats-CIfiPzb1.esm.js +16 -0
  159. package/dist/stats.d.ts +16 -0
  160. package/dist/stats.esm.js +4 -0
  161. package/dist/trust-graph.d.ts +54 -0
  162. package/dist/trust-graph.esm.js +56 -0
  163. package/dist/types-B06Ypu2F.d.ts +49 -0
  164. package/dist/types-BP1m8VRw.d.ts +340 -0
  165. package/dist/types-CAD4va6a.d.ts +5 -0
  166. package/dist/types-CFV9G_7j.d.ts +24 -0
  167. package/dist/warmup-CEcppFiS.d.ts +63 -0
  168. package/dist/wasm.d.ts +15 -0
  169. package/dist/wasm.esm.js +12 -0
  170. package/dist/watchlist-for-business.d.ts +79 -0
  171. package/dist/watchlist-for-business.esm.js +148 -0
  172. package/dist/watchlist.d.ts +62 -0
  173. package/dist/watchlist.esm.js +86 -0
  174. package/dist/watchlistServices-DMbUhkBX.esm.js +12 -0
  175. package/dist/workflow.d.ts +907 -0
  176. package/dist/workflow.esm.js +702 -0
  177. package/dist/xstate.esm-B70JrNqo.esm.js +3404 -0
  178. package/package.json +1 -1
@@ -0,0 +1,340 @@
1
+ import { t as DocumentUploadConfig } from "./types-CFV9G_7j.js";
2
+
3
+ //#region src/modules/flow/types.d.ts
4
+ type EmptyConfig = Record<string, never>;
5
+ type RegulationTypes = 'US' | 'Worldwide' | 'Other' | 'US_Illinois' | 'US_Texas' | 'US_California' | 'US_Washington';
6
+ type TutorialIdConfig = {
7
+ showTutorial: boolean;
8
+ enableId: boolean;
9
+ enablePassport: boolean;
10
+ deviceWallet: boolean;
11
+ onlyFront: boolean;
12
+ onlyBack: boolean;
13
+ barcodeCapture: boolean;
14
+ fetchAdditionalPage: boolean;
15
+ secondId: boolean;
16
+ /** @deprecated Third ID capture is deprecated; config is ignored and flow continues to next step */
17
+ thirdId: boolean;
18
+ autoCaptureTimeout: number;
19
+ deviceIdleTimeout: number;
20
+ captureAttempts: number;
21
+ manualUploadIdCapture: boolean;
22
+ digitalIdsUpload: boolean;
23
+ showDocumentChooserScreen: boolean;
24
+ enableIdRecording: boolean;
25
+ usSmartCapture: boolean;
26
+ showCaptureButtonInAuto?: boolean;
27
+ alwaysCaptureBackOfId?: boolean;
28
+ perCountryPerDocOverrides: Record<string, Record<string, {
29
+ onlyFront: boolean;
30
+ onlyBack: boolean;
31
+ fetchAdditionalPage: boolean;
32
+ }>>;
33
+ };
34
+ type FlowModuleConfig = {
35
+ AUTHENTICATION: {
36
+ showTutorial: boolean;
37
+ autoCaptureTimeout: number;
38
+ numberOfAttempts: number;
39
+ type: 'ONE_TO_ONE';
40
+ deepsightLiveness: 'SINGLE_FRAME' | 'MULTIMODAL' | 'VIDEOLIVENESS';
41
+ validateClosedEyes: boolean;
42
+ validateFaceMask: boolean;
43
+ validateHeadCover: boolean;
44
+ validateLenses: boolean;
45
+ /**
46
+ * When true, the AUTHENTICATION module runs face analysis on-device via
47
+ * the OnDevice WASM workflow and POSTs only the results JSON to
48
+ * `/omni/add/face-results` instead of `/omni/onboarding-authentications/authenticate`.
49
+ * Recording is skipped.
50
+ */
51
+ onDeviceFaceResultsSubmissionEnabled?: boolean;
52
+ };
53
+ ADDRESS: {
54
+ disableSkipPoa: boolean;
55
+ title: string;
56
+ text: string;
57
+ };
58
+ AE_SIGNATURE: {
59
+ uploadDocument: boolean;
60
+ downloadDocument: boolean;
61
+ issuePermanentCertificate: boolean;
62
+ allowWithoutScoreValidation: boolean;
63
+ validationsToSkip: ('ID' | 'FACE_RECOGNITION' | 'OTP' | 'TOTAL_SCORE')[];
64
+ };
65
+ CURP_VALIDATION: {
66
+ curpDataMatch: boolean;
67
+ deceasedStatusVerification: boolean;
68
+ };
69
+ CUSTOM_FIELDS: {
70
+ title: string;
71
+ customFields: {
72
+ name: string;
73
+ alias: string;
74
+ type: 'INTEGER' | 'DOUBLE' | 'BOOLEAN' | 'STRING' | 'DATE';
75
+ }[];
76
+ };
77
+ DOCUMENT_CAPTURE: {
78
+ processingType: 'capture' | 'processPoaOcr' | 'processLoaOcr' | 'processAsylumSeekerVisaZaf' | 'processBankStatementOCR' | 'processBankCheck' | 'processV5CLogbook' | 'processCarInvoice' | 'processCirculationCard' | 'processFinanceSettlement';
79
+ title: string;
80
+ text: string;
81
+ allowSkipDocumentCapture: boolean;
82
+ };
83
+ EKYB: {
84
+ checkBusinessName: boolean;
85
+ businessNameSource: 'userInput';
86
+ checkAddress: boolean;
87
+ address: 'userInput';
88
+ checkTaxId: boolean;
89
+ taxIdSource: 'userInput';
90
+ checkUniqueBeneficialOwner: boolean;
91
+ uniqueBeneficialOwnerSource: 'userInput';
92
+ };
93
+ EXTERNAL_VERIFICATION: {
94
+ source: 'US_DRIVERS_LICENSE_1' | 'US_TELCO_1' | 'US_TELCO_2' | 'US_CONSUMER_1' | 'US_CREDIT_BUREAU_1' | 'MX_CONSUMER_1' | 'BR_GOVT_1' | 'CA_RES_CREDIT' | 'UK_CREDIT_BUREAU_1' | 'ES_1' | 'CL_1' | 'AR_1' | 'GR_1' | 'GT_1' | 'BR_CPF_1';
95
+ checkName: boolean;
96
+ nameSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
97
+ checkEmail: boolean;
98
+ emailSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
99
+ checkAddress: boolean;
100
+ addressSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
101
+ checkPhone: boolean;
102
+ phoneSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
103
+ checkSsn: boolean;
104
+ ssnSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
105
+ checkDob: boolean;
106
+ dobSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
107
+ checkNationality: boolean;
108
+ nationalitySource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
109
+ checkDlNumber: boolean;
110
+ dlNumberSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
111
+ checkDlState: boolean;
112
+ dlStateSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
113
+ checkDlExpireAt: boolean;
114
+ dlExpireAtSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
115
+ checkLast4SSN: boolean;
116
+ last4SSNSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
117
+ checkIdNum: boolean;
118
+ idNumSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
119
+ checkIdNum1: boolean;
120
+ idNum1Source: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
121
+ checkGender: boolean;
122
+ genderSource: 'userInput' | 'document' | 'poa' | 'phoneModuleInput' | 'emailModuleInput';
123
+ };
124
+ EMAIL: {
125
+ otpVerification: boolean;
126
+ otpExpirationInMinutes: number;
127
+ prefill?: boolean;
128
+ };
129
+ FACE_MATCH: {
130
+ matchingType: 'selfieVsId' | 'selfieVsNfc' | 'idVsNfc' | 'nfc3Way';
131
+ disableFaceMatchAnimation: boolean;
132
+ };
133
+ FINISH_GPT: {
134
+ finishgptCompanyName: string;
135
+ };
136
+ GEOLOCATION: {
137
+ allowUserToSkipGeolocation: boolean;
138
+ };
139
+ INE_VALIDATION: {
140
+ facialValidation: boolean;
141
+ alternativeFacialValidation: boolean;
142
+ fallbackEnabled: boolean;
143
+ scrapingMethod: boolean;
144
+ scrapingV2: boolean;
145
+ scrapingV3: boolean;
146
+ failUnsupportedId: boolean;
147
+ dataValidation: boolean;
148
+ backgroundExecution: boolean;
149
+ mockConnectionError: boolean;
150
+ mockUserNotFoundError: boolean;
151
+ mockOK: boolean;
152
+ };
153
+ GOVT_VALIDATION_PROVISIONING: {
154
+ validationCountries: string[];
155
+ facialValidation: boolean;
156
+ dataValidation: boolean;
157
+ faceAndDataValidation: boolean;
158
+ addressValidation: boolean;
159
+ backgroundExecution: boolean;
160
+ faceMatchOverrideDataScore: boolean;
161
+ useCroppedIdFacePhoto: boolean;
162
+ };
163
+ TUTORIAL_ID: TutorialIdConfig;
164
+ ID: TutorialIdConfig;
165
+ SECOND_ID: TutorialIdConfig;
166
+ /** @deprecated Third ID step is deprecated; SDK skips this step and continues flow */
167
+ THIRD_ID: DocumentUploadConfig;
168
+ ID_OCR: {
169
+ editableOcr: boolean;
170
+ /** When true, OCR is collected for the second captured ID after the first. */
171
+ secondId?: boolean;
172
+ /** Set by orchestrated flow UI from the active session (`flow.flowId`). */
173
+ flowId?: string;
174
+ };
175
+ INCODE_WATCHLIST: {
176
+ failIfFaceOnBlocklist: boolean;
177
+ addSuspectedFraudAutomatically: boolean;
178
+ autoExecution: boolean;
179
+ };
180
+ INSTANT_BAV: {
181
+ bavVendorCountry: 'US' | 'CA' | 'AU' | 'NZ' | 'BR' | 'MX' | 'CO' | 'UK' | 'EU';
182
+ bavNumberOfRetries: number;
183
+ };
184
+ MANDATORY_CONSENT: {
185
+ consentType: RegulationTypes;
186
+ };
187
+ ML_CONSENT: {
188
+ consentType: RegulationTypes;
189
+ };
190
+ NFC_SCAN: {
191
+ nfcAvailability: boolean;
192
+ nfcValidation: boolean;
193
+ showInitialDataConfirmationScreen: boolean;
194
+ };
195
+ PHONE: {
196
+ otpVerification: boolean;
197
+ otpExpirationInMinutes: number;
198
+ prefill: boolean;
199
+ };
200
+ SELFIE: {
201
+ showTutorial: boolean;
202
+ showPreview: boolean;
203
+ assistedOnboarding: boolean;
204
+ enableFaceRecording: boolean;
205
+ autoCaptureTimeout: number;
206
+ captureAttempts: number;
207
+ validateLenses: boolean;
208
+ validateFaceMask: boolean;
209
+ validateHeadCover: boolean;
210
+ validateClosedEyes: boolean;
211
+ validateBrightness: boolean;
212
+ deepsightLiveness: 'SINGLE_FRAME' | 'MULTIMODAL' | 'VIDEOLIVENESS';
213
+ /**
214
+ * When true, the SELFIE module runs face analysis on-device via the
215
+ * OnDevice WASM workflow and POSTs only the results JSON to
216
+ * `/omni/add/face-results` instead of `/omni/add/face`. Recording is
217
+ * skipped and the `/omni/process/face` step is bypassed.
218
+ */
219
+ onDeviceFaceResultsSubmissionEnabled?: boolean;
220
+ };
221
+ SIGNATURE: {
222
+ title: string;
223
+ subTitle: string;
224
+ };
225
+ USER_CONSENT: {
226
+ title: string;
227
+ text: string;
228
+ };
229
+ CONFERENCE: {
230
+ enableConferenceOtp: boolean;
231
+ };
232
+ VIDEO_ONBOARDING: {
233
+ useAsSelfie: boolean;
234
+ showTutorials: boolean;
235
+ companyName: string;
236
+ checkLiveness: boolean;
237
+ checkIdScan: boolean;
238
+ checkDocumentScan: boolean;
239
+ compareIdEnabled: boolean;
240
+ compareOcrEnabled: boolean;
241
+ compareBackIdEnabled: boolean;
242
+ compareBackOcrEnabled: boolean;
243
+ checkVoiceConsent: boolean;
244
+ voiceConsentQuestions: number;
245
+ selfieQualityAffectsScore: boolean;
246
+ maxWaitingVideoSelfieFile: number;
247
+ lastSecondsVideoQualityCheck: boolean;
248
+ lastSecondsVideoQualityCheckDuration: number;
249
+ validateClosedEyes: boolean;
250
+ validateFaceMask: boolean;
251
+ validateHeadCover: boolean;
252
+ validateLenses: boolean;
253
+ };
254
+ DYNAMIC_FORMS: {
255
+ screens: {
256
+ title: string;
257
+ hideTitle: boolean;
258
+ questions: {
259
+ questionId: string;
260
+ overrides: string | null;
261
+ isPredefined: boolean;
262
+ isOptional: boolean;
263
+ predefinedQuestionType: string | null;
264
+ question: string;
265
+ inputType: 'NUMBER' | 'CPF' | 'COUNTRY' | 'NATIONALITY' | 'DATE' | 'PHONE' | 'EMAIL' | 'TEXT' | 'MULTISELECT' | 'YESNO' | 'SELECT';
266
+ options: string[];
267
+ }[];
268
+ }[];
269
+ };
270
+ COMBINED_CONSENT: {
271
+ combinedConsents: string;
272
+ };
273
+ QE_SIGNATURE: {
274
+ uploadDocument: boolean;
275
+ downloadDocument: boolean;
276
+ };
277
+ CERTIFICATE_ISSUANCE: {
278
+ region: string;
279
+ type: 'ONE_TIME' | 'SHORT_TERM' | 'LONG_TERM';
280
+ };
281
+ ANTIFRAUD: EmptyConfig;
282
+ CHECKBOX_SIGNATURE: EmptyConfig;
283
+ CROSS_DOCUMENT_DATA_MATCH: EmptyConfig;
284
+ CPF_OCR: EmptyConfig;
285
+ DEVICE_FINGERPRINT: EmptyConfig;
286
+ FACE_ONBOARDING: EmptyConfig;
287
+ FIELD_COMPARISON: EmptyConfig;
288
+ FISCAL_QR: EmptyConfig;
289
+ GENERATE_QR: EmptyConfig;
290
+ HOME: EmptyConfig;
291
+ INSTANT_VERIFY: EmptyConfig;
292
+ IP_ADDRESS: EmptyConfig;
293
+ NAME_CAPTURE: EmptyConfig;
294
+ REDIRECT_TO_MOBILE: {
295
+ flowId: string;
296
+ disableSmsOption?: boolean;
297
+ addContinueToDesktop?: boolean;
298
+ qrPhishingResistance?: boolean;
299
+ authHint?: string;
300
+ lang?: string;
301
+ };
302
+ SHOW_RESULTS: EmptyConfig;
303
+ STADIUM_SELECTOR: EmptyConfig;
304
+ UNIVERSAL_IDENTITY: EmptyConfig;
305
+ WATCHLIST: EmptyConfig;
306
+ TRUST_GRAPH: EmptyConfig;
307
+ WATCHLIST_BUSINESS: EmptyConfig;
308
+ };
309
+ type FlowModule = { [K in keyof FlowModuleConfig]: {
310
+ key: K;
311
+ configuration: FlowModuleConfig[K];
312
+ } }[keyof FlowModuleConfig];
313
+ type Flow = {
314
+ flowId: string;
315
+ name: string;
316
+ autoApproveEnabled?: boolean;
317
+ autoApproveLevel?: 'LOW' | 'MEDIUM' | 'HIGH';
318
+ checkTutorials?: boolean;
319
+ checkAuthorization?: boolean;
320
+ redirectDesktopToMobile?: boolean;
321
+ disableUnsupportedBrowserScreen?: boolean;
322
+ qrPhishingResistance?: boolean;
323
+ addContinueToDesktop?: boolean;
324
+ redirectOriginOnly?: boolean;
325
+ displayOnboardingResultOnDesktop?: boolean;
326
+ enableMultipleOnboardings?: boolean;
327
+ disableLaunchScreen?: boolean;
328
+ enableSardineRisk?: boolean;
329
+ mandatoryConsentCheck?: boolean;
330
+ disableSmsOption?: boolean;
331
+ mergeSessionRecordings?: boolean;
332
+ ageAssurance?: boolean;
333
+ flowModules: FlowModule[];
334
+ enforceCaptureAttemptLimits?: boolean;
335
+ enableFraudAi?: boolean;
336
+ getEnableIdOnlyIdentity?: boolean;
337
+ ds?: boolean;
338
+ };
339
+ //#endregion
340
+ export { RegulationTypes as a, FlowModuleConfig as i, Flow as n, TutorialIdConfig as o, FlowModule as r, EmptyConfig as t };
@@ -0,0 +1,5 @@
1
+ //#region src/internal/permissions/types.d.ts
2
+ type PermissionResult = 'granted' | 'denied' | 'prompt';
3
+ type PermissionStatus = 'idle' | 'requesting' | 'denied' | 'learnMore';
4
+ //#endregion
5
+ export { PermissionStatus as n, PermissionResult as t };
@@ -0,0 +1,24 @@
1
+ import { t as CameraStream } from "./camera-DBSxa6ML.js";
2
+
3
+ //#region src/modules/document-upload/types.d.ts
4
+
5
+ /**
6
+ * Configuration for document upload (e.g., third ID capture).
7
+ * The documentType determines the backend endpoint query parameter.
8
+ */
9
+ type DocumentUploadConfig = {
10
+ /** Document type for the upload endpoint (e.g., 'thirdId') */
11
+ documentType: string;
12
+ };
13
+ type DocumentUploadContext = {
14
+ config: DocumentUploadConfig;
15
+ stream: CameraStream | undefined;
16
+ imageBase64: string | undefined;
17
+ progress: number;
18
+ error: string | undefined;
19
+ };
20
+ type DocumentUploadInput = {
21
+ config: DocumentUploadConfig;
22
+ };
23
+ //#endregion
24
+ export { DocumentUploadContext as n, DocumentUploadInput as r, DocumentUploadConfig as t };
@@ -0,0 +1,63 @@
1
+ //#region ../infra/src/wasm/warmup.d.ts
2
+ /**
3
+ * All available ML pipelines in the SDK.
4
+ * - 'selfie' - Face detection for selfie capture (default 4-model bundle)
5
+ * - 'onDeviceSelfie' - Face detection + on-device liveness + age estimation
6
+ * (6-model bundle for the on-device face-results submission flow). Mutually
7
+ * exclusive with 'selfie' for a given session — both use FaceProcessingApi.
8
+ * - 'idCapture' - Document detection for ID capture
9
+ */
10
+ type WasmPipeline = 'selfie' | 'onDeviceSelfie' | 'idCapture';
11
+ interface WarmupConfig {
12
+ wasmPath: string;
13
+ wasmSimdPath?: string;
14
+ glueCodePath: string;
15
+ /**
16
+ * Path to the SIMD-optimized WASM glue code (paired with `wasmSimdPath`).
17
+ * If omitted, defaults to a sibling `.js` derived from `wasmSimdPath`.
18
+ */
19
+ glueCodeSimdPath?: string;
20
+ useSimd?: boolean;
21
+ pipelines?: readonly WasmPipeline[];
22
+ /**
23
+ * Base path for ML model files. Models will be loaded from `${modelsBasePath}/${modelFileName}`.
24
+ * If not provided, models are expected to be in the same directory as the WASM files.
25
+ */
26
+ modelsBasePath?: string;
27
+ /**
28
+ * Custom model files per pipeline. If not provided, uses default models.
29
+ * Keys are pipeline names, values are arrays of model file names.
30
+ */
31
+ pipelineModels?: Partial<Record<WasmPipeline, string[]>>;
32
+ }
33
+ /**
34
+ * Preloads WASM binary and ML models at app startup.
35
+ * Runs asynchronously - app can continue while WASM loads in background.
36
+ *
37
+ * Model files are automatically loaded based on the pipeline type.
38
+ * By default, models are expected in a 'models' subdirectory relative to the WASM binary.
39
+ *
40
+ * @param config - Configuration for WASM warmup
41
+ * @returns Promise that resolves when WASM is ready
42
+ *
43
+ * @example
44
+ * ```ts
45
+ * // Basic usage - models loaded from /wasm/v2/models/
46
+ * warmupWasm({
47
+ * wasmPath: '/wasm/v2/ml-wasm.wasm',
48
+ * glueCodePath: '/wasm/v2/ml-wasm.js',
49
+ * pipelines: ['selfie', 'idCapture'],
50
+ * });
51
+ *
52
+ * // With explicit models path
53
+ * warmupWasm({
54
+ * wasmPath: '/wasm/v2/ml-wasm.wasm',
55
+ * glueCodePath: '/wasm/v2/ml-wasm.js',
56
+ * modelsBasePath: 'https://cdn.example.com/wasm/v2/models',
57
+ * pipelines: ['selfie'],
58
+ * });
59
+ * ```
60
+ */
61
+ declare function warmupWasm(config: WarmupConfig): Promise<void>;
62
+ //#endregion
63
+ export { WasmPipeline as n, warmupWasm as r, WarmupConfig as t };
package/dist/wasm.d.ts ADDED
@@ -0,0 +1,15 @@
1
+ import { n as WasmPipeline, r as warmupWasm, t as WarmupConfig } from "./warmup-CEcppFiS.js";
2
+ import { c as upgradeToWasmHttpClient, n as WasmConfig, o as setWasmConfig, r as initializeWasmUtil } from "./setup-C5AITV8m.js";
3
+
4
+ //#region ../infra/src/wasm/wasmDefaults.d.ts
5
+ /** The WASM version bundled and tested with this SDK release. */
6
+ declare const DEFAULT_WASM_VERSION = "v2.13.21";
7
+ /** Builds the standard WarmupConfig from the Incode CDN. */
8
+ declare function buildDefaultWasmConfig(): WarmupConfig;
9
+ /**
10
+ * Merges optional WASM path overrides with CDN defaults. Explicit non-blank
11
+ * paths take precedence. Blank override strings log a warning and fall back to defaults.
12
+ */
13
+ declare function resolveWasmConfig(overrides?: Partial<WarmupConfig>): WarmupConfig;
14
+ //#endregion
15
+ export { DEFAULT_WASM_VERSION, type WasmConfig, type WasmPipeline, buildDefaultWasmConfig, initializeWasmUtil, resolveWasmConfig, setWasmConfig, upgradeToWasmHttpClient, warmupWasm };
@@ -0,0 +1,12 @@
1
+ import { c as buildDefaultWasmConfig, i as setWasmConfig, l as resolveWasmConfig, o as upgradeToWasmHttpClient, s as DEFAULT_WASM_VERSION, t as initializeWasmUtil } from "./setup-DsM8IG7k.esm.js";
2
+ import { n as warmupWasm } from "./BaseWasmProvider-C_DLEI40.esm.js";
3
+ import "./WasmUtilProvider-j98OJf-S.esm.js";
4
+ import "./BrowserTimerProvider-DhNc_x02.esm.js";
5
+ import "./api-CESGtpbH.esm.js";
6
+ import "./events-D6-e4vok.esm.js";
7
+ import "./endpoints-CnN3SyDa.esm.js";
8
+ import "./session-CGtQJJzB.esm.js";
9
+ import "./IpifyProvider-D7jx52AL.esm.js";
10
+ import "./browserSimulation-gxD8cSpM.esm.js";
11
+
12
+ export { DEFAULT_WASM_VERSION, buildDefaultWasmConfig, initializeWasmUtil, resolveWasmConfig, setWasmConfig, upgradeToWasmHttpClient, warmupWasm };
@@ -0,0 +1,79 @@
1
+ import { t as Manager } from "./Manager-C8PrhBOx.js";
2
+
3
+ //#region src/modules/watchlist-for-business/watchlistForBusinessManager.d.ts
4
+ /** Waiting for `load()` to be called. */
5
+ type WatchlistForBusinessIdleState = {
6
+ status: 'idle';
7
+ };
8
+ /** Form is ready — use `setCountry()`, `setBusinessName()`, and `submit()`. */
9
+ type WatchlistForBusinessFormState = {
10
+ status: 'form';
11
+ country: string;
12
+ businessName: string;
13
+ isValid: boolean;
14
+ };
15
+ /** API request in flight. */
16
+ type WatchlistForBusinessSubmittingState = {
17
+ status: 'submitting';
18
+ };
19
+ /**
20
+ * API succeeded — success screen visible for ~3 s before transitioning
21
+ * to `finished`.
22
+ */
23
+ type WatchlistForBusinessSuccessState = {
24
+ status: 'success';
25
+ };
26
+ /** Module complete. Fires regardless of API outcome (fire-and-forget). */
27
+ type WatchlistForBusinessFinishedState = {
28
+ status: 'finished';
29
+ };
30
+ /**
31
+ * Discriminated union of all possible watchlist-for-business manager states.
32
+ */
33
+ type WatchlistForBusinessState = WatchlistForBusinessIdleState | WatchlistForBusinessFormState | WatchlistForBusinessSubmittingState | WatchlistForBusinessSuccessState | WatchlistForBusinessFinishedState;
34
+ /**
35
+ * Creates a watchlist-for-business manager for headless or UI-driven usage.
36
+ *
37
+ * On API error the module completes silently (fire-and-forget).
38
+ *
39
+ * @example Headless usage
40
+ * ```typescript
41
+ * import { createWatchlistForBusinessManager } from '@incodetech/core/watchlist-for-business';
42
+ *
43
+ * const manager = createWatchlistForBusinessManager();
44
+ * manager.subscribe((state) => {
45
+ * if (state.status === 'finished') console.log('Done');
46
+ * });
47
+ * manager.load();
48
+ * manager.setCountry('MX');
49
+ * manager.setBusinessName('Acme Corp');
50
+ * manager.submit();
51
+ * manager.stop();
52
+ * ```
53
+ */
54
+ declare function createWatchlistForBusinessManager(): Manager<WatchlistForBusinessState> & {
55
+ /** Transitions from `idle` to the form. Must be called before any other method. */
56
+ load(): void;
57
+ /** Updates the selected country code (ISO 3166-1 alpha-2). */
58
+ setCountry(country: string): void;
59
+ /** Updates the business name field and recomputes validity. */
60
+ setBusinessName(value: string): void;
61
+ /** Submits the form. Only transitions when `isValid` is true. */
62
+ submit(): void;
63
+ };
64
+ type WatchlistForBusinessManager = ReturnType<typeof createWatchlistForBusinessManager>;
65
+ //#endregion
66
+ //#region src/modules/watchlist-for-business/watchlistForBusinessStateMachine.d.ts
67
+ declare const watchlistForBusinessMachine: any;
68
+ //#endregion
69
+ //#region src/modules/watchlist-for-business/types.d.ts
70
+ /**
71
+ * Configuration for the watchlist-for-business module.
72
+ *
73
+ * No server-side configuration is required — the module collects
74
+ * country and business name from the user and submits them to the
75
+ * business watchlist endpoint.
76
+ */
77
+ type WatchlistForBusinessConfig = Record<string, never>;
78
+ //#endregion
79
+ export { type WatchlistForBusinessConfig, type WatchlistForBusinessFinishedState, type WatchlistForBusinessFormState, type WatchlistForBusinessManager, type WatchlistForBusinessState, createWatchlistForBusinessManager, watchlistForBusinessMachine };
@@ -0,0 +1,148 @@
1
+ import { t as api } from "./api-CESGtpbH.esm.js";
2
+ import { n as eventModuleNames, o as createManagerInstrumentation } from "./events-D6-e4vok.esm.js";
3
+ import { t as endpoints } from "./endpoints-CnN3SyDa.esm.js";
4
+ import { a as fromPromise, c as createManager, r as assign, s as createActor, t as setup } from "./xstate.esm-B70JrNqo.esm.js";
5
+
6
+ //#region src/modules/watchlist-for-business/watchlistForBusinessServices.ts
7
+ async function submitWatchlistForBusiness(data, signal) {
8
+ const res = await api.post(endpoints.watchlistForBusinessSubmit, data, { signal });
9
+ if (!res.ok) throw new Error(`POST ${endpoints.watchlistForBusinessSubmit} failed: ${res.status} ${res.statusText}`);
10
+ return res.data;
11
+ }
12
+
13
+ //#endregion
14
+ //#region src/modules/watchlist-for-business/watchlistForBusinessStateMachine.ts
15
+ const DEFAULT_COUNTRY = "US";
16
+ function computeIsValid(businessName) {
17
+ return businessName.trim().length > 0;
18
+ }
19
+ const watchlistForBusinessMachine = setup({
20
+ types: {
21
+ context: {},
22
+ events: {}
23
+ },
24
+ actors: { submitWatchlistForBusiness: fromPromise(async ({ input, signal }) => {
25
+ await submitWatchlistForBusiness(input, signal);
26
+ }) },
27
+ actions: {
28
+ setCountry: assign(({ event }) => {
29
+ const { country } = event;
30
+ return { country };
31
+ }),
32
+ setBusinessName: assign(({ event }) => {
33
+ const { value } = event;
34
+ return {
35
+ businessName: value,
36
+ isValid: computeIsValid(value)
37
+ };
38
+ })
39
+ },
40
+ guards: { isValid: ({ context }) => context.isValid }
41
+ }).createMachine({
42
+ id: "watchlist-for-business",
43
+ initial: "idle",
44
+ context: {
45
+ country: DEFAULT_COUNTRY,
46
+ businessName: "",
47
+ isValid: false
48
+ },
49
+ states: {
50
+ idle: { on: { LOAD: { target: "form" } } },
51
+ form: { on: {
52
+ SET_COUNTRY: { actions: "setCountry" },
53
+ SET_BUSINESS_NAME: { actions: "setBusinessName" },
54
+ SUBMIT: {
55
+ target: "submitting",
56
+ guard: "isValid"
57
+ }
58
+ } },
59
+ submitting: { invoke: {
60
+ id: "submitWatchlistForBusiness",
61
+ src: "submitWatchlistForBusiness",
62
+ input: ({ context }) => ({
63
+ countryCodes: [context.country],
64
+ businessName: context.businessName
65
+ }),
66
+ onDone: { target: "success" },
67
+ onError: { target: "finished" }
68
+ } },
69
+ success: { after: { 3e3: { target: "finished" } } },
70
+ finished: { type: "final" }
71
+ }
72
+ });
73
+
74
+ //#endregion
75
+ //#region src/modules/watchlist-for-business/watchlistForBusinessActor.ts
76
+ function createWatchlistForBusinessActor() {
77
+ return createActor(watchlistForBusinessMachine).start();
78
+ }
79
+
80
+ //#endregion
81
+ //#region src/modules/watchlist-for-business/watchlistForBusinessManager.ts
82
+ function mapState(snapshot) {
83
+ const typedSnapshot = snapshot;
84
+ const { context } = typedSnapshot;
85
+ if (typedSnapshot.matches("form")) return {
86
+ status: "form",
87
+ country: context.country,
88
+ businessName: context.businessName,
89
+ isValid: context.isValid
90
+ };
91
+ if (typedSnapshot.matches("submitting")) return { status: "submitting" };
92
+ if (typedSnapshot.matches("success")) return { status: "success" };
93
+ if (typedSnapshot.matches("finished")) return { status: "finished" };
94
+ return { status: "idle" };
95
+ }
96
+ function createApi({ actor }) {
97
+ return {
98
+ load() {
99
+ actor.send({ type: "LOAD" });
100
+ },
101
+ setCountry(country) {
102
+ actor.send({
103
+ type: "SET_COUNTRY",
104
+ country
105
+ });
106
+ },
107
+ setBusinessName(value) {
108
+ actor.send({
109
+ type: "SET_BUSINESS_NAME",
110
+ value
111
+ });
112
+ },
113
+ submit() {
114
+ actor.send({ type: "SUBMIT" });
115
+ }
116
+ };
117
+ }
118
+ /**
119
+ * Creates a watchlist-for-business manager for headless or UI-driven usage.
120
+ *
121
+ * On API error the module completes silently (fire-and-forget).
122
+ *
123
+ * @example Headless usage
124
+ * ```typescript
125
+ * import { createWatchlistForBusinessManager } from '@incodetech/core/watchlist-for-business';
126
+ *
127
+ * const manager = createWatchlistForBusinessManager();
128
+ * manager.subscribe((state) => {
129
+ * if (state.status === 'finished') console.log('Done');
130
+ * });
131
+ * manager.load();
132
+ * manager.setCountry('MX');
133
+ * manager.setBusinessName('Acme Corp');
134
+ * manager.submit();
135
+ * manager.stop();
136
+ * ```
137
+ */
138
+ function createWatchlistForBusinessManager() {
139
+ return createManager({
140
+ actor: createWatchlistForBusinessActor(),
141
+ mapState,
142
+ createApi,
143
+ instrumentation: createManagerInstrumentation(eventModuleNames.watchlistForBusiness)
144
+ });
145
+ }
146
+
147
+ //#endregion
148
+ export { createWatchlistForBusinessManager, watchlistForBusinessMachine };