@alipay/ams-checkout 2.0.19 → 2.0.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.
Files changed (60) hide show
  1. package/ams-checkout.js +3 -3
  2. package/dist/ams-checkout.min.js +1 -1
  3. package/esm/config/index.d.ts +7 -0
  4. package/esm/config/index.js +2 -2
  5. package/esm/constant/element.d.ts +2 -1
  6. package/esm/constant/element.js +1 -0
  7. package/esm/constant/index.d.ts +4 -21
  8. package/esm/core/component/ckp/index.d.ts +1 -1
  9. package/esm/core/component/ckp/index.js +5 -2
  10. package/esm/core/component/element/elementController/index.d.ts +3 -3
  11. package/esm/core/component/element/elementController/index.js +66 -42
  12. package/esm/core/component/element/elementProcessor/baseElementProcessor.d.ts +1 -0
  13. package/esm/core/component/element/elementProcessor/baseElementProcessor.js +1 -0
  14. package/esm/core/component/element/elementProcessor/convertPaymentMethods.d.ts +22 -0
  15. package/esm/core/component/element/elementProcessor/convertPaymentMethods.js +159 -0
  16. package/esm/core/component/element/elementProcessor/paymentProcessor.d.ts +5 -0
  17. package/esm/core/component/element/elementProcessor/paymentProcessor.js +107 -29
  18. package/esm/core/component/element/index.d.ts +4 -1
  19. package/esm/core/component/element/index.js +19 -4
  20. package/esm/core/component/element/mock.js +2 -2
  21. package/esm/core/component/element/modernElementController/adapter.d.ts +19 -0
  22. package/esm/core/component/element/modernElementController/adapter.js +79 -0
  23. package/esm/core/component/element/modernElementController/index.d.ts +155 -0
  24. package/esm/core/component/element/modernElementController/index.js +1780 -0
  25. package/esm/core/component/element/type.d.ts +74 -19
  26. package/esm/core/component/element/util.d.ts +9 -2
  27. package/esm/core/component/element/util.js +3 -2
  28. package/esm/core/instance/index.d.ts +12 -4
  29. package/esm/core/instance/index.js +152 -26
  30. package/esm/foundation/service/event-center.js +1 -1
  31. package/esm/foundation/service/security/index.d.ts +9 -4
  32. package/esm/foundation/service/security/index.js +158 -35
  33. package/esm/foundation/service/security/security.d.ts +22 -1
  34. package/esm/foundation/service/security/security.js +150 -37
  35. package/esm/foundation/utils/preload_helper.d.ts +6 -3
  36. package/esm/foundation/utils/preload_helper.js +122 -32
  37. package/esm/main.js +4 -4
  38. package/esm/modern/global.d.ts +3 -0
  39. package/esm/modern/index.d.ts +5 -1
  40. package/esm/modern/index.js +1 -51
  41. package/esm/modern/tools.js +1 -0
  42. package/esm/plugin/component/channel.d.ts +2 -2
  43. package/esm/plugin/component/channel.js +18 -18
  44. package/esm/plugin/component/index.js +36 -29
  45. package/esm/tsdoc-metadata.json +1 -1
  46. package/esm/types/index.d.ts +5 -1
  47. package/esm/util/beforeConfirm.d.ts +4 -2
  48. package/esm/util/beforeConfirm.js +15 -14
  49. package/esm/util/jshield-apdid/apdid-loader.js +377 -0
  50. package/esm/util/jshield-apdid/index.js +21 -0
  51. package/esm/util/logger.js +1 -2
  52. package/esm/util/security-registry.d.ts +72 -0
  53. package/esm/util/security-registry.js +175 -0
  54. package/esm/util/security.d.ts +22 -1
  55. package/esm/util/security.js +150 -39
  56. package/package.json +15 -9
  57. package/types.d.ts +843 -1103
  58. package/types.untrimmed.d.ts +995 -1122
  59. package/esm/modern/stageName.d.ts +0 -3
  60. package/esm/modern/stageName.js +0 -1
package/types.d.ts CHANGED
@@ -1,3 +1,5 @@
1
+ import type { CompatibleTrackerFull } from '@antintl/intl-tracker/common';
2
+
1
3
  declare interface ActionForm {
2
4
  /**
3
5
  * @description action form type
@@ -5,8 +7,6 @@ declare interface ActionForm {
5
7
  actionFormType?: string;
6
8
  }
7
9
 
8
- declare type AddBehavior = (behavior: BehaviorData) => void;
9
-
10
10
  declare interface Address {
11
11
  /**
12
12
  * @description 2-letter courtry/region code, refer to ISO 3166
@@ -143,7 +143,26 @@ declare interface AmountLimitInfo {
143
143
  /**
144
144
  * AntomBridge事件类型,包含了SDK与webapp通信的所有事件类型
145
145
  */
146
- export declare interface AntomBridgeEventMap<AppConfig extends Record<string, any> = Record<string, any>, SubmitParams extends Record<string, any> = Record<string, any>> extends BaseBridgeEventMap<AppConfig, SubmitResult, SubmitParams, string, OpenModalParams> {
146
+ export declare interface AntomBridgeEventMap<AppConfig extends Record<string, any> = Record<string, any>, SubmitParams extends Record<string, any> = Record<string, any>, SR extends SubmitResult = SubmitResult> extends BaseBridgeEventMap<AppConfig, SR, SubmitParams, string, AntomOpenModalConfig> {
147
+ }
148
+
149
+ /**
150
+ * @description 整合了native事件的eventMap,如果你的业务element需要支持native,事件请继承这个类型
151
+ */
152
+ export declare interface AntomBridgeWithNativeEventMap<AppConfig extends Record<string, any> = Record<string, any>, SubmitParams extends Record<string, any> = Record<string, any>, SR extends SubmitResult = SubmitResult> extends AntomBridgeEventMap<AppConfig, SubmitParams, SR> {
153
+ /* Excluded from this release type: showPopup */
154
+ /* Excluded from this release type: dismissLoading */
155
+ /* Excluded from this release type: webAppReady */
156
+ /* Excluded from this release type: onLaunch */
157
+ /* Excluded from this release type: renderComponent */
158
+ /* Excluded from this release type: appHeartBeat */
159
+ /* Excluded from this release type: showToast */
160
+ /* Excluded from this release type: onEventCallback */
161
+ /* Excluded from this release type: onSubmitPayCallback */
162
+ /* Excluded from this release type: reset */
163
+ /* Excluded from this release type: destroy */
164
+ /* Excluded from this release type: onClose */
165
+ /* Excluded from this release type: onRedirect */
147
166
  }
148
167
 
149
168
  /**
@@ -178,9 +197,9 @@ declare interface AntomErrorResponse {
178
197
  extendInfo?: Record<string, any>;
179
198
  }
180
199
 
181
- /* Excluded from this release type: AntomMiddlePageEventMap */
200
+ export declare type AntomLayouts = 'tabs' | 'accordion';
182
201
 
183
- /* Excluded from this release type: AntomModalEventMap */
202
+ /* Excluded from this release type: AntomMiddlePageEventMap */
184
203
 
185
204
  /* Excluded from this release type: AntomOpenModalConfig */
186
205
 
@@ -195,11 +214,14 @@ export declare class AntomSDK extends BaseElementsFactory {
195
214
  * @description 更新配置
196
215
  */
197
216
  updateConfig(config: Partial<BaseFactoryConfig>): void;
217
+ /* Excluded from this release type: redirect */
198
218
  /* Excluded from this release type: openModal */
199
219
  elements(): Elements;
220
+ createElement(elementType: 'payment', options?: PaymentAppConfig): PaymentElement;
200
221
  createElement(elementType: 'vaulting', options?: VaultingAppConfig): VaultingElement;
201
222
  createElement(elementType: 'CVV', options?: CVVAppConfig): CVVElement;
202
223
  createElement(elementType: 'express', options?: ExpressAppConfig): ExpressElement;
224
+ getElement(elementType: 'payment', options?: PaymentAppConfig): PaymentElement;
203
225
  getElement(elementType: 'vaulting', options?: VaultingAppConfig): VaultingElement;
204
226
  getElement(elementType: 'CVV', options?: CVVAppConfig): CVVElement;
205
227
  getElement(elementType: 'express', options?: ExpressAppConfig): ExpressElement;
@@ -256,6 +278,22 @@ export declare const AntomSDKErrorCodes: {
256
278
  * @description channelClientId 查询失败(请求异常,如网络错误、服务器错误等)
257
279
  */
258
280
  readonly CHANNEL_CLIENT_ID_QUERY_ERROR: "CHANNEL_CLIENT_ID_QUERY_ERROR";
281
+ /**
282
+ * @description checkout 页面未加载成功,不允许 updateConfig
283
+ */
284
+ readonly CHECKOUT_NOT_READY: "CHECKOUT_NOT_READY";
285
+ /**
286
+ * @description 支付进行中,不允许更新金额
287
+ */
288
+ readonly PAYMENT_IN_PROGRESS: "PAYMENT_IN_PROGRESS";
289
+ /**
290
+ * @description 金额不能为空
291
+ */
292
+ readonly AMOUNT_VALUE_EMPTY: "AMOUNT_VALUE_EMPTY";
293
+ /**
294
+ * @description 金额格式非法(仅允许整数和小数)
295
+ */
296
+ readonly AMOUNT_VALUE_INVALID: "AMOUNT_VALUE_INVALID";
259
297
  readonly GENERATE_ELEMENT_KEY_FAILED: "GENERATE_ELEMENT_KEY_FAILED";
260
298
  readonly ELEMENT_INIT_FAILED: "ELEMENT_INIT_FAILED";
261
299
  readonly MOUNT_TIMEOUT: "MOUNT_TIMEOUT";
@@ -272,6 +310,11 @@ export declare const AntomSDKErrorCodes: {
272
310
  readonly GROUPS_NOT_FOUND_MAIN_ELEMENT: "GROUPS_NOT_FOUND_MAIN_ELEMENT";
273
311
  readonly NOT_SUPPORT_ELEMENT: "NOT_SUPPORT_ELEMENT";
274
312
  readonly NOT_SUPPORT_SUBMIT: "NOT_SUPPORT_SUBMIT";
313
+ readonly UPDATE_CONFIG_TIMEOUT: "UPDATE_CONFIG_TIMEOUT";
314
+ readonly UPDATE_CONFIG_NOT_READY: "UPDATE_CONFIG_NOT_READY";
315
+ /**
316
+ * @description 是否需要更换 session 重试
317
+ */
275
318
  readonly INVALID_MODAL_URL: "INVALID_MODAL_URL";
276
319
  readonly LOAD_DEBUGGER_FAILED: "LOAD_DEBUGGER_FAILED";
277
320
  readonly API_MISS_PARAMS: "API_MISS_PARAMS";
@@ -289,29 +332,23 @@ export declare type AntomSDKErrorCodes = (typeof AntomSDKErrorCodes)[keyof typeo
289
332
 
290
333
  export declare type AntomTheme = 'default' | 'agateGreen' | 'night' | 'nostalgicGray' | 'gamingPurple' | 'cherryBlossomPink' | 'light';
291
334
 
292
- declare interface APICallbackOptions {
293
- requestType: 'fetch' | 'xhr';
294
- time: number;
295
- url: string;
296
- isSuccess?: boolean;
297
- error?: unknown;
298
- status?: number;
299
- type?: string;
300
- method?: string;
301
- traceId?: string;
302
- errorCode?: string | number;
303
- errorMsg?: string;
304
- }
335
+ export declare type AntomVariables = 'content-primary' | 'content-secondary' | 'content-tertiary' | 'content-quaternary' | 'background-primary' | 'background-secondary' | 'background-disable' | 'background-transparency' | 'border-primary' | 'border-secondary' | 'border-disable' | 'action-normal' | 'action-hover' | 'action-disable' | 'action-secondary' | 'state-failure' | 'state-warning' | 'state-success' | 'state-info' | 'state-marketing' | 'state-conventional' | 'radius-backup' | 'radius-module' | 'radius-component' | 'radius-button' | 'wrapper-padding' | 'stroke-default' | 'stroke-active' | 'fontFamily';
305
336
 
337
+ /**
338
+ * @description SDK UI组件的外观配置。
339
+ * 控制主题、CSS变量、布局规则及显示设置。
340
+ * @template Props - 自定义外观属性类型,默认为 DefaultAppearanceProps。
341
+ */
306
342
  declare interface Appearance<Props extends Partial<DefaultAppearanceProps> = DefaultAppearanceProps> {
307
343
  theme?: Props['theme'];
308
344
  variables?: PartialSpeKey<Props['variables'], string>;
309
345
  rules?: PartialSpeKey<Props['rules'], CSS_2.Properties<string, number>>;
310
346
  displaySetting?: PartialSpeKey<Props['displaySetting'], boolean>;
311
347
  layout?: Props['layout'];
348
+ fonts?: FontSource[];
312
349
  }
313
350
 
314
- declare type AppearanceSetting = {
351
+ export declare type AppearanceSetting = {
315
352
  displaySetting: Record<'showCardBrandIcon', boolean>;
316
353
  theme: 'light' | 'dark';
317
354
  layout: 'accordion' | 'tabs';
@@ -605,6 +642,7 @@ declare class AxiosHeaders {
605
642
  rewrite?: boolean | AxiosHeaderMatcher
606
643
  ): AxiosHeaders;
607
644
  set(headers?: RawAxiosHeaders | AxiosHeaders | string, rewrite?: boolean): AxiosHeaders;
645
+ set(headers?: Iterable<[string, AxiosHeaderValue]>, rewrite?: boolean): AxiosHeaders;
608
646
 
609
647
  get(headerName: string, parser: RegExp): RegExpExecArray | null;
610
648
  get(headerName: string, matcher?: true | AxiosHeaderParser): AxiosHeaderValue;
@@ -665,6 +703,8 @@ declare class AxiosHeaders {
665
703
 
666
704
  getSetCookie(): string[];
667
705
 
706
+ toString(): string;
707
+
668
708
  [Symbol.iterator](): IterableIterator<[string, AxiosHeaderValue]>;
669
709
  }
670
710
 
@@ -709,6 +749,16 @@ declare interface BaseBridgeEventMap<AppConfig extends Record<string, any> = Rec
709
749
  /* Excluded from this release type: "OPENSDK@HANDSHAKE" */
710
750
  /* Excluded from this release type: "OPENSDK@READY_HANDSHAKE" */
711
751
  /* Excluded from this release type: "OPENSDK@UPDATE_CONFIG" */
752
+ /**
753
+ * 更新配置时的回复事件,包含可能发生的错误信息。
754
+ * 如果 error 为 undefined,则表示没有错误发生。
755
+ */
756
+ "OPENSDK@UPDATE_CONFIG_REPLY": {
757
+ /**
758
+ * 更新配置时发生的错误,如果error为undefined,则表示没有错误发生
759
+ */
760
+ error?: ErrorPayload<string>;
761
+ } | undefined;
712
762
  /* Excluded from this release type: "OPENSDK@HANDSHAKE_ACK" */
713
763
  /* Excluded from this release type: "OPENSDK@SUBMIT" */
714
764
  /* Excluded from this release type: "OPENSDK@SUBMIT_REPLY" */
@@ -718,12 +768,14 @@ declare interface BaseBridgeEventMap<AppConfig extends Record<string, any> = Rec
718
768
  /* Excluded from this release type: "OPENSDK@REDIRECT" */
719
769
  /* Excluded from this release type: "OPENSDK@TRANSFER_MODAL_PORT" */
720
770
  /* Excluded from this release type: "OPENSDK@TRANSFER_MODAL_APPEARANCE" */
771
+ /* Excluded from this release type: "OPENSDK@TRANSFER_MODAL_INITIALDATA" */
721
772
  /* Excluded from this release type: "OPENSDK@TRANSFER_APP_PORT" */
722
773
  /* Excluded from this release type: "OPENSDK@ERROR" */
723
774
  /* Excluded from this release type: "OPENSDK@TRANSFER_RECEIVE_PORT" */
724
775
  /* Excluded from this release type: "OPENSDK@TRANSFER_SEND_PORT" */
725
776
  /* Excluded from this release type: "OPENSDK@MESSAGE" */
726
777
  /* Excluded from this release type: "OPENSDK@HEIGHT_UPDATE" */
778
+ /* Excluded from this release type: "OPENSDK@DESTROY_ELEMENT" */
727
779
  }
728
780
 
729
781
  declare interface BaseConfig {
@@ -744,6 +796,7 @@ declare interface BaseConfig {
744
796
  */
745
797
  locale?: string;
746
798
  /* Excluded from this release type: version */
799
+ /* Excluded from this release type: colorScheme */
747
800
  }
748
801
 
749
802
  /**
@@ -758,21 +811,26 @@ declare abstract class BaseElement<Config extends BaseElementConfig = BaseElemen
758
811
  /* Excluded from this release type: bridge */
759
812
  /* Excluded from this release type: hooks */
760
813
  /* Excluded from this release type: iframe */
761
- status: 'initialized' | 'mounting' | 'mounted' | 'ready' | 'destroyed' | 'unmounted';
814
+ status: ElementStatus;
762
815
  /* Excluded from this release type: cachedSend */
816
+ /** Reuses the pending reply for concurrent submit calls. */
817
+ private submitPromise?;
763
818
  constructor(name: string, config: WithAppURL<Config>);
764
819
  /* Excluded from this release type: submit */
765
820
  /* Excluded from this release type: setup */
821
+ /** Races merchant setup against destruction to stop the mount flow immediately. */
822
+ private _setup;
823
+ /* Excluded from this release type: is */
766
824
  /**
767
- * @param {string | HTMLElement} containerId 如果给字符串id不要带#号
825
+ * @param {HTMLElement} container
768
826
  */
769
- mount(containerId: HTMLElement): Promise<void>;
827
+ mount(container: HTMLElement): Promise<void>;
770
828
  /* Excluded from this release type: _mount */
771
829
  /**
772
830
  * 更新webapp配置
773
831
  * @param {Partial<BaseElementAppConfig>} newConfig
774
832
  */
775
- updateConfig(newConfig: Partial<Config['appConfig']>): void;
833
+ updateConfig(newConfig: Partial<Config['appConfig']>): Promise<EventMap["OPENSDK@UPDATE_CONFIG_REPLY"]>;
776
834
  /**
777
835
  * 卸载元素
778
836
  */
@@ -805,13 +863,14 @@ declare abstract class BaseElement<Config extends BaseElementConfig = BaseElemen
805
863
  }
806
864
 
807
865
  declare interface BaseElementAppConfig {
808
- locale?: string;
866
+ /* Excluded from this release type: locale */
809
867
  /* Excluded from this release type: env */
810
868
  /* Excluded from this release type: merchantId */
811
869
  [key: string]: any;
812
870
  }
813
871
 
814
- declare interface BaseElementConfig<T extends BaseElementAppConfig = Record<string, any>> extends BaseConfig {
872
+ declare interface BaseElementConfig<T extends BaseElementAppConfig = BaseElementAppConfig> extends BaseConfig {
873
+ /* Excluded from this release type: trackId */
815
874
  appConfig: T;
816
875
  elementMode: ElementMode;
817
876
  }
@@ -862,6 +921,7 @@ declare abstract class BaseFactory {
862
921
  */
863
922
  constructor(config: BaseFactoryConfig);
864
923
  protected openModal(payload: BaseBridgeEventMap['OPENSDK@OPEN_MODAL']): Promise<OpenModalHandle>;
924
+ protected redirect(payload: BaseBridgeEventMap['OPENSDK@REDIRECT']): void | Promise<void>;
865
925
  /* Excluded from this release type: canUseElements */
866
926
  /**
867
927
  * @description 无需手动调用
@@ -901,26 +961,6 @@ declare interface BaseFactoryConfig extends BaseConfig {
901
961
  /* Excluded from this release type: trackerCode */
902
962
  }
903
963
 
904
- declare type BaseInfo = BrowserInfo & DeviceInfo & NetworkInfo & LocationInfo & EnvInfo & OSInfo & {
905
- sdk?: string;
906
- marmotId?: string;
907
- compatibleAppId?: string;
908
- deviceId?: string;
909
- userId?: string;
910
- programVer?: string;
911
- language?: string;
912
- timezone?: string;
913
- bizType?: string;
914
- productId?: string;
915
- clientId?: string;
916
- visibleState?: 'visible' | 'hidden' | 'app-visible' | 'page-visible' | 'app-hidden' | 'page-hidden';
917
- };
918
-
919
- declare interface BaseInfoPlugin {
920
- getAppName?(): Promise<string | undefined>;
921
- getDefaultExtraInfo?(): Promise<BaseInfo>;
922
- }
923
-
924
964
  /**
925
965
  * @description 主元素,可以独立提交
926
966
  */
@@ -936,6 +976,10 @@ declare abstract class BaseMainElement<Config extends BaseElementConfig = BaseEl
936
976
  /* Excluded from this release type: _submit */
937
977
  }
938
978
 
979
+ /**
980
+ * @description 打开模态框的配置项。
981
+ * 包含显示选项、关闭行为、外观设置及初始化数据。
982
+ */
939
983
  declare interface BaseOpenModalConfig {
940
984
  /**
941
985
  * 无需手动传递,app的唯一scope
@@ -959,74 +1003,23 @@ declare interface BaseOpenModalConfig {
959
1003
  onClose?: () => void;
960
1004
  url: string;
961
1005
  /**
962
- * 关闭时,是否需要app页面二次确认,默认为false,即直接关闭
1006
+ * @description 关闭时,是否需要告知webapp页面来进行关闭 链路为 modalApp 告知-> webapp 关闭-> sdk,默认为false,即直接在modal中进行关闭 modalApp 关闭-> sdk,
963
1007
  */
964
1008
  closeConfirm?: boolean;
1009
+ /**
1010
+ * @description 需要同步的外观配置
1011
+ */
965
1012
  appearance?: Appearance;
1013
+ /**
1014
+ * @description 需要传递的初始化数据
1015
+ */
1016
+ initialData?: Record<string, any>;
1017
+ /**
1018
+ * @description 无需手动传递, 模态框的唯一标识
1019
+ */
1020
+ modalId?: string;
966
1021
  }
967
1022
 
968
- declare type BehaviorConfig = {
969
- enableConsole?: boolean;
970
- };
971
-
972
- declare interface BehaviorData {
973
- type: string;
974
- data: {
975
- msg?: string | null;
976
- from?: string;
977
- to?: string;
978
- };
979
- timestamp: number;
980
- times?: number;
981
- }
982
-
983
- declare type BlankMonitorConfig = {
984
- selector?: string | string[];
985
- delay?: number | (() => number);
986
- persistent?: boolean;
987
- };
988
-
989
- declare interface BrowserInfo {
990
- title?: string;
991
- fullUrl?: string;
992
- url?: string;
993
- referrer?: string;
994
- domCnt?: number;
995
- delay?: number;
996
- scrollTop?: number;
997
- lastAction?: string;
998
- sessionId?: string;
999
- containerPageSessionId?: string;
1000
- containerSessionId?: string;
1001
- ua?: string;
1002
- browser?: string;
1003
- cCoreVer?: string;
1004
- assetsVer?: string;
1005
- }
1006
-
1007
- declare type C = {
1008
- c1?: string;
1009
- c2?: string;
1010
- c3?: string;
1011
- c4?: string;
1012
- c5?: string;
1013
- c6?: string;
1014
- c7?: string;
1015
- c8?: string;
1016
- c9?: string;
1017
- c10?: string;
1018
- c11?: string;
1019
- c12?: string;
1020
- c13?: string;
1021
- c14?: string;
1022
- c15?: string;
1023
- c16?: string;
1024
- c17?: string;
1025
- c18?: string;
1026
- c19?: string;
1027
- c20?: string;
1028
- };
1029
-
1030
1023
  /**
1031
1024
  * @description C2P标识
1032
1025
  */
@@ -1060,6 +1053,12 @@ declare interface C2PProps {
1060
1053
  merchantTransactionId?: string;
1061
1054
  }
1062
1055
 
1056
+ /* Excluded from this release type: CallbackErrorInfo */
1057
+
1058
+ /* Excluded from this release type: CallbackReturnData */
1059
+
1060
+ /* Excluded from this release type: CallbackSessionNextAction */
1061
+
1063
1062
  declare interface CardIssuerAuthentication {
1064
1063
  /**
1065
1064
  * @description 卡售卖单元
@@ -1477,7 +1476,7 @@ declare interface CashierSdkActionQueryResult {
1477
1476
  /**
1478
1477
  * @description 物流信息, 包含物流地址和物流费
1479
1478
  */
1480
- shippingInfo?: ShippingInfo;
1479
+ shippingInfo?: ShippingInfo_2;
1481
1480
  /**
1482
1481
  * @description 用户已绑资产信息
1483
1482
  */
@@ -1510,28 +1509,6 @@ declare interface ChargeInfo {
1510
1509
  chargeActualAmountView?: PaymentView;
1511
1510
  }
1512
1511
 
1513
- /** click 事件 resolve 参数 */
1514
- export declare interface ClickResolveOptions {
1515
- amount?: {
1516
- currency: string;
1517
- value: string;
1518
- };
1519
- shippingAddressRequired?: boolean;
1520
- allowedShippingCountries?: string[];
1521
- shippingRates?: Array<{
1522
- id: string;
1523
- displayName: string;
1524
- amount: string;
1525
- }>;
1526
- lineItems?: Array<{
1527
- name: string;
1528
- amount: string;
1529
- }>;
1530
- business?: {
1531
- name: string;
1532
- };
1533
- }
1534
-
1535
1512
  declare interface CodeFormView {
1536
1513
  /**
1537
1514
  * @description title
@@ -1557,6 +1534,11 @@ declare interface CodeFormView {
1557
1534
  * @description label
1558
1535
  */
1559
1536
  label?: string;
1537
+ /**
1538
+ * @description Payment guidance information (CKP scenario) The frontend only displays the payment guide button
1539
+ * when appLinkUrlForWeb is populated
1540
+ */
1541
+ paymentGuideInfo?: PaymentGuideInfo;
1560
1542
  /**
1561
1543
  * @description 提醒事项
1562
1544
  */
@@ -1573,6 +1555,10 @@ declare interface CodeFormView {
1573
1555
  * @description 码过期时间
1574
1556
  */
1575
1557
  codeExpireTime?: string;
1558
+ /**
1559
+ * @description QR code configuration including renderStyle, centerIcon and cornerIcon
1560
+ */
1561
+ qrcodeConfig?: QrCodeConfig;
1576
1562
  }
1577
1563
 
1578
1564
  /**
@@ -2040,68 +2026,7 @@ declare interface ComIpayIexpprodServiceFacadeCommonPromotionInfo {
2040
2026
  extendInfo?: Record<string, string>;
2041
2027
  }
2042
2028
 
2043
- declare class CompatibleTracker extends Tracker {
2044
- private mdata;
2045
- initi(options: OriginTrackerInitOptions & {
2046
- performance?: boolean;
2047
- error?: boolean;
2048
- }): Promise<boolean>;
2049
- set(options: Record<string, any>): void;
2050
- protected getDefaultExtraInfo(): Promise<{
2051
- title?: string | undefined;
2052
- fullUrl?: string | undefined;
2053
- url?: string | undefined;
2054
- referrer?: string | undefined;
2055
- domCnt?: number | undefined;
2056
- delay?: number | undefined;
2057
- scrollTop?: number | undefined;
2058
- lastAction?: string | undefined;
2059
- sessionId?: string | undefined;
2060
- containerPageSessionId?: string | undefined;
2061
- containerSessionId?: string | undefined;
2062
- ua?: string | undefined;
2063
- browser?: string | undefined;
2064
- cCoreVer?: string | undefined;
2065
- assetsVer?: string | undefined;
2066
- device?: string | undefined;
2067
- deviceType?: string | undefined;
2068
- deviceBrand?: string | undefined;
2069
- deviceModel?: string | undefined;
2070
- screenWidth?: number | undefined;
2071
- screenHeight?: number | undefined;
2072
- contentHeight?: number | undefined;
2073
- pixelRatio?: number | undefined;
2074
- cClient?: string | undefined;
2075
- networkType?: string | undefined;
2076
- isp?: string | undefined;
2077
- ip?: string | undefined;
2078
- countryName?: string | undefined;
2079
- cityName?: string | undefined;
2080
- provinceName?: string | undefined;
2081
- area?: string | undefined;
2082
- env?: Env_2 | undefined;
2083
- sprintId?: string | undefined;
2084
- container?: string | undefined;
2085
- cOfflineVer?: string | undefined;
2086
- serverIp?: string | undefined;
2087
- serverEnv?: string | undefined;
2088
- canaryFlag?: string | undefined;
2089
- os?: string | undefined;
2090
- osVer?: string | undefined;
2091
- sdk?: string | undefined;
2092
- marmotId?: string | undefined;
2093
- compatibleAppId?: string | undefined;
2094
- deviceId?: string | undefined;
2095
- userId?: string | undefined;
2096
- programVer?: string | undefined;
2097
- language?: string | undefined;
2098
- timezone?: string | undefined;
2099
- bizType?: string | undefined;
2100
- productId?: string | undefined;
2101
- clientId?: string | undefined;
2102
- visibleState?: "hidden" | "visible" | "app-visible" | "page-visible" | "app-hidden" | "page-hidden" | undefined;
2103
- }>;
2104
- }
2029
+ declare type CompatibleTrackerFullOptions = ConstructorParameters<typeof CompatibleTrackerFull>[0];
2105
2030
 
2106
2031
  /**
2107
2032
  * @description googlePay createPaymentSession 入参
@@ -2126,13 +2051,17 @@ export declare interface ConfirmCardSetupOptions {
2126
2051
  redirect?: 'always' | 'if_required';
2127
2052
  }
2128
2053
 
2129
- export declare interface ConfirmPaymentOptions extends Omit<ConfirmCardSetupOptions, 'elements'> {
2054
+ export declare interface ConfirmPaymentOptions extends Omit<ConfirmCardSetupOptions, 'elements'>, PaymentSubmitParams {
2130
2055
  sessionData: string;
2131
2056
  /**
2132
- * @description 传入已挂载的 CVVElement Elements 实例,不传则使用无 UI 自动提交模式
2057
+ * @description 传入已挂载的 CVVElement / PaymentElement / Elements 实例,不传则使用无 UI 自动提交模式
2133
2058
  */
2134
2059
  elements?: BaseMainElement | BaseElements;
2135
2060
  appearance?: CVVAppearance;
2061
+ /**
2062
+ * @description 集成用户自定义信息(如 cardHolderName)
2063
+ */
2064
+ params?: Record<string, unknown>;
2136
2065
  }
2137
2066
 
2138
2067
  /**
@@ -2204,6 +2133,13 @@ declare namespace CSS_2 {
2204
2133
  }
2205
2134
  }
2206
2135
 
2136
+ /**
2137
+ * CSS 字体源 — 通过 <link> 标签加载外部 CSS(如 Google Fonts)
2138
+ */
2139
+ declare interface CssFontSource {
2140
+ cssSrc: string;
2141
+ }
2142
+
2207
2143
  declare interface CurrencyInfo {
2208
2144
  /**
2209
2145
  * @description Getter method for property <tt>currencyCode</tt>.
@@ -2249,15 +2185,21 @@ declare interface CustomerFxInfo {
2249
2185
  }
2250
2186
 
2251
2187
  /**
2252
- * CustomizedPerformanceKey 是给业务使用的自定义指标,共 20 个,页面之间互相独立
2188
+ * 自定义字体源 通过 @font-face 加载自托管字体
2253
2189
  */
2254
- declare type CustomizedPerformanceKey = 'm1' | 'm2' | 'm3' | 'm4' | 'm5' | 'm6' | 'm7' | 'm8' | 'm9' | 'm10' | 'm11' | 'm12' | 'm13' | 'm14' | 'm15' | 'm16' | 'm17' | 'm18' | 'm19' | 'm20';
2190
+ declare interface CustomFontSource {
2191
+ family: string;
2192
+ src: string;
2193
+ weight?: string;
2194
+ style?: string;
2195
+ unicodeRange?: string;
2196
+ }
2255
2197
 
2256
2198
  /**
2257
2199
  * @public
2258
2200
  * @description CVV element app config type
2259
2201
  */
2260
- export declare interface CVVAppConfig extends BaseAppearance<CVVAppearance> {
2202
+ export declare interface CVVAppConfig extends BaseAppearance<CVVAppearance>, BaseElementAppConfig {
2261
2203
  /**
2262
2204
  * @description sessionData
2263
2205
  */
@@ -2277,7 +2219,8 @@ export declare type CVVAppearance = PickAppearance<CVVAppearanceProps>;
2277
2219
 
2278
2220
  export declare type CVVAppearanceProps = {
2279
2221
  theme: AntomTheme;
2280
- variables: 'content-primary' | 'content-tertiary' | 'background-primary' | 'background-disable' | 'background-transparency' | 'border-primary' | 'border-disable' | 'action-normal' | 'action-hover' | 'radius-component' | 'content-secondary' | 'background-secondary';
2222
+ variables: AntomVariables;
2223
+ fonts?: FontSource[];
2281
2224
  };
2282
2225
 
2283
2226
  /**
@@ -2363,6 +2306,10 @@ export declare interface CVVSubmitParams {
2363
2306
  * 重定向策略
2364
2307
  */
2365
2308
  redirect?: 'always' | 'if_required';
2309
+ /**
2310
+ * 集成用户自定义信息(如 cardHolderName)
2311
+ */
2312
+ params?: Record<string, unknown>;
2366
2313
  }
2367
2314
 
2368
2315
  declare interface DanaSofCouponInfo {
@@ -2940,18 +2887,6 @@ declare interface DeliveryEstimateInfo {
2940
2887
  value?: number;
2941
2888
  }
2942
2889
 
2943
- declare interface DeviceInfo {
2944
- device?: string;
2945
- deviceType?: string;
2946
- deviceBrand?: string;
2947
- deviceModel?: string;
2948
- screenWidth?: number;
2949
- screenHeight?: number;
2950
- contentHeight?: number;
2951
- pixelRatio?: number;
2952
- cClient?: string;
2953
- }
2954
-
2955
2890
  /**
2956
2891
  * @description 立减型营销信息
2957
2892
  */
@@ -2997,29 +2932,6 @@ declare interface DisplayItem {
2997
2932
  status?: string;
2998
2933
  }
2999
2934
 
3000
- declare type DMC = {
3001
- d1?: number | string;
3002
- d2?: number | string;
3003
- d3?: number | string;
3004
- d4?: number | string;
3005
- d5?: number | string;
3006
- d6?: number | string;
3007
- d7?: number | string;
3008
- d8?: number | string;
3009
- d9?: number | string;
3010
- d10?: number | string;
3011
- d11?: number | string;
3012
- d12?: number | string;
3013
- d13?: number | string;
3014
- d14?: number | string;
3015
- d15?: number | string;
3016
- d16?: number | string;
3017
- d17?: number | string;
3018
- d18?: number | string;
3019
- d19?: number | string;
3020
- d20?: number | string;
3021
- } & C & M;
3022
-
3023
2935
  /**
3024
2936
  * @description 元素列表项类型
3025
2937
  */
@@ -3081,21 +2993,9 @@ declare class Elements extends BaseElements {
3081
2993
  getElement(elementType: 'express', options?: ExpressAppConfig): ExpressElement;
3082
2994
  }
3083
2995
 
3084
- declare type ElementTypeEnum = 'TEXT' | 'DIGIT_6' | 'DIGIT_18' | 'DIGIT_32' | 'DIGIT_11' | 'DIGIT_4' | 'DIGIT_10' | 'CHECKBOX' | 'SELECT' | 'SWITCH' | 'PASSWORD_2' | 'DATE_PICKER' | 'CHECKLIST' | 'ADDRESS' | 'DROPBOX' | 'DIGIT_13' | 'GRIDLIST' | 'TENOR_SELECT_KR' | 'STORELIST' | 'GRIDBANKLIST' | 'SUB_QR_CODE' | 'GRIDBANKTOP' | 'PHONE_TEXT_AREA_CODE';
3085
-
3086
- declare type Env = 'local' | 'dev' | 'sit' | 'pre' | 'prod';
2996
+ declare type ElementStatus = 'initialized' | 'mounting' | 'mounted' | 'ready' | 'destroyed' | 'unmounted';
3087
2997
 
3088
- declare type Env_2 = 'DEV' | 'SIT' | 'PRE' | 'PROD' | 'LOCAL';
3089
-
3090
- declare interface EnvInfo {
3091
- env?: Env_2;
3092
- sprintId?: string;
3093
- container?: string;
3094
- cOfflineVer?: string;
3095
- serverIp?: string;
3096
- serverEnv?: string;
3097
- canaryFlag?: string;
3098
- }
2998
+ declare type ElementTypeEnum = 'TEXT' | 'DIGIT_6' | 'DIGIT_18' | 'DIGIT_32' | 'DIGIT_11' | 'DIGIT_4' | 'DIGIT_10' | 'CHECKBOX' | 'SELECT' | 'SWITCH' | 'PASSWORD_2' | 'DATE_PICKER' | 'CHECKLIST' | 'ADDRESS' | 'DROPBOX' | 'DIGIT_13' | 'GRIDLIST' | 'TENOR_SELECT_KR' | 'STORELIST' | 'GRIDBANKLIST' | 'SUB_QR_CODE' | 'GRIDBANKTOP' | 'PHONE_TEXT_AREA_CODE' | 'SUPPORTIPPBANKLIST';
3099
2999
 
3100
3000
  /**
3101
3001
  * @description 错误上下文对象。参考主站<code>ErrorContext</code>实现。
@@ -3126,9 +3026,11 @@ declare type ErrorSource = ErrorSource_2;
3126
3026
 
3127
3027
  declare type ErrorSource_2 = 'SDK_INTERNAL' | 'SDK_USAGE' | 'APP_RUNTIME' | 'SERVER_API' | 'SYSTEM';
3128
3028
 
3129
- declare type ErrorType = 'js-error-addeventlistener' | 'source-error' | 'promise-error' | 'video-error' | 'video-source-error';
3130
-
3131
- declare type EventFunction = (opt: Record<string, any>) => boolean;
3029
+ /**
3030
+ * @description 工具类型,从类型中排除 undefined。
3031
+ * 如果 T 继承 undefined 则返回 never,否则返回 T。
3032
+ */
3033
+ declare type ExcludeUndefined<T> = T extends undefined ? never : T;
3132
3034
 
3133
3035
  /**
3134
3036
  * @description 卡分期计划
@@ -3172,6 +3074,22 @@ declare interface ExpCardPlan {
3172
3074
  * @description 每个月分期利息
3173
3075
  */
3174
3076
  monthlyInterest?: ComIpayIexpprodServiceFacadeCommonAmount;
3077
+ /**
3078
+ * @description 分期有效期开始时间
3079
+ */
3080
+ validStartTime?: string;
3081
+ /**
3082
+ * @description 分期有效期结束时间
3083
+ */
3084
+ validEndTime?: string;
3085
+ /**
3086
+ * @description 支持的银行信息
3087
+ *
3088
+ * 包含该分期计划支持的银行详细信息,包括银行简称、logo等。
3089
+ * 该字段从 installmentBanks 数据中通过 bankShortName 关联而来,
3090
+ * 若分期计划无银行限制或未匹配到银行信息,该字段可能为null。@see ExpSupportIppBank
3091
+ */
3092
+ supportedBank?: ExpSupportIppBank;
3175
3093
  }
3176
3094
 
3177
3095
  declare interface ExpInstallmentInfo {
@@ -3196,12 +3114,18 @@ declare interface ExpPaymentOptionDetail {
3196
3114
  * @public
3197
3115
  * @description Express element app config type
3198
3116
  */
3199
- export declare interface ExpressAppConfig extends BaseAppearance<AppearanceSetting> {
3117
+ export declare interface ExpressAppConfig extends BaseAppearance<AppearanceSetting>, BaseElementAppConfig {
3200
3118
  /** payment SessionData */
3201
3119
  sessionData?: string;
3202
3120
  /** Business division (country/region) */
3203
3121
  businessDivision?: string;
3204
- /** Amount & Currency */
3122
+ /**
3123
+ * Amount & Currency
3124
+ *
3125
+ * Only effective via `updateConfig({ amount })` at runtime.
3126
+ * Passing amount at creation time is ignored; the initial amount
3127
+ * comes from the server-side sdkQuery result (renderData.paymentAmount).
3128
+ */
3205
3129
  amount?: {
3206
3130
  currency: string;
3207
3131
  value: string;
@@ -3210,20 +3134,20 @@ export declare interface ExpressAppConfig extends BaseAppearance<AppearanceSetti
3210
3134
  paypal?: PayPalConfig;
3211
3135
  /**
3212
3136
  * Button text type (following Stripe Express Checkout Element design)
3213
- * Each payment method can independently set the button display text
3214
- * Reserved index signature for future payment method integration
3137
+ * Each payment method can independently set the button display text.
3215
3138
  */
3216
3139
  buttonType?: {
3217
3140
  /** PayPal: paypal | checkout | buynow | pay */
3218
3141
  paypal?: 'paypal' | 'checkout' | 'buynow' | 'pay';
3219
3142
  [method: string]: string | undefined;
3220
3143
  };
3221
- /** Unified height for all buttons (px) */
3144
+ /**
3145
+ * Unified height for all buttons (px)
3146
+ */
3222
3147
  buttonHeight?: number;
3223
3148
  /**
3224
3149
  * Button color theme (following Stripe Express Checkout Element design)
3225
- * Each payment method can independently set the theme color
3226
- * Reserved index signature for future payment method integration
3150
+ * Each payment method can independently set the theme color.
3227
3151
  */
3228
3152
  buttonTheme?: {
3229
3153
  /** PayPal: gold | blue | silver | white | black */
@@ -3241,6 +3165,13 @@ export declare interface ExpressAppConfig extends BaseAppearance<AppearanceSetti
3241
3165
  * Locale for internationalization, passed from entry params (loadAntom), default to en_US
3242
3166
  */
3243
3167
  locale?: string;
3168
+ /**
3169
+ * 是否运行在 Native App 的 WebView 中。
3170
+ * 为 true 时,跳转通过 onRedirect 事件委托给 Native 端处理。
3171
+ */
3172
+ isNativeAppWebview?: boolean;
3173
+ /* Excluded from this release type: merchantDomain */
3174
+ /* Excluded from this release type: doMain */
3244
3175
  }
3245
3176
 
3246
3177
  /** cancel 事件负载 */
@@ -3249,24 +3180,54 @@ export declare interface ExpressCancelEvent {
3249
3180
  data?: any;
3250
3181
  }
3251
3182
 
3252
- /** click 事件负载 */
3183
+ /** click 事件负载(纯通知,商户可用于埋点,SDK 不等待响应) */
3253
3184
  export declare interface ExpressClickEvent {
3254
3185
  expressPaymentType: string;
3255
- resolve: (options: ClickResolveOptions) => void;
3256
3186
  }
3257
3187
 
3258
3188
  /** confirm 事件负载(统一终态,替代 approve) */
3259
3189
  export declare interface ExpressConfirmData {
3260
3190
  expressPaymentType: string;
3261
- paymentData: any;
3262
- billingDetails?: any;
3263
- shippingAddress?: any;
3264
- sessionData?: string;
3191
+ billingDetails?: {
3192
+ name?: string;
3193
+ email?: string;
3194
+ phone?: string;
3195
+ address?: {
3196
+ line1?: string;
3197
+ line2?: string;
3198
+ city?: string;
3199
+ state?: string;
3200
+ postalCode?: string;
3201
+ country?: string;
3202
+ };
3203
+ };
3204
+ shippingAddress?: {
3205
+ name?: string;
3206
+ phone?: string;
3207
+ address?: {
3208
+ line1?: string;
3209
+ line2?: string;
3210
+ city?: string;
3211
+ state?: string;
3212
+ postalCode?: string;
3213
+ country?: string;
3214
+ };
3215
+ };
3216
+ /** 支付方式返回的原始支付数据(如 alipayCn、applePay 等) */
3217
+ paymentData?: unknown;
3218
+ /**
3219
+ * 商户主动拒绝本次支付(如库存不足、价格变动等)。
3220
+ * 调用后 SDK 立即取消支付流程,confirmPayment() 无需调用。
3221
+ */
3222
+ paymentFailed: () => void;
3265
3223
  }
3266
3224
 
3267
3225
  /**
3268
3226
  * @public
3269
3227
  * @description Express element - express checkout element, supports PayPal / Apple Pay / Google Pay
3228
+ *
3229
+ * Host 侧只保留 Element 生命周期、商户事件包装和 bridge 连接。
3230
+ * AP/GP/AlipayCN 的 submit、2DS/3DS、polling 结果处理都由 express_element webapp 承接。
3270
3231
  */
3271
3232
  export declare class ExpressElement extends BaseMainElement<ExpressElementConfig, ExpressElementEvents> {
3272
3233
  static elementType: string;
@@ -3274,15 +3235,48 @@ export declare class ExpressElement extends BaseMainElement<ExpressElementConfig
3274
3235
  * Store all function-type callbacks locally, not involved in postMessage serialization
3275
3236
  */
3276
3237
  private _callbacks;
3238
+ /** setup 阶段的 renderData,仅供非 Safari PC Apple Pay host-token 路径读取 paymentRequest。 */
3239
+ private _renderData;
3240
+ /**
3241
+ * 构造时传入的初始金额。cleanAppConfig 已剔除 amount,setup 阶段透传给 iframe(PayPal 按钮首屏需要)
3242
+ * 与 PayPal channelClientId 查询仍需读它;运行时改额只能走 updateConfig。
3243
+ */
3244
+ private _initialAmount;
3245
+ /**
3246
+ * 本地事件处理器(绕过 bridge 的 host→webapp 方向限制)。
3247
+ * bridge.on 只能监听 iframe 发来的消息;SDK host 主动推送事件给商户时走 _emit → _localHandlers。
3248
+ */
3249
+ private _localHandlers;
3250
+ /** 支付流程进行中标志(click → confirm/error/cancel 之间) */
3251
+ private _paymentInProgress;
3252
+ private _paypalOverlay;
3277
3253
  constructor(name: string, config: ExpressElementConfig);
3278
- setup(): Promise<Partial<ExpressAppConfig> | undefined>;
3279
3254
  /**
3280
- * Register internal event listeners (iframe communication)
3255
+ * 重写 on:
3256
+ * 1. 对 confirm 事件拦截,在商户回调执行前注入 paymentFailed()
3257
+ * 2. 对 onRedirect 事件同步注册到 _localHandlers(SDK host 主动推送时商户能收到)
3281
3258
  */
3282
- /** Overlay DOM node, created on click, removed after payment ends */
3283
- private _overlay;
3284
- private _showOverlay;
3285
- private _hideOverlay;
3259
+ on(event: string, handler: (...args: any[]) => void): void;
3260
+ /**
3261
+ * SDK host 主动推送事件给商户(不走 bridge postMessage,直接调用本地注册的 handler)。
3262
+ * 用于 Native WebView 场景下 SDK 需要向商户透传跳转信息等。
3263
+ */
3264
+ private _emit;
3265
+ updateConfig(newConfig: Pick<ExpressAppConfig, 'amount'>): Promise<ExpressElementEvents['OPENSDK@UPDATE_CONFIG_REPLY']>;
3266
+ /**
3267
+ * 商户在 confirm 回调内调用,触发实际支付提交。
3268
+ * iframe 收到 OPENSDK@COMPLETE_PAYMENT 后执行 submitPay / polling 等,
3269
+ * 完成后通过 OPENSDK@COMPLETE_PAYMENT_RESULT 回包,Promise resolve。
3270
+ */
3271
+ completePayment(redirect?: 'always' | 'if_required'): Promise<{
3272
+ success: boolean;
3273
+ result?: any;
3274
+ error?: {
3275
+ code: string;
3276
+ message: string;
3277
+ };
3278
+ }>;
3279
+ setup(): Promise<Partial<ExpressAppConfig> | undefined>;
3286
3280
  private registerInternalListeners;
3287
3281
  protected focus(): void;
3288
3282
  protected blur(): void;
@@ -3300,57 +3294,83 @@ export declare interface ExpressElementConfig extends BaseElementConfig<ExpressA
3300
3294
  * @public
3301
3295
  * @description Express element events type
3302
3296
  */
3303
- export declare interface ExpressElementEvents extends AntomBridgeEventMap<ExpressAppConfig> {
3304
- /**
3305
- * @description Element ready event — 上报可用支付方式
3306
- */
3297
+ export declare interface ExpressElementEvents extends AntomBridgeWithNativeEventMap<ExpressAppConfig> {
3307
3298
  ready: {
3308
3299
  availablePaymentMethods: Record<string, boolean>;
3309
3300
  };
3310
- /**
3311
- * @description 用户点击按钮 — 商户必须调用 event.resolve() 后 sheet 才弹出
3312
- * 对 PayPal: resolve 为 no-op(PayPal 自行弹出 popup)
3313
- */
3314
3301
  click: ExpressClickEvent;
3315
- /**
3316
- * @description 统一支付完成事件(替代 approve)
3317
- * 用户授权完成后触发,通过 expressPaymentType 区分钱包类型
3318
- */
3319
3302
  confirm: ExpressConfirmData;
3320
- /**
3321
- * @description 支付错误事件(扩展基类 ErrorPayload,新增 expressPaymentType)
3322
- */
3323
3303
  error: ErrorPayload & {
3324
3304
  expressPaymentType: string;
3325
3305
  };
3326
- /**
3327
- * @description 用户取消支付
3328
- */
3329
3306
  cancel: ExpressCancelEvent;
3330
- /**
3331
- * @description 用户在 sheet 内变更收货地址(AP/GP only,PayPal 不触发)
3332
- */
3333
3307
  shippingaddresschange: {
3334
3308
  expressPaymentType: string;
3335
3309
  address: any;
3336
3310
  resolve: (options: ShippingResolveOptions) => void;
3337
3311
  reject: (reason: string) => void;
3338
3312
  };
3339
- /**
3340
- * @description 用户在 sheet 内变更配送方式(AP/GP only,PayPal 不触发)
3341
- */
3342
3313
  shippingratechange: {
3343
3314
  expressPaymentType: string;
3344
3315
  shippingRate: any;
3345
3316
  resolve: (options: RateResolveOptions) => void;
3346
3317
  };
3347
- /* Excluded from this release type: contentHeightChanged */
3348
- /* Excluded from this release type: "paypal:createOrder" */
3349
- /* Excluded from this release type: "paypal:createOrder:reply" */
3350
- /* Excluded from this release type: "paypal:onShippingAddressChange" */
3351
- /* Excluded from this release type: "paypal:onShippingAddressChange:reply" */
3352
- /* Excluded from this release type: "paypal:onShippingOptionsChange" */
3353
- /* Excluded from this release type: "paypal:onShippingOptionsChange:reply" */
3318
+ contentHeightChanged: {
3319
+ height: number;
3320
+ };
3321
+ 'OPENSDK@CLICK': {
3322
+ expressPaymentType: string;
3323
+ };
3324
+ 'OPENSDK@CLICK_RESOLVE': Record<string, never>;
3325
+ 'OPENSDK@PAYPAL_CREATE_ORDER': {
3326
+ requestId: string;
3327
+ };
3328
+ 'OPENSDK@PAYPAL_CREATE_ORDER_REPLY': {
3329
+ requestId: string;
3330
+ sessionData?: string;
3331
+ error?: string;
3332
+ };
3333
+ 'OPENSDK@PAYPAL_SHIPPING_ADDRESS_CHANGE': {
3334
+ requestId: string;
3335
+ shippingData: any;
3336
+ };
3337
+ 'OPENSDK@PAYPAL_SHIPPING_ADDRESS_CHANGE_REPLY': {
3338
+ requestId: string;
3339
+ error?: string;
3340
+ };
3341
+ 'OPENSDK@PAYPAL_SHIPPING_OPTIONS_CHANGE': {
3342
+ requestId: string;
3343
+ shippingData: any;
3344
+ };
3345
+ 'OPENSDK@PAYPAL_SHIPPING_OPTIONS_CHANGE_REPLY': {
3346
+ requestId: string;
3347
+ error?: string;
3348
+ };
3349
+ 'OPENSDK@GET_APPLE_PAY_TOKEN': {
3350
+ requestId: string;
3351
+ expressPaymentType: string;
3352
+ };
3353
+ /** host 完成 Apple Pay token 获取后回包给 iframe,submit/3DS/polling 均由 webapp 完成 */
3354
+ 'OPENSDK@GET_APPLE_PAY_TOKEN_REPLY': {
3355
+ requestId: string;
3356
+ success: boolean;
3357
+ result?: any;
3358
+ errorCode?: string;
3359
+ errorMessage?: string;
3360
+ billingDetails?: any;
3361
+ shippingAddress?: any;
3362
+ };
3363
+ 'OPENSDK@UPDATE_CONFIG_REPLY': {
3364
+ error?: ErrorPayload<string>;
3365
+ };
3366
+ 'OPENSDK@COMPLETE_PAYMENT_REJECT': Record<string, never>;
3367
+ onRedirect: {
3368
+ normalUrl: string;
3369
+ applinkUrl?: string;
3370
+ schemaUrl?: string;
3371
+ isDestroy: boolean;
3372
+ needReset: boolean;
3373
+ };
3354
3374
  }
3355
3375
 
3356
3376
  declare interface ExpSupportBank {
@@ -3375,6 +3395,24 @@ declare interface ExpSupportCardBrand {
3375
3395
  logo?: Logo;
3376
3396
  }
3377
3397
 
3398
+ /**
3399
+ * @description 支持的分期银行信息
3400
+ */
3401
+ declare interface ExpSupportIppBank {
3402
+ /**
3403
+ * @description bank short name or bank code
3404
+ */
3405
+ bankShortName?: string;
3406
+ /**
3407
+ * @description logo
3408
+ */
3409
+ logo?: Logo;
3410
+ /**
3411
+ * @description bins
3412
+ */
3413
+ bins?: string[];
3414
+ }
3415
+
3378
3416
  declare type Fallback<T> = { [P in keyof T]: T[P] | readonly NonNullable<T[P]>[] };
3379
3417
 
3380
3418
  declare interface FirstPhaseSubscriptionDetail {
@@ -3392,6 +3430,27 @@ declare interface FirstPhaseSubscriptionDetail {
3392
3430
  promotionDetails?: PromotionDetail[];
3393
3431
  }
3394
3432
 
3433
+ declare type FontSource = CssFontSource | CustomFontSource;
3434
+
3435
+ declare interface FrontModulesToBeLoadedInterface {
3436
+ acquirerName: string;
3437
+ scriptUrl: string;
3438
+ }
3439
+
3440
+ /**
3441
+ * @description 分期银行展示模型
3442
+ */
3443
+ declare interface FrontSupportIppBank {
3444
+ /**
3445
+ * @description bank short name or bank code
3446
+ */
3447
+ bankShortName?: string;
3448
+ /**
3449
+ * @description logo
3450
+ */
3451
+ logo?: Logo;
3452
+ }
3453
+
3395
3454
  declare type GetI18nQueryParam = string | {
3396
3455
  /**
3397
3456
  * 多语言文案的 key
@@ -3409,40 +3468,6 @@ declare type GetI18nQueryParam = string | {
3409
3468
  defaultMessage?: string;
3410
3469
  };
3411
3470
 
3412
- declare function getMiniPerformance(): Promise<{
3413
- performance: {
3414
- appLaunch: number;
3415
- jumpAppStartUnix: number;
3416
- preparePhase: number;
3417
- appPhase: number;
3418
- pagePhase: number;
3419
- appxPhase: number;
3420
- launchId: string;
3421
- launchType: 0 | 1;
3422
- };
3423
- onLoadTime: number;
3424
- loadId: string;
3425
- srcCount: number;
3426
- webviewComponentSrc?: string | undefined;
3427
- } | undefined>;
3428
-
3429
- declare type GetRequesterResult = (data: string, rawData: (ReportData & BaseInfo) | IOptions | IEventOPtions) => Promise<void>;
3430
-
3431
- declare interface GetWebVitalsInfoResult {
3432
- fcp: Promise<number | null | undefined>;
3433
- ttfb: Promise<number | null | undefined>;
3434
- lcp: Promise<number | null | undefined>;
3435
- inp: Promise<number | null | undefined>;
3436
- cls: Promise<number | null | undefined>;
3437
- }
3438
-
3439
- declare interface GetWhiteScreenInfoOptions {
3440
- selector?: string | string[];
3441
- delay?: number | (() => number);
3442
- persistent?: boolean;
3443
- ignoreNotInViewport?: boolean;
3444
- }
3445
-
3446
3471
  declare type GlobalOptions = {
3447
3472
  i18n?: SimpleI18n;
3448
3473
  i18nPrefix: string;
@@ -4010,17 +4035,12 @@ declare type HtmlAttributes =
4010
4035
  | "[writingsuggestions]"
4011
4036
  | "[xmlns]";
4012
4037
 
4013
- declare interface HTTPErrorCallbackOptions {
4014
- requestType: 'fetch' | 'xhr';
4015
- error?: unknown;
4016
- status?: number;
4017
- url: string;
4018
- type?: string;
4019
- redirected?: 0 | 1;
4020
- responseUrl?: string;
4021
- time: number;
4022
- method?: string;
4023
- aborted?: 0 | 1;
4038
+ declare interface IApplePayContactField {
4039
+ email: string;
4040
+ name: string;
4041
+ phone: string;
4042
+ postalAddress: string;
4043
+ phoneticName: string;
4024
4044
  }
4025
4045
 
4026
4046
  declare interface iBaseElementClass {
@@ -4028,16 +4048,6 @@ declare interface iBaseElementClass {
4028
4048
  elementType: string;
4029
4049
  }
4030
4050
 
4031
- declare interface IEventOPtions {
4032
- eventId: string;
4033
- param4: Record<string, any>;
4034
- immediat?: boolean;
4035
- }
4036
-
4037
- declare type IMDAP_SERVER = (typeof imdapServers)[number];
4038
-
4039
- declare const imdapServers: readonly ["https://imdap-sea.alipay.com/loggw/dwcookieLogGet.do", "https://imdap.alipay.com/loggw/dwcookieLogGet.do", "https://imdap-de.alipay.com/loggw/dwcookieLogGet.do"];
4040
-
4041
4051
  declare interface InstallmentPlan {
4042
4052
  /**
4043
4053
  * @description 分期支持的银行
@@ -4156,102 +4166,117 @@ declare interface InterestFree {
4156
4166
  bankShortName?: string;
4157
4167
  }
4158
4168
 
4159
- declare class IntlOpenSDKTracker extends CompatibleTracker {
4160
- constructor(initOption?: IntlOpenSDKTrackerInitOptions_2);
4161
- initi(options: IntlOpenSDKTrackerInitOptions_2): Promise<boolean>;
4162
- set(data: Partial<IntlOpenSDKTrackerInitOptions_2>): void;
4163
- }
4164
-
4165
- declare interface IntlOpenSDKTrackerInitOptions extends Omit<IntlOpenSDKTrackerInitOptions_2, 'appId'> {
4169
+ declare interface IntlOpenSDKTrackerInitOptions extends Omit<ExcludeUndefined<CompatibleTrackerFullOptions>, 'appId'> {
4170
+ trackId?: string;
4171
+ /**
4172
+ * @description appId,默认值为180020050100012557
4173
+ */
4166
4174
  appId?: string;
4167
- }
4168
-
4169
- declare interface IntlOpenSDKTrackerInitOptions_2 extends Omit<OriginTrackerInitOptions, 'bizType' | 'productId'> {
4170
- whiteScreen?: BlankMonitorConfig | boolean;
4171
- bizType?: string;
4172
- productId?: string;
4173
4175
  /**
4174
- * @description 追踪id
4176
+ * origin 完全按入参 key 输出
4177
+ * snake → 强制 snake_case
4178
+ * camel → 强制 camelCase
4179
+ * both → snake + origin 双写
4175
4180
  */
4176
- trackId?: string;
4177
- mdata?: Record<string, any>;
4178
- performance?: boolean;
4179
- error?: boolean;
4180
- }
4181
-
4182
- declare interface IOptions {
4183
- actionId: string;
4184
- spmId: string;
4185
- param1?: string;
4186
- param2?: string;
4187
- param3?: string;
4188
- param4?: Record<string, any>;
4189
- param5?: Record<string, any>;
4190
- stayTime?: number;
4191
- }
4192
-
4193
- declare interface ISystemInfo {
4194
- readonly pixelRatio: number;
4195
- readonly windowWidth: number;
4196
- readonly windowHeight: number;
4197
- readonly model: string;
4198
- readonly language: string;
4199
- readonly version: string;
4200
- readonly platform: string;
4201
- readonly system: string;
4202
- readonly screenWidth: number;
4203
- readonly screenHeight: number;
4204
- readonly brand: string;
4205
- readonly app: string;
4206
- readonly [propName: string]: any;
4207
- }
4208
-
4209
- declare interface ITracert extends IUserTracertProperties {
4210
- get: (arg0: string) => any;
4211
- set: (arg0: IUserTracertProperties) => void;
4212
- loadPlugins: (_plugins: PluginFunction[]) => void;
4213
- readonly logLevel?: string;
4214
- readonly logVersion?: string;
4215
- readonly debug?: boolean;
4216
- readonly contact?: boolean;
4217
- readonly pluginReady?: boolean;
4218
- readonly _plugins?: readonly PluginFunction[];
4219
- readonly _beforeEvObj?: Record<string, EventFunction[]>;
4220
- readonly _afterEvObj?: Record<string, EventFunction[]>;
4221
- readonly _pluginLoadCnt?: number;
4222
- readonly apiCashList?: any[];
4223
- }
4224
-
4225
- declare interface IUserTracertProperties {
4226
- readonly ready?: boolean;
4227
- readonly bizType?: string;
4228
- readonly deviceId?: string;
4229
- readonly userId?: string;
4230
- readonly spmAPos?: string;
4231
- readonly spmBPos?: string;
4232
- readonly pageId?: string;
4233
- readonly server?: string;
4234
- readonly servers?: string[];
4235
- readonly chInfo?: string;
4236
- readonly scm?: string;
4237
- readonly env?: Env;
4238
- readonly switch?: boolean;
4239
- readonly sendFrequency?: number;
4240
- readonly batchCount?: number;
4241
- readonly referSPM?: string;
4242
- readonly sessionId?: string;
4243
- readonly appId?: string;
4244
- readonly productId?: string;
4245
- readonly mdata?: Record<string, number | string>;
4246
- readonly systemInfo?: ISystemInfo;
4247
- readonly networkType?: string;
4248
- readonly path?: string;
4249
- readonly packageVersion?: string;
4250
- readonly autoExpo?: boolean;
4181
+ keyFormat?: 'origin' | 'snake' | 'camel' | 'both';
4182
+ /**
4183
+ * 是否上报idengine_user_path
4184
+ */
4185
+ userPathAuto?: boolean;
4251
4186
  }
4252
4187
 
4253
- declare interface LagPlugin {
4254
- onFpsLag?: (callback: (durationList: number[]) => void, maxDuration?: number, maxTimeoutCount?: number) => void;
4188
+ declare interface IPaymentSessionMetaData {
4189
+ clientId?: string;
4190
+ renderDisplayType?: string;
4191
+ paymentSessionConfig?: PaymentSessionConfig;
4192
+ securityConfig?: SessionSecurityConfig;
4193
+ moneyView?: any;
4194
+ extendInfo?: string;
4195
+ paymentMethodInfoView?: any;
4196
+ paymentView?: any;
4197
+ modernWeb?: boolean;
4198
+ action?: PaymentSessionAction;
4199
+ /**
4200
+ * @description 是一个string,灰度开关,格式为 flag1,flag2,flag3
4201
+ */
4202
+ flowSwitchTags?: string;
4203
+ authUrlInfo?: {
4204
+ appIdentifier?: string;
4205
+ applinkUrl?: string;
4206
+ normalUrl?: string;
4207
+ schemeUrl?: string;
4208
+ authUrl?: string;
4209
+ };
4210
+ paymentSessionFactor?: {
4211
+ externalRiskTimeout?: number;
4212
+ extendInfo?: {
4213
+ merchantCapabilities?: string[];
4214
+ supportedNetworks?: string[];
4215
+ requiredBillingContactFields: IApplePayContactField[];
4216
+ requiredShippingContactFields: IApplePayContactField[];
4217
+ };
4218
+ merchantInfo?: {
4219
+ registeredCountry?: string;
4220
+ partnerId?: string;
4221
+ merchantName?: string;
4222
+ };
4223
+ order?: {
4224
+ orderDescription: string;
4225
+ };
4226
+ paymentAmount?: {
4227
+ value?: string;
4228
+ currency?: string;
4229
+ };
4230
+ paymentMethodInfo?: {
4231
+ paymentMethodType?: string;
4232
+ };
4233
+ paymentMethodViewMetaData?: any;
4234
+ paymentRequestId?: string;
4235
+ supportedLanguages?: any;
4236
+ /**
4237
+ * 当前为苹果分期场景的信息
4238
+ */
4239
+ recurringInfo?: {
4240
+ /**
4241
+ * 代扣协议开始日期 不传为当前系统时间
4242
+ */
4243
+ startDate?: number;
4244
+ /**
4245
+ * 代扣协议结束日期 不传不限制结束时间
4246
+ */
4247
+ endDate?: number;
4248
+ /**
4249
+ * 付款时间间隔单位,支持:"year" "month" "day" "hour" "minute" 不传默认month
4250
+ */
4251
+ intervalUnit?: string;
4252
+ /**
4253
+ * 付款时间间隔。比如每过6个月付款一次,intervalCount就是6, 不传默认为1
4254
+ */
4255
+ intervalCount?: number;
4256
+ /**
4257
+ * 分期标题信息
4258
+ */
4259
+ title?: string;
4260
+ /**
4261
+ * 分期管理页面
4262
+ */
4263
+ managementURL?: string;
4264
+ /**
4265
+ * 苹果通知ipay MAPN信息变更的地址
4266
+ */
4267
+ tokenNotificationURL?: string;
4268
+ /**
4269
+ * 分期协议描述
4270
+ */
4271
+ agreementDescription?: string;
4272
+ };
4273
+ frontModulesToBeLoaded?: FrontModulesToBeLoadedInterface[];
4274
+ };
4275
+ connectFactor?: {
4276
+ enableConnect?: boolean;
4277
+ };
4278
+ skipRenderPaymentMethod?: boolean;
4279
+ needAccountConfirmPage?: boolean;
4255
4280
  }
4256
4281
 
4257
4282
  /**
@@ -4306,86 +4331,6 @@ export declare interface LoadAntomConfig extends Omit<BaseFactoryConfig, 'tracke
4306
4331
  env?: 'sandbox' | 'prod';
4307
4332
  }
4308
4333
 
4309
- declare interface LocationInfo {
4310
- countryName?: string;
4311
- cityName?: string;
4312
- provinceName?: string;
4313
- area?: string;
4314
- }
4315
-
4316
- declare interface LogInfo {
4317
- title: string;
4318
- msg?: string | Error | Record<string, number | string>;
4319
- }
4320
-
4321
- declare type LogItem = {
4322
- code: string;
4323
- msg: string;
4324
- marmotId?: string;
4325
- s1?: string | number;
4326
- s2?: string | number;
4327
- s3?: string | number;
4328
- s4?: string | number;
4329
- s5?: string | number;
4330
- s6?: string | number;
4331
- s7?: string | number;
4332
- s8?: string | number;
4333
- s9?: string | number;
4334
- s10?: string | number;
4335
- s11?: string | number;
4336
- s12?: string | number;
4337
- s13?: string | number;
4338
- s14?: string | number;
4339
- s15?: string | number;
4340
- s16?: string | number;
4341
- s17?: string | number;
4342
- s18?: string | number;
4343
- s19?: string | number;
4344
- s20?: string | number;
4345
- env?: Env_2;
4346
- sdk?: string;
4347
- container?: string;
4348
- title?: string;
4349
- fullUrl?: string;
4350
- sprintId?: string;
4351
- ip?: string;
4352
- countryName?: string;
4353
- cityName?: string;
4354
- provinceName?: string;
4355
- cOfflineVer?: string;
4356
- url?: string;
4357
- referrer?: string;
4358
- domCnt?: number;
4359
- delay?: number;
4360
- scrollTop?: number;
4361
- lastAction?: string;
4362
- sessionId?: string;
4363
- isp?: string;
4364
- area?: string;
4365
- ua?: string;
4366
- browser?: string;
4367
- os?: string;
4368
- device?: string;
4369
- deviceType?: string;
4370
- deviceBrand?: string;
4371
- deviceModel?: string;
4372
- screenWidth?: number;
4373
- screenHeight?: number;
4374
- contentHeight?: number;
4375
- pixelRatio?: number;
4376
- cClient?: string;
4377
- cClientId?: string;
4378
- cCoreVer?: string;
4379
- assetsVer?: string;
4380
- traceId?: string;
4381
- serverIp?: string;
4382
- serverEnv?: string;
4383
- clientId?: string;
4384
- spm?: string;
4385
- spma?: string;
4386
- spmb?: string;
4387
- } & DMC;
4388
-
4389
4334
  /**
4390
4335
  * @description Logo信息
4391
4336
  */
@@ -4416,29 +4361,6 @@ declare interface Logo {
4416
4361
  logoHeight?: string;
4417
4362
  }
4418
4363
 
4419
- declare type M = {
4420
- m1?: number;
4421
- m2?: number;
4422
- m3?: number;
4423
- m4?: number;
4424
- m5?: number;
4425
- m6?: number;
4426
- m7?: number;
4427
- m8?: number;
4428
- m9?: number;
4429
- m10?: number;
4430
- m11?: number;
4431
- m12?: number;
4432
- m13?: number;
4433
- m14?: number;
4434
- m15?: number;
4435
- m16?: number;
4436
- m17?: number;
4437
- m18?: number;
4438
- m19?: number;
4439
- m20?: number;
4440
- };
4441
-
4442
4364
  /**
4443
4365
  * @description 端上的行为设定 @Author yanhong
4444
4366
  */
@@ -4582,12 +4504,6 @@ declare interface MultiCurrencyMoney {
4582
4504
  currencyValue?: string;
4583
4505
  }
4584
4506
 
4585
- declare interface NetworkInfo {
4586
- networkType?: string;
4587
- isp?: string;
4588
- ip?: string;
4589
- }
4590
-
4591
4507
  declare interface ObsoleteProperties<TLength = (string & {}) | 0, TTime = string & {}> {
4592
4508
  /**
4593
4509
  * The **`box-align`** CSS property specifies how an element aligns its contents across its layout in a perpendicular direction. The effect of the property is only visible if there is extra space in the box.
@@ -6659,34 +6575,96 @@ declare interface ObsoletePropertiesHyphen<TLength = (string & {}) | 0, TTime =
6659
6575
  *
6660
6576
  * @deprecated
6661
6577
  */
6662
- "-webkit-box-orient"?: Property.BoxOrient | undefined;
6578
+ "-webkit-box-orient"?: Property.BoxOrient | undefined;
6579
+ /**
6580
+ * The **`-moz-box-pack`** and **`-webkit-box-pack`** CSS properties specify how a `-moz-box` or `-webkit-box` packs its contents in the direction of its layout. The effect of this is only visible if there is extra space in the box.
6581
+ *
6582
+ * **Syntax**: `start | center | end | justify`
6583
+ *
6584
+ * **Initial value**: `start`
6585
+ *
6586
+ * @deprecated
6587
+ */
6588
+ "-webkit-box-pack"?: Property.BoxPack | undefined;
6589
+ }
6590
+
6591
+ declare type ObsoletePropertiesHyphenFallback<TLength = (string & {}) | 0, TTime = string & {}> = Fallback<ObsoletePropertiesHyphen<TLength, TTime>>;
6592
+
6593
+ declare interface OneAccountInfo {
6594
+ /**
6595
+ * @description accountId
6596
+ */
6597
+ oneAccountId?: string;
6598
+ /**
6599
+ * @description 邮箱
6600
+ */
6601
+ email?: string;
6602
+ /**
6603
+ * @description 账号状态
6604
+ */
6605
+ accountStatus?: string;
6606
+ }
6607
+
6608
+ /**
6609
+ * @description one account 账户信息查询结果
6610
+ */
6611
+ declare interface OneAccountQueryResult {
6612
+ /**
6613
+ * @description 是否业务处理成功
6614
+ */
6615
+ success?: boolean;
6616
+ /**
6617
+ * @description 错误上下文
6618
+ */
6619
+ errorContext?: ErrorContext;
6620
+ /**
6621
+ * @description 返回结果码
6622
+ */
6623
+ resultCode?: string;
6624
+ /**
6625
+ * @description 返回结果信息
6626
+ */
6627
+ resultMessage?: string;
6628
+ /**
6629
+ * @description error actions
6630
+ */
6631
+ errorActions?: Record<string, string>;
6632
+ /**
6633
+ * @description error code
6634
+ */
6635
+ errorCode?: string;
6636
+ /**
6637
+ * @description error status
6638
+ */
6639
+ errorStatus?: string;
6640
+ /**
6641
+ * @description error message
6642
+ */
6643
+ errorMessage?: string;
6644
+ /**
6645
+ * @description extend info
6646
+ */
6647
+ extendInfo?: Record<string, string>;
6663
6648
  /**
6664
- * The **`-moz-box-pack`** and **`-webkit-box-pack`** CSS properties specify how a `-moz-box` or `-webkit-box` packs its contents in the direction of its layout. The effect of this is only visible if there is extra space in the box.
6665
- *
6666
- * **Syntax**: `start | center | end | justify`
6667
- *
6668
- * **Initial value**: `start`
6669
- *
6670
- * @deprecated
6649
+ * @description one account 账户信息
6671
6650
  */
6672
- "-webkit-box-pack"?: Property.BoxPack | undefined;
6673
- }
6674
-
6675
- declare type ObsoletePropertiesHyphenFallback<TLength = (string & {}) | 0, TTime = string & {}> = Fallback<ObsoletePropertiesHyphen<TLength, TTime>>;
6676
-
6677
- declare interface OneAccountInfo {
6651
+ accountInfo?: OneAccountInfo;
6678
6652
  /**
6679
- * @description accountId
6653
+ * @description action form 下一步动作
6680
6654
  */
6681
- oneAccountId?: string;
6655
+ actionForm?: OtpChallengeActionForm;
6682
6656
  /**
6683
- * @description 邮箱
6657
+ * @description 支付方式列表
6684
6658
  */
6685
- email?: string;
6659
+ paymentMethods?: PaymentMethodView[];
6686
6660
  /**
6687
- * @description 账号状态
6661
+ * @description 物流信息
6688
6662
  */
6689
- accountStatus?: string;
6663
+ shippings?: ShippingInfo_2[];
6664
+ /**
6665
+ * @description 支付金额 (订单金额 + 物流费)
6666
+ */
6667
+ paymentAmount?: MobileMoneyView;
6690
6668
  }
6691
6669
 
6692
6670
  /**
@@ -6749,7 +6727,9 @@ declare type OpenSDKInternalErrorCodes = (typeof OpenSDKInternalErrorCodes)[keyo
6749
6727
 
6750
6728
  declare class OpenSDKTracker {
6751
6729
  private options?;
6730
+ private intlTrackerOptions?;
6752
6731
  private tracker?;
6732
+ private trackerInitPromise?;
6753
6733
  /**
6754
6734
  * @description trackId,会话最终的唯一标识,可以用来打通服务端,追踪整体会话
6755
6735
  */
@@ -6767,7 +6747,7 @@ declare class OpenSDKTracker {
6767
6747
  * @param options
6768
6748
  * @returns
6769
6749
  */
6770
- initTracker(options?: IntlOpenSDKTrackerInitOptions): Promise<IntlOpenSDKTracker | undefined>;
6750
+ initTracker(options?: IntlOpenSDKTrackerInitOptions): Promise<CompatibleTrackerFull | undefined>;
6771
6751
  private safeCall;
6772
6752
  /**
6773
6753
  *
@@ -6777,7 +6757,7 @@ declare class OpenSDKTracker {
6777
6757
  /**
6778
6758
  * @description 设置属性
6779
6759
  */
6780
- set(data: Partial<IntlOpenSDKTrackerInitOptions>): void;
6760
+ set(data: Partial<ExcludeUndefined<IntlOpenSDKTrackerInitOptions>>): void;
6781
6761
  /**
6782
6762
  * 会以 10141 code 上报一条常规日志,日志头为 D-AE
6783
6763
  * @see https://yuque.antfin.com/marmot/handbook/beginning#cq9Zw
@@ -6787,38 +6767,38 @@ declare class OpenSDKTracker {
6787
6767
  * 请在marmot申请code后使用,必须关联code
6788
6768
  * @see https://yuque.antfin.com/marmot/handbook/beginning#W3dtb
6789
6769
  */
6790
- log(...args: Parameters<IntlOpenSDKTracker['log']>): void;
6770
+ log(...args: Parameters<CompatibleTrackerFull['log']>): void;
6791
6771
  /**
6792
6772
  * 用于埋点相关上报,点击
6793
6773
  * @see https://yuque.antfin.com/marmot/handbook/beginning#XQel9
6794
6774
  */
6795
- click(...args: Parameters<IntlOpenSDKTracker['click']>): void;
6775
+ click(...args: Parameters<CompatibleTrackerFull['click']>): void;
6796
6776
  /**
6797
6777
  * 用于埋点相关上报,曝光
6798
6778
  * @see https://yuque.antfin.com/marmot/handbook/beginning#LiVxE
6799
6779
  */
6800
- expo(...args: Parameters<IntlOpenSDKTracker['expo']>): void;
6780
+ expo(...args: Parameters<CompatibleTrackerFull['expo']>): void;
6801
6781
  /**
6802
6782
  * 用于日志管控
6803
6783
  * @see https://yuque.antfin.com/marmot/handbook/beginning#rK7Ru
6804
6784
  */
6805
- onSendData(...args: Parameters<IntlOpenSDKTracker['onSendData']>): void;
6785
+ onSendData(...args: Parameters<CompatibleTrackerFull['onSendData']>): void;
6806
6786
  /**
6807
6787
  * 用于日志管控
6808
6788
  * @see https://yuque.antfin.com/marmot/handbook/beginning#rK7Ru
6809
6789
  */
6810
- offSendData(...args: Parameters<IntlOpenSDKTracker['offSendData']>): void;
6790
+ offSendData(...args: Parameters<CompatibleTrackerFull['offSendData']>): void;
6811
6791
  /**
6812
6792
  * 用于埋点相关上报,上报的日志头为 D-VM
6813
6793
  * @see https://yuque.antfin.com/marmot/handbook/beginning#RSCKn
6814
6794
  */
6815
- pageMonitor(...args: Parameters<IntlOpenSDKTracker['pageMonitor']>): void;
6795
+ pageMonitor(...args: Parameters<CompatibleTrackerFull['pageMonitor']>): void;
6816
6796
  /**
6817
6797
  * 用于上报自定义性能指标,单次仅上报一个指标
6818
6798
  * @param {string} key — m1 - m20
6819
6799
  * @param {number} num — 耗时,数字,一定要 >= 0,否则无统计意义
6820
6800
  */
6821
- reportCustomizedPerformance(...args: Parameters<IntlOpenSDKTracker['reportCustomizedPerformance']>): void;
6801
+ reportCustomizedPerformance(...args: Parameters<CompatibleTrackerFull['reportCustomizedPerformance']>): void;
6822
6802
  }
6823
6803
 
6824
6804
  /**
@@ -6831,65 +6811,54 @@ declare interface OrderInfo {
6831
6811
  orderDescription?: string;
6832
6812
  }
6833
6813
 
6834
- declare interface OriginTrackerInitOptions {
6835
- isMarmot?: boolean;
6836
- spmConfig?: SpmConfig;
6837
- bizType: string;
6838
- appId: string;
6839
- /**
6840
- * 适用于从雨燕监控迁移到 marmot 的场景
6841
- * 该字段的值可使用雨燕监控的 appId 值
6842
- * 最终该值会放在 D-AE 日志类型的 appId 字段位置,并覆盖扩展参数 4 中的 idengine_groupId 值
6843
- * 正常情况下不需要用到,有疑问咨询 @之其 205637
6844
- **/
6845
- compatibleAppId?: string;
6846
- productId: string;
6847
- userId?: string;
6848
- deviceId?: string;
6849
- chInfo?: string;
6850
- batchCount?: number;
6851
- plugins?: PluginFunction[];
6852
- server?: string;
6853
- /**
6854
- * servers 传入空数组或不传的情况下,不会禁用所有日志的上报,这个字段不是用来做上报开关的
6855
- * 就像 server 不传或传空字符串的情况下,也不会禁用日志的上报,会使用默认的服务器地址
6856
- * servers 只在有至少一个有效值的情况下才有意义
6857
- */
6858
- servers?: string[];
6859
- mdata?: Record<string, number | string>;
6860
- env?: Env_2;
6861
- ready?: boolean;
6862
- isReport?: boolean;
6863
- version?: string;
6864
- funnelAuto?: boolean;
6865
- userPathAuto?: boolean;
6866
- autoExpo?: boolean;
6867
- autoClick?: boolean;
6868
- expoOnce?: boolean;
6869
- platform?: string;
6870
- sprintId?: string;
6871
- autoReportConfig?: {
6872
- isReport?: boolean;
6873
- programVersion?: string;
6874
- productId?: string;
6875
- appId?: string;
6876
- bizType?: string;
6877
- imdapServerIndex?: number;
6878
- server?: string;
6879
- servers?: string[];
6880
- platform?: string;
6881
- deviceId?: string;
6882
- };
6883
- whiteScreenConfig?: BlankMonitorConfig | boolean;
6884
- fmpIgnoreElements?: string[];
6885
- enableBehavior?: BehaviorConfig | boolean;
6886
- enableRequestHook?: RequestHookConfig | boolean;
6887
- enableJSAPIReport?: boolean;
6888
- }
6889
-
6890
- declare interface OSInfo {
6891
- os?: string;
6892
- osVer?: string;
6814
+ declare interface OtpChallengeActionForm {
6815
+ /**
6816
+ * @description action form type
6817
+ */
6818
+ actionFormType?: string;
6819
+ /**
6820
+ * @description type of challenge
6821
+ */
6822
+ challengeType?: string;
6823
+ /**
6824
+ * @description The actual render value
6825
+ */
6826
+ challengeRenderValue?: string;
6827
+ /**
6828
+ * @description Describe the challenge is required by AAC or external party
6829
+ */
6830
+ triggerSource?: string;
6831
+ /**
6832
+ * @description is support retry challenge
6833
+ * @default true
6834
+ */
6835
+ isChallengeRetrySupported?: boolean;
6836
+ /**
6837
+ * @description is fist otp auto triggered
6838
+ * @default false
6839
+ */
6840
+ isChallengeAutoTriggered?: boolean;
6841
+ /**
6842
+ * @description estimated challenge response duration
6843
+ * @default 0
6844
+ */
6845
+ estimatedDuration?: number;
6846
+ /**
6847
+ * @description url - like h5 sdk challenge need to call back url
6848
+ */
6849
+ challengeUrl?: string;
6850
+ /**
6851
+ * @description extend information
6852
+ */
6853
+ extendInfo?: string;
6854
+ /**
6855
+ * @description verify Id
6856
+ */
6857
+ verifyId?: string;
6858
+ /**
6859
+ * @description 重发次数
6860
+ */
6861
+ resendLeftTimes?: number;
6893
6862
  }
6894
6863
 
6895
6864
  declare type PartialSpeKey<T, V> = Partial<T extends infer K extends string ? Record<K, V> : Record<string, V>>;
@@ -6913,6 +6882,60 @@ declare interface PayByLinkInfo {
6913
6882
  linkVersion?: number;
6914
6883
  }
6915
6884
 
6885
+ /**
6886
+ * @description Payment element app config type
6887
+ */
6888
+ export declare interface PaymentAppConfig extends BaseAppearance<PaymentAppearance>, BaseElementAppConfig {
6889
+ /**
6890
+ * @description sessionData,无法通过updateConfig更新
6891
+ */
6892
+ sessionData?: string;
6893
+ /* Excluded from this release type: merchantDomain */
6894
+ /* Excluded from this release type: renderData */
6895
+ /* Excluded from this release type: connectAccount */
6896
+ /* Excluded from this release type: sessionMetaData */
6897
+ /* Excluded from this release type: renderDataError */
6898
+ /* Excluded from this release type: sdkVersion */
6899
+ /* Excluded from this release type: _requestConfig */
6900
+ /* Excluded from this release type: logMetaData */
6901
+ /* Excluded from this release type: heightOfVisible */
6902
+ }
6903
+
6904
+ /**
6905
+ * @description Payment element appearance type
6906
+ */
6907
+ export declare type PaymentAppearance = PickAppearance<{
6908
+ displaySetting: 'showPaymentMethodListWhenSingleOption' | 'showCardBrandIcon' | 'showRadioWhenAccordionLayout' | 'showCardCVV';
6909
+ theme: AntomTheme;
6910
+ variables: AntomVariables;
6911
+ layout: AntomLayouts;
6912
+ }>;
6913
+
6914
+ /**
6915
+ * @description Payment element
6916
+ */
6917
+ export declare class PaymentElement extends BaseMainElement<PaymentElementConfig, PaymentElementEvents> {
6918
+ static elementType: string;
6919
+ constructor(name: string, config: PaymentElementConfig);
6920
+ /* Excluded from this release type: setup */
6921
+ /* Excluded from this release type: submit */
6922
+ protected focus(): void;
6923
+ protected blur(): void;
6924
+ protected clear(): void;
6925
+ }
6926
+
6927
+ /**
6928
+ * @description Payment element config type
6929
+ */
6930
+ declare interface PaymentElementConfig extends BaseElementConfig<PaymentAppConfig> {
6931
+ }
6932
+
6933
+ /**
6934
+ * @description Payment element events
6935
+ */
6936
+ export declare interface PaymentElementEvents extends AntomBridgeWithNativeEventMap<PaymentAppConfig, PaymentSubmitParams, PaymentSubmitResult> {
6937
+ }
6938
+
6916
6939
  declare interface PaymentElementView {
6917
6940
  /**
6918
6941
  * @description payment element key
@@ -7014,6 +7037,36 @@ declare interface PaymentEvaluationResult {
7014
7037
  paymentBalanceInfo?: DanaSofPayMethodView[];
7015
7038
  }
7016
7039
 
7040
+ /**
7041
+ * @description Payment guidance information (CKP scenario)
7042
+ *
7043
+ * <p>Displays payment guide buttons on the checkout page, including: - Deep link: For launching the
7044
+ * bank application (required) - Copy configuration: Divider text, button labels, etc. (extensible
7045
+ * via Map, dynamically addable)
7046
+ */
7047
+ declare interface PaymentGuideInfo {
7048
+ /**
7049
+ * @description The deep link (from iexpprod, used to launch the bank app) The frontend only displays the
7050
+ * payment guide button when this field is populated
7051
+ */
7052
+ appLinkUrlForWeb?: string;
7053
+ /**
7054
+ * @description Copy configuration (from the config center) Stored in a Map to support dynamic extension of
7055
+ * text fields
7056
+ *
7057
+ * <p>Example configuration:
7058
+ *
7059
+ * <pre>
7060
+ * {
7061
+ * "dividerText": "or pay using",
7062
+ * "directPayButtonText": "Pay directly with online banking",
7063
+ * "ctoPButtonText": "Continue to payment"
7064
+ * }
7065
+ * </pre>
7066
+ */
7067
+ copyWriting?: Record<string, any>;
7068
+ }
7069
+
7017
7070
  /**
7018
7071
  * @description 支付方式余额检查结果信息
7019
7072
  */
@@ -7076,6 +7129,10 @@ declare interface PaymentMethodView {
7076
7129
  * @description icon
7077
7130
  */
7078
7131
  icon?: string;
7132
+ /**
7133
+ * @description adaptive icon for PAYME payment method
7134
+ */
7135
+ adaptiveIcon?: string;
7079
7136
  /**
7080
7137
  * @description icon对应的名称
7081
7138
  */
@@ -7084,6 +7141,10 @@ declare interface PaymentMethodView {
7084
7141
  * @description 支付方式描述
7085
7142
  */
7086
7143
  description?: string;
7144
+ /**
7145
+ * @description 支付方式点击后的描述
7146
+ */
7147
+ descriptionAfterClick?: string;
7087
7148
  /**
7088
7149
  * @description category
7089
7150
  */
@@ -7218,6 +7279,10 @@ declare interface PaymentMethodView {
7218
7279
  * @description 账单地址收集模式
7219
7280
  */
7220
7281
  billingAddressCollectionMode?: string;
7282
+ /**
7283
+ * @description 分期银行信息列表
7284
+ */
7285
+ supportIppBankList?: FrontSupportIppBank[];
7221
7286
  }
7222
7287
 
7223
7288
  declare interface PaymentOption {
@@ -7285,6 +7350,10 @@ declare interface PaymentOption {
7285
7350
  * @description 支付选项Logo信息
7286
7351
  */
7287
7352
  logo?: Logo;
7353
+ /**
7354
+ * @description 支付描述多语言列表。如果入参有locale,且入参的locale有对应语言,则这里只返回locale对应的语言。
7355
+ */
7356
+ description?: Record<string, string>;
7288
7357
  /**
7289
7358
  * @description extendInfo extendInfo information
7290
7359
  */
@@ -7352,6 +7421,13 @@ declare interface PaymentQuoteInfo {
7352
7421
  * @description payment amount view
7353
7422
  */
7354
7423
  paymentAmountView?: PaymentView;
7424
+ /**
7425
+ * @description Display exchange rate from FX domain Quote, direction-adjusted and formatted to 2 decimal
7426
+ * places. - BID direction: value = 1/price, setScale(2, HALF_UP) - OFFER direction: value =
7427
+ * price, setScale(2, HALF_UP) Used for direct frontend access to exchange rate. Example: 3.16 for
7428
+ * MYR/SGD currency pair
7429
+ */
7430
+ quotePrice?: any;
7355
7431
  }
7356
7432
 
7357
7433
  /**
@@ -7461,6 +7537,45 @@ declare interface PaymentSessionConfig {
7461
7537
  productSceneVersion?: string;
7462
7538
  }
7463
7539
 
7540
+ /**
7541
+ * @description The submit params
7542
+ */
7543
+ export declare interface PaymentSubmitParams extends SubmitParams {
7544
+ /**
7545
+ * @description 是否由antom sdk自动处理唤端逻辑,默认为true,由sdk自动处理。
7546
+ * 如果antom sdk唤起客户端失败,建议设置为false,商家自行唤端
7547
+ */
7548
+ handleActions?: boolean;
7549
+ /**
7550
+ * @description 收件地址信息
7551
+ */
7552
+ shippingInfo?: ShippingInfo;
7553
+ /**
7554
+ * @description 集成用户自定义信息(如 cardHolderName)
7555
+ */
7556
+ params?: Record<string, unknown>;
7557
+ }
7558
+
7559
+ /**
7560
+ * @description Payment element submit result
7561
+ */
7562
+ export declare interface PaymentSubmitResult extends SubmitResult {
7563
+ paymentSession?: {
7564
+ /**
7565
+ * @description 回调页面的url链接,使用浏览器可直接打开,比如 http://xxx.app.com/xxx
7566
+ */
7567
+ returnUrl: string;
7568
+ /**
7569
+ * @description 回调页面唤起app的url链接,使用浏览器可直接打开,比如 http://xxx.app.com/xxx
7570
+ */
7571
+ returnAppUrl?: string;
7572
+ /**
7573
+ * @description 回调页面唤起app的scheme链接,比如 alipay://xxx
7574
+ */
7575
+ returnAppScheme?: string;
7576
+ };
7577
+ }
7578
+
7464
7579
  declare interface PaymentView {
7465
7580
  /**
7466
7581
  * @description 金额,以元为单位的金额
@@ -7518,56 +7633,6 @@ export declare interface PayPalConfig {
7518
7633
  onShippingOptionsChange?: (data: any, actions: any) => Promise<void>;
7519
7634
  }
7520
7635
 
7521
- declare interface PerformancePlugin extends BaseInfoPlugin {
7522
- getAnalyzePerformanceInfo?(): Record<string, any> | null;
7523
- getPagePerformanceInfo?(): {
7524
- onload: string | number;
7525
- domContentLoad: string | number;
7526
- redirect: string | number;
7527
- appCache: string | number;
7528
- dns: string | number;
7529
- tcp: string | number;
7530
- ssl: string | number;
7531
- reqt: string | number;
7532
- rest: string | number;
7533
- dpt: string | number;
7534
- ft: string | number;
7535
- domInteractive: string | number;
7536
- domReady: string | number;
7537
- domComplete: string | number;
7538
- random: string | number;
7539
- miniPerformance?: ReturnType<typeof getMiniPerformance>;
7540
- timeOrigin?: number;
7541
- };
7542
- getWebVitalsInfo?(): GetWebVitalsInfoResult;
7543
- getWhiteScreenInfo?(options?: Pick<GetWhiteScreenInfoOptions, 'selector' | 'ignoreNotInViewport'>): Promise<{
7544
- status: 'error' | 'ok';
7545
- }>;
7546
- getFMP?(options?: {
7547
- ignoreElements?: string[];
7548
- }): Promise<{
7549
- time: number;
7550
- selector: string;
7551
- } | undefined>;
7552
- getTTI?(): Promise<number | undefined>;
7553
- getFP?(): Promise<number | undefined>;
7554
- getT2Time?(): Promise<number | undefined>;
7555
- /**
7556
- * 将性能数据发送到容器,目前只需 H5 应用实现
7557
- */
7558
- sendPerformanceDataToContainer?(data: LogItem): Promise<void>;
7559
- getSnapshot?: () => {
7560
- fmp: string;
7561
- lcp: string;
7562
- };
7563
- /**
7564
- * 用于采集详细的性能数据,越晚调用,搜集的数据越多
7565
- */
7566
- getDetailPerformance?(): Promise<DMC | null>;
7567
- startCheckingPageWhiteScreen?(config: GetWhiteScreenInfoOptions | boolean | undefined): Promise<(() => void) | undefined>;
7568
- startCheckingDOMWhiteScreen?(selector: string, options: Omit<GetWhiteScreenInfoOptions, 'selector'>): (() => void) | undefined;
7569
- }
7570
-
7571
7636
  declare interface PeriodRule {
7572
7637
  /**
7573
7638
  * @description period type
@@ -7579,87 +7644,13 @@ declare interface PeriodRule {
7579
7644
  periodCount?: number;
7580
7645
  }
7581
7646
 
7647
+ /**
7648
+ * @description 工具类型,仅从 Appearance 中拾取与 Props 类型匹配的属性。
7649
+ * 返回受 Props 中存在的键约束的部分外观对象。
7650
+ * @template Props - 要从 Appearance 中拾取的自定义外观属性类型。
7651
+ */
7582
7652
  declare type PickAppearance<Props extends Partial<DefaultAppearanceProps>> = Partial<Pick<Appearance<Props>, keyof Props extends infer k extends keyof Partial<Appearance> ? k : keyof Partial<Appearance>>>;
7583
7653
 
7584
- declare interface PluginContext {
7585
- userPath: {
7586
- reStoreUserPath: (appId: string) => void;
7587
- parseUserPathExtra: (key: string) => {
7588
- idengine_user_path: string;
7589
- } | null;
7590
- getUserPathExtra: () => {
7591
- cachePath: string[];
7592
- extra: {
7593
- idengine_user_path: string;
7594
- };
7595
- };
7596
- };
7597
- waitInit: () => Promise<void>;
7598
- }
7599
-
7600
- declare type PluginFunction = (iTracert: ITracert, callback: () => void) => boolean;
7601
-
7602
- declare type PluginInitOptions = Pick<OriginTrackerInitOptions, 'spmConfig' | 'autoExpo' | 'autoClick' | 'bizType' | 'appId' | 'compatibleAppId' | 'productId' | 'batchCount' | 'mdata' | 'env' | 'plugins' | 'userId' | 'ready' | 'isReport' | 'version' | 'chInfo' | 'expoOnce' | 'platform' | 'sprintId' | 'autoReportConfig' | 'enableJSAPIReport'> & {
7603
- server?: string;
7604
- servers?: string[];
7605
- isMarmot?: boolean;
7606
- deviceId?: Promise<string>;
7607
- whiteScreenConfig?: (BlankMonitorConfig & {
7608
- callback?: (options: ReportData) => Promise<void>;
7609
- }) | boolean;
7610
- spmCheckCover?: string;
7611
- whiteListConfigSource?: WHITE_LIST_CONFIG_SOURCE;
7612
- remoteConfigValidDuration?: number;
7613
- };
7614
-
7615
- declare interface PluginOnErrorCallbackErrorInfo {
7616
- message: string;
7617
- extra: Record<string, any>;
7618
- type: ErrorType;
7619
- }
7620
-
7621
- declare interface PluginPageMonitorOptions {
7622
- spmInfo: {
7623
- spmAPos: string;
7624
- spmBPos: string;
7625
- currentPage: string;
7626
- };
7627
- logData?: Record<string, any>;
7628
- }
7629
-
7630
- declare interface PluginShape extends PerformancePlugin, LagPlugin {
7631
- getRequester(): GetRequesterResult;
7632
- getDataFilter?(): (data: string[]) => Promise<string[]>;
7633
- getExtraDataFilter?(): (data: Record<string, any>) => Promise<Record<string, any>>;
7634
- onSendData?(callback: (rawData: ReportData & BaseInfo, data: string) => boolean): void;
7635
- offSendData?(callback: (rawData: ReportData & BaseInfo, data: string) => boolean): void;
7636
- init?(options: PluginInitOptions): Promise<void>;
7637
- onError?(callback: (error: PluginOnErrorCallbackErrorInfo) => void): () => void;
7638
- onPageLoad?(callback: () => void): () => void;
7639
- set?(options: Record<string, any>): void;
7640
- /**
7641
- * @deprecated Compatible with old APIs. Use `Tracker#report` instead.
7642
- * @param info
7643
- * @param extra
7644
- */
7645
- log?(type: string, params?: Record<string, any>): void;
7646
- pageMonitor?(options: PluginPageMonitorOptions): void;
7647
- expo?(code: string, extra?: Record<string, number | string | boolean>): void;
7648
- click?(code: string, extra: Record<string, number | string | boolean>): void;
7649
- getSessionItem?(key: string): string | null;
7650
- removeSessionItem?(key: string): void;
7651
- setSessionItem?(key: string, value: string): void;
7652
- getSessionId?(): string | null;
7653
- getStorageItem?(key: string): Promise<string | null>;
7654
- removeStorageItem?(key: string): void;
7655
- setStorageItem?(key: string, value: string): void;
7656
- onHTTPError?(callback: (options: HTTPErrorCallbackOptions) => void): void;
7657
- triggerPreCaptureReport?(callback: (error: PluginOnErrorCallbackErrorInfo) => void): void;
7658
- PluginShape?: void;
7659
- initBehaviorListener?(addBehavior: AddBehavior, config: BehaviorConfig): void;
7660
- reportAPI?(config: RequestHookConfig, callback: (options: APICallbackOptions) => void): void;
7661
- }
7662
-
7663
7654
  /**
7664
7655
  * @description 政策信息,例如隐私链接,免责声明等
7665
7656
  */
@@ -9551,6 +9542,24 @@ TValue extends Array<infer AValue> ? Array<AValue extends infer TUnpacked & {} ?
9551
9542
 
9552
9543
  declare type Pseudos = AdvancedPseudos | SimplePseudos;
9553
9544
 
9545
+ /**
9546
+ * @description QR code configuration for code form view
9547
+ */
9548
+ declare interface QrCodeConfig {
9549
+ /**
9550
+ * @description QR code render style, e.g. "rounded"
9551
+ */
9552
+ renderStyle?: string;
9553
+ /**
9554
+ * @description QR code center icon, can be URL or Base64 format
9555
+ */
9556
+ centerIcon?: string;
9557
+ /**
9558
+ * @description QR code corner icon, can be URL or Base64 format
9559
+ */
9560
+ cornerIcon?: string;
9561
+ }
9562
+
9554
9563
  declare interface Rate {
9555
9564
  /**
9556
9565
  * @description rate label value
@@ -9620,66 +9629,35 @@ declare class ReceivePort {
9620
9629
  }): Promise<Record<string, any> | undefined>;
9621
9630
  }
9622
9631
 
9632
+ /**
9633
+ * @description 从webapp重定向到新URL的配置项。
9634
+ * 支持浏览器重定向、app link唤端及schema唤端。
9635
+ */
9623
9636
  declare interface RedirectOption {
9637
+ /**
9638
+ * @description 浏览器重定向到兜底的url,通常在唤端失败时会走这个,或者你不需要唤端,只需要跳转到某个url
9639
+ */
9624
9640
  url: string;
9641
+ /**
9642
+ * @description 唤端到url地址,http或https的地址
9643
+ */
9644
+ appLinkUrl?: string;
9645
+ /**
9646
+ * @description 唤端到schema地址, schema://的地址
9647
+ */
9648
+ schemaUrl?: string;
9649
+ /**
9650
+ * @description 重定向模式,默认为redirect
9651
+ */
9625
9652
  mode?: 'redirect' | 'replace';
9626
9653
  /**
9627
9654
  * @description 是否重定向后销毁实例,默认为true
9628
9655
  */
9629
- destory?: boolean;
9656
+ destroy?: boolean;
9630
9657
  }
9631
9658
 
9632
- declare type ReportData = {
9633
- title?: string;
9634
- msg?: string | Error | Record<string, number | string> | Event;
9635
- logType: 'error' | 'info';
9636
- extra?: Record<string, number | boolean | string | undefined | Error | null>;
9637
- } | ({
9638
- logType: 'custom';
9639
- } & LogItem);
9640
-
9641
9659
  declare type RequestEnv = 'local' | 'dev' | 'sit' | 'pre' | 'prod' | 'sandbox' | 'light_sandbox';
9642
9660
 
9643
- declare class RequesterCacheWrapper {
9644
- private autoReportConfig;
9645
- private dataCache;
9646
- private lastSendTime;
9647
- private batchCount;
9648
- private sendFrequency;
9649
- constructor(autoReportConfig: {
9650
- immediate?: boolean;
9651
- deviceId?: Promise<string>;
9652
- isReport?: boolean;
9653
- programVersion?: string;
9654
- productId?: string;
9655
- appId?: string;
9656
- compatibleAppId?: string;
9657
- bizType?: string;
9658
- });
9659
- report(options: ReportData & {
9660
- request: GetRequesterResult;
9661
- extraDataFilter?: (data: Record<string, any>) => Promise<Record<string, any>>;
9662
- dataFilter?: (data: string[]) => Promise<string[]>;
9663
- } & BaseInfo & {
9664
- immediate?: boolean;
9665
- }): Promise<void>;
9666
- private send;
9667
- /**
9668
- * 分批发送请求
9669
- */
9670
- private httpRequest;
9671
- private sendBatch;
9672
- }
9673
-
9674
- declare type RequestHookConfig = {
9675
- /**
9676
- * @description 不上报的域名
9677
- */
9678
- excludes?: Array<string | RegExp>;
9679
- getFetchResponseInfo?: (headers: Headers, responseData: Record<string, any>, requestParam: Array<any>) => ResponseInfo;
9680
- getXHRResponseInfo?: (response: XHRResponse) => ResponseInfo;
9681
- };
9682
-
9683
9661
  declare interface RequestOptions {
9684
9662
  env?: RequestEnv;
9685
9663
  baseURL?: string;
@@ -9704,15 +9682,6 @@ declare interface RequestOptions {
9704
9682
  scope?: string;
9705
9683
  }
9706
9684
 
9707
- declare type ResponseInfo = {
9708
- responseUrl?: string;
9709
- traceId?: string;
9710
- isSuccess?: boolean;
9711
- errorCode?: string | number;
9712
- errorMsg?: string;
9713
- url?: string;
9714
- };
9715
-
9716
9685
  /**
9717
9686
  * @description 国际支付标准结果码,参考主站<code>ErrorCode</code>实现。
9718
9687
  *
@@ -9857,7 +9826,25 @@ declare interface SharePayInfo {
9857
9826
  securityText?: string;
9858
9827
  }
9859
9828
 
9860
- declare interface ShippingInfo {
9829
+ export declare interface ShippingInfo {
9830
+ shippingName: {
9831
+ firstName: string;
9832
+ lastName: string;
9833
+ middleName?: string;
9834
+ fullName?: string;
9835
+ };
9836
+ shippingPhoneNo: string;
9837
+ shippingAddress: {
9838
+ region: string;
9839
+ address1: string;
9840
+ address2: string;
9841
+ city?: string;
9842
+ state?: string;
9843
+ zipCode: string;
9844
+ };
9845
+ }
9846
+
9847
+ declare interface ShippingInfo_2 {
9861
9848
  /**
9862
9849
  * @description The unique ID to identify the shipping info
9863
9850
  */
@@ -10069,14 +10056,6 @@ declare type SimplePseudos =
10069
10056
  | ":volume-locked"
10070
10057
  | ":xr-overlay";
10071
10058
 
10072
- declare interface SpmConfig {
10073
- spmAPos: string;
10074
- bizType: string;
10075
- pages?: Record<string, Record<string, string>>;
10076
- mdata?: Record<string, number | string | boolean>;
10077
- immediate?: boolean;
10078
- }
10079
-
10080
10059
  declare interface StandardLonghandProperties<TLength = (string & {}) | 0, TTime = string & {}> {
10081
10060
  /**
10082
10061
  * This feature is not Baseline because it does not work in some of the most widely-used browsers.
@@ -23775,16 +23754,20 @@ declare interface StandardShorthandPropertiesHyphen<TLength = (string & {}) | 0,
23775
23754
 
23776
23755
  declare type StandardShorthandPropertiesHyphenFallback<TLength = (string & {}) | 0, TTime = string & {}> = Fallback<StandardShorthandPropertiesHyphen<TLength, TTime>>;
23777
23756
 
23757
+ export declare type SubmitParams = {
23758
+ redirect?: 'always' | 'if_required';
23759
+ };
23760
+
23778
23761
  /**
23779
- * @description 成功时的data数据类型
23762
+ * @description 成功时的数据类型
23780
23763
  */
23781
23764
  export declare type SubmitResult = {
23765
+ /* Excluded from this release type: code */
23766
+ /* Excluded from this release type: message */
23782
23767
  /**
23783
23768
  * 查询到的状态
23784
23769
  */
23785
23770
  status: 'SUCCESS' | 'CANCELLED' | 'FAIL' | 'PROCESSING';
23786
- /* Excluded from this release type: code */
23787
- /* Excluded from this release type: message */
23788
23771
  /**
23789
23772
  * @description 对结果的详细结果码和结果信息,在status为SUCCESS时无该字段
23790
23773
  */
@@ -23797,6 +23780,10 @@ export declare type SubmitResult = {
23797
23780
  * 查询到的结果消息
23798
23781
  */
23799
23782
  message?: string;
23783
+ /**
23784
+ * @description 是否需要更换 session 重试
23785
+ */
23786
+ needChangeSessionForRetry?: boolean;
23800
23787
  };
23801
23788
  /**
23802
23789
  * 是否是用户手动取消3D
@@ -24255,256 +24242,15 @@ declare interface TerminalTypeAction {
24255
24242
  interactionType?: string;
24256
24243
  }
24257
24244
 
24258
- declare class Tracker {
24259
- protected requesterCacheWrapper?: RequesterCacheWrapper;
24260
- private initPromise;
24261
- private spmInfo;
24262
- private spmConfig?;
24263
- private spmAPos?;
24264
- private spmBPos?;
24265
- private funnelAuto?;
24266
- private userPathAuto?;
24267
- private cachePath;
24268
- private userPathLength;
24269
- private pathUserMeta;
24270
- private isMarmot;
24271
- protected appId?: string;
24272
- protected compatibleAppId?: string;
24273
- private plugin;
24274
- private sprintId?;
24275
- private userId;
24276
- protected deviceId?: Promise<string>;
24277
- protected programVersion?: string;
24278
- private language?;
24279
- protected bizType?: string;
24280
- protected productId?: string;
24281
- private whiteScreenConfig?;
24282
- private performance?;
24283
- protected isReport?: boolean;
24284
- protected server?: string;
24285
- protected servers?: string[];
24286
- protected platform?: string;
24287
- private env?;
24288
- private immediate?;
24289
- enableScreenshot: boolean | undefined | {
24290
- rate: number;
24291
- };
24292
- private enableResourceAnalysis?;
24293
- private _lag?;
24294
- private spmCheckCover?;
24295
- private enableBehavior?;
24296
- private behavior?;
24297
- private enableRequestHook?;
24298
- private enableJSAPIReport?;
24299
- private customizedPerformanceMark?;
24300
- constructor(Plugin: new (context: PluginContext) => PluginShape);
24301
- init(options: TrackerInitOptions): Promise<boolean>;
24302
- /**
24303
- * 业务侧可以拦截发送日志的请求,用于手动过滤
24304
- * 当前仅对浏览器环境生效
24305
- * rawData 是 intl-tracker 内部格式的数据,为对象
24306
- * data 是最终发送到服务端的数据,为字符串形式
24307
- */
24308
- onSendData(callback: (rawData: ReportData & BaseInfo, data: string) => boolean): void;
24309
- /**
24310
- * 业务侧可以取消拦截发送日志的请求
24311
- * 当前仅对浏览器环境生效
24312
- */
24313
- offSendData(callback: (rawData: ReportData & BaseInfo, data: string) => boolean): void;
24314
- private startReportSnapshot;
24315
- /**
24316
- * 用于上报自定义性能指标,单次仅上报一个指标
24317
- * @param key m1 - m20
24318
- * @param num 耗时,数字,一定要 >= 0,否则无统计意义
24319
- */
24320
- reportCustomizedPerformance(key: CustomizedPerformanceKey, num: number): void | undefined;
24321
- /**
24322
- * 上报自定义性能指标
24323
- * @param data 适合单次合并上报多个指标的场景
24324
- * 请注意,使用 reportCustomizedPerformance 上报时,每次上报会发送一次日志请求
24325
- * 不同阶段的数据量会有差异,这些差异可以作为页面流失漏斗的数据源
24326
- * 但合并上报时,同时上报的多个指标数量是相同的
24327
- */
24328
- reportCustomizedPerformanceData(data: Partial<Record<CustomizedPerformanceKey, number>>): void | undefined;
24329
- /**
24330
- * 用于显式上报小程序性能指标
24331
- * 由于小程序的性能指标仅在“使用 schema 打开页面”时有效,原来的自动上报未区分场景,会导致脏数据较多
24332
- * 改为数据自动采集、仅在必要时由业务方手动调用接口上报
24333
- */
24334
- reportMiniProgramPerformance(): Promise<void> | undefined;
24335
- getMiniProgramPerformanceData(): Promise<{
24336
- s1: number;
24337
- s2: number;
24338
- s3: number;
24339
- s4: number;
24340
- s5: number;
24341
- s6: number;
24342
- s7: number;
24343
- s8: number;
24344
- } | undefined> | undefined;
24345
- /**
24346
- * 用于显式上报网页性能指标,一般用不上
24347
- * 1. tracker.onPageLoad() 会自动上报
24348
- * 2. tracker.reportCustomizedPerformanceData() 会自动上报
24349
- * 3. tracker.reportCustomizedPerformance() 会自动上报
24350
- * 4. tracker.reportMiniProgramPerformance() 会自动上报
24351
- * 5. 以上方法仅会上报一次网页性能指标,多次调用不受影响
24352
- * 6. 仅当以上所有方法均未调用时,才需要手动调用此方法
24353
- */
24354
- reportPagePerformance(): Promise<void> | undefined;
24355
- private handleReportSnapShot;
24356
- get lag(): {
24357
- log: (msg: string) => Promise<void>;
24358
- fps: () => Promise<void>;
24359
- };
24360
- onPageLoad(options?: string | {
24361
- title?: string;
24362
- fmpIgnoreElements?: string[];
24363
- }): Promise<void>;
24364
- reportPerformance(title?: string): void;
24365
- reportDetailPerformance(): void;
24366
- onError(): Promise<(() => void) | undefined>;
24367
- fmp(time: number): void;
24368
- flushBehavior(): void;
24369
- /**
24370
- * 内部使用
24371
- *
24372
- * @param error
24373
- */
24374
- private reportError;
24375
- private triggerPreCaptureReport;
24376
- onHTTPError(): Promise<void>;
24377
- private reportAPI;
24378
- /**
24379
- * 内部使用,业务项目不要调用
24380
- *
24381
- * @param options
24382
- */
24383
- reportHTTPError(options: HTTPErrorCallbackOptions): void;
24384
- set(options: Record<string, any>): void;
24385
- log(item: LogItem): void;
24386
- /**
24387
- * @deprecated Compatible with old APIs. Use `Tracker#log` instead.
24388
- * @param info
24389
- * @param extra
24390
- */
24391
- logInfo(info: LogInfo, extra?: Record<string, number | boolean | string>): Promise<void>;
24392
- /**
24393
- * @deprecated Compatible with old APIs. Use `Tracker#log` instead.
24394
- * @param info
24395
- * @param extra
24396
- */
24397
- logError(info: LogInfo, extra?: Record<string, number | boolean | string>): Promise<void>;
24398
- reportFunnel(title: string, config?: {
24399
- [prop: string]: string | number;
24400
- name: string;
24401
- level: number;
24402
- label: string;
24403
- } | undefined): Promise<void>;
24404
- reportRPC(rpcInfo: {
24405
- name: string;
24406
- label: string;
24407
- code?: string | undefined;
24408
- msg?: string | Error | Record<string, string | number> | undefined;
24409
- success?: boolean | undefined;
24410
- result?: number | undefined;
24411
- traceId?: string | undefined;
24412
- httpStatus?: string | undefined;
24413
- time?: number | undefined;
24414
- }): void;
24415
- logJSBridgeError(info: LogInfo): void;
24416
- pageMonitor(page: string, extraParams?: Record<string, any>, autoPv?: boolean): void;
24417
- expo(code: string, extra?: Record<string, string | number | boolean> | undefined): void;
24418
- click(code: string, extra?: Record<string, string | number | boolean>): void;
24419
- pv(): void;
24420
- /**
24421
- * 指定点位白屏的监控 - 用于监控目标点位的白屏
24422
- * 页面白屏和目标点位白屏的通用监控逻辑
24423
- *
24424
- * @param selector 目标点位选择器
24425
- * @param options 配置项
24426
- * {
24427
- * 检测延时,单位 second,即启动白屏检测后多久开始执行白屏识别
24428
- * NOTE: 设置时间时要考虑业务平均加载时间,太短可能会误报
24429
- * delay
24430
- *
24431
- * 是否持续监测, 即初始化白屏检测结束之后是否继续监控业务运行中白屏, default: true
24432
- * persistent
24433
- * }
24434
- */
24435
- startCheckingDOMWhiteScreen(selector: string, options: Omit<BlankMonitorConfig, 'selector'>): void;
24436
- private getRequester;
24437
- protected getDefaultExtraInfo(): Promise<BaseInfo>;
24438
- private request;
24439
- private formatExtra;
24440
- private reportLog;
24441
- /**
24442
- * 解析成功率上报参数
24443
- * @param key p_ page c_ click expo r l -info或者-error结尾是前端日志
24444
- * @param funnelConfig 标准漏斗上报参数
24445
- * @returns 扩展参数数据
24446
- */
24447
- private parseUserPathExtra;
24448
- /**
24449
- * 获取成功率上报参数
24450
- * 用于去冲
24451
- */
24452
- private getUserPathExtra;
24453
- /**
24454
- * 恢复存储的用户路径
24455
- */
24456
- private reStoreUserPath;
24457
- private reStoreUserPathMeta;
24458
- private reStoreSessionId;
24459
- /**
24460
- * 重置session id
24461
- */
24462
- resetSessionId(): void;
24463
- /**
24464
- * 重置用户路径
24465
- */
24466
- resetUserPath(): void;
24467
- private normalizeServer;
24468
- private normalizeServers;
24469
- }
24470
-
24471
- declare interface TrackerInitOptions {
24472
- spmConfig?: SpmConfig;
24473
- marmotId: string;
24474
- compatibleAppId?: string;
24475
- userId?: string;
24476
- server?: IMDAP_SERVER | string;
24477
- servers?: (IMDAP_SERVER | string)[];
24478
- env?: Env_2;
24479
- sprintId?: string;
24480
- whiteScreen?: BlankMonitorConfig | boolean;
24481
- immediate?: boolean;
24482
- autoExpo?: boolean;
24483
- autoClick?: boolean;
24484
- expoOnce?: boolean;
24485
- enableScreenshot?: boolean | {
24486
- rate: number;
24487
- };
24488
- enableResourceAnalysis?: boolean;
24489
- spmCheckCover?: string;
24490
- enableBehavior?: BehaviorConfig | boolean;
24491
- enableRequestHook?: RequestHookConfig | boolean;
24492
- enableJSAPIReport?: boolean;
24493
- /**
24494
- * 白名单配置源,仅浏览器环境支持
24495
- * 不传值时,与旧版功能相同,所有日志都会发送
24496
- * 1. 值为 REMOTE 时,表示从远程服务器获取白名单配置
24497
- * 2. 值为 NONE 时,表示不使用白名单配置,所有日志都会发送
24498
- */
24499
- whiteListConfigSource?: WHITE_LIST_CONFIG_SOURCE;
24500
- /**
24501
- * 当且仅当 whiteListConfigSource 为 REMOTE 时有效
24502
- * 在有效期内,不重复加载 json 请求
24503
- */
24504
- remoteConfigValidDuration?: number;
24505
- productId?: string;
24506
- bizType?: string;
24507
- }
24245
+ /**
24246
+ * 主题色映射表 — 将 AntomTheme 映射到 loading 阶段的明暗模式和背景色。
24247
+ * 被 antom.ts(老架构入口)和 modernElementController(新架构入口)共用,
24248
+ * 确保两条路径的弹窗 loading 表现一致。
24249
+ */
24250
+ export declare const themeColorMap: Record<AntomTheme, {
24251
+ theme: 'dark' | 'light';
24252
+ backgroundColor: string;
24253
+ }>;
24508
24254
 
24509
24255
  /**
24510
24256
  * @description 交易信息
@@ -24584,7 +24330,8 @@ export declare type VaultingAppearance = PickAppearance<VaultingAppearanceProps>
24584
24330
  export declare type VaultingAppearanceProps = {
24585
24331
  displaySetting: 'showCardBrandIcon';
24586
24332
  theme: AntomTheme;
24587
- variables: 'background-secondary' | 'radius-module' | 'wrapper-padding' | 'content-primary' | 'border-primary' | 'action-hover' | 'border-disable' | 'content-tertiary' | 'background-primary' | 'background-disable' | 'radius-component' | 'state-failure' | 'action-normal' | 'content-secondary';
24333
+ variables: AntomVariables;
24334
+ fonts?: FontSource[];
24588
24335
  };
24589
24336
 
24590
24337
  /**
@@ -24607,7 +24354,7 @@ export declare class VaultingElement extends BaseMainElement<VaultingElementConf
24607
24354
  declare interface VaultingElementConfig extends BaseElementConfig<VaultingAppConfig> {
24608
24355
  }
24609
24356
 
24610
- export declare interface VaultingElementEvents extends AntomBridgeEventMap<VaultingAppConfig, VaultingSubmitParams> {
24357
+ export declare interface VaultingElementEvents extends AntomBridgeWithNativeEventMap<VaultingAppConfig, VaultingSubmitParams> {
24611
24358
  }
24612
24359
 
24613
24360
  /**
@@ -28247,16 +27994,9 @@ declare interface VendorShorthandPropertiesHyphen<TLength = (string & {}) | 0, T
28247
27994
 
28248
27995
  declare type VendorShorthandPropertiesHyphenFallback<TLength = (string & {}) | 0, TTime = string & {}> = Fallback<VendorShorthandPropertiesHyphen<TLength, TTime>>;
28249
27996
 
28250
- declare type WHITE_LIST_CONFIG_SOURCE = 'REMOTE' | 'NONE';
28251
-
28252
27997
  declare type WithAppURL<T> = T & {
28253
27998
  appUrl: string;
28254
27999
  isMainElement: boolean;
28255
28000
  };
28256
28001
 
28257
- declare type XHRResponse = {
28258
- headers: ReturnType<XMLHttpRequest['getAllResponseHeaders']>;
28259
- body: XMLHttpRequest['response'];
28260
- };
28261
-
28262
28002
  export { }