@pisell/pisellos 2.2.273 → 2.2.275

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 (74) hide show
  1. package/dist/model/strategy/adapter/promotion/index.js +9 -0
  2. package/dist/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +12 -10
  3. package/dist/modules/Order/index.d.ts +7 -6
  4. package/dist/modules/Order/index.js +217 -115
  5. package/dist/modules/Order/types.d.ts +23 -3
  6. package/dist/modules/Order/types.js +11 -0
  7. package/dist/modules/Payment/index.js +1 -1
  8. package/dist/modules/Payment/types.d.ts +81 -4
  9. package/dist/modules/Payment/types.js +18 -3
  10. package/dist/modules/Payment/walletpass.d.ts +38 -1
  11. package/dist/modules/Payment/walletpass.js +917 -114
  12. package/dist/modules/Rules/index.d.ts +2 -0
  13. package/dist/modules/Rules/index.js +78 -64
  14. package/dist/modules/SalesSummary/utils.js +7 -1
  15. package/dist/server/index.d.ts +4 -0
  16. package/dist/server/index.js +27 -18
  17. package/dist/server/modules/index.d.ts +1 -1
  18. package/dist/server/modules/order/index.d.ts +16 -0
  19. package/dist/server/modules/order/index.js +964 -776
  20. package/dist/server/modules/order/types.d.ts +14 -0
  21. package/dist/server/modules/order/types.js +6 -0
  22. package/dist/solution/BaseSales/index.d.ts +80 -15
  23. package/dist/solution/BaseSales/index.js +1498 -444
  24. package/dist/solution/BaseSales/types.d.ts +55 -1
  25. package/dist/solution/BaseSales/types.js +2 -1
  26. package/dist/solution/BaseSales/utils/cartPromotion.js +8 -3
  27. package/dist/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +6 -3
  28. package/dist/solution/BookingByStep/index.d.ts +1 -1
  29. package/dist/solution/BookingTicket/index.d.ts +1 -1
  30. package/dist/solution/BookingTicket/index.js +12 -3
  31. package/dist/solution/BookingTicket/types.d.ts +4 -0
  32. package/dist/solution/BookingTicket/utils/cartView.js +44 -32
  33. package/dist/solution/BookingTicket/utils/scan/applyGlobalScan.d.ts +8 -0
  34. package/dist/solution/BookingTicket/utils/scan/applyGlobalScan.js +173 -83
  35. package/dist/solution/Sales/index.d.ts +1 -0
  36. package/dist/solution/Sales/index.js +16 -2
  37. package/dist/solution/VenueBooking/index.d.ts +1 -0
  38. package/lib/model/strategy/adapter/promotion/index.js +0 -51
  39. package/lib/modules/BookingContext/utils/buildCacheItemFromOrderLine.js +3 -1
  40. package/lib/modules/Order/index.d.ts +7 -6
  41. package/lib/modules/Order/index.js +127 -20
  42. package/lib/modules/Order/types.d.ts +23 -3
  43. package/lib/modules/Payment/index.js +1 -1
  44. package/lib/modules/Payment/types.d.ts +81 -4
  45. package/lib/modules/Payment/types.js +4 -3
  46. package/lib/modules/Payment/walletpass.d.ts +38 -1
  47. package/lib/modules/Payment/walletpass.js +730 -21
  48. package/lib/modules/Rules/index.d.ts +2 -0
  49. package/lib/modules/Rules/index.js +24 -14
  50. package/lib/modules/SalesSummary/utils.js +5 -1
  51. package/lib/server/index.d.ts +4 -0
  52. package/lib/server/index.js +14 -6
  53. package/lib/server/modules/index.d.ts +1 -1
  54. package/lib/server/modules/order/index.d.ts +16 -0
  55. package/lib/server/modules/order/index.js +140 -4
  56. package/lib/server/modules/order/types.d.ts +14 -0
  57. package/lib/server/modules/order/types.js +1 -0
  58. package/lib/solution/BaseSales/index.d.ts +80 -15
  59. package/lib/solution/BaseSales/index.js +712 -48
  60. package/lib/solution/BaseSales/types.d.ts +55 -1
  61. package/lib/solution/BaseSales/types.js +2 -1
  62. package/lib/solution/BaseSales/utils/cartPromotion.js +8 -2
  63. package/lib/solution/BaseSales/utils/transformBaseProductToOrderProduct.js +3 -2
  64. package/lib/solution/BookingByStep/index.d.ts +1 -1
  65. package/lib/solution/BookingTicket/index.d.ts +1 -1
  66. package/lib/solution/BookingTicket/index.js +4 -1
  67. package/lib/solution/BookingTicket/types.d.ts +4 -0
  68. package/lib/solution/BookingTicket/utils/cartView.js +43 -30
  69. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.d.ts +8 -0
  70. package/lib/solution/BookingTicket/utils/scan/applyGlobalScan.js +37 -5
  71. package/lib/solution/Sales/index.d.ts +1 -0
  72. package/lib/solution/Sales/index.js +15 -3
  73. package/lib/solution/VenueBooking/index.d.ts +1 -0
  74. package/package.json +1 -1
@@ -165,6 +165,8 @@ export interface OrderCustomerChangePayload {
165
165
  }
166
166
  export interface OrderScanCodeResult {
167
167
  isAvailable: boolean;
168
+ /** 卡券已加入当前订单折扣列表,但不一定能立即应用。 */
169
+ isAccepted?: boolean;
168
170
  discountList: Discount[];
169
171
  scannedDiscountList: Discount[];
170
172
  type: 'server' | 'clientCalc';
@@ -319,6 +321,24 @@ export interface ReplaceTempOrderOptions {
319
321
  saveDraft?: boolean;
320
322
  }
321
323
  export type AddProductBookingInput = Record<string, any>;
324
+ /**
325
+ * 添加商品行时的顺序控制。
326
+ * 默认追加到 products 尾部;预约数量同步可插入到既有预约组的最新行之后,
327
+ * 避免步进器修改数量改变该组展示位置。
328
+ */
329
+ export interface AddProductToOrderOptions {
330
+ insertAfterProductUid?: string;
331
+ }
332
+ /**
333
+ * 删除商品后的可选位置保持策略。
334
+ * 预约合并行减量时仍删除最新真实行,再把剩余代表行移动到被删除代表行原位置。
335
+ */
336
+ export interface RemoveProductsFromOrderOptions {
337
+ preserveDisplayPosition?: {
338
+ remainingProductUid: string;
339
+ anchorProductUid: string;
340
+ };
341
+ }
322
342
  /** 更新购物车行:仅传 SKU 时命中同 SKU 第一行;多行同 SKU 须传 unique_identification_number / 选项指纹等 */
323
343
  export interface UpdateOrderProductParams {
324
344
  product_id: number | null;
@@ -713,15 +733,15 @@ export interface OrderModuleAPI {
713
733
  updateTempOrderCustomer: (customer: UpdateTempOrderCustomerInput) => OrderSnapshot['customer'];
714
734
  updateTempOrderBuzzer: (buzzer: string) => string;
715
735
  updateTempOrderContactsInfo: (contactsInfo: Record<string, any> | null) => Record<string, any> | null;
716
- addProductToOrder: (product: Partial<OrderProduct> & OrderProductIdentity, booking?: AddProductBookingInput) => Promise<OrderProduct[]>;
736
+ addProductToOrder: (product: Partial<OrderProduct> & OrderProductIdentity, booking?: AddProductBookingInput, options?: AddProductToOrderOptions) => Promise<OrderProduct[]>;
717
737
  updateOrderProduct: (params: UpdateOrderProductParams) => Promise<OrderProduct[]>;
718
738
  /** 批量更新购物车行,末尾仅触发一次促销重算与 summary 刷新 */
719
739
  updateOrderProducts: (paramsList: UpdateOrderProductParams[]) => Promise<OrderProduct[]>;
720
740
  updateOrderProductQuantity: (params: UpdateOrderProductQuantityParams) => Promise<OrderProduct[]>;
721
741
  updateOrderBooking: (params: UpdateOrderBookingParams) => any[];
722
- removeProductFromOrder: (identity: OrderProductIdentity) => Promise<OrderProduct[]>;
742
+ removeProductFromOrder: (identity: OrderProductIdentity, options?: RemoveProductsFromOrderOptions) => Promise<OrderProduct[]>;
723
743
  /** 批量删除购物车行,末尾仅触发一次促销重算与 summary 刷新 */
724
- removeProductsFromOrder: (identities: OrderProductIdentity[]) => Promise<OrderProduct[]>;
744
+ removeProductsFromOrder: (identities: OrderProductIdentity[], options?: RemoveProductsFromOrderOptions) => Promise<OrderProduct[]>;
725
745
  /** @deprecated no-op;OrderModule 不再负责 tempOrder localStorage 持久化。 */
726
746
  persistTempOrder: () => void;
727
747
  /**
@@ -63,6 +63,17 @@ export var OrderHooks = /*#__PURE__*/function (OrderHooks) {
63
63
  * 清空时整个 payload 为 null。
64
64
  */
65
65
 
66
+ /**
67
+ * 添加商品行时的顺序控制。
68
+ * 默认追加到 products 尾部;预约数量同步可插入到既有预约组的最新行之后,
69
+ * 避免步进器修改数量改变该组展示位置。
70
+ */
71
+
72
+ /**
73
+ * 删除商品后的可选位置保持策略。
74
+ * 预约合并行减量时仍删除最新真实行,再把剩余代表行移动到被删除代表行原位置。
75
+ */
76
+
66
77
  /** 更新购物车行:仅传 SKU 时命中同 SKU 第一行;多行同 SKU 须传 unique_identification_number / 选项指纹等 */
67
78
 
68
79
  /** 仅更新购物车行数量;行定位语义与 updateOrderProduct / removeProductFromOrder 保持一致 */
@@ -2009,7 +2009,7 @@ export var PaymentModule = /*#__PURE__*/function (_BaseModule) {
2009
2009
  baseValue = amount.div(roundingInterval);
2010
2010
  console.log("[PaymentModule] \u820D\u5165\u8BA1\u7B97 - \u539F\u59CB\u91D1\u989D: ".concat(amount.toString(), ", \u95F4\u9694: ").concat(intervalValue, ", \u57FA\u7840\u503C: ").concat(baseValue.toString(), ", \u89C4\u5219: ").concat(rule));
2011
2011
  _context26.t0 = rule;
2012
- _context26.next = _context26.t0 === RoundingRule.Standard ? 13 : _context26.t0 === 'standard' ? 13 : _context26.t0 === RoundingRule.StandardDown ? 15 : _context26.t0 === 'standard_down' ? 15 : _context26.t0 === RoundingRule.AlwaysUp ? 17 : _context26.t0 === 'always_up' ? 17 : _context26.t0 === RoundingRule.AlwaysDown ? 19 : _context26.t0 === 'always_down' ? 19 : 21;
2012
+ _context26.next = _context26.t0 === RoundingRule.Standard ? 13 : _context26.t0 === 'standard' ? 13 : _context26.t0 === RoundingRule.StandardDown ? 15 : _context26.t0 === 'standard_rounding_midpoint_down' ? 15 : _context26.t0 === RoundingRule.AlwaysUp ? 17 : _context26.t0 === 'always_up' ? 17 : _context26.t0 === RoundingRule.AlwaysDown ? 19 : _context26.t0 === 'always_down' ? 19 : 21;
2013
2013
  break;
2014
2014
  case 13:
2015
2015
  // 标准舍入(中点向上)
@@ -40,11 +40,11 @@ export declare enum RoundingRule {
40
40
  /** 标准舍入(中点向上) */
41
41
  Standard = "standard_rounding",
42
42
  /** 标准舍入(中点向下) */
43
- StandardDown = "standard_down",
43
+ StandardDown = "standard_rounding_midpoint_down",
44
44
  /** 总是向上舍入 */
45
- AlwaysUp = "always_up",
45
+ AlwaysUp = "round_up",
46
46
  /** 总是向下舍入 */
47
- AlwaysDown = "always_down"
47
+ AlwaysDown = "round_down"
48
48
  }
49
49
  /**
50
50
  * 舍入结果
@@ -340,6 +340,8 @@ export interface CashPayment {
340
340
  processCashPayment: (amount: number, orderUuid: string) => Promise<void>;
341
341
  /** 获取现金余额 */
342
342
  getCashBalance: () => Promise<number>;
343
+ /** 根据币种面额生成现金快捷金额。 */
344
+ getRecommendedAmount: (money: number, currency: string) => number[];
343
345
  }
344
346
  /**
345
347
  * Eftpos支付接口
@@ -365,6 +367,62 @@ export interface WalletStoredInitData {
365
367
  noApplicableVoucher: any[];
366
368
  products: any[];
367
369
  }
370
+ export type WalletAssetId = string | number;
371
+ export type WalletAssetSelectionSource = 'manual' | 'scan';
372
+ export type WalletAssetsStatus = 'idle' | 'loading' | 'ready' | 'error';
373
+ /**
374
+ * 购物车与结账共享的钱包资产状态。
375
+ *
376
+ * 原始券字段完整保留在 items / selectedItems 中,Payment 只补充统一的
377
+ * 可用性、选择和加载状态,不在此层引入 UI ViewModel。
378
+ */
379
+ export interface WalletAssetsState {
380
+ status: WalletAssetsStatus;
381
+ items: any[];
382
+ selectedIds: WalletAssetId[];
383
+ selectedItems: any[];
384
+ committedIds: WalletAssetId[];
385
+ selectionSources: Record<string, WalletAssetSelectionSource>;
386
+ totalSelectedAmount: number;
387
+ customerId?: string | number;
388
+ error: string | null;
389
+ revision: number;
390
+ }
391
+ /**
392
+ * Shared Wallet Assets 的可序列化运行时快照。
393
+ *
394
+ * state 供购物车 / Checkout 直接恢复展示与选择;searchResults 和
395
+ * calculationContext 用于商品变化后继续重验扫码搜索过的 Wallet。
396
+ */
397
+ export interface WalletAssetsSnapshot {
398
+ state: WalletAssetsState;
399
+ searchResults: SearchIdentificationCodeItem[];
400
+ /** 已搜索但尚未满足订单条件、等待首次可用后自动选中的 Wallet Asset code。 */
401
+ pendingAutoSelectSearchCodes?: string[];
402
+ walletParams: WalletDeductionRecommendParams | null;
403
+ calculationContext: {
404
+ orderTotalAmount: number;
405
+ products: any[];
406
+ };
407
+ }
408
+ export interface WalletAssetsBehaviorOptions {
409
+ /** 搜索到 Wallet Asset 后,当前或后续首次可用时是否自动选中。 */
410
+ autoSelectAfterSearch?: boolean;
411
+ }
412
+ export interface RefreshWalletAssetsOptions {
413
+ /** 商品/金额变化默认保留并重验选择;客户变化由实现层强制清空。 */
414
+ preserveSelection?: boolean;
415
+ }
416
+ export interface SelectWalletAssetOptions {
417
+ selected: boolean;
418
+ source?: WalletAssetSelectionSource;
419
+ }
420
+ export interface ScanWalletAssetResult {
421
+ type: SearchIdentificationCodeResult['type'];
422
+ asset?: any;
423
+ selected: boolean;
424
+ state: WalletAssetsState;
425
+ }
368
426
  export interface WalletPassPayment {
369
427
  /** 生成钱包API默认参数 */
370
428
  generateWalletParams: (businessData: WalletInitBusinessData) => WalletDeductionRecommendParams;
@@ -416,6 +474,24 @@ export interface WalletPassPayment {
416
474
  processWalletPayment: (amount: number, orderUuid: string, voucherId?: string) => Promise<void>;
417
475
  /** 获取钱包余额 */
418
476
  getWalletBalance: (voucherId: string) => Promise<number>;
477
+ /** 刷新购物车/结账共享的钱包资产,刷新本身不会默认选券。 */
478
+ refreshWalletAssetsFromBusinessAsync: (businessData: WalletInitBusinessData, options?: RefreshWalletAssetsOptions) => Promise<WalletAssetsState>;
479
+ /** 获取共享钱包资产状态快照。 */
480
+ getWalletAssetsState: () => WalletAssetsState;
481
+ /** 配置仅影响 Wallet Assets 的交互行为。 */
482
+ configureWalletAssetsBehavior: (options: WalletAssetsBehaviorOptions) => void;
483
+ /** 导出供 Shared Checkout 跨运行时传递的 Wallet Assets 快照。 */
484
+ exportWalletAssetsSnapshot: () => WalletAssetsSnapshot;
485
+ /** 恢复 Shared Checkout 传回的 Wallet Assets 快照。 */
486
+ importWalletAssetsSnapshot: (snapshot: WalletAssetsSnapshot) => WalletAssetsState;
487
+ /** 设置单张钱包资产的选择状态并重新计算其实际抵扣额。 */
488
+ selectWalletAsset: (assetId: WalletAssetId, options: SelectWalletAssetOptions) => WalletAssetsState;
489
+ /** 精确搜索钱包资产;仅当前券可用时自动选择。 */
490
+ scanWalletAssetAsync: (code: string) => Promise<ScanWalletAssetResult>;
491
+ /** 清空未确认的钱包资产选择。 */
492
+ clearWalletAssetSelection: () => WalletAssetsState;
493
+ /** 同步订单中已经支付、不可撤销的钱包资产。 */
494
+ setCommittedWalletAssets: (committedIds: WalletAssetId[], committedAssets?: any[]) => WalletAssetsState;
419
495
  }
420
496
  /**
421
497
  * 支付模块API接口
@@ -608,7 +684,8 @@ export declare enum WalletPassHooks {
608
684
  OnSearchIdentificationCodeCompleted = "wallet:onSearchIdentificationCodeCompleted",
609
685
  OnWalletInitializationStarted = "wallet:onWalletInitializationStarted",
610
686
  OnWalletInitializationCompleted = "wallet:onWalletInitializationCompleted",
611
- OnWalletInitializationFailed = "wallet:onWalletInitializationFailed"
687
+ OnWalletInitializationFailed = "wallet:onWalletInitializationFailed",
688
+ OnWalletAssetsStateChanged = "wallet:onWalletAssetsStateChanged"
612
689
  }
613
690
  /**
614
691
  * 支付钩子事件(统一接口)
@@ -40,9 +40,9 @@ export var TaskRunStatus = /*#__PURE__*/function (TaskRunStatus) {
40
40
  */
41
41
  export var RoundingRule = /*#__PURE__*/function (RoundingRule) {
42
42
  RoundingRule["Standard"] = "standard_rounding";
43
- RoundingRule["StandardDown"] = "standard_down";
44
- RoundingRule["AlwaysUp"] = "always_up";
45
- RoundingRule["AlwaysDown"] = "always_down";
43
+ RoundingRule["StandardDown"] = "standard_rounding_midpoint_down";
44
+ RoundingRule["AlwaysUp"] = "round_up";
45
+ RoundingRule["AlwaysDown"] = "round_down";
46
46
  return RoundingRule;
47
47
  }({});
48
48
 
@@ -123,6 +123,20 @@ export var RoundingInterval = /*#__PURE__*/function (RoundingInterval) {
123
123
  * 钱包支付接口
124
124
  */
125
125
 
126
+ /**
127
+ * 购物车与结账共享的钱包资产状态。
128
+ *
129
+ * 原始券字段完整保留在 items / selectedItems 中,Payment 只补充统一的
130
+ * 可用性、选择和加载状态,不在此层引入 UI ViewModel。
131
+ */
132
+
133
+ /**
134
+ * Shared Wallet Assets 的可序列化运行时快照。
135
+ *
136
+ * state 供购物车 / Checkout 直接恢复展示与选择;searchResults 和
137
+ * calculationContext 用于商品变化后继续重验扫码搜索过的 Wallet。
138
+ */
139
+
126
140
  /**
127
141
  * 支付模块API接口
128
142
  */
@@ -184,6 +198,7 @@ export var WalletPassHooks = /*#__PURE__*/function (WalletPassHooks) {
184
198
  WalletPassHooks["OnWalletInitializationStarted"] = "wallet:onWalletInitializationStarted";
185
199
  WalletPassHooks["OnWalletInitializationCompleted"] = "wallet:onWalletInitializationCompleted";
186
200
  WalletPassHooks["OnWalletInitializationFailed"] = "wallet:onWalletInitializationFailed";
201
+ WalletPassHooks["OnWalletAssetsStateChanged"] = "wallet:onWalletAssetsStateChanged";
187
202
  return WalletPassHooks;
188
203
  }({});
189
204
 
@@ -1,4 +1,4 @@
1
- import { WalletPassPayment, WalletDeductionRecommendParams, WalletRecommendItem, UserIdentificationCodeParams, UserIdentificationCodeItem, SearchIdentificationCodeParams, SearchIdentificationCodeItem, SearchIdentificationCodeResult, WalletInitBusinessData } from './types';
1
+ import { WalletPassPayment, WalletDeductionRecommendParams, WalletRecommendItem, UserIdentificationCodeParams, UserIdentificationCodeItem, SearchIdentificationCodeParams, SearchIdentificationCodeItem, SearchIdentificationCodeResult, WalletInitBusinessData, WalletAssetId, WalletAssetsBehaviorOptions, WalletAssetsSnapshot, WalletAssetsState, RefreshWalletAssetsOptions, SelectWalletAssetOptions, ScanWalletAssetResult } from './types';
2
2
  import type { PaymentModule } from './index';
3
3
  /**
4
4
  * 钱包支付实现
@@ -10,12 +10,30 @@ export declare class WalletPassPaymentImpl implements WalletPassPayment {
10
10
  private searchResults;
11
11
  private walletParams;
12
12
  private walletInitData;
13
+ private walletAssetsState;
14
+ private walletAssetsRequestSequence;
15
+ private walletAssetsBehavior;
16
+ private pendingAutoSelectSearchCodes;
17
+ private walletAssetsCalculationContext;
13
18
  constructor(paymentModule: PaymentModule);
19
+ configureWalletAssetsBehavior(options: WalletAssetsBehaviorOptions): void;
14
20
  /**
15
21
  * 发送事件的辅助方法
16
22
  * 支持使用WalletPassHooks或PaymentHooks
17
23
  */
18
24
  private emitEvent;
25
+ private publishWalletAssetsState;
26
+ private recalculateWalletAssets;
27
+ /** 获取当前缓存中所有支付类 Wallet 资产的扫码 code。 */
28
+ private getSearchedWalletAssetCodes;
29
+ /**
30
+ * 用订单重算接口返回的数据更新扫码 Wallet 缓存。
31
+ * 接口暂时缺失某个扫码 code 时继续保留旧值,避免列表闪空。
32
+ */
33
+ private syncSearchedWalletAssets;
34
+ private isPendingAutoSelectAsset;
35
+ private clearPendingAutoSelectForAsset;
36
+ private queuePendingAutoSelectForAssets;
19
37
  /**
20
38
  * 生成钱包API默认参数
21
39
  * 根据业务数据生成标准的钱包API参数,并存储在模块中
@@ -57,6 +75,11 @@ export declare class WalletPassPaymentImpl implements WalletPassPayment {
57
75
  noApplicableVoucher: any[];
58
76
  products: any[];
59
77
  }>;
78
+ /**
79
+ * 商品或订单金额变化后,使用聚合接口一次重算已选与剩余 WalletPass。
80
+ * Walk-In 不发送 customer_id;会员才携带真实 customer_id。
81
+ */
82
+ private aggregateRecalculateWalletAssetsAsync;
60
83
  getWalletPassRecommendListAsync(params: WalletDeductionRecommendParams): Promise<WalletRecommendItem[]>;
61
84
  formatWalletPassList2PreparePayments(list: WalletRecommendItem[]): {
62
85
  voucher_id: number;
@@ -73,6 +96,20 @@ export declare class WalletPassPaymentImpl implements WalletPassPayment {
73
96
  searchIdentificationCodeAsync(params: SearchIdentificationCodeParams, config?: {
74
97
  noCache?: boolean;
75
98
  }): Promise<SearchIdentificationCodeResult>;
99
+ /**
100
+ * 刷新购物车与结账共享的钱包资产。
101
+ *
102
+ * 与 legacy initializeWalletDataFromBusinessAsync 不同,这里维护选择状态;
103
+ * 推荐结果只作为可用性/金额计算输入,不会自动成为 selectedIds。
104
+ */
105
+ refreshWalletAssetsFromBusinessAsync(businessData: WalletInitBusinessData, options?: RefreshWalletAssetsOptions): Promise<WalletAssetsState>;
106
+ getWalletAssetsState(): WalletAssetsState;
107
+ exportWalletAssetsSnapshot(): WalletAssetsSnapshot;
108
+ importWalletAssetsSnapshot(snapshot: WalletAssetsSnapshot): WalletAssetsState;
109
+ selectWalletAsset(assetId: WalletAssetId, options: SelectWalletAssetOptions): WalletAssetsState;
110
+ scanWalletAssetAsync(code: string): Promise<ScanWalletAssetResult>;
111
+ clearWalletAssetSelection(): WalletAssetsState;
112
+ setCommittedWalletAssets(committedIds: WalletAssetId[], committedAssets?: any[]): WalletAssetsState;
76
113
  processWalletPayment(amount: number, orderUuid: string, voucherId?: string): Promise<void>;
77
114
  getWalletBalance(voucherId: string): Promise<number>;
78
115
  /**