four-flap-meme-sdk 2.0.0 → 2.2.0

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 (220) hide show
  1. package/dist/__tests__/subpath-exports.test.js +64 -0
  2. package/dist/chains/bsc/iro.d.ts +5 -0
  3. package/dist/chains/bsc/iro.js +4 -0
  4. package/dist/chains/eni/flat-aliases.d.ts +10 -0
  5. package/dist/chains/eni/flat-aliases.js +8 -0
  6. package/dist/chains/eni/index.d.ts +1 -0
  7. package/dist/chains/eni/index.js +1 -0
  8. package/dist/chains/index.d.ts +13 -0
  9. package/dist/chains/index.js +13 -0
  10. package/dist/chains/xlayer/eip7702/flat-aliases.d.ts +13 -0
  11. package/dist/chains/xlayer/eip7702/flat-aliases.js +10 -0
  12. package/dist/chains/xlayer/eip7702/index.d.ts +1 -0
  13. package/dist/chains/xlayer/eip7702/index.js +1 -0
  14. package/dist/chains/xlayer/index.d.ts +3 -2
  15. package/dist/chains/xlayer/index.js +4 -7
  16. package/dist/flap/index.d.ts +10 -0
  17. package/dist/flap/index.js +8 -0
  18. package/dist/merkle/index.d.ts +12 -0
  19. package/dist/merkle/index.js +11 -0
  20. package/dist/shared/constants/index.d.ts +2 -0
  21. package/dist/shared/index.d.ts +2 -0
  22. package/dist/vanity/index.d.ts +5 -0
  23. package/dist/vanity/index.js +5 -0
  24. package/package.json +93 -2
  25. package/dist/chains/bsc/four/disperse.d.ts +0 -12
  26. package/dist/chains/bsc/four/disperse.js +0 -470
  27. package/dist/chains/bsc/four/pairwise.d.ts +0 -7
  28. package/dist/chains/bsc/four/pairwise.js +0 -308
  29. package/dist/chains/bsc/four/submit/blockrazor.d.ts +0 -18
  30. package/dist/chains/bsc/four/submit/blockrazor.js +0 -86
  31. package/dist/chains/bsc/four/submit/direct.d.ts +0 -66
  32. package/dist/chains/bsc/four/submit/direct.js +0 -452
  33. package/dist/chains/bsc/four/submit/helpers.d.ts +0 -18
  34. package/dist/chains/bsc/four/submit/helpers.js +0 -57
  35. package/dist/chains/bsc/four/submit/index.d.ts +0 -12
  36. package/dist/chains/bsc/four/submit/index.js +0 -11
  37. package/dist/chains/bsc/four/submit/merkle.d.ts +0 -18
  38. package/dist/chains/bsc/four/submit/merkle.js +0 -74
  39. package/dist/chains/bsc/four/submit/types.d.ts +0 -143
  40. package/dist/chains/bsc/four/swap/index.d.ts +0 -32
  41. package/dist/chains/bsc/four/swap/index.js +0 -829
  42. package/dist/chains/bsc/four/swap/types.d.ts +0 -70
  43. package/dist/chains/bsc/four/swap/types.js +0 -1
  44. package/dist/chains/bsc/four/sweep.d.ts +0 -13
  45. package/dist/chains/bsc/four/sweep.js +0 -788
  46. package/dist/chains/bsc/four/utils/index.d.ts +0 -20
  47. package/dist/chains/bsc/four/utils/index.js +0 -1558
  48. package/dist/chains/bsc/four/utils/types.d.ts +0 -1
  49. package/dist/chains/bsc/four/utils/types.js +0 -1
  50. package/dist/chains/bsc/pancake/bundle-buy-first/index.d.ts +0 -8
  51. package/dist/chains/bsc/pancake/bundle-buy-first/index.js +0 -907
  52. package/dist/chains/bsc/pancake/bundle-buy-first/types.d.ts +0 -73
  53. package/dist/chains/bsc/pancake/bundle-buy-first/types.js +0 -1
  54. package/dist/chains/bsc/pancake/bundle-swap/helpers.d.ts +0 -102
  55. package/dist/chains/bsc/pancake/bundle-swap/helpers.js +0 -572
  56. package/dist/chains/bsc/pancake/bundle-swap/index.d.ts +0 -50
  57. package/dist/chains/bsc/pancake/bundle-swap/index.js +0 -1066
  58. package/dist/chains/bsc/pancake/bundle-swap/types.d.ts +0 -202
  59. package/dist/chains/bsc/pancake/bundle-swap/types.js +0 -3
  60. package/dist/chains/xlayer/eip7702/bundle-swap/index.d.ts +0 -72
  61. package/dist/chains/xlayer/eip7702/bundle-swap/index.js +0 -921
  62. package/dist/chains/xlayer/eip7702/bundle-swap/types.d.ts +0 -65
  63. package/dist/chains/xlayer/eip7702/bundle-swap/types.js +0 -1
  64. package/dist/chains/xlayer/eip7702/multi-hop-transfer/index.d.ts +0 -128
  65. package/dist/chains/xlayer/eip7702/multi-hop-transfer/index.js +0 -857
  66. package/dist/chains/xlayer/eip7702/multi-hop-transfer/types.d.ts +0 -85
  67. package/dist/chains/xlayer/eip7702/multi-hop-transfer/types.js +0 -1
  68. package/dist/chains/xlayer/eip7702/volume/index.d.ts +0 -96
  69. package/dist/chains/xlayer/eip7702/volume/index.js +0 -793
  70. package/dist/chains/xlayer/eip7702/volume/types.d.ts +0 -124
  71. package/dist/chains/xlayer/eip7702/volume/types.js +0 -1
  72. package/dist/chains/xlayer/eoa/types-core.d.ts +0 -363
  73. package/dist/chains/xlayer/eoa/types-core.js +0 -53
  74. package/dist/chains/xlayer/eoa/types-create.d.ts +0 -413
  75. package/dist/chains/xlayer/eoa/types-create.js +0 -9
  76. package/dist/chains/xlayer/eoa/types-volume.d.ts +0 -209
  77. package/dist/chains/xlayer/eoa/types-volume.js +0 -13
  78. package/dist/dex/direct-router/index.d.ts +0 -70
  79. package/dist/dex/direct-router/index.js +0 -1410
  80. package/dist/dex/direct-router/types.d.ts +0 -81
  81. package/dist/dex/direct-router/types.js +0 -1
  82. package/dist/shared/abis/TaxToken.json +0 -969
  83. package/dist/shared/abis/TokenManager.json +0 -836
  84. package/dist/shared/abis/TokenManager2.json +0 -136
  85. package/dist/shared/abis/TokenManagerHelper3.json +0 -993
  86. package/dist/shared/abis 2/TaxToken.json +0 -105
  87. package/dist/shared/abis 2/TokenManager.json +0 -836
  88. package/dist/shared/abis 2/TokenManager2.json +0 -60
  89. package/dist/shared/abis 2/TokenManagerHelper3.json +0 -993
  90. package/dist/shared/abis 2/common.d.ts +0 -85
  91. package/dist/shared/abis 2/common.js +0 -254
  92. package/dist/shared/abis 2/index.d.ts +0 -8
  93. package/dist/shared/abis 2/index.js +0 -8
  94. package/dist/shared/clients 2/blockrazor.d.ts +0 -314
  95. package/dist/shared/clients 2/blockrazor.js +0 -596
  96. package/dist/shared/clients 2/club48.d.ts +0 -154
  97. package/dist/shared/clients 2/club48.js +0 -331
  98. package/dist/shared/clients 2/emitservice.d.ts +0 -47
  99. package/dist/shared/clients 2/emitservice.js +0 -44
  100. package/dist/shared/clients 2/four.d.ts +0 -132
  101. package/dist/shared/clients 2/four.js +0 -281
  102. package/dist/shared/clients 2/merkle.d.ts +0 -210
  103. package/dist/shared/clients 2/merkle.js +0 -400
  104. package/dist/shared/flap/__tests__/curve.test.d.ts +0 -1
  105. package/dist/shared/flap/__tests__/curve.test.js +0 -85
  106. package/dist/shared/flap/portal/index.d.ts +0 -12
  107. package/dist/shared/flap/portal/index.js +0 -11
  108. package/dist/shared/flap/portal/portal.d.ts +0 -47
  109. package/dist/shared/flap/portal/portal.js +0 -218
  110. package/dist/shared/flap/portal/types.d.ts +0 -227
  111. package/dist/shared/flap/portal/types.js +0 -80
  112. package/dist/shared/flap/portal/writer.d.ts +0 -121
  113. package/dist/shared/flap/portal/writer.js +0 -265
  114. package/dist/shared/flap/portal-bundle-merkle/core/index.d.ts +0 -18
  115. package/dist/shared/flap/portal-bundle-merkle/core/index.js +0 -938
  116. package/dist/shared/flap/portal-bundle-merkle/core/types.d.ts +0 -1
  117. package/dist/shared/flap/portal-bundle-merkle/core/types.js +0 -1
  118. package/dist/shared/flap/portal-bundle-merkle/swap/index.d.ts +0 -42
  119. package/dist/shared/flap/portal-bundle-merkle/swap/index.js +0 -1448
  120. package/dist/shared/flap/portal-bundle-merkle/swap/types.d.ts +0 -84
  121. package/dist/shared/flap/portal-bundle-merkle/swap/types.js +0 -1
  122. package/dist/shared/flap/portal-bundle-merkle/utils/index.d.ts +0 -17
  123. package/dist/shared/flap/portal-bundle-merkle/utils/index.js +0 -1024
  124. package/dist/shared/flap/portal-bundle-merkle/utils/types.d.ts +0 -16
  125. package/dist/shared/flap/portal-bundle-merkle/utils/types.js +0 -1
  126. package/dist/shared/flap/portal-bundle-merkle/utils-helpers.d.ts +0 -100
  127. package/dist/shared/flap/portal-bundle-merkle/utils-helpers.js +0 -133
  128. package/dist/shared/flap 2/__tests__/curve.test.d.ts +0 -1
  129. package/dist/shared/flap 2/__tests__/curve.test.js +0 -85
  130. package/dist/shared/flap 2/abi.d.ts +0 -4
  131. package/dist/shared/flap 2/abi.js +0 -4
  132. package/dist/shared/flap 2/constants.d.ts +0 -128
  133. package/dist/shared/flap 2/constants.js +0 -143
  134. package/dist/shared/flap 2/curve.d.ts +0 -33
  135. package/dist/shared/flap 2/curve.js +0 -84
  136. package/dist/shared/flap 2/errors.d.ts +0 -37
  137. package/dist/shared/flap 2/errors.js +0 -114
  138. package/dist/shared/flap 2/index.d.ts +0 -22
  139. package/dist/shared/flap 2/index.js +0 -33
  140. package/dist/shared/flap 2/ipfs.d.ts +0 -21
  141. package/dist/shared/flap 2/ipfs.js +0 -38
  142. package/dist/shared/flap 2/meta.d.ts +0 -30
  143. package/dist/shared/flap 2/meta.js +0 -195
  144. package/dist/shared/flap 2/permit.d.ts +0 -16
  145. package/dist/shared/flap 2/permit.js +0 -67
  146. package/dist/shared/flap 2/pinata.d.ts +0 -40
  147. package/dist/shared/flap 2/pinata.js +0 -106
  148. package/dist/shared/flap 2/portal-bundle-merkle/config.d.ts +0 -79
  149. package/dist/shared/flap 2/portal-bundle-merkle/config.js +0 -133
  150. package/dist/shared/flap 2/portal-bundle-merkle/core.d.ts +0 -18
  151. package/dist/shared/flap 2/portal-bundle-merkle/core.js +0 -938
  152. package/dist/shared/flap 2/portal-bundle-merkle/create-to-dex.d.ts +0 -125
  153. package/dist/shared/flap 2/portal-bundle-merkle/create-to-dex.js +0 -665
  154. package/dist/shared/flap 2/portal-bundle-merkle/curve-to-dex.d.ts +0 -88
  155. package/dist/shared/flap 2/portal-bundle-merkle/curve-to-dex.js +0 -446
  156. package/dist/shared/flap 2/portal-bundle-merkle/index.d.ts +0 -14
  157. package/dist/shared/flap 2/portal-bundle-merkle/index.js +0 -26
  158. package/dist/shared/flap 2/portal-bundle-merkle/pancake-proxy.d.ts +0 -28
  159. package/dist/shared/flap 2/portal-bundle-merkle/pancake-proxy.js +0 -701
  160. package/dist/shared/flap 2/portal-bundle-merkle/private.d.ts +0 -17
  161. package/dist/shared/flap 2/portal-bundle-merkle/private.js +0 -549
  162. package/dist/shared/flap 2/portal-bundle-merkle/swap-buy-first.d.ts +0 -65
  163. package/dist/shared/flap 2/portal-bundle-merkle/swap-buy-first.js +0 -831
  164. package/dist/shared/flap 2/portal-bundle-merkle/swap.d.ts +0 -201
  165. package/dist/shared/flap 2/portal-bundle-merkle/swap.js +0 -1359
  166. package/dist/shared/flap 2/portal-bundle-merkle/types.d.ts +0 -358
  167. package/dist/shared/flap 2/portal-bundle-merkle/types.js +0 -1
  168. package/dist/shared/flap 2/portal-bundle-merkle/utils.d.ts +0 -89
  169. package/dist/shared/flap 2/portal-bundle-merkle/utils.js +0 -963
  170. package/dist/shared/flap 2/portal-bundle.d.ts +0 -119
  171. package/dist/shared/flap 2/portal-bundle.js +0 -584
  172. package/dist/shared/flap 2/portal.d.ts +0 -392
  173. package/dist/shared/flap 2/portal.js +0 -559
  174. package/dist/shared/flap 2/vanity.d.ts +0 -48
  175. package/dist/shared/flap 2/vanity.js +0 -110
  176. package/dist/shared/flap 2/vault.d.ts +0 -240
  177. package/dist/shared/flap 2/vault.js +0 -366
  178. package/dist/shared/four 2/index.d.ts +0 -7
  179. package/dist/shared/four 2/index.js +0 -22
  180. package/dist/shared/four 2/tax-token.d.ts +0 -176
  181. package/dist/shared/four 2/tax-token.js +0 -302
  182. package/dist/shared/index 2.js +0 -10
  183. package/dist/shared/index.d 2.ts +0 -10
  184. package/dist/types/distribute.d.ts +0 -72
  185. package/dist/types/distribute.js +0 -1
  186. package/dist/types 2/errors.d.ts +0 -27
  187. package/dist/types 2/errors.js +0 -34
  188. package/dist/utils/__tests__/errors.test.d.ts +0 -1
  189. package/dist/utils/__tests__/errors.test.js +0 -76
  190. package/dist/utils/airdrop-sweep-types.d.ts +0 -1
  191. package/dist/utils/airdrop-sweep-types.js +0 -1
  192. package/dist/utils/erc20/index.d.ts +0 -242
  193. package/dist/utils/erc20/index.js +0 -645
  194. package/dist/utils/erc20/types.d.ts +0 -77
  195. package/dist/utils/erc20/types.js +0 -1
  196. package/dist/utils/erc20-types.d.ts +0 -1
  197. package/dist/utils/erc20-types.js +0 -1
  198. package/dist/utils/holders-maker/helpers.d.ts +0 -43
  199. package/dist/utils/holders-maker/helpers.js +0 -371
  200. package/dist/utils/holders-maker/index.d.ts +0 -26
  201. package/dist/utils/holders-maker/index.js +0 -218
  202. package/dist/utils/holders-maker/types.d.ts +0 -72
  203. package/dist/utils/holders-maker/types.js +0 -4
  204. package/dist/utils/holders-maker-types.d.ts +0 -1
  205. package/dist/utils/holders-maker-types.js +0 -1
  206. package/dist/utils/lp-inspect/index.d.ts +0 -44
  207. package/dist/utils/lp-inspect/index.js +0 -937
  208. package/dist/utils/lp-inspect/types.d.ts +0 -100
  209. package/dist/utils/lp-inspect/types.js +0 -1
  210. package/dist/utils/lp-inspect-types.d.ts +0 -1
  211. package/dist/utils/lp-inspect-types.js +0 -1
  212. package/dist/utils/private-sale-types.d.ts +0 -1
  213. package/dist/utils/private-sale-types.js +0 -1
  214. package/dist/utils/quote-helpers/index.d.ts +0 -107
  215. package/dist/utils/quote-helpers/index.js +0 -346
  216. package/dist/utils/quote-helpers/types.d.ts +0 -16
  217. package/dist/utils/quote-helpers/types.js +0 -1
  218. package/dist/utils/quote-helpers-types.d.ts +0 -1
  219. package/dist/utils/quote-helpers-types.js +0 -1
  220. /package/dist/{chains/bsc/four/submit/types.js → __tests__/subpath-exports.test.d.ts} +0 -0
@@ -1,413 +0,0 @@
1
- /**
2
- * XLayer SDK 类型定义
3
- *
4
- * 包含 ERC-4337 UserOperation、AA 账户、交易参数等核心类型
5
- */
6
- import type { HandleOpsResult } from './types-volume.js';
7
- import type { XLayerConfig } from './types-core.js';
8
- /**
9
- * UserOperation v0.6 结构
10
- * 用于 ERC-4337 EntryPoint v0.6
11
- */
12
- export interface BundleCreateBuySignParams {
13
- /** 代币信息 */
14
- tokenInfo: {
15
- name: string;
16
- symbol: string;
17
- meta: string;
18
- };
19
- /** 预测的代币地址(可选,如果不传则内盘模式会自动根据 salt 预测) */
20
- tokenAddress?: string;
21
- /** 每个 owner 的买入金额(OKB,字符串格式) */
22
- buyAmounts: string[];
23
- /** Owner 私钥列表(第一个为 Dev,后续为买方) */
24
- privateKeys: string[];
25
- /** V2/V3/V4 参数 */
26
- salt?: string;
27
- dexThresh?: number;
28
- taxRate?: number;
29
- migratorType?: number;
30
- quoteToken?: string;
31
- quoteAmt?: bigint;
32
- permitData?: string;
33
- extensionID?: string;
34
- extensionData?: string;
35
- dexId?: number;
36
- lpFeeProfile?: number;
37
- /** 是否将 OKB 归集回 owner EOA(默认 true) */
38
- withdrawToOwner?: boolean;
39
- /** 归集时保留的最小 OKB 余额 */
40
- withdrawReserve?: string;
41
- /** 配置覆盖 */
42
- config?: Partial<XLayerConfig>;
43
- /** Payer 私钥(用于签 handleOps 交易);默认 privateKeys[0] */
44
- payerPrivateKey?: string;
45
- /** beneficiary(默认 payer 地址) */
46
- beneficiary?: string;
47
- /** 可选:指定 payer 起始 nonce(不传则用 pending nonce) */
48
- payerStartNonce?: number;
49
- }
50
- /**
51
- * 捆绑发射签名结果
52
- */
53
- export interface BundleCreateBuySignResult {
54
- /** raw signed tx 列表 */
55
- signedTransactions: string[];
56
- /** 代币地址 */
57
- tokenAddress: string;
58
- /** 元数据 */
59
- metadata: {
60
- tokenAddress: string;
61
- devOwner: string;
62
- devSender: string;
63
- buyerOwners: string[];
64
- buyerSenders: string[];
65
- totalBuyWei: string;
66
- };
67
- }
68
- /**
69
- * 一键发射到外盘签名参数(AA 模式)
70
- *
71
- * 交易顺序:
72
- * 1. handleOps #1: 创建代币 + 内盘买入(买到毕业)
73
- * 2. handleOps #2: 外盘买入(通过 PotatoSwap V2)
74
- * 3. 利润提取(EOA 转账)
75
- */
76
- export interface BundleCreateToDexSignParams {
77
- /** 代币信息 */
78
- tokenInfo: {
79
- name: string;
80
- symbol: string;
81
- meta: string;
82
- };
83
- /** 预计算的代币地址 */
84
- tokenAddress: string;
85
- /** Payer 私钥(支付 Gas,同时作为发币者) */
86
- payerPrivateKey: string;
87
- /** 内盘买入钱包私钥列表 */
88
- curveBuyerPrivateKeys: string[];
89
- /** 内盘买入金额列表(OKB,按顺序对应) */
90
- curveBuyAmounts: string[];
91
- /** 是否启用外盘买入(默认 false) */
92
- enableDexBuy?: boolean;
93
- /** 外盘买入钱包私钥列表(可与内盘钱包相同或不同) */
94
- dexBuyerPrivateKeys?: string[];
95
- /** 外盘买入金额列表(OKB) */
96
- dexBuyAmounts?: string[];
97
- /** V4 发币参数 */
98
- salt?: string;
99
- dexThresh?: number;
100
- taxRate?: number;
101
- migratorType?: number;
102
- quoteToken?: string;
103
- quoteAmt?: bigint;
104
- beneficiary?: string;
105
- permitData?: string;
106
- extensionID?: string;
107
- extensionData?: string;
108
- dexId?: number;
109
- lpFeeProfile?: number;
110
- /** Payer 起始 nonce(不传则用 pending nonce) */
111
- payerStartNonce?: number;
112
- /** 配置覆盖 */
113
- config?: Partial<XLayerConfig>;
114
- }
115
- /**
116
- * 一键发射到外盘签名结果
117
- */
118
- export interface BundleCreateToDexSignResult {
119
- /** raw signed tx 列表 */
120
- signedTransactions: string[];
121
- /** 代币地址 */
122
- tokenAddress: string;
123
- /** 元数据 */
124
- metadata?: {
125
- payerOwner: string;
126
- payerSender: string;
127
- curveBuyerCount: number;
128
- curveTotalBuyWei: string;
129
- enableDexBuy: boolean;
130
- dexBuyerCount: number;
131
- dexTotalBuyWei: string;
132
- profitAmount?: string;
133
- };
134
- }
135
- /**
136
- * 捆绑换手参数(AA 模式,单卖单买)
137
- * - 卖方 AA 先卖出
138
- * - 买方 AA 再买入
139
- * - 两个 UserOp(以及可选 approve)放入同一笔 handleOps
140
- */
141
- export interface BundleSwapParams {
142
- /** 交易类型:FLAP (内盘), V2 (外盘 V2), V3 (外盘 V3) */
143
- tradeType?: 'FLAP' | 'V2' | 'V3';
144
- /** DEX 标识(用于选择正确的 Router) */
145
- dexKey?: string;
146
- /** 显式指定 Router 地址(若不传则由 SDK 根据 dexKey 自动决定) */
147
- routerAddress?: string;
148
- /** LP 费率档位 (V3 专用): 0=STANDARD (0.25%), 1=LOW (0.01%), 2=HIGH (1%) */
149
- lpFeeProfile?: number;
150
- /** 代币地址 */
151
- tokenAddress: string;
152
- /** 卖方 Owner 私钥 */
153
- sellerPrivateKey: string;
154
- /** 买方 Owner 私钥 */
155
- buyerPrivateKey: string;
156
- /** 卖出数量(人类可读字符串,按代币 decimals 解析);优先于 sellPercent */
157
- sellAmount?: string;
158
- /** 卖出比例(0-100,默认 100) */
159
- sellPercent?: number;
160
- /** ✅ ERC20 稳定币支持(对齐 BSC):输出代币地址(如 USDT/USDC/USDT0),不传则使用原生代币 OKB */
161
- quoteToken?: string;
162
- /** ✅ ERC20 稳定币精度(默认 6,XLayer USDT/USDC/USDT0 都是 6 位精度) */
163
- quoteTokenDecimals?: number;
164
- /**
165
- * 买入 OKB 数量(字符串)。
166
- * - 不传则默认使用 previewSell(sellAmount) 的结果,并应用 slippageBps
167
- */
168
- buyAmountOkb?: string;
169
- /** 预估卖出滑点(基点),默认 100 = 1%(用于 buyAmountOkb 未传入时) */
170
- slippageBps?: number;
171
- /**
172
- * ✅ 转账多跳数(AA 专用,且与 BSC 的“多跳”逻辑相互独立)
173
- *
174
- * 用途:当卖出与买入不是同一个 AA(Sender) 时,需要把卖出得到的 OKB 先转到买方 AA(Sender) 才能执行 buy。
175
- * - 0:卖方 AA(Sender) 直接转给买方 AA(Sender)
176
- * - >0:按“多跳”方式转账(实现位于 xlayer/*,不会影响 BSC bundle/merkle)
177
- */
178
- disperseHopCount?: number;
179
- /** 配置覆盖 */
180
- config?: Partial<XLayerConfig>;
181
- }
182
- /**
183
- * 捆绑换手执行结果(链上执行 handleOps)
184
- */
185
- export interface BundleSwapResult {
186
- /** handleOps 交易结果 */
187
- swapResult: HandleOpsResult;
188
- /** 元数据(便于前端显示) */
189
- metadata: {
190
- sellerOwner: string;
191
- sellerSender: string;
192
- buyerOwner: string;
193
- buyerSender: string;
194
- sellAmountWei: string;
195
- buyAmountWei: string;
196
- hasApprove: boolean;
197
- routeAddress?: string;
198
- /** 是否提取利润 */
199
- extractProfit?: boolean;
200
- /** 利润比例 bps */
201
- profitBps?: number;
202
- /** 利润接收地址 */
203
- profitRecipient?: string;
204
- /** 预估利润(OKB wei) */
205
- profitWei?: string;
206
- /** 预估卖出输出(OKB wei) */
207
- quotedSellOutWei?: string;
208
- /** ✅ AA:转账多跳数(仅 xlayer AA 使用;不影响 BSC) */
209
- disperseHopCount?: string;
210
- };
211
- }
212
- /**
213
- * 捆绑换手签名参数(仅签名 handleOps 交易;可选追加 route 尾交易)
214
- * - 返回 raw signed tx,可按“BSC 捆绑”模式交给后端/Builder 提交
215
- */
216
- export interface BundleSwapSignParams extends BundleSwapParams {
217
- /** Payer 私钥(用于签 handleOps 交易);默认 sellerPrivateKey */
218
- payerPrivateKey?: string;
219
- /** beneficiary(默认 payer 地址) */
220
- beneficiary?: string;
221
- /** 可选:指定 payer 起始 nonce(不传则用 pending nonce) */
222
- payerStartNonce?: number;
223
- /** 可选:覆盖 handleOps gasLimit(不传则自动 estimate,失败回退) */
224
- handleOpsGasLimit?: bigint;
225
- /**
226
- * 可选:routeAddress(如果你的后端要求“route 尾交易”,则传入)
227
- * - SDK 会自动构造 nonce+1 的空转账 tailTx
228
- */
229
- routeAddress?: string;
230
- }
231
- /**
232
- * 捆绑换手签名结果
233
- */
234
- export interface BundleSwapSignResult {
235
- /** raw signed tx 列表(handleOps 在前;如果有 routeAddress 则 tailTx 在后) */
236
- signedTransactions: string[];
237
- /** 元数据(便于前端显示) */
238
- metadata: {
239
- payer: string;
240
- beneficiary: string;
241
- sellerOwner: string;
242
- sellerSender: string;
243
- buyerOwner: string;
244
- buyerSender: string;
245
- sellAmountWei: string;
246
- buyAmountWei: string;
247
- hasApprove: boolean;
248
- routeAddress?: string;
249
- /** 是否提取利润 */
250
- extractProfit?: boolean;
251
- /** 利润比例 bps */
252
- profitBps?: number;
253
- /** 利润接收地址 */
254
- profitRecipient?: string;
255
- /** 预估利润(OKB wei) */
256
- profitWei?: string;
257
- /** 预估卖出输出(OKB wei) */
258
- quotedSellOutWei?: string;
259
- /** ✅ AA:转账多跳数(仅 xlayer AA 使用;不影响 BSC) */
260
- disperseHopCount?: string;
261
- };
262
- }
263
- /**
264
- * 批量捆绑换手参数(一卖多买)
265
- */
266
- export interface BundleBatchSwapParams {
267
- /** 交易类型:FLAP (内盘), V2 (外盘 V2), V3 (外盘 V3) */
268
- tradeType?: 'FLAP' | 'V2' | 'V3';
269
- /** DEX 标识(用于选择正确的 Router) */
270
- dexKey?: string;
271
- /** 显式指定 Router 地址(若不传则由 SDK 根据 dexKey 自动决定) */
272
- routerAddress?: string;
273
- /** LP 费率档位 (V3 专用): 0=STANDARD (0.25%), 1=LOW (0.01%), 2=HIGH (1%) */
274
- lpFeeProfile?: number;
275
- /** 代币地址 */
276
- tokenAddress: string;
277
- /** 卖方 Owner 私钥 */
278
- sellerPrivateKey: string;
279
- /** 买方 Owner 私钥列表 */
280
- buyerPrivateKeys: string[];
281
- /** 每个买方的买入 OKB 数量(字符串,长度必须与 buyerPrivateKeys 一致) */
282
- buyAmountsOkb: string[];
283
- /** 卖出数量(人类可读字符串,按代币 decimals 解析);优先于 sellPercent */
284
- sellAmount?: string;
285
- /** 卖出比例(0-100,默认 100) */
286
- sellPercent?: number;
287
- /** ✅ ERC20 稳定币支持(对齐 BSC):输出代币地址(如 USDT/USDC/USDT0),不传则使用原生代币 OKB */
288
- quoteToken?: string;
289
- /** ✅ ERC20 稳定币精度(默认 6,XLayer USDT/USDC/USDT0 都是 6 位精度) */
290
- quoteTokenDecimals?: number;
291
- /**
292
- * ✅ 资金利用率模式(对齐 BSC)
293
- * - true(默认):卖出 → 分发 → 买入(资金来自卖出所得,对应 BSC flapQuickBatchSwapMerkle)
294
- * - false:卖出 → 买入(买方自带资金,对应 BSC flapBatchSwapMerkle)
295
- */
296
- capitalMode?: boolean;
297
- /**
298
- * ✅ 转账多跳数(AA 专用,仅 capitalMode=true 时生效)
299
- *
300
- * 用途:卖出所得 OKB 需要在同一笔 handleOps 内分发给多个买方 AA(Sender)。
301
- * - 0:卖方 AA(Sender) 直接分发给所有买方 AA(Sender)
302
- * - >0:按"多跳"方式分发(实现位于 xlayer/*,不会影响 BSC bundle/merkle)
303
- */
304
- disperseHopCount?: number;
305
- /**
306
- * ✅ 前端传入的 gasPrice(Gwei)
307
- * - 如果不传,SDK 会调用 getFeeData 获取当前 gas 价格
308
- * - 建议:前端获取当前 gas 价格后传入,确保 prefund 计算一致
309
- */
310
- gasPriceGwei?: number;
311
- /**
312
- * ✅ 买入操作的 callGasLimit
313
- * - DEX 买入默认 650,000
314
- * - Portal 买入默认 450,000
315
- * - 前端可根据实际情况调整
316
- */
317
- buyerCallGasLimit?: bigint;
318
- /**
319
- * ✅ 多跳转账的 callGasLimit
320
- * - 默认 150,000
321
- * - 前端可根据实际情况调整
322
- */
323
- hopCallGasLimit?: bigint;
324
- /**
325
- * ✅ 买入模式(V3 交易专用)
326
- * - 'exactInput'(默认):花费固定 OKB,买尽可能多的代币(保证交易成功,但代币数量不确定)
327
- * - 'exactOutput':买固定数量代币,花尽可能少的 OKB(保证买到预期数量,但可能失败)
328
- *
329
- * 注意:
330
- * - exactOutput 需要配合 buyAmountsToken 使用
331
- * - 如果 OKB 不足以买到预期数量,交易会失败
332
- * - V2 交易不支持 exactOutput,会自动回退到 exactInput
333
- */
334
- buyMode?: 'exactInput' | 'exactOutput';
335
- /**
336
- * ✅ 每个买方要买入的代币数量(字符串,用于 exactOutput 模式)
337
- * - 长度必须与 buyerPrivateKeys 一致
338
- * - 仅在 buyMode = 'exactOutput' 时使用
339
- * - 代币数量会按代币的 decimals 解析
340
- */
341
- buyAmountsToken?: string[];
342
- /** 配置覆盖 */
343
- config?: Partial<XLayerConfig>;
344
- }
345
- export interface BundleBatchSwapResult {
346
- swapResult: HandleOpsResult;
347
- metadata: {
348
- sellerOwner: string;
349
- sellerSender: string;
350
- buyerOwners: string[];
351
- buyerSenders: string[];
352
- sellAmountWei: string;
353
- buyAmountsWei: string[];
354
- hasApprove: boolean;
355
- routeAddress?: string;
356
- /** 是否提取利润 */
357
- extractProfit?: boolean;
358
- /** 利润比例 bps */
359
- profitBps?: number;
360
- /** 利润接收地址 */
361
- profitRecipient?: string;
362
- /** 预估利润(OKB wei) */
363
- profitWei?: string;
364
- /** 预估卖出输出(OKB wei) */
365
- quotedSellOutWei?: string;
366
- /** ✅ AA:转账多跳数(仅 xlayer AA 使用;不影响 BSC) */
367
- disperseHopCount?: string;
368
- };
369
- }
370
- export interface BundleBatchSwapSignParams extends BundleBatchSwapParams {
371
- payerPrivateKey?: string;
372
- beneficiary?: string;
373
- payerStartNonce?: number;
374
- handleOpsGasLimit?: bigint;
375
- routeAddress?: string;
376
- }
377
- export interface BundleBatchSwapSignResult {
378
- signedTransactions: string[];
379
- /** ✅ 多跳中转钱包列表(用作资金中转的买方钱包,交易失败时可找回资金) */
380
- hopWallets?: Array<{
381
- address: string;
382
- privateKey: string;
383
- }>;
384
- metadata: {
385
- payer: string;
386
- beneficiary: string;
387
- sellerOwner: string;
388
- sellerSender: string;
389
- buyerOwners: string[];
390
- buyerSenders: string[];
391
- sellAmountWei: string;
392
- buyAmountsWei: string[];
393
- hasApprove: boolean;
394
- routeAddress?: string;
395
- /** 是否提取利润 */
396
- extractProfit?: boolean;
397
- /** 利润比例 bps */
398
- profitBps?: number;
399
- /** 利润接收地址 */
400
- profitRecipient?: string;
401
- /** 预估利润(OKB wei) */
402
- profitWei?: string;
403
- /** 预估卖出输出(OKB wei) */
404
- quotedSellOutWei?: string;
405
- /** ✅ AA:转账多跳数(仅 xlayer AA 使用;不影响 BSC) */
406
- disperseHopCount?: string;
407
- /** ✅ 利润刮取模式:payer-eoa=由Payer EOA独立刮取,seller-aa=由Seller AA在分发中刮取 */
408
- profitMode?: 'payer-eoa' | 'seller-aa';
409
- };
410
- }
411
- /**
412
- * 刷量参数
413
- */
@@ -1,9 +0,0 @@
1
- /**
2
- * XLayer SDK 类型定义
3
- *
4
- * 包含 ERC-4337 UserOperation、AA 账户、交易参数等核心类型
5
- */
6
- export {};
7
- /**
8
- * 刷量参数
9
- */
@@ -1,209 +0,0 @@
1
- /**
2
- * XLayer SDK 类型定义
3
- *
4
- * 包含 ERC-4337 UserOperation、AA 账户、交易参数等核心类型
5
- */
6
- import type { XLayerConfig } from './types-core.js';
7
- /**
8
- * UserOperation v0.6 结构
9
- * 用于 ERC-4337 EntryPoint v0.6
10
- */
11
- export interface VolumeParams {
12
- /** 代币地址 */
13
- tokenAddress: string;
14
- /** Owner 私钥列表 */
15
- privateKeys: string[];
16
- /** 每轮买入金额(OKB) */
17
- buyAmountPerRound: string;
18
- /** 刷量轮数 */
19
- rounds: number;
20
- /** 每轮间隔时间(毫秒,默认 3000) */
21
- intervalMs?: number;
22
- /** 每轮是否立即卖出(默认 true) */
23
- sellImmediately?: boolean;
24
- /** 配置覆盖 */
25
- config?: Partial<XLayerConfig>;
26
- }
27
- /**
28
- * handleOps 执行结果
29
- */
30
- export interface HandleOpsResult {
31
- /** 交易哈希 */
32
- txHash: string;
33
- /** 区块号 */
34
- blockNumber: number;
35
- /** 交易状态 */
36
- status: number;
37
- /** UserOperationEvent 列表 */
38
- userOpEvents: UserOpEventResult[];
39
- }
40
- /**
41
- * UserOperationEvent 解析结果
42
- */
43
- export interface UserOpEventResult {
44
- userOpHash: string;
45
- sender: string;
46
- paymaster: string;
47
- success: boolean;
48
- actualGasCost: bigint;
49
- actualGasUsed: bigint;
50
- }
51
- /**
52
- * 捆绑买入结果
53
- */
54
- export interface BundleBuyResult {
55
- /** 买入交易结果 */
56
- buyResult: HandleOpsResult;
57
- /** 转账交易结果(如果 transferBackToOwner) */
58
- transferResult?: HandleOpsResult;
59
- /** 各 sender 的代币余额 */
60
- tokenBalances: Map<string, bigint>;
61
- }
62
- /**
63
- * 捆绑卖出结果
64
- */
65
- export interface BundleSellResult {
66
- /** 卖出交易结果 */
67
- sellResult: HandleOpsResult;
68
- /** 归集交易结果(如果 withdrawToOwner) */
69
- withdrawResult?: HandleOpsResult;
70
- /**
71
- * 利润汇总(如果 withdrawToOwner=true 且实际归集金额>0)
72
- * - 注意:AA 的 handleOps tx.value 永远是 0;利润是“从 AA Sender 余额里拆分转走”的金额
73
- */
74
- profit?: {
75
- extractProfit: boolean;
76
- profitBps: number;
77
- profitRecipient: string;
78
- totalProfitWei: string;
79
- };
80
- }
81
- /**
82
- * 捆绑买卖结果
83
- */
84
- export interface BundleBuySellResult {
85
- /** 买入阶段结果 */
86
- buyResult: HandleOpsResult;
87
- /** 卖出阶段结果 */
88
- sellResult: HandleOpsResult;
89
- /** 归集阶段结果(如果 withdrawToOwner) */
90
- withdrawResult?: HandleOpsResult;
91
- /** 各 sender 的最终 OKB 余额 */
92
- finalBalances: Map<string, bigint>;
93
- /** 利润汇总(如果 withdrawToOwner=true 且实际归集金额>0) */
94
- profit?: {
95
- extractProfit: boolean;
96
- profitBps: number;
97
- profitRecipient: string;
98
- totalProfitWei: string;
99
- };
100
- }
101
- /**
102
- * 刷量结果
103
- */
104
- export interface VolumeResult {
105
- /** 成功轮数 */
106
- successRounds: number;
107
- /** 失败轮数 */
108
- failedRounds: number;
109
- /** 每轮结果 */
110
- roundResults: BundleBuySellResult[];
111
- /** 总交易量(OKB) */
112
- totalVolume: bigint;
113
- }
114
- export type BuyFirstTradeType = 'FLAP' | 'V2';
115
- /** ✅ Router 版本类型 */
116
- export type RouterVersion = 'V2' | 'V3';
117
- /** ✅ 授权目标类型 */
118
- export type ApprovalTarget = 'FLAP_PORTAL' | 'V2_ROUTER' | 'V3_ROUTER';
119
- export interface BuyFirstParams {
120
- tradeType?: BuyFirstTradeType;
121
- /** ✅ 新增:Router 版本(V2 或 V3,默认 V2) */
122
- routerVersion?: RouterVersion;
123
- /** DEX 标识(仅 V2 时使用,用于选择 Router) */
124
- dexKey?: string;
125
- /** 显式指定 Router 地址(仅 V2 时使用) */
126
- routerAddress?: string;
127
- /** DEX deadline 分钟数(仅 V2 时使用) */
128
- deadlineMinutes?: number;
129
- tokenAddress: string;
130
- buyerPrivateKeys: string[];
131
- sellerPrivateKeys: string[];
132
- /** 本轮总买入资金(OKB 或 quoteToken) */
133
- buyerFunds: string;
134
- buyCount?: number;
135
- sellCount?: number;
136
- /** ✅ 新增:买入使用的代币地址(零地址或不传表示使用 OKB,非零地址表示使用 ERC20 如 USDT) */
137
- quoteToken?: string;
138
- /** ✅ 新增:quoteToken 的精度(默认 18,USDT 在 XLayer 上是 6 位) */
139
- quoteTokenDecimals?: number;
140
- /** 报价滑点(仅用于估算 sellAmount),默认 0 */
141
- slippageBps?: number;
142
- withdrawToOwner?: boolean;
143
- withdrawReserve?: string;
144
- config?: Partial<XLayerConfig>;
145
- }
146
- export interface BuyFirstResult {
147
- buySellResult: HandleOpsResult;
148
- withdrawResult?: HandleOpsResult;
149
- finalSellerBalances?: Map<string, bigint>;
150
- profit?: {
151
- extractProfit: boolean;
152
- profitBps: number;
153
- profitRecipient: string;
154
- totalProfitWei: string;
155
- };
156
- metadata: {
157
- tradeType: BuyFirstTradeType;
158
- tokenAddress: string;
159
- buyerOwners: string[];
160
- buyerSenders: string[];
161
- sellerOwners: string[];
162
- sellerSenders: string[];
163
- buyAmountsWei: string[];
164
- sellAmountsWei: string[];
165
- totalBuyWei: string;
166
- estimatedTokenOutWei: string;
167
- slippageBps: number;
168
- };
169
- }
170
- export interface BuyFirstVolumeParams extends Omit<BuyFirstParams, 'buyerFunds'> {
171
- buyerFundsPerRound: string;
172
- rounds: number;
173
- intervalMs?: number;
174
- }
175
- export interface BuyFirstVolumeResult {
176
- successRounds: number;
177
- failedRounds: number;
178
- roundResults: BuyFirstResult[];
179
- /** 总交易量(OKB wei,按“买入资金*2”统计) */
180
- totalVolume: bigint;
181
- }
182
- /**
183
- * 外盘(PotatoSwap)交易参数
184
- */
185
- export interface DexSwapParams {
186
- /** 输入代币地址(零地址表示 OKB) */
187
- inputToken: string;
188
- /** 输出代币地址(零地址表示 OKB) */
189
- outputToken: string;
190
- /** 输入金额 */
191
- inputAmount: bigint;
192
- /** 最小输出金额 */
193
- minOutputAmount: bigint;
194
- /** 交易截止时间(默认 20 分钟) */
195
- deadline?: number;
196
- }
197
- /**
198
- * 外盘交易结果
199
- */
200
- export interface DexSwapResult {
201
- txHash: string;
202
- inputAmount: bigint;
203
- outputAmount: bigint;
204
- gasUsed: bigint;
205
- }
206
- /**
207
- * 预授权参数
208
- * 用于提前授权代币,避免在交易时等待授权确认
209
- */
@@ -1,13 +0,0 @@
1
- /**
2
- * XLayer SDK 类型定义
3
- *
4
- * 包含 ERC-4337 UserOperation、AA 账户、交易参数等核心类型
5
- */
6
- export {};
7
- // ============================================================================
8
- // 预授权类型(AA 模式一键授权)
9
- // ============================================================================
10
- /**
11
- * 预授权参数
12
- * 用于提前授权代币,避免在交易时等待授权确认
13
- */