@alipay/ams-checkout 0.0.1787898127-dev.20 → 0.0.1787898127-dev.21

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.
@@ -296,6 +296,6 @@ export var LogConfig = {
296
296
  version: 'iteration/20231021',
297
297
  mdata: {
298
298
  firstLogTime: Date.now(),
299
- sdkVersion: "0.0.1787898127-dev.20"
299
+ sdkVersion: "0.0.1787898127-dev.21"
300
300
  }
301
301
  };
@@ -0,0 +1 @@
1
+ export declare const getIdengineTimezone: () => string;
@@ -0,0 +1,8 @@
1
+ export var getIdengineTimezone = function getIdengineTimezone() {
2
+ var offsetMinutes = -new Date().getTimezoneOffset();
3
+ var sign = offsetMinutes >= 0 ? '+' : '-';
4
+ var absoluteMinutes = Math.abs(offsetMinutes);
5
+ var hours = Math.floor(absoluteMinutes / 60);
6
+ var minutes = absoluteMinutes % 60;
7
+ return "UTC".concat(sign).concat(hours).concat(minutes ? ":".concat(String(minutes).padStart(2, '0')) : '');
8
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alipay/ams-checkout",
3
- "version": "0.0.1787898127-dev.20",
3
+ "version": "0.0.1787898127-dev.21",
4
4
  "description": "",
5
5
  "author": "",
6
6
  "exports": {
package/types.d.ts CHANGED
@@ -209,8 +209,10 @@ export declare type AntomLayouts = 'tabs' | 'accordion';
209
209
  export declare class AntomSDK extends BaseElementsFactory {
210
210
  static version: string;
211
211
  private stopModalMessageMonitor;
212
+ private readonly apiTracker;
212
213
  constructor(config?: AntomSDKConfig);
213
214
  protected canUseElements(): Array<ElementListItemType>;
215
+ init(): Promise<this>;
214
216
  /**
215
217
  * @description 更新配置
216
218
  */
@@ -221,7 +223,7 @@ export declare class AntomSDK extends BaseElementsFactory {
221
223
  elements(): Elements;
222
224
  createElement(elementType: 'payment', options?: PaymentAppConfig): PaymentElement;
223
225
  createElement(elementType: 'vaulting', options?: VaultingAppConfig): VaultingElement;
224
- createElement(elementType: 'CVV', options?: CVVAppConfig): CVVElement;
226
+ createElement(elementType: 'CVV', options: CVVAppConfig): CVVElement;
225
227
  createElement(elementType: 'express', options?: ExpressAppConfig): ExpressElement;
226
228
  createElement(elementType: 'expressVaulting', options?: ExpressVaultingAppConfig): ExpressVaultingElement;
227
229
  getElement(elementType: 'payment', options?: PaymentAppConfig): PaymentElement;
@@ -235,7 +237,9 @@ export declare class AntomSDK extends BaseElementsFactory {
235
237
  */
236
238
  private extractMainElement;
237
239
  confirmCardSetup(options: ConfirmCardSetupOptions): Promise<SubmitResult>;
240
+ private runConfirmCardSetup;
238
241
  confirmPayment(options: ConfirmPaymentOptions): Promise<SubmitResult>;
242
+ private runConfirmPayment;
239
243
  /**
240
244
  * 触发 Express Vaulting element 的 PayPal 绑卡提交流程。
241
245
  *
@@ -308,9 +312,29 @@ export declare const AntomSDKErrorCodes: {
308
312
  */
309
313
  readonly AMOUNT_VALUE_EMPTY: "AMOUNT_VALUE_EMPTY";
310
314
  /**
311
- * @description 金额格式非法(仅允许整数和小数)
315
+ * @description 金额格式非法(仅允许 ASCII 数字字符串)
312
316
  */
313
317
  readonly AMOUNT_VALUE_INVALID: "AMOUNT_VALUE_INVALID";
318
+ /**
319
+ * @description Amount currency does not match the payment session currency
320
+ */
321
+ readonly AMOUNT_CURRENCY_MISMATCH: "AMOUNT_CURRENCY_MISMATCH";
322
+ /**
323
+ * @description Amount currency is not supported
324
+ */
325
+ readonly AMOUNT_CURRENCY_UNSUPPORTED: "AMOUNT_CURRENCY_UNSUPPORTED";
326
+ /**
327
+ * @description Amount currency precision is not supported
328
+ */
329
+ readonly AMOUNT_PRECISION_UNSUPPORTED: "AMOUNT_PRECISION_UNSUPPORTED";
330
+ /**
331
+ * @description Amount conversion timed out
332
+ */
333
+ readonly AMOUNT_RESOLVE_TIMEOUT: "AMOUNT_RESOLVE_TIMEOUT";
334
+ /**
335
+ * @description Amount conversion failed
336
+ */
337
+ readonly AMOUNT_RESOLVE_FAILED: "AMOUNT_RESOLVE_FAILED";
314
338
  readonly GENERATE_ELEMENT_KEY_FAILED: "GENERATE_ELEMENT_KEY_FAILED";
315
339
  readonly ELEMENT_INIT_FAILED: "ELEMENT_INIT_FAILED";
316
340
  readonly MOUNT_TIMEOUT: "MOUNT_TIMEOUT";
@@ -323,8 +347,8 @@ export declare const AntomSDKErrorCodes: {
323
347
  readonly ELEMENT_DEFINE_ERROR: "ELEMENT_DEFINE_ERROR";
324
348
  readonly ELEMENT_ALREADY_REGISTERED: "ELEMENT_ALREADY_REGISTERED";
325
349
  readonly CANNOT_CREATE_SAME_ELEMENT_TWICE: "CANNOT_CREATE_SAME_ELEMENT_TWICE";
326
- readonly GROUPS_ONLY_ONE_MAIN_ELEMENT: "GROUPS_ONLY_ONE_MAIN_ELEMENT";
327
- readonly GROUPS_NOT_FOUND_MAIN_ELEMENT: "GROUPS_NOT_FOUND_MAIN_ELEMENT";
350
+ readonly GROUPS_ONLY_ONE_MAIN_ELEMENT: "GROUPS_ONLY_ONE_MAIN_ELEMENT"; /** @deprecated 传入 elements 时无需重复传递,且不会覆盖 Element 的会话。 */
351
+ readonly GROUPS_NOT_FOUND_MAIN_ELEMENT: "GROUPS_NOT_FOUND_MAIN_ELEMENT"; /** 无 UI 模式必填,仅用于创建内部 CVVElement。 */
328
352
  readonly NOT_SUPPORT_ELEMENT: "NOT_SUPPORT_ELEMENT";
329
353
  readonly NOT_SUPPORT_SUBMIT: "NOT_SUPPORT_SUBMIT";
330
354
  readonly UPDATE_CONFIG_TIMEOUT: "UPDATE_CONFIG_TIMEOUT";
@@ -2144,18 +2168,22 @@ export declare interface ConfirmCardSetupOptions {
2144
2168
  redirect?: 'always' | 'if_required';
2145
2169
  }
2146
2170
 
2147
- export declare interface ConfirmPaymentOptions extends Omit<ConfirmCardSetupOptions, 'elements'>, PaymentSubmitParams {
2148
- sessionData: string;
2149
- /**
2150
- * @description 传入已挂载的 CVVElement / PaymentElement / Elements 实例,不传则使用无 UI 自动提交模式
2151
- */
2152
- elements?: BaseMainElement | BaseElements;
2171
+ export declare type ConfirmPaymentOptions = PaymentSubmitParams & {
2153
2172
  appearance?: CVVAppearance;
2154
2173
  /**
2155
2174
  * @description 集成用户自定义信息(如 cardHolderName)
2156
2175
  */
2157
2176
  params?: Record<string, unknown>;
2158
- }
2177
+ } & ({
2178
+ /** 已挂载的 Element;确认时使用其创建时绑定的会话。 */
2179
+ elements: BaseMainElement | BaseElements;
2180
+ /** @deprecated 传入 elements 时无需重复传递,且不会覆盖 Element 的会话。 */
2181
+ sessionData?: string;
2182
+ } | {
2183
+ elements?: undefined;
2184
+ /** 无 UI 模式必填,仅用于创建内部 CVVElement。 */
2185
+ sessionData: string;
2186
+ });
2159
2187
 
2160
2188
  /**
2161
2189
  * @description Connect流程参数
@@ -2296,9 +2324,9 @@ export declare interface CVVAppConfig extends BaseElementAppConfig {
2296
2324
  /** CVV appearance configuration including optional alias-only Rules. */
2297
2325
  appearance?: CVVAppearance;
2298
2326
  /**
2299
- * @description sessionData
2327
+ * @description 创建时必填的支付会话;不可通过 updateConfig 或 submit 替换
2300
2328
  */
2301
- sessionData?: string;
2329
+ sessionData: string;
2302
2330
  /* Excluded from this release type: paymentSessionConfig */
2303
2331
  /* Excluded from this release type: renderData */
2304
2332
  /* Excluded from this release type: sdkVersion */
@@ -2324,15 +2352,18 @@ export declare type CVVAppearanceProps = {
2324
2352
  */
2325
2353
  export declare class CVVElement extends BaseMainElement<CVVElementConfig, CVVElementEvents> {
2326
2354
  static elementType: string;
2355
+ private readonly sessionData;
2356
+ private readonly elementTracker;
2357
+ private _mountInProgress;
2358
+ private _destroyInProgress;
2327
2359
  constructor(name: string, config: CVVElementConfig);
2328
2360
  /* Excluded from this release type: setup */
2329
- /**
2330
- * Updates CVV configuration while preserving the public Rules clear semantics.
2331
- * @param newConfig Partial CVV configuration patch.
2332
- * @returns The WebApp update acknowledgement.
2333
- */
2334
- updateConfig(newConfig: Partial<CVVAppConfig>): Promise<CVVElementEvents['OPENSDK@UPDATE_CONFIG_REPLY']>;
2361
+ /* Excluded from this release type: updateConfig */
2335
2362
  /* Excluded from this release type: submit */
2363
+ mount(container: HTMLElement): Promise<void>;
2364
+ on<T extends keyof CVVElementEvents>(event: T, handler: (payload: CVVElementEvents[T]) => void): void;
2365
+ unmount(): void;
2366
+ destroy(): void;
2336
2367
  protected focus(): void;
2337
2368
  protected blur(): void;
2338
2369
  protected clear(): void;
@@ -2343,20 +2374,10 @@ export declare class CVVElement extends BaseMainElement<CVVElementConfig, CVVEle
2343
2374
  * @description CVV element config type
2344
2375
  */
2345
2376
  export declare interface CVVElementConfig extends BaseElementConfig<CVVAppConfig> {
2377
+ appConfig: CVVAppConfig;
2346
2378
  }
2347
2379
 
2348
- export declare interface CVVElementEvents extends AntomBridgeEventMap<CVVAppConfig, CVVSubmitParams> {
2349
- /**
2350
- * @description Emitted event about form
2351
- */
2352
- form: {
2353
- errors?: Array<{
2354
- field: string | number;
2355
- message: string;
2356
- currentValue: any;
2357
- }>;
2358
- message: string;
2359
- };
2380
+ export declare interface CVVElementEvents extends AntomBridgeEventMap<CVVAppConfig, CVVSubmitParams & Pick<CVVAppConfig, 'sessionData'>> {
2360
2381
  /**
2361
2382
  * @description Emitted when the element is destroy
2362
2383
  */
@@ -2400,10 +2421,6 @@ export declare type CVVSubmitErrorCodes = 'NOT_FIND_MAINELEMENT' | 'SESSION_DATA
2400
2421
  * @description CVV 支付提交参数
2401
2422
  */
2402
2423
  export declare interface CVVSubmitParams {
2403
- /**
2404
- * 支付会话数据
2405
- */
2406
- sessionData?: string;
2407
2424
  /**
2408
2425
  * 重定向策略
2409
2426
  */
@@ -3087,8 +3104,12 @@ declare interface ElementPluginChangeStates {
3087
3104
  declare type ElementPluginNameEnum = 'SET_STATE' | 'PASSIVE_SET_STATE';
3088
3105
 
3089
3106
  declare class Elements extends BaseElements {
3107
+ private readonly apiTracker;
3090
3108
  protected canUseElements(): Array<ElementListItemType>;
3091
3109
  constructor(config: BaseElementsConfig);
3110
+ init(): Promise<this>;
3111
+ updateConfig(config: Partial<BaseElementsConfig>): void;
3112
+ destroy(): void;
3092
3113
  createElement(elementType: 'vaulting', options?: VaultingAppConfig): VaultingElement;
3093
3114
  createElement(elementType: 'express', options?: ExpressAppConfig): ExpressElement;
3094
3115
  getElement(elementType: 'vaulting', options?: VaultingAppConfig): VaultingElement;
@@ -3224,12 +3245,13 @@ export declare interface ExpressAppConfig extends BaseElementAppConfig {
3224
3245
  /**
3225
3246
  * Amount & Currency
3226
3247
  *
3227
- * Only effective via `updateConfig({ amount })` at runtime.
3228
- * Passing amount at creation time is ignored; the initial amount
3229
- * comes from the server-side sdkQuery result (renderData.paymentAmount).
3248
+ * For Apple Pay and Google Pay, `value` is a positive ASCII digit string in
3249
+ * the payment session currency's minor unit; `currency` may be omitted.
3250
+ * For example, USD 10.99 is passed as `{ value: '1099' }`.
3251
+ * PayPal keeps its existing major-unit amount semantics and requires `currency`.
3230
3252
  */
3231
3253
  amount?: {
3232
- currency: string;
3254
+ currency?: string;
3233
3255
  value: string;
3234
3256
  };
3235
3257
  /** PayPal 配置 */
@@ -3296,6 +3318,17 @@ export declare interface ExpressClickEvent {
3296
3318
  expressPaymentType: string;
3297
3319
  }
3298
3320
 
3321
+ declare type ExpressCompletePaymentResult = {
3322
+ success: boolean;
3323
+ result?: any;
3324
+ error?: {
3325
+ code: string;
3326
+ message: string;
3327
+ };
3328
+ userCanceled3D?: boolean;
3329
+ status?: 'SUCCESS' | 'CANCELLED' | 'FAIL' | 'PROCESSING';
3330
+ };
3331
+
3299
3332
  /** confirm 事件负载(统一终态,替代 approve) */
3300
3333
  export declare interface ExpressConfirmData {
3301
3334
  expressPaymentType: string;
@@ -3342,6 +3375,10 @@ export declare interface ExpressConfirmData {
3342
3375
  */
3343
3376
  export declare class ExpressElement extends BaseMainElement<ExpressElementConfig, ExpressElementEvents> {
3344
3377
  static elementType: string;
3378
+ private readonly elementTracker;
3379
+ private _mountInProgress;
3380
+ private _destroyInProgress;
3381
+ private _registeringInternalListeners;
3345
3382
  /**
3346
3383
  * Store all function-type callbacks locally, not involved in postMessage serialization
3347
3384
  */
@@ -3360,7 +3397,23 @@ export declare class ExpressElement extends BaseMainElement<ExpressElementConfig
3360
3397
  private _localHandlers;
3361
3398
  /** 支付流程进行中标志(click → confirm/error/cancel 之间) */
3362
3399
  private _paymentInProgress;
3400
+ /**
3401
+ * confirm 窗口超时标志:iframe 在 20s onTimeout 发 error(MERCHANT_CONFIRM_TIMEOUT) 时置位,
3402
+ * completePayment 入口据此立即返失败(不发 COMPLETE_PAYMENT,不进 5min 兜底)。
3403
+ * 每新一轮 confirm 事件到达时复位(见 on() 重写)。
3404
+ */
3405
+ private _confirmWindowTimedOut;
3406
+ /**
3407
+ * 是否已收到 iframe 业务层 ready 事件(app.tsx sendReady)。
3408
+ * 注意:与 host `status='ready'`(由 HANDSHAKE_ACK 触发,bridge.js:450 同步回发,与 amount 解析无关)不同。
3409
+ * 首屏 amount setupError 时 iframe 不发业务 ready → _readyReceived 保持 false,
3410
+ * 据此判别"首屏失败"以阻断后续 updateConfig。
3411
+ */
3412
+ private _readyReceived;
3413
+ /** 首屏 setupError 致命标志:置位后 updateConfig 被 CHECKOUT_NOT_READY 阻断,只能 destroy 重开。 */
3414
+ private _setupFailed;
3363
3415
  private _paypalOverlay;
3416
+ private _updateQueue;
3364
3417
  constructor(name: string, config: ExpressElementConfig);
3365
3418
  /**
3366
3419
  * 重写 on:对 confirm 事件拦截,在商户回调执行前注入 paymentFailed()
@@ -3372,24 +3425,29 @@ export declare class ExpressElement extends BaseMainElement<ExpressElementConfig
3372
3425
  */
3373
3426
  private _emit;
3374
3427
  updateConfig(newConfig: ExpressAppConfig): Promise<ExpressElementEvents['OPENSDK@UPDATE_CONFIG_REPLY']>;
3428
+ private runUpdateConfig;
3429
+ private updateConfigTransaction;
3430
+ private updateAmountConfigWithSanitizedDebug;
3431
+ private getAmountValidationReason;
3432
+ /** iframe 业务 ready 事件到达:置 _readyReceived,后续运行时 error 不再视为首屏失败。
3433
+ * ready 是"本次首屏成功"的确实信号(首屏 setupError 时 iframe 不发 ready),
3434
+ * 故同时清掉 _setupFailed——unmount+remount 同实例二次首屏成功后可恢复 updateConfig。
3435
+ */
3436
+ private _handleReady;
3437
+ /** iframe error 事件:若 business ready 未到达,视为首屏 setupError → 置 _setupFailed 阻断后续 updateConfig。 */
3438
+ private _handleError;
3375
3439
  /**
3376
3440
  * 商户在 confirm 回调内调用,触发实际支付提交。
3377
3441
  * iframe 收到 OPENSDK@COMPLETE_PAYMENT 后执行 submitPay / polling 等,
3378
3442
  * 完成后通过 OPENSDK@COMPLETE_PAYMENT_RESULT 回包,Promise resolve。
3379
3443
  */
3380
- completePayment(redirect?: 'always' | 'if_required'): Promise<{
3381
- success: boolean;
3382
- result?: any;
3383
- error?: {
3384
- code: string;
3385
- message: string;
3386
- };
3387
- /** 用户是否手动关闭 3D 弹窗(透传 webapp COMPLETE_PAYMENT_RESULT.userCanceled3D) */
3388
- userCanceled3D?: boolean;
3389
- status?: 'SUCCESS' | 'CANCELLED' | 'FAIL' | 'PROCESSING';
3390
- }>;
3444
+ completePayment(redirect?: 'always' | 'if_required'): Promise<ExpressCompletePaymentResult>;
3445
+ private runCompletePayment;
3391
3446
  setup(): Promise<Partial<ExpressAppConfig> | undefined>;
3392
3447
  private registerInternalListeners;
3448
+ mount(container: HTMLElement): Promise<void>;
3449
+ unmount(): void;
3450
+ destroy(): void;
3393
3451
  protected focus(): void;
3394
3452
  protected blur(): void;
3395
3453
  protected clear(): void;
@@ -3461,6 +3519,11 @@ export declare interface ExpressElementEvents extends AntomBridgeWithNativeEvent
3461
3519
  'OPENSDK@GET_APPLE_PAY_TOKEN': {
3462
3520
  requestId: string;
3463
3521
  expressPaymentType: string;
3522
+ /** iframe 已转好的 major unit 金额(来自 resolvedAmount);host 委托 Apple Pay 消费,不再做 minor→major 转换。 */
3523
+ walletAmount?: {
3524
+ value: string;
3525
+ currency: string;
3526
+ };
3464
3527
  };
3465
3528
  /** host 完成 Apple Pay token 获取后回包给 iframe,submit/3DS/polling 均由 webapp 完成 */
3466
3529
  'OPENSDK@GET_APPLE_PAY_TOKEN_REPLY': {
@@ -3749,6 +3812,57 @@ declare interface FrontSupportIppBank {
3749
3812
  logo?: Logo;
3750
3813
  }
3751
3814
 
3815
+ /** host 回传 webapp 的 OPENSDK@GET_APPLE_PAY_TOKEN_REPLY 形态(result 对齐老链路 {token,billingContact,shippingContact})。 */
3816
+ declare interface GetApplePayTokenReply {
3817
+ success: boolean;
3818
+ result?: {
3819
+ token?: unknown;
3820
+ billingContact?: unknown;
3821
+ shippingContact?: unknown;
3822
+ } | {
3823
+ errorCode: string;
3824
+ };
3825
+ }
3826
+
3827
+ /** webapp 传来的 OPENSDK@GET_APPLE_PAY_TOKEN payload 形态。 */
3828
+ declare interface GetApplePayTokenRequest {
3829
+ paymentMethod?: {
3830
+ paymentMethodDetail?: {
3831
+ applePayProps?: {
3832
+ paymentRequest?: unknown;
3833
+ };
3834
+ };
3835
+ };
3836
+ shipping?: unknown;
3837
+ }
3838
+
3839
+ /** host 回传 webapp 的 OPENSDK@GET_GOOGLE_PAY_TOKEN_REPLY 形态。 */
3840
+ declare interface GetGooglePayTokenReply {
3841
+ success: boolean;
3842
+ result?: unknown;
3843
+ err?: {
3844
+ statusCode?: string;
3845
+ [key: string]: unknown;
3846
+ };
3847
+ }
3848
+
3849
+ /** webapp 传来的 OPENSDK@GET_GOOGLE_PAY_TOKEN payload 形态。 */
3850
+ declare interface GetGooglePayTokenRequest {
3851
+ actionName?: string;
3852
+ data?: {
3853
+ environment?: string;
3854
+ paymentRequest?: unknown;
3855
+ paymentMethod?: unknown;
3856
+ paymentMethodDetail?: {
3857
+ googlePayProps?: {
3858
+ environment?: string;
3859
+ paymentRequest?: unknown;
3860
+ };
3861
+ };
3862
+ [key: string]: unknown;
3863
+ };
3864
+ }
3865
+
3752
3866
  declare type GetI18nQueryParam = string | {
3753
3867
  /**
3754
3868
  * 多语言文案的 key
@@ -7288,13 +7402,23 @@ export declare type PaymentAppearanceProps = {
7288
7402
  export declare class PaymentElement extends BaseMainElement<PaymentElementConfig, PaymentElementEvents> {
7289
7403
  static elementType: string;
7290
7404
  private _paymentInProgress;
7405
+ private readonly paymentTracker;
7406
+ private _mountStartedAt;
7407
+ private _mountInProgress;
7408
+ private _mountPhase;
7409
+ private _destroyInProgress;
7410
+ private readonly walletLogger;
7291
7411
  constructor(name: string, config: PaymentElementConfig);
7292
7412
  /* Excluded from this release type: setup */
7413
+ mount(container: HTMLElement): Promise<void>;
7293
7414
  /**
7294
7415
  * @description Update payment element configuration with amount validation and appearance Rules support
7295
7416
  */
7296
7417
  updateConfig(newConfig: Partial<PaymentAppConfig>): Promise<PaymentElementEvents['OPENSDK@UPDATE_CONFIG_REPLY']>;
7297
7418
  /* Excluded from this release type: submit */
7419
+ on<T extends keyof PaymentElementEvents>(event: T, handler: (payload: PaymentElementEvents[T]) => void): void;
7420
+ unmount(): void;
7421
+ destroy(): void;
7298
7422
  protected focus(): void;
7299
7423
  protected blur(): void;
7300
7424
  protected clear(): void;
@@ -7310,6 +7434,25 @@ declare interface PaymentElementConfig extends BaseElementConfig<PaymentAppConfi
7310
7434
  * @description Payment element events
7311
7435
  */
7312
7436
  export declare interface PaymentElementEvents extends AntomBridgeWithNativeEventMap<PaymentAppConfig, PaymentSubmitParams, PaymentSubmitResult> {
7437
+ /**
7438
+ * webapp 委托 host(父 frame)拉起 Apple Pay 拿 token。
7439
+ * payload 结构对齐 ModernElementController.GetApplePayTokenRequest(放 paymentMethod/shipping)。
7440
+ */
7441
+ 'OPENSDK@GET_APPLE_PAY_TOKEN': GetApplePayTokenRequest;
7442
+ /** host 完成 Apple Pay token 获取后回包给 webapp */
7443
+ 'OPENSDK@GET_APPLE_PAY_TOKEN_REPLY': GetApplePayTokenReply;
7444
+ /**
7445
+ * webapp 委托 host(父 frame)拉起 Google Pay 拿 token。
7446
+ * payload 结构对齐 ModernElementController.GetGooglePayTokenRequest(放 data.environment/paymentRequest)。
7447
+ */
7448
+ 'OPENSDK@GET_GOOGLE_PAY_TOKEN': GetGooglePayTokenRequest;
7449
+ /** host 完成 Google Pay token 获取后回包给 webapp */
7450
+ 'OPENSDK@GET_GOOGLE_PAY_TOKEN_REPLY': GetGooglePayTokenReply;
7451
+ /** WebApp notifies the host when the selected payment method changes. */
7452
+ paymentMethodChanged: {
7453
+ type: string;
7454
+ name?: string;
7455
+ };
7313
7456
  }
7314
7457
 
7315
7458
  declare interface PaymentElementView {
@@ -24756,6 +24899,9 @@ export declare type VaultingAppearanceProps = {
24756
24899
  */
24757
24900
  export declare class VaultingElement extends BaseMainElement<VaultingElementConfig, VaultingElementEvents> {
24758
24901
  static elementType: string;
24902
+ private readonly elementTracker;
24903
+ private _mountInProgress;
24904
+ private _destroyInProgress;
24759
24905
  constructor(name: string, config: VaultingElementConfig);
24760
24906
  /* Excluded from this release type: setup */
24761
24907
  /**
@@ -24765,6 +24911,10 @@ export declare class VaultingElement extends BaseMainElement<VaultingElementConf
24765
24911
  */
24766
24912
  updateConfig(newConfig: Partial<VaultingAppConfig>): Promise<VaultingElementEvents['OPENSDK@UPDATE_CONFIG_REPLY']>;
24767
24913
  /* Excluded from this release type: submit */
24914
+ mount(container: HTMLElement): Promise<void>;
24915
+ on<T extends keyof VaultingElementEvents>(event: T, handler: (payload: VaultingElementEvents[T]) => void): void;
24916
+ unmount(): void;
24917
+ destroy(): void;
24768
24918
  protected focus(): void;
24769
24919
  protected blur(): void;
24770
24920
  protected clear(): void;