vesant-sdk 2.0.0-dev.51108af → 2.0.0-dev.93ecc12

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 (45) hide show
  1. package/dist/{client-CIEa7xYG.d.mts → client-BwkGrRW9.d.mts} +1 -1
  2. package/dist/{client-BJ87_Vv5.d.ts → client-CqSx0lAG.d.ts} +3 -3
  3. package/dist/{client-IAOGCBfm.d.mts → client-Dq0NMaXT.d.mts} +3 -3
  4. package/dist/{client-Bvp-f05-.d.ts → client-DvobLmsc.d.ts} +1 -1
  5. package/dist/compliance/index.d.mts +4 -4
  6. package/dist/compliance/index.d.ts +4 -4
  7. package/dist/decisions/index.d.mts +1 -1
  8. package/dist/decisions/index.d.ts +1 -1
  9. package/dist/geolocation/index.d.mts +3 -3
  10. package/dist/geolocation/index.d.ts +3 -3
  11. package/dist/index.d.mts +6 -6
  12. package/dist/index.d.ts +6 -6
  13. package/dist/index.js +54 -10
  14. package/dist/index.js.map +1 -1
  15. package/dist/index.mjs +54 -10
  16. package/dist/index.mjs.map +1 -1
  17. package/dist/kyc/core.d.mts +3 -3
  18. package/dist/kyc/core.d.ts +3 -3
  19. package/dist/kyc/core.js +54 -10
  20. package/dist/kyc/core.js.map +1 -1
  21. package/dist/kyc/core.mjs +54 -10
  22. package/dist/kyc/core.mjs.map +1 -1
  23. package/dist/kyc/index.d.mts +253 -21
  24. package/dist/kyc/index.d.ts +253 -21
  25. package/dist/kyc/index.js +54 -10
  26. package/dist/kyc/index.js.map +1 -1
  27. package/dist/kyc/index.mjs +54 -10
  28. package/dist/kyc/index.mjs.map +1 -1
  29. package/dist/react.d.mts +41 -6
  30. package/dist/react.d.ts +41 -6
  31. package/dist/react.js +603 -272
  32. package/dist/react.js.map +1 -1
  33. package/dist/react.mjs +603 -272
  34. package/dist/react.mjs.map +1 -1
  35. package/dist/risk-profile/index.d.mts +3 -3
  36. package/dist/risk-profile/index.d.ts +3 -3
  37. package/dist/scores/index.d.mts +1 -1
  38. package/dist/scores/index.d.ts +1 -1
  39. package/dist/{types-C4Zx0d_u.d.mts → types-BOFaMQxI.d.mts} +1 -1
  40. package/dist/{types-QUCWam16.d.mts → types-CBQRNL-l.d.mts} +10 -3
  41. package/dist/{types-QUCWam16.d.ts → types-CBQRNL-l.d.ts} +10 -3
  42. package/dist/{types-2utj53GK.d.ts → types-UGyDl1fd.d.ts} +1 -1
  43. package/dist/webhooks/index.d.mts +1 -1
  44. package/dist/webhooks/index.d.ts +1 -1
  45. package/package.json +1 -1
@@ -1,5 +1,5 @@
1
- import { P as ProfileFilters, b as ProfileListResponse, C as CustomerProfile, a as CreateProfileRequest } from '../types-C4Zx0d_u.mjs';
2
- import { R as RiskLevel, P as PaginationParams } from '../types-QUCWam16.mjs';
1
+ import { P as ProfileFilters, b as ProfileListResponse, C as CustomerProfile, a as CreateProfileRequest } from '../types-BOFaMQxI.mjs';
2
+ import { c as Reason, R as RiskLevel, P as PaginationParams } from '../types-CBQRNL-l.mjs';
3
3
  import { B as BaseClient } from '../client-BolQlL5e.mjs';
4
4
 
5
5
  /**
@@ -45,10 +45,18 @@ interface KycRequest {
45
45
  is_age_verification_required: boolean;
46
46
  callback_url: string;
47
47
  redirect_url?: string;
48
+ /** Structured decline reasons. Present when status is `declined` (and the
49
+ * `structured_block_reasons` flag is enabled server-side). */
50
+ declined_reasons?: Reason[];
51
+ /** Structured, non-blocking warnings. */
52
+ warning_reasons?: Reason[];
53
+ /** @deprecated Use {@link declined_reasons}. Comma-joined message text. */
48
54
  declined_reason?: string;
55
+ /** @deprecated Use the `code` on {@link declined_reasons}. */
49
56
  declined_code?: KycDeclinedCode;
50
57
  accepted_reason?: string;
51
58
  other_reason?: string;
59
+ /** @deprecated Use {@link warning_reasons}. */
52
60
  warnings?: Record<string, Record<string, string>>;
53
61
  proofs?: Proof[];
54
62
  alerts?: KycAlert[];
@@ -119,6 +127,65 @@ interface UpdateKycAlertRequest {
119
127
  alert_type?: KycAlertType;
120
128
  status?: KycAlertStatus;
121
129
  }
130
+ /**
131
+ * Threshold-gated trigger for transaction events. Each rule is
132
+ * self-contained — there is no umbrella flag.
133
+ *
134
+ * - `enabled=false` → event blocked.
135
+ * - `enabled=true`, `threshold=0` (or null/omitted) → every event of this
136
+ * type triggers Re-Use KYC, regardless of amount.
137
+ * - `enabled=true`, `threshold>0` → only amounts `>= threshold` trigger.
138
+ */
139
+ interface ReuseKycThresholdTrigger {
140
+ enabled: boolean;
141
+ /** USD threshold; 0 / null / omitted means "any amount". */
142
+ threshold: number;
143
+ }
144
+ /**
145
+ * Rate-of-occurrence trigger (used by `high_frequency_betting`). The
146
+ * tenant tells the server how many events have happened over how many
147
+ * minutes via the request body (`event_count`, `event_window_minutes`);
148
+ * the server triggers when `event_count >= count` AND
149
+ * `event_window_minutes <= window_minutes`. Either bound of 0 means
150
+ * "don't enforce that bound".
151
+ */
152
+ interface ReuseKycFrequencyTrigger {
153
+ enabled: boolean;
154
+ /** Minimum number of events; 0 / null / omitted means "any count". */
155
+ count: number;
156
+ /** Maximum lookback window in minutes; 0 / null / omitted means "any window". */
157
+ window_minutes: number;
158
+ }
159
+ /** Events that can trigger Re-Use KYC for a tenant. */
160
+ interface ReuseKycTriggers {
161
+ login: boolean;
162
+ password_change: boolean;
163
+ name_change: boolean;
164
+ phone_number_change: boolean;
165
+ two_factor_auth_change: boolean;
166
+ new_device_or_location: boolean;
167
+ device_fingerprint_change: boolean;
168
+ payment_method_change: boolean;
169
+ deposit: ReuseKycThresholdTrigger;
170
+ withdrawal: ReuseKycThresholdTrigger;
171
+ large_bet_placement: ReuseKycThresholdTrigger;
172
+ high_frequency_betting: ReuseKycFrequencyTrigger;
173
+ account_balance_transfer: boolean;
174
+ }
175
+ /**
176
+ * Reactions taken when a customer exhausts the Re-Use KYC retry limit.
177
+ * `trigger_alert` is enforced by the server (creates a KYC alert);
178
+ * `enforce_logout` and `freeze_account` are forwarded to the tenant app
179
+ * via the callback `data` field for it to enforce.
180
+ */
181
+ interface ReuseKycReactions {
182
+ /** Retries after the first attempt; total submissions = this + 1. */
183
+ max_retry_attempts: number;
184
+ trigger_alert: boolean;
185
+ enforce_logout: boolean;
186
+ freeze_account: boolean;
187
+ freeze_duration_minutes: number;
188
+ }
122
189
  interface KycPreferences {
123
190
  id: string;
124
191
  tenant_id: string;
@@ -127,6 +194,8 @@ interface KycPreferences {
127
194
  is_face_verification_required: boolean;
128
195
  is_address_verification_required: boolean;
129
196
  is_age_verification_required: boolean;
197
+ /** Master switch for the Re-Use KYC feature. */
198
+ is_reuse_kyc_enabled?: boolean;
130
199
  min_age: number;
131
200
  max_age: number;
132
201
  required_document_count: number;
@@ -134,6 +203,10 @@ interface KycPreferences {
134
203
  high_risk_score: number;
135
204
  medium_risk_score: number;
136
205
  supported_document_types: SupportedDocumentType[];
206
+ /** Per-event triggers for Re-Use KYC. */
207
+ reuse_kyc_triggers?: ReuseKycTriggers;
208
+ /** Retry / reaction policy for Re-Use KYC. */
209
+ reuse_kyc_reactions?: ReuseKycReactions;
137
210
  created_at: string;
138
211
  updated_at: string;
139
212
  }
@@ -143,6 +216,7 @@ interface UpdateKycPreferencesRequest {
143
216
  is_face_verification_required?: boolean;
144
217
  is_address_verification_required?: boolean;
145
218
  is_age_verification_required?: boolean;
219
+ is_reuse_kyc_enabled?: boolean;
146
220
  min_age?: number;
147
221
  max_age?: number;
148
222
  required_document_count?: number;
@@ -150,6 +224,10 @@ interface UpdateKycPreferencesRequest {
150
224
  high_risk_score?: number;
151
225
  medium_risk_score?: number;
152
226
  supported_document_types?: SupportedDocumentType[];
227
+ /** Partial update — only the events present here are changed. */
228
+ reuse_kyc_triggers?: Partial<ReuseKycTriggers>;
229
+ /** Partial update — only the keys present here are changed. */
230
+ reuse_kyc_reactions?: Partial<ReuseKycReactions>;
153
231
  }
154
232
  interface Name {
155
233
  first_name?: string;
@@ -232,20 +310,54 @@ interface RequestKycSubmitLinkRequest {
232
310
  /** Event that triggered the KYC request (e.g. "onboarding", "login", "transaction") */
233
311
  trigger_event?: string;
234
312
  }
313
+ /**
314
+ * Trigger events that can request Re-Use KYC.
315
+ *
316
+ * Account-sensitive: any sensitive change to the account profile.
317
+ * Transaction events: covered by the per-event rules in
318
+ * `ReuseKycTriggers` (`deposit`, `withdrawal`, `large_bet_placement`,
319
+ * `high_frequency_betting`, `account_balance_transfer`).
320
+ */
321
+ type ReuseKycEvent = 'login' | 'password_change' | 'name_change' | 'phone_number_change' | 'two_factor_auth_change' | 'new_device_or_location' | 'device_fingerprint_change' | 'payment_method_change' | 'deposit' | 'withdrawal' | 'large_bet_placement' | 'high_frequency_betting' | 'account_balance_transfer';
235
322
  interface CreateReuseKycSessionRequest {
236
323
  /** Unique reference for the KYC session (e.g., customer ID or transaction ID) */
237
324
  reference: string;
238
- /** customer ID to associate with the KYC session */
325
+ /** Customer ID to associate with the KYC session */
239
326
  customer_id: string;
240
- /** where the re-use-kyc using 'login' | 'transactions' */
241
- path?: string;
327
+ /**
328
+ * The triggering event. One of the `ReuseKycEvent` union members.
329
+ * Required — when empty, the server falls through to the unknown-event
330
+ * passthrough and allows the request silently.
331
+ */
332
+ event: ReuseKycEvent;
333
+ /**
334
+ * USD amount associated with the event. Required for threshold-gated
335
+ * events (`deposit`, `withdrawal`, `large_bet_placement`); ignored for
336
+ * everything else. Missing/zero with a non-zero threshold blocks the
337
+ * session.
338
+ */
339
+ amount?: number;
340
+ /**
341
+ * Number of qualifying events the customer has performed in the
342
+ * window described by `event_window_minutes`. Required for
343
+ * frequency-gated events (`high_frequency_betting`); ignored for
344
+ * everything else.
345
+ */
346
+ event_count?: number;
347
+ /**
348
+ * Lookback window (in minutes) the tenant counted `event_count` over.
349
+ * Required for frequency-gated events alongside `event_count`. A
350
+ * window larger than the tenant's configured `window_minutes`
351
+ * implies a slower rate than "high frequency" and blocks the session.
352
+ */
353
+ event_window_minutes?: number;
242
354
  /** URL to redirect user after validate the facial submission (optional) */
243
355
  redirect_url?: string;
244
356
  /** URL to receive callback notifications via POST request when reuse KYC status changes (optional) */
245
357
  callback_url?: string;
246
358
  }
247
359
  interface SubmitReuseKycSessionRequest {
248
- /** Reuse KYC session token generated from createReUseKycSession endpoint */
360
+ /** Reuse KYC session token generated from createReuseKycSession */
249
361
  token: string;
250
362
  /** Base64 encoded face image or selfie for verification */
251
363
  proof: string;
@@ -258,13 +370,90 @@ interface RequestKycSubmitLinkResponse {
258
370
  /** KYC request ID */
259
371
  kyc_id: string;
260
372
  }
373
+ /** Device class detected by the SDK (purely client-side — server doesn't care). */
374
+ type ReuseKycDeviceType = 'mobile' | 'desktop';
261
375
  interface CreateReuseKycSessionResponse {
262
- /** Generated reuse KYC session token, valid X minutes */
263
- token: string;
264
- /** reuse KYC session reference */
376
+ /** Reuse KYC session reference (echo of the request reference) */
265
377
  reference: string;
266
- /** re-use-kyc required for the action or not */
378
+ /** Generated reuse KYC session token, valid 10 minutes */
379
+ token: string;
380
+ /**
381
+ * Empty string when Re-Use KYC is required. When `is_required` is
382
+ * false, this contains the human-readable reason (e.g. feature
383
+ * disabled, threshold not met, customer has no prior KYC).
384
+ */
385
+ reason: string;
386
+ /** Whether the caller must complete the face capture before proceeding */
267
387
  is_required: boolean;
388
+ /**
389
+ * Public HTTPS handoff URL the SDK encodes into a QR code on desktop.
390
+ * The mobile device scans it, lands on the tenant frontend's
391
+ * /reuse-kyc-submit page, and completes the face capture there. Empty
392
+ * when the server has no `BASE_URL_FRONTEND` configured — the SDK
393
+ * falls back to building its own URL in that case.
394
+ */
395
+ link: string;
396
+ /** Failed face-capture attempts so far on this session. 0 on a fresh session. */
397
+ attempts: number;
398
+ /**
399
+ * Total submissions permitted before reactions fire
400
+ * (`reuse_kyc_reactions.max_retry_attempts + 1`).
401
+ */
402
+ max_attempts: number;
403
+ }
404
+ /**
405
+ * Reaction outcome returned on every face-submit callback. Tenant apps
406
+ * use this to decide whether to allow another retry, end the session,
407
+ * or freeze the account. Reaction flags are only populated when
408
+ * `retry_limit_exceeded` is true.
409
+ */
410
+ interface ReuseKycReactionResult {
411
+ /** Submissions the customer still has before the retry limit fires. */
412
+ retries_remaining: number;
413
+ /** True once the latest failed attempt exhausts the retry policy. */
414
+ retry_limit_exceeded: boolean;
415
+ trigger_alert: boolean;
416
+ enforce_logout: boolean;
417
+ freeze_account: boolean;
418
+ freeze_duration_minutes: number;
419
+ /** Set when an alert was raised on the dashboard. */
420
+ alert_id?: string;
421
+ }
422
+ /**
423
+ * Shape of the webhook body POSTed to `callback_url` after a Re-Use KYC
424
+ * submission completes (also returned synchronously from
425
+ * `submitReuseKycSession`).
426
+ */
427
+ interface ReuseKycCallback {
428
+ event: 'reuse_kyc';
429
+ reference: string;
430
+ resource_id: string;
431
+ status: KycStatus;
432
+ /** Structured decline reasons (present when the `structured_block_reasons`
433
+ * flag is enabled server-side). */
434
+ declined_reasons?: Reason[];
435
+ /** @deprecated Use {@link declined_reasons}. */
436
+ declined_reason?: string;
437
+ /** @deprecated Use structured reasons. */
438
+ warnings?: Record<string, Record<string, string>>;
439
+ data: ReuseKycReactionResult;
440
+ }
441
+ /**
442
+ * Server-side handoff session backed by Redis (TTL: 15 minutes). Shared
443
+ * with the normal KYC mobile/desktop handoff. Desktop clients poll this
444
+ * to detect when a mobile device has attached to the same token via QR.
445
+ */
446
+ interface KycHandoffSession {
447
+ document: string;
448
+ document_backside: string;
449
+ document_two: string;
450
+ document_two_backside: string;
451
+ address: string;
452
+ face: string;
453
+ /** True after a mobile device hits PUT /api/v1/kyc/session/connect. */
454
+ mobile_connected: boolean;
455
+ /** True after the (normal-KYC) document submission completes; unused for Re-Use KYC. */
456
+ is_submitted: boolean;
268
457
  }
269
458
  interface CheckKycStatusRequest {
270
459
  /** User ID to check KYC status for */
@@ -287,10 +476,18 @@ interface CheckKycStatusResponse {
287
476
  address_verified: boolean;
288
477
  face_verified: boolean;
289
478
  age_verified: boolean;
479
+ /** Structured decline reasons. Present when status is `declined` (and the
480
+ * `structured_block_reasons` flag is enabled server-side). */
481
+ declined_reasons?: Reason[];
482
+ /** Structured, non-blocking warnings. */
483
+ warning_reasons?: Reason[];
484
+ /** @deprecated Use {@link declined_reasons}. */
290
485
  declined_reason?: string;
486
+ /** @deprecated Use the `code` on {@link declined_reasons}. */
291
487
  declined_code?: KycDeclinedCode;
292
488
  other_reason?: string;
293
489
  accepted_reason?: string;
490
+ /** @deprecated Use {@link warning_reasons}. */
294
491
  warnings?: Record<string, Record<string, string>>;
295
492
  required_document_count: number;
296
493
  supported_document_types?: SupportedDocumentType[];
@@ -477,23 +674,58 @@ declare class KycClient extends BaseClient {
477
674
  */
478
675
  requestKycSubmitLink(request: RequestKycSubmitLinkRequest): Promise<RequestKycSubmitLinkResponse>;
479
676
  /**
480
- * Create a reuse KYC session for validate a user with existing KYC verification
677
+ * Create a Re-Use KYC session.
481
678
  *
482
- * @param request - Request containing the reference, customer_id, optional redirect URL, and callback URL (receives POST requests)
679
+ * Inspect the response before showing UI:
680
+ * - `is_required === false` → skip face capture; `reason` explains why.
681
+ * - `device_type === 'desktop'` → render `qr_payload` as a QR; the
682
+ * mobile device picks up the session via the connect endpoint.
683
+ * - `device_type === 'mobile'` → open the face capture modal directly.
684
+ *
685
+ * @param request - Reference, customer_id, event, amount (for threshold events), optional URLs.
483
686
  */
484
687
  createReuseKycSession(request: CreateReuseKycSessionRequest): Promise<CreateReuseKycSessionResponse>;
485
688
  /**
486
- * Submit a reuse KYC session for validate a user with existing KYC verification
689
+ * Submit a real-time face capture for an active Re-Use KYC session.
690
+ *
691
+ * **Mobile-only.** The server rejects desktop User-Agents with HTTP
692
+ * 400 (`face capture must be completed on a mobile device`). Use the
693
+ * QR handoff from `createReuseKycSession` for desktop callers.
487
694
  *
488
- * @param request - Request containing the reference, token and proof (receives POST requests)
695
+ * The `data` field on the response carries `retries_remaining`,
696
+ * `retry_limit_exceeded`, and the reaction flags (`enforce_logout`,
697
+ * `freeze_account`, etc.) so the tenant app can act on a final failure.
698
+ *
699
+ * @param request - Token from `createReuseKycSession`, plus the base64 selfie.
489
700
  */
490
- submitReuseKycSession(request: SubmitReuseKycSessionRequest): Promise<CheckKycStatusResponse>;
701
+ submitReuseKycSession(request: SubmitReuseKycSessionRequest): Promise<ReuseKycCallback>;
491
702
  /**
492
- * Check reuse KYC session status for a reference
493
- * @param reference - The unique reference used for the reuse KYC session (e.g., customer ID or transaction ID)
494
- * @returns Response with kyc_status and message (reason)
495
- * **/
496
- getReuseKycSessionStatus(reference: string): Promise<CheckKycStatusResponse>;
703
+ * Look up the current state of a Re-Use KYC session by its forward
704
+ * reference. Useful for desktop pollers waiting on the mobile handoff.
705
+ *
706
+ * @param reference - The reference used when the session was created.
707
+ */
708
+ getReuseKycSessionStatus(reference: string): Promise<ReuseKycCallback>;
709
+ /**
710
+ * Fetch the Redis-backed handoff session for a token. Same backing
711
+ * store as normal KYC (`kyc:session:<token>`, 15-minute TTL). Desktop
712
+ * callers poll `mobile_connected` to detect when a mobile device has
713
+ * scanned the QR and attached.
714
+ *
715
+ * @param token - The session token returned by `createReuseKycSession`.
716
+ */
717
+ getHandoffSession(token: string): Promise<KycHandoffSession>;
718
+ /**
719
+ * Attach a mobile device to a desktop-initiated session. The mobile
720
+ * client calls this after scanning the QR code. The desktop poller
721
+ * sees `mobile_connected: true` on the next `getHandoffSession`.
722
+ *
723
+ * @param token - The session token transferred via the QR payload.
724
+ * @param isDisconnect - Pass true to release the session (default false).
725
+ */
726
+ connectMobileSession(token: string, isDisconnect?: boolean): Promise<{
727
+ mobile_connected: boolean;
728
+ }>;
497
729
  /**
498
730
  * Check KYC status for a user
499
731
  *
@@ -814,4 +1046,4 @@ declare class KycClient extends BaseClient {
814
1046
  createCustomerProfile(profile: CreateProfileRequest): Promise<CustomerProfile>;
815
1047
  }
816
1048
 
817
- export { type CheckKycStatusRequest, type CheckKycStatusResponse, CreateProfileRequest as CreateCustomerProfileRequest, type CreateReuseKycSessionRequest, type CreateReuseKycSessionResponse, CustomerProfile, ProfileFilters as CustomerProfileFilters, ProfileListResponse as CustomerProfileListResponse, type DocumentType, type DocumentVerificationRequest, type DocumentVerificationResponse, type FaceProof, KYC_DECLINED_DESCRIPTIONS, type KycAlert, type KycAlertFilters, type KycAlertListResponse, type KycAlertStatus, type KycAlertType, KycClient, type KycClientConfig, type KycCustomerProfile, type KycDeclinedCode, type KycOverview, type KycPagination, type KycPreferences, type KycRequest, type KycRequestFilters, type KycRequestListResponse, type KycStatus, type Name, PaginationParams, type Proof, type ProofDownloadURL, type ProofType, type RequestAdditionalDocumentsRequest, type RequestKycSubmitLinkRequest, type RequestKycSubmitLinkResponse, RiskLevel, type SubmitReuseKycSessionRequest, type SubmittedDocument, type SupportedDocumentType, type UpdateKycAlertRequest, type UpdateKycPreferencesRequest, type UpdateKycStatusRequest, type UseKycAlertsOptions, type UseKycAlertsResult, type UseKycOverviewOptions, type UseKycOverviewResult, type UseKycPreferencesResult, type UseKycRequestsOptions, type UseKycRequestsResult, type UseKycSubmissionOptions, type UseKycSubmissionResult };
1049
+ export { type CheckKycStatusRequest, type CheckKycStatusResponse, CreateProfileRequest as CreateCustomerProfileRequest, type CreateReuseKycSessionRequest, type CreateReuseKycSessionResponse, CustomerProfile, ProfileFilters as CustomerProfileFilters, ProfileListResponse as CustomerProfileListResponse, type DocumentType, type DocumentVerificationRequest, type DocumentVerificationResponse, type FaceProof, KYC_DECLINED_DESCRIPTIONS, type KycAlert, type KycAlertFilters, type KycAlertListResponse, type KycAlertStatus, type KycAlertType, KycClient, type KycClientConfig, type KycCustomerProfile, type KycDeclinedCode, type KycHandoffSession, type KycOverview, type KycPagination, type KycPreferences, type KycRequest, type KycRequestFilters, type KycRequestListResponse, type KycStatus, type Name, PaginationParams, type Proof, type ProofDownloadURL, type ProofType, type RequestAdditionalDocumentsRequest, type RequestKycSubmitLinkRequest, type RequestKycSubmitLinkResponse, type ReuseKycCallback, type ReuseKycDeviceType, type ReuseKycEvent, type ReuseKycFrequencyTrigger, type ReuseKycReactionResult, type ReuseKycReactions, type ReuseKycThresholdTrigger, type ReuseKycTriggers, RiskLevel, type SubmitReuseKycSessionRequest, type SubmittedDocument, type SupportedDocumentType, type UpdateKycAlertRequest, type UpdateKycPreferencesRequest, type UpdateKycStatusRequest, type UseKycAlertsOptions, type UseKycAlertsResult, type UseKycOverviewOptions, type UseKycOverviewResult, type UseKycPreferencesResult, type UseKycRequestsOptions, type UseKycRequestsResult, type UseKycSubmissionOptions, type UseKycSubmissionResult };