@metamask-previews/kyc-controller 0.0.0-preview-7cfd8be → 0.0.0-preview-a3cea003b

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 (42) hide show
  1. package/CHANGELOG.md +29 -3
  2. package/dist/KycController-method-action-types.cjs.map +1 -1
  3. package/dist/KycController-method-action-types.d.cts +48 -2
  4. package/dist/KycController-method-action-types.d.cts.map +1 -1
  5. package/dist/KycController-method-action-types.d.mts +48 -2
  6. package/dist/KycController-method-action-types.d.mts.map +1 -1
  7. package/dist/KycController-method-action-types.mjs.map +1 -1
  8. package/dist/KycController.cjs +469 -12
  9. package/dist/KycController.cjs.map +1 -1
  10. package/dist/KycController.d.cts +109 -5
  11. package/dist/KycController.d.cts.map +1 -1
  12. package/dist/KycController.d.mts +109 -5
  13. package/dist/KycController.d.mts.map +1 -1
  14. package/dist/KycController.mjs +469 -12
  15. package/dist/KycController.mjs.map +1 -1
  16. package/dist/KycService-method-action-types.cjs.map +1 -1
  17. package/dist/KycService-method-action-types.d.cts +38 -2
  18. package/dist/KycService-method-action-types.d.cts.map +1 -1
  19. package/dist/KycService-method-action-types.d.mts +38 -2
  20. package/dist/KycService-method-action-types.d.mts.map +1 -1
  21. package/dist/KycService-method-action-types.mjs.map +1 -1
  22. package/dist/KycService.cjs +177 -22
  23. package/dist/KycService.cjs.map +1 -1
  24. package/dist/KycService.d.cts +97 -12
  25. package/dist/KycService.d.cts.map +1 -1
  26. package/dist/KycService.d.mts +97 -12
  27. package/dist/KycService.d.mts.map +1 -1
  28. package/dist/KycService.mjs +178 -23
  29. package/dist/KycService.mjs.map +1 -1
  30. package/dist/index.cjs.map +1 -1
  31. package/dist/index.d.cts +5 -5
  32. package/dist/index.d.cts.map +1 -1
  33. package/dist/index.d.mts +5 -5
  34. package/dist/index.d.mts.map +1 -1
  35. package/dist/index.mjs.map +1 -1
  36. package/dist/types.cjs.map +1 -1
  37. package/dist/types.d.cts +49 -10
  38. package/dist/types.d.cts.map +1 -1
  39. package/dist/types.d.mts +49 -10
  40. package/dist/types.d.mts.map +1 -1
  41. package/dist/types.mjs.map +1 -1
  42. package/package.json +1 -1
@@ -5,7 +5,7 @@ import type { UserStorageControllerPerformGetStorageAction, UserStorageControlle
5
5
  import type { Json } from "@metamask/utils";
6
6
  import type { KycControllerMethodActions } from "./KycController-method-action-types.cjs";
7
7
  import type { KycServiceMethodActions } from "./KycService-method-action-types.cjs";
8
- import type { KycDisclaimer, KycPhase, KycProduct, KycSessionStatus, KycSumSubLauncher, KycSumSubStatus } from "./types.cjs";
8
+ import type { KycCustomerIdentity, KycDisclaimer, KycPhase, KycProduct, KycSessionStatus, KycSumSubLauncher, KycSumSubStatus, KycUserStatus, KycVendor } from "./types.cjs";
9
9
  export declare const controllerName = "KycController";
10
10
  /**
11
11
  * Describes the shape of the state object for {@link KycController}.
@@ -23,6 +23,26 @@ export type KycControllerState = {
23
23
  termsAcceptedAt: string | null;
24
24
  /** IDs of the disclaimers the customer accepted (persisted). */
25
25
  acceptedDisclaimerIds: string[];
26
+ /**
27
+ * The vendor whose disclaimers `acceptedDisclaimerIds` belong to (persisted).
28
+ * Each vendor serves its own disclaimer set, so acceptance recorded for one
29
+ * vendor must not be reused for another. `null` when nothing is accepted.
30
+ */
31
+ termsAcceptedVendor: KycVendor | null;
32
+ /**
33
+ * Whether the customer accepted the SumSub T&C (T&C2) during the last
34
+ * terms acceptance (persisted). Consents-path vendors require this flag
35
+ * when resuming a session. `null` for acceptance recorded before this
36
+ * field existed (treated as requiring reacceptance).
37
+ */
38
+ sumsubTncAccepted: boolean | null;
39
+ /**
40
+ * Whether the customer accepted the idOS T&C (T&C2) during the last
41
+ * terms acceptance (persisted). Consents-path vendors require this flag
42
+ * when resuming a session. `null` for acceptance recorded before this
43
+ * field existed (treated as requiring reacceptance).
44
+ */
45
+ idosTncAccepted: boolean | null;
26
46
  /** Disclaimers fetched for the current country. */
27
47
  disclaimers: KycDisclaimer[];
28
48
  /** Error encountered while loading disclaimers, or `null`. */
@@ -35,6 +55,12 @@ export type KycControllerState = {
35
55
  accessToken: string | null;
36
56
  /** Vendor customer id, used for the SumSub hand-off. */
37
57
  moonpayCustomerId: string | null;
58
+ /**
59
+ * The identity vendor driving the current flow. Captured at `initialize`.
60
+ * Defaults to `moonpay` when omitted so existing ramps/card callers keep
61
+ * the Check/Auth frame path. Non-MoonPay vendors skip those frames.
62
+ */
63
+ activeVendor: KycVendor;
38
64
  /**
39
65
  * The product the current flow is running for. Captured at `initialize`
40
66
  * (or `acceptTermsAndStartSession`) and used to automatically run the
@@ -47,6 +73,16 @@ export type KycControllerState = {
47
73
  kycRequiredByProduct: Partial<Record<KycProduct, boolean>>;
48
74
  /** ISO-8601 timestamp of the last KYC-required check (persisted). */
49
75
  lastCheckedAt: string | null;
76
+ /**
77
+ * User-keyed simplified KYC status from `GET /kyc/status` (persisted so the
78
+ * Money toast can render across cold starts). `null` until the first
79
+ * successful `refreshKycStatus`.
80
+ */
81
+ userStatus: KycUserStatus | null;
82
+ /** Optional SumSub session id for the retryable error path. */
83
+ userStatusSumsubSessionId: string | null;
84
+ /** Optional machine-readable error code for terminal / EDD UX. */
85
+ userStatusErrorCode: string | null;
50
86
  /** SumSub document-verification sub-flow state. */
51
87
  sumsub: {
52
88
  status: KycSumSubStatus;
@@ -70,7 +106,20 @@ export type KycControllerGetStateAction = ControllerGetStateAction<typeof contro
70
106
  export type KycControllerActions = KycControllerGetStateAction | KycControllerMethodActions;
71
107
  type AllowedActions = KycServiceMethodActions | UserStorageControllerPerformGetStorageAction | UserStorageControllerPerformSetStorageAction;
72
108
  export type KycControllerStateChangeEvent = ControllerStateChangeEvent<typeof controllerName, KycControllerState>;
73
- export type KycControllerEvents = KycControllerStateChangeEvent;
109
+ /**
110
+ * Published when the user-keyed simplified KYC status changes (Money toast).
111
+ */
112
+ export type KycControllerStatusChangedEvent = {
113
+ type: `${typeof controllerName}:statusChanged`;
114
+ payload: [
115
+ {
116
+ status: KycUserStatus;
117
+ sumsubSessionId: string | null;
118
+ errorCode: string | null;
119
+ }
120
+ ];
121
+ };
122
+ export type KycControllerEvents = KycControllerStateChangeEvent | KycControllerStatusChangedEvent;
74
123
  type AllowedEvents = never;
75
124
  export type KycControllerMessenger = Messenger<typeof controllerName, KycControllerActions | AllowedActions, KycControllerEvents | AllowedEvents>;
76
125
  /**
@@ -90,6 +139,12 @@ export type KycControllerOptions = {
90
139
  * {@link DEFAULT_SESSION_STATUS_POLL_INTERVAL_MS}.
91
140
  */
92
141
  sessionStatusPollIntervalMs?: number;
142
+ /**
143
+ * How often, in milliseconds, to refresh `GET /kyc/status` while the
144
+ * simplified user status is `pending`. Defaults to
145
+ * {@link DEFAULT_USER_STATUS_POLL_INTERVAL_MS}.
146
+ */
147
+ userStatusPollIntervalMs?: number;
93
148
  };
94
149
  /**
95
150
  * `KycController` orchestrates the vendor-backed KYC / identity-verification
@@ -109,8 +164,10 @@ export declare class KycController extends BaseController<typeof controllerName,
109
164
  * @param options.sumsubLauncher - The platform SumSub launcher adapter.
110
165
  * @param options.sessionStatusPollIntervalMs - How often to poll the UKYC
111
166
  * session status after the SumSub SDK completes.
167
+ * @param options.userStatusPollIntervalMs - How often to refresh the
168
+ * user-keyed KYC status while it is still `pending`.
112
169
  */
113
- constructor({ messenger, state, sumsubLauncher, sessionStatusPollIntervalMs, }: KycControllerOptions);
170
+ constructor({ messenger, state, sumsubLauncher, sessionStatusPollIntervalMs, userStatusPollIntervalMs, }: KycControllerOptions);
114
171
  /**
115
172
  * Resolves persisted terms + geolocation, and auto-creates a session when
116
173
  * terms are already accepted and an email is available.
@@ -122,10 +179,26 @@ export declare class KycController extends BaseController<typeof controllerName,
122
179
  * authentication completes (and chains into document verification when KYC
123
180
  * is required). When omitted, the flow stops at `form` and the consumer must
124
181
  * call `checkKycRequired` manually.
182
+ * @param params.vendor - Identity vendor for this flow. Non-MoonPay vendors
183
+ * skip Check/Auth frames and use the consents path. Defaults to `moonpay`.
125
184
  */
126
185
  initialize(params?: {
127
186
  email?: string;
128
187
  product?: KycProduct;
188
+ vendor?: KycVendor;
189
+ }): Promise<void>;
190
+ /**
191
+ * Creates (or resumes) an empty-shell customer for the given identity
192
+ * vendor. Exposed so a consumer can ensure the customer exists before
193
+ * showing T&C screens independently of {@link initialize}.
194
+ *
195
+ * @param params - The parameters.
196
+ * @param params.vendor - Identity vendor for the customer.
197
+ * @param params.email - Email for the vendor customer.
198
+ */
199
+ createVendorCustomer(params: {
200
+ vendor: KycVendor;
201
+ email: string;
129
202
  }): Promise<void>;
130
203
  /**
131
204
  * Loads the disclaimers for the resolved (or provided) country.
@@ -140,15 +213,21 @@ export declare class KycController extends BaseController<typeof controllerName,
140
213
  * Captures terms acceptance for the currently loaded disclaimers and creates
141
214
  * a session.
142
215
  *
143
- * @param params - Optional parameters.
216
+ * @param params - The parameters.
144
217
  * @param params.email - The account email to associate with the session.
145
218
  * @param params.product - The consuming feature the flow runs for. See
146
219
  * {@link initialize} for how the product drives the automatic post
147
220
  * authentication continuation.
221
+ * @param params.sumsubTncSigned - Whether Sumsub T&C were accepted (T&C2).
222
+ * Required for every vendor so callers explicitly declare acceptance.
223
+ * @param params.idosTncSigned - Whether idOS T&C were accepted (T&C2).
224
+ * Required for every vendor so callers explicitly declare acceptance.
148
225
  */
149
- acceptTermsAndStartSession(params?: {
226
+ acceptTermsAndStartSession(params: {
150
227
  email?: string;
151
228
  product?: KycProduct;
229
+ sumsubTncSigned: boolean;
230
+ idosTncSigned: boolean;
152
231
  }): Promise<void>;
153
232
  /**
154
233
  * Clears the persisted terms acceptance.
@@ -209,6 +288,19 @@ export declare class KycController extends BaseController<typeof controllerName,
209
288
  getKycStatus(params: {
210
289
  product: KycProduct;
211
290
  }): boolean | undefined;
291
+ /**
292
+ * Returns the vendor-scoped identity for the currently authenticated
293
+ * customer, or `null` when the flow has not yet captured a vendor customer
294
+ * id (before authentication or after {@link reset}).
295
+ *
296
+ * Exposed so consumers (e.g. ramps autoramp creation) can attach the vendor
297
+ * customer id to downstream calls without reading the full KYC state, which
298
+ * also holds session/access tokens. The id is session-scoped and never
299
+ * persisted.
300
+ *
301
+ * @returns The current {@link KycCustomerIdentity}, or `null`.
302
+ */
303
+ getCustomerIdentity(): KycCustomerIdentity | null;
212
304
  /**
213
305
  * Runs the SumSub document-verification sub-flow end to end:
214
306
  *
@@ -236,6 +328,18 @@ export declare class KycController extends BaseController<typeof controllerName,
236
328
  locale?: string;
237
329
  debug?: boolean;
238
330
  }): Promise<Record<string, unknown>>;
331
+ /**
332
+ * Refreshes the user-keyed simplified KYC status from `GET /kyc/status`,
333
+ * stores it on state, publishes {@link KycControllerStatusChangedEvent}, and
334
+ * schedules short-interval polling while the status is `pending`.
335
+ *
336
+ * @returns The latest status payload.
337
+ */
338
+ refreshKycStatus(): Promise<{
339
+ status: KycUserStatus;
340
+ sumsubSessionId: string | null;
341
+ errorCode: string | null;
342
+ }>;
239
343
  /**
240
344
  * Fetches the current UKYC session status for the active sub-flow and records
241
345
  * it on state. Useful for a one-off refresh outside the automatic polling
@@ -1 +1 @@
1
- {"version":3,"file":"KycController.d.cts","sourceRoot":"","sources":["../src/KycController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KycController.d.cts","sourceRoot":"","sources":["../src/KycController.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import type { UserStorageControllerPerformGetStorageAction, UserStorageControlle
5
5
  import type { Json } from "@metamask/utils";
6
6
  import type { KycControllerMethodActions } from "./KycController-method-action-types.mjs";
7
7
  import type { KycServiceMethodActions } from "./KycService-method-action-types.mjs";
8
- import type { KycDisclaimer, KycPhase, KycProduct, KycSessionStatus, KycSumSubLauncher, KycSumSubStatus } from "./types.mjs";
8
+ import type { KycCustomerIdentity, KycDisclaimer, KycPhase, KycProduct, KycSessionStatus, KycSumSubLauncher, KycSumSubStatus, KycUserStatus, KycVendor } from "./types.mjs";
9
9
  export declare const controllerName = "KycController";
10
10
  /**
11
11
  * Describes the shape of the state object for {@link KycController}.
@@ -23,6 +23,26 @@ export type KycControllerState = {
23
23
  termsAcceptedAt: string | null;
24
24
  /** IDs of the disclaimers the customer accepted (persisted). */
25
25
  acceptedDisclaimerIds: string[];
26
+ /**
27
+ * The vendor whose disclaimers `acceptedDisclaimerIds` belong to (persisted).
28
+ * Each vendor serves its own disclaimer set, so acceptance recorded for one
29
+ * vendor must not be reused for another. `null` when nothing is accepted.
30
+ */
31
+ termsAcceptedVendor: KycVendor | null;
32
+ /**
33
+ * Whether the customer accepted the SumSub T&C (T&C2) during the last
34
+ * terms acceptance (persisted). Consents-path vendors require this flag
35
+ * when resuming a session. `null` for acceptance recorded before this
36
+ * field existed (treated as requiring reacceptance).
37
+ */
38
+ sumsubTncAccepted: boolean | null;
39
+ /**
40
+ * Whether the customer accepted the idOS T&C (T&C2) during the last
41
+ * terms acceptance (persisted). Consents-path vendors require this flag
42
+ * when resuming a session. `null` for acceptance recorded before this
43
+ * field existed (treated as requiring reacceptance).
44
+ */
45
+ idosTncAccepted: boolean | null;
26
46
  /** Disclaimers fetched for the current country. */
27
47
  disclaimers: KycDisclaimer[];
28
48
  /** Error encountered while loading disclaimers, or `null`. */
@@ -35,6 +55,12 @@ export type KycControllerState = {
35
55
  accessToken: string | null;
36
56
  /** Vendor customer id, used for the SumSub hand-off. */
37
57
  moonpayCustomerId: string | null;
58
+ /**
59
+ * The identity vendor driving the current flow. Captured at `initialize`.
60
+ * Defaults to `moonpay` when omitted so existing ramps/card callers keep
61
+ * the Check/Auth frame path. Non-MoonPay vendors skip those frames.
62
+ */
63
+ activeVendor: KycVendor;
38
64
  /**
39
65
  * The product the current flow is running for. Captured at `initialize`
40
66
  * (or `acceptTermsAndStartSession`) and used to automatically run the
@@ -47,6 +73,16 @@ export type KycControllerState = {
47
73
  kycRequiredByProduct: Partial<Record<KycProduct, boolean>>;
48
74
  /** ISO-8601 timestamp of the last KYC-required check (persisted). */
49
75
  lastCheckedAt: string | null;
76
+ /**
77
+ * User-keyed simplified KYC status from `GET /kyc/status` (persisted so the
78
+ * Money toast can render across cold starts). `null` until the first
79
+ * successful `refreshKycStatus`.
80
+ */
81
+ userStatus: KycUserStatus | null;
82
+ /** Optional SumSub session id for the retryable error path. */
83
+ userStatusSumsubSessionId: string | null;
84
+ /** Optional machine-readable error code for terminal / EDD UX. */
85
+ userStatusErrorCode: string | null;
50
86
  /** SumSub document-verification sub-flow state. */
51
87
  sumsub: {
52
88
  status: KycSumSubStatus;
@@ -70,7 +106,20 @@ export type KycControllerGetStateAction = ControllerGetStateAction<typeof contro
70
106
  export type KycControllerActions = KycControllerGetStateAction | KycControllerMethodActions;
71
107
  type AllowedActions = KycServiceMethodActions | UserStorageControllerPerformGetStorageAction | UserStorageControllerPerformSetStorageAction;
72
108
  export type KycControllerStateChangeEvent = ControllerStateChangeEvent<typeof controllerName, KycControllerState>;
73
- export type KycControllerEvents = KycControllerStateChangeEvent;
109
+ /**
110
+ * Published when the user-keyed simplified KYC status changes (Money toast).
111
+ */
112
+ export type KycControllerStatusChangedEvent = {
113
+ type: `${typeof controllerName}:statusChanged`;
114
+ payload: [
115
+ {
116
+ status: KycUserStatus;
117
+ sumsubSessionId: string | null;
118
+ errorCode: string | null;
119
+ }
120
+ ];
121
+ };
122
+ export type KycControllerEvents = KycControllerStateChangeEvent | KycControllerStatusChangedEvent;
74
123
  type AllowedEvents = never;
75
124
  export type KycControllerMessenger = Messenger<typeof controllerName, KycControllerActions | AllowedActions, KycControllerEvents | AllowedEvents>;
76
125
  /**
@@ -90,6 +139,12 @@ export type KycControllerOptions = {
90
139
  * {@link DEFAULT_SESSION_STATUS_POLL_INTERVAL_MS}.
91
140
  */
92
141
  sessionStatusPollIntervalMs?: number;
142
+ /**
143
+ * How often, in milliseconds, to refresh `GET /kyc/status` while the
144
+ * simplified user status is `pending`. Defaults to
145
+ * {@link DEFAULT_USER_STATUS_POLL_INTERVAL_MS}.
146
+ */
147
+ userStatusPollIntervalMs?: number;
93
148
  };
94
149
  /**
95
150
  * `KycController` orchestrates the vendor-backed KYC / identity-verification
@@ -109,8 +164,10 @@ export declare class KycController extends BaseController<typeof controllerName,
109
164
  * @param options.sumsubLauncher - The platform SumSub launcher adapter.
110
165
  * @param options.sessionStatusPollIntervalMs - How often to poll the UKYC
111
166
  * session status after the SumSub SDK completes.
167
+ * @param options.userStatusPollIntervalMs - How often to refresh the
168
+ * user-keyed KYC status while it is still `pending`.
112
169
  */
113
- constructor({ messenger, state, sumsubLauncher, sessionStatusPollIntervalMs, }: KycControllerOptions);
170
+ constructor({ messenger, state, sumsubLauncher, sessionStatusPollIntervalMs, userStatusPollIntervalMs, }: KycControllerOptions);
114
171
  /**
115
172
  * Resolves persisted terms + geolocation, and auto-creates a session when
116
173
  * terms are already accepted and an email is available.
@@ -122,10 +179,26 @@ export declare class KycController extends BaseController<typeof controllerName,
122
179
  * authentication completes (and chains into document verification when KYC
123
180
  * is required). When omitted, the flow stops at `form` and the consumer must
124
181
  * call `checkKycRequired` manually.
182
+ * @param params.vendor - Identity vendor for this flow. Non-MoonPay vendors
183
+ * skip Check/Auth frames and use the consents path. Defaults to `moonpay`.
125
184
  */
126
185
  initialize(params?: {
127
186
  email?: string;
128
187
  product?: KycProduct;
188
+ vendor?: KycVendor;
189
+ }): Promise<void>;
190
+ /**
191
+ * Creates (or resumes) an empty-shell customer for the given identity
192
+ * vendor. Exposed so a consumer can ensure the customer exists before
193
+ * showing T&C screens independently of {@link initialize}.
194
+ *
195
+ * @param params - The parameters.
196
+ * @param params.vendor - Identity vendor for the customer.
197
+ * @param params.email - Email for the vendor customer.
198
+ */
199
+ createVendorCustomer(params: {
200
+ vendor: KycVendor;
201
+ email: string;
129
202
  }): Promise<void>;
130
203
  /**
131
204
  * Loads the disclaimers for the resolved (or provided) country.
@@ -140,15 +213,21 @@ export declare class KycController extends BaseController<typeof controllerName,
140
213
  * Captures terms acceptance for the currently loaded disclaimers and creates
141
214
  * a session.
142
215
  *
143
- * @param params - Optional parameters.
216
+ * @param params - The parameters.
144
217
  * @param params.email - The account email to associate with the session.
145
218
  * @param params.product - The consuming feature the flow runs for. See
146
219
  * {@link initialize} for how the product drives the automatic post
147
220
  * authentication continuation.
221
+ * @param params.sumsubTncSigned - Whether Sumsub T&C were accepted (T&C2).
222
+ * Required for every vendor so callers explicitly declare acceptance.
223
+ * @param params.idosTncSigned - Whether idOS T&C were accepted (T&C2).
224
+ * Required for every vendor so callers explicitly declare acceptance.
148
225
  */
149
- acceptTermsAndStartSession(params?: {
226
+ acceptTermsAndStartSession(params: {
150
227
  email?: string;
151
228
  product?: KycProduct;
229
+ sumsubTncSigned: boolean;
230
+ idosTncSigned: boolean;
152
231
  }): Promise<void>;
153
232
  /**
154
233
  * Clears the persisted terms acceptance.
@@ -209,6 +288,19 @@ export declare class KycController extends BaseController<typeof controllerName,
209
288
  getKycStatus(params: {
210
289
  product: KycProduct;
211
290
  }): boolean | undefined;
291
+ /**
292
+ * Returns the vendor-scoped identity for the currently authenticated
293
+ * customer, or `null` when the flow has not yet captured a vendor customer
294
+ * id (before authentication or after {@link reset}).
295
+ *
296
+ * Exposed so consumers (e.g. ramps autoramp creation) can attach the vendor
297
+ * customer id to downstream calls without reading the full KYC state, which
298
+ * also holds session/access tokens. The id is session-scoped and never
299
+ * persisted.
300
+ *
301
+ * @returns The current {@link KycCustomerIdentity}, or `null`.
302
+ */
303
+ getCustomerIdentity(): KycCustomerIdentity | null;
212
304
  /**
213
305
  * Runs the SumSub document-verification sub-flow end to end:
214
306
  *
@@ -236,6 +328,18 @@ export declare class KycController extends BaseController<typeof controllerName,
236
328
  locale?: string;
237
329
  debug?: boolean;
238
330
  }): Promise<Record<string, unknown>>;
331
+ /**
332
+ * Refreshes the user-keyed simplified KYC status from `GET /kyc/status`,
333
+ * stores it on state, publishes {@link KycControllerStatusChangedEvent}, and
334
+ * schedules short-interval polling while the status is `pending`.
335
+ *
336
+ * @returns The latest status payload.
337
+ */
338
+ refreshKycStatus(): Promise<{
339
+ status: KycUserStatus;
340
+ sumsubSessionId: string | null;
341
+ errorCode: string | null;
342
+ }>;
239
343
  /**
240
344
  * Fetches the current UKYC session status for the active sub-flow and records
241
345
  * it on state. Useful for a one-off refresh outside the automatic polling
@@ -1 +1 @@
1
- {"version":3,"file":"KycController.d.mts","sourceRoot":"","sources":["../src/KycController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KycController.d.mts","sourceRoot":"","sources":["../src/KycController.ts"],"names":[],"mappings":"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"}