four-flap-meme-sdk 2.2.7 → 2.2.10

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 (474) hide show
  1. package/README.en.md +6 -41
  2. package/README.md +0 -31
  3. package/README.zh-CN.md +6 -41
  4. package/dist/chains/bsc/four/approve-tokenmanager.d.ts +26 -1
  5. package/dist/chains/bsc/four/approve-tokenmanager.js +113 -1
  6. package/dist/chains/bsc/four/config.d.ts +67 -5
  7. package/dist/chains/bsc/four/config.js +114 -2
  8. package/dist/chains/bsc/four/core.d.ts +4 -1
  9. package/dist/chains/bsc/four/core.js +592 -1
  10. package/dist/chains/bsc/four/index.d.ts +6 -6
  11. package/dist/chains/bsc/four/index.js +6 -6
  12. package/dist/chains/bsc/four/internal.d.ts +46 -2
  13. package/dist/chains/bsc/four/internal.js +239 -2
  14. package/dist/chains/bsc/four/pancake-proxy.d.ts +28 -1
  15. package/dist/chains/bsc/four/pancake-proxy.js +687 -1
  16. package/dist/chains/bsc/four/private.d.ts +27 -1
  17. package/dist/chains/bsc/four/private.js +477 -1
  18. package/dist/chains/bsc/four/submit.d.ts +315 -2
  19. package/dist/chains/bsc/four/submit.js +752 -2
  20. package/dist/chains/bsc/four/swap-buy-first.d.ts +55 -2
  21. package/dist/chains/bsc/four/swap-buy-first.js +507 -2
  22. package/dist/chains/bsc/four/swap-internal.d.ts +3 -1
  23. package/dist/chains/bsc/four/swap-internal.js +18 -1
  24. package/dist/chains/bsc/four/swap.d.ts +144 -2
  25. package/dist/chains/bsc/four/swap.js +766 -2
  26. package/dist/chains/bsc/four/types.d.ts +476 -1
  27. package/dist/chains/bsc/four/utils.d.ts +18 -5
  28. package/dist/chains/bsc/four/utils.js +1552 -5
  29. package/dist/chains/bsc/pancake/bundle-buy-first.d.ts +91 -1
  30. package/dist/chains/bsc/pancake/bundle-buy-first.js +212 -97
  31. package/dist/chains/bsc/pancake/bundle-swap.d.ts +79 -1
  32. package/dist/chains/bsc/pancake/bundle-swap.js +726 -114
  33. package/dist/chains/bsc/pancake/index.d.ts +2 -4
  34. package/dist/chains/bsc/pancake/index.js +3 -1
  35. package/dist/chains/bsc/platforms/iro/factory.d.ts +2 -2
  36. package/dist/chains/bsc/platforms/iro/factory.js +1 -3
  37. package/dist/chains/bsc/platforms/iro/index.d.ts +5 -5
  38. package/dist/chains/bsc/platforms/iro/index.js +3 -3
  39. package/dist/chains/bsc/platforms/iro/pool.js +10 -31
  40. package/dist/chains/bsc/platforms/iro/token.js +1 -4
  41. package/dist/chains/eni/batch-router/bundle-approve.js +3 -4
  42. package/dist/chains/eni/batch-router/transfer.js +25 -55
  43. package/dist/chains/eni/batch-router/utils.js +6 -32
  44. package/dist/chains/eni/bundler/sign.js +6 -5
  45. package/dist/chains/eni/bundler/submit.js +4 -1
  46. package/dist/chains/eni/constants.js +1 -1
  47. package/dist/chains/eni/index.d.ts +1 -2
  48. package/dist/chains/eni/index.js +0 -1
  49. package/dist/chains/eni/platforms/daoaas/create.js +2 -2
  50. package/dist/chains/eni/platforms/daoaas/index.d.ts +3 -3
  51. package/dist/chains/eni/platforms/daoaas/index.js +3 -3
  52. package/dist/chains/eni/platforms/daoaas/meta.js +6 -9
  53. package/dist/chains/eni/platforms/daoaas/portal-direct.js +44 -28
  54. package/dist/chains/eni/platforms/daoaas/portal.js +6 -10
  55. package/dist/chains/eni/platforms/dswap/liquidity.js +26 -58
  56. package/dist/chains/eni/platforms/fair-launch/index.d.ts +2 -2
  57. package/dist/chains/eni/platforms/fair-launch/index.js +1 -1
  58. package/dist/chains/eni/platforms/fair-launch/launcher.js +46 -87
  59. package/dist/chains/eni/platforms/fair-launch/pool.js +1 -4
  60. package/dist/chains/eni/platforms/fair-launch/presets.js +2 -2
  61. package/dist/chains/eni/platforms/iro/factory.d.ts +2 -2
  62. package/dist/chains/eni/platforms/iro/factory.js +1 -3
  63. package/dist/chains/eni/platforms/iro/index.d.ts +6 -6
  64. package/dist/chains/eni/platforms/iro/index.js +4 -4
  65. package/dist/chains/eni/platforms/iro/pool.js +26 -90
  66. package/dist/chains/eni/platforms/iro/token.js +31 -107
  67. package/dist/chains/eni/platforms/iro/whitelist.js +18 -6
  68. package/dist/chains/index.d.ts +0 -13
  69. package/dist/chains/index.js +0 -13
  70. package/dist/chains/xlayer/eip7702/bundle-approve.d.ts +26 -2
  71. package/dist/chains/xlayer/eip7702/bundle-approve.js +21 -11
  72. package/dist/chains/xlayer/eip7702/bundle-buy.d.ts +6 -2
  73. package/dist/chains/xlayer/eip7702/bundle-buy.js +51 -13
  74. package/dist/chains/xlayer/eip7702/bundle-create.js +59 -93
  75. package/dist/chains/xlayer/eip7702/bundle-sell.d.ts +6 -2
  76. package/dist/chains/xlayer/eip7702/bundle-sell.js +111 -29
  77. package/dist/chains/xlayer/eip7702/bundle-swap.d.ts +65 -3
  78. package/dist/chains/xlayer/eip7702/bundle-swap.js +245 -51
  79. package/dist/chains/xlayer/eip7702/constants.d.ts +16 -1
  80. package/dist/chains/xlayer/eip7702/constants.js +21 -3
  81. package/dist/chains/xlayer/eip7702/index.d.ts +46 -28
  82. package/dist/chains/xlayer/eip7702/index.js +81 -28
  83. package/dist/chains/xlayer/eip7702/multi-hop-transfer.d.ts +203 -2
  84. package/dist/chains/xlayer/eip7702/multi-hop-transfer.js +307 -63
  85. package/dist/chains/xlayer/eip7702/types.d.ts +0 -88
  86. package/dist/chains/xlayer/eip7702/utils.d.ts +3 -0
  87. package/dist/chains/xlayer/eip7702/utils.js +28 -23
  88. package/dist/chains/xlayer/eip7702/volume.d.ts +184 -6
  89. package/dist/chains/xlayer/eip7702/volume.js +164 -89
  90. package/dist/chains/xlayer/eoa/constants.js +1 -1
  91. package/dist/chains/xlayer/eoa/dex-helpers.js +5 -5
  92. package/dist/chains/xlayer/eoa/eoa-bundle-swap.d.ts +95 -1
  93. package/dist/chains/xlayer/eoa/eoa-bundle-swap.js +299 -66
  94. package/dist/chains/xlayer/eoa/eoa-wash-volume.d.ts +1 -1
  95. package/dist/chains/xlayer/eoa/eoa-wash-volume.js +23 -18
  96. package/dist/chains/xlayer/eoa/index.d.ts +6 -10
  97. package/dist/chains/xlayer/eoa/index.js +23 -8
  98. package/dist/chains/xlayer/eoa/portal-ops.js +2 -7
  99. package/dist/chains/xlayer/eoa/router-manager.js +3 -3
  100. package/dist/chains/xlayer/eoa/types.d.ts +2 -2
  101. package/dist/chains/xlayer/eoa/types.js +3 -1
  102. package/dist/chains/xlayer/index.d.ts +2 -3
  103. package/dist/chains/xlayer/index.js +7 -4
  104. package/dist/contracts/helper3.d.ts +5 -20
  105. package/dist/contracts/helper3.js +20 -56
  106. package/dist/contracts/tm-bundle-merkle/approve-tokenmanager.d.ts +26 -1
  107. package/dist/contracts/tm-bundle-merkle/approve-tokenmanager.js +113 -1
  108. package/dist/contracts/tm-bundle-merkle/config.d.ts +67 -5
  109. package/dist/contracts/tm-bundle-merkle/config.js +114 -2
  110. package/dist/contracts/tm-bundle-merkle/core.d.ts +4 -1
  111. package/dist/contracts/tm-bundle-merkle/core.js +591 -1
  112. package/dist/contracts/tm-bundle-merkle/index.d.ts +5 -5
  113. package/dist/contracts/tm-bundle-merkle/index.js +5 -5
  114. package/dist/contracts/tm-bundle-merkle/internal.d.ts +46 -2
  115. package/dist/contracts/tm-bundle-merkle/internal.js +238 -2
  116. package/dist/contracts/tm-bundle-merkle/pancake-proxy.d.ts +28 -1
  117. package/dist/contracts/tm-bundle-merkle/pancake-proxy.js +686 -1
  118. package/dist/contracts/tm-bundle-merkle/private.d.ts +27 -1
  119. package/dist/contracts/tm-bundle-merkle/private.js +476 -1
  120. package/dist/contracts/tm-bundle-merkle/submit.d.ts +314 -3
  121. package/dist/contracts/tm-bundle-merkle/submit.js +928 -3
  122. package/dist/contracts/tm-bundle-merkle/swap-buy-first.d.ts +55 -2
  123. package/dist/contracts/tm-bundle-merkle/swap-buy-first.js +506 -2
  124. package/dist/contracts/tm-bundle-merkle/swap-internal.d.ts +3 -1
  125. package/dist/contracts/tm-bundle-merkle/swap-internal.js +18 -1
  126. package/dist/contracts/tm-bundle-merkle/swap.d.ts +144 -2
  127. package/dist/contracts/tm-bundle-merkle/swap.js +764 -2
  128. package/dist/contracts/tm-bundle-merkle/types.d.ts +476 -1
  129. package/dist/contracts/tm-bundle-merkle/utils.d.ts +18 -6
  130. package/dist/contracts/tm-bundle-merkle/utils.js +1501 -6
  131. package/dist/contracts/tm-bundle.d.ts +51 -3
  132. package/dist/contracts/tm-bundle.js +177 -108
  133. package/dist/contracts/tm.d.ts +2 -3
  134. package/dist/contracts/tm.js +32 -37
  135. package/dist/contracts/tm1.js +4 -9
  136. package/dist/contracts/tm2.js +4 -9
  137. package/dist/dex/direct-router.d.ts +125 -3
  138. package/dist/dex/direct-router.js +666 -237
  139. package/dist/flows/create.d.ts +1 -2
  140. package/dist/flows/create.js +6 -6
  141. package/dist/index.d.ts +86 -20
  142. package/dist/index.js +216 -20
  143. package/dist/shared/abis/TaxToken.json +105 -0
  144. package/dist/shared/abis/TokenManager2.json +60 -0
  145. package/dist/shared/abis/common.d.ts +83 -2
  146. package/dist/shared/abis/common.js +253 -2
  147. package/dist/shared/abis/index.d.ts +6 -5
  148. package/dist/shared/abis/index.js +7 -5
  149. package/dist/shared/clients/blockrazor.js +25 -39
  150. package/dist/shared/clients/club48.d.ts +2 -2
  151. package/dist/shared/clients/club48.js +29 -34
  152. package/dist/shared/clients/emitservice.js +0 -2
  153. package/dist/shared/clients/four.d.ts +6 -21
  154. package/dist/shared/clients/four.js +24 -29
  155. package/dist/shared/clients/merkle.js +34 -27
  156. package/dist/shared/constants/addresses.d.ts +1 -1
  157. package/dist/shared/constants/addresses.js +2 -11
  158. package/dist/shared/constants/chains.d.ts +1 -1
  159. package/dist/shared/constants/chains.js +1 -1
  160. package/dist/shared/constants/gas.d.ts +1 -1
  161. package/dist/shared/constants/gas.js +6 -2
  162. package/dist/shared/constants/index.d.ts +0 -3
  163. package/dist/shared/constants/index.js +0 -1
  164. package/dist/shared/flap/abi.js +1 -1
  165. package/dist/shared/flap/constants.d.ts +2 -1
  166. package/dist/shared/flap/constants.js +4 -3
  167. package/dist/shared/flap/curve.js +0 -3
  168. package/dist/shared/flap/errors.d.ts +4 -1
  169. package/dist/shared/flap/errors.js +1 -20
  170. package/dist/shared/flap/index.d.ts +5 -5
  171. package/dist/shared/flap/index.js +5 -5
  172. package/dist/shared/flap/launch-v6.d.ts +117 -0
  173. package/dist/shared/flap/launch-v6.js +111 -0
  174. package/dist/shared/flap/meta.d.ts +18 -22
  175. package/dist/shared/flap/meta.js +17 -12
  176. package/dist/shared/flap/permit.js +2 -5
  177. package/dist/shared/flap/pinata.d.ts +6 -22
  178. package/dist/shared/flap/pinata.js +26 -21
  179. package/dist/shared/flap/portal-bundle-merkle/config.d.ts +72 -3
  180. package/dist/shared/flap/portal-bundle-merkle/config.js +124 -4
  181. package/dist/shared/flap/portal-bundle-merkle/core.d.ts +4 -0
  182. package/dist/shared/flap/portal-bundle-merkle/core.js +267 -164
  183. package/dist/shared/flap/portal-bundle-merkle/create-to-dex.d.ts +4 -17
  184. package/dist/shared/flap/portal-bundle-merkle/create-to-dex.js +195 -107
  185. package/dist/shared/flap/portal-bundle-merkle/curve-to-dex.js +92 -100
  186. package/dist/shared/flap/portal-bundle-merkle/index.d.ts +7 -11
  187. package/dist/shared/flap/portal-bundle-merkle/index.js +7 -4
  188. package/dist/shared/flap/portal-bundle-merkle/pancake-proxy.js +68 -71
  189. package/dist/shared/flap/portal-bundle-merkle/private.js +114 -61
  190. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first.d.ts +64 -1
  191. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first.js +247 -66
  192. package/dist/shared/flap/portal-bundle-merkle/swap.d.ts +71 -2
  193. package/dist/shared/flap/portal-bundle-merkle/swap.js +410 -103
  194. package/dist/shared/flap/portal-bundle-merkle/types.d.ts +12 -88
  195. package/dist/shared/flap/portal-bundle-merkle/utils.d.ts +80 -1
  196. package/dist/shared/flap/portal-bundle-merkle/utils.js +265 -145
  197. package/dist/shared/flap/portal-bundle.js +56 -55
  198. package/dist/shared/flap/portal.d.ts +3 -14
  199. package/dist/shared/flap/portal.js +26 -49
  200. package/dist/shared/flap/vanity.d.ts +5 -4
  201. package/dist/shared/flap/vanity.js +20 -13
  202. package/dist/shared/flap/vault.d.ts +93 -25
  203. package/dist/shared/flap/vault.js +126 -75
  204. package/dist/shared/four/tax-token.d.ts +1 -1
  205. package/dist/shared/four/tax-token.js +7 -27
  206. package/dist/shared/index.d.ts +0 -6
  207. package/dist/shared/index.js +0 -4
  208. package/dist/utils/airdrop-sweep.d.ts +76 -4
  209. package/dist/utils/airdrop-sweep.js +55 -42
  210. package/dist/utils/bundle-helpers.d.ts +243 -9
  211. package/dist/utils/bundle-helpers.js +584 -10
  212. package/dist/utils/constants.d.ts +61 -5
  213. package/dist/utils/constants.js +80 -5
  214. package/dist/utils/contract-factory.d.ts +4 -2
  215. package/dist/utils/contract-factory.js +18 -25
  216. package/dist/utils/erc20.d.ts +89 -7
  217. package/dist/utils/erc20.js +125 -94
  218. package/dist/utils/errors.d.ts +1 -12
  219. package/dist/utils/errors.js +1 -60
  220. package/dist/utils/holders-maker.d.ts +138 -2
  221. package/dist/utils/holders-maker.js +661 -26
  222. package/dist/utils/lp-inspect.d.ts +112 -2
  223. package/dist/utils/lp-inspect.js +223 -73
  224. package/dist/utils/mpcExclusive.d.ts +5 -2
  225. package/dist/utils/mpcExclusive.js +3 -4
  226. package/dist/utils/private-sale.d.ts +58 -2
  227. package/dist/utils/private-sale.js +15 -4
  228. package/dist/utils/provider-factory.d.ts +0 -4
  229. package/dist/utils/provider-factory.js +0 -10
  230. package/dist/utils/quote-helpers.d.ts +45 -4
  231. package/dist/utils/quote-helpers.js +74 -17
  232. package/dist/utils/stealth-transfer.d.ts +28 -2
  233. package/dist/utils/stealth-transfer.js +15 -31
  234. package/dist/utils/swap-helpers.d.ts +15 -2
  235. package/dist/utils/swap-helpers.js +11 -6
  236. package/dist/utils/wallet.d.ts +25 -2
  237. package/dist/utils/wallet.js +10 -13
  238. package/package.json +4 -160
  239. package/dist/__tests__/subpath-exports.test.d.ts +0 -1
  240. package/dist/__tests__/subpath-exports.test.js +0 -64
  241. package/dist/abis/common.d.ts +0 -85
  242. package/dist/abis/common.js +0 -264
  243. package/dist/abis/contracts/TaxToken.json +0 -969
  244. package/dist/abis/contracts/TokenManager2.json +0 -136
  245. package/dist/abis/contracts/index.d.ts +0 -5
  246. package/dist/abis/contracts/index.js +0 -5
  247. package/dist/abis/flap/index.d.ts +0 -3
  248. package/dist/abis/flap/index.js +0 -3
  249. package/dist/abis/flap/portal-events.d.ts +0 -6
  250. package/dist/abis/flap/portal-events.js +0 -17
  251. package/dist/abis/flap/portal.d.ts +0 -6
  252. package/dist/abis/flap/portal.js +0 -37
  253. package/dist/abis/flap/vault.d.ts +0 -171
  254. package/dist/abis/flap/vault.js +0 -91
  255. package/dist/abis/index.d.ts +0 -8
  256. package/dist/abis/index.js +0 -11
  257. package/dist/bundle-core/__tests__/config-helpers.test.d.ts +0 -1
  258. package/dist/bundle-core/__tests__/config-helpers.test.js +0 -28
  259. package/dist/bundle-core/__tests__/facade-parity.test.d.ts +0 -1
  260. package/dist/bundle-core/__tests__/facade-parity.test.js +0 -33
  261. package/dist/bundle-core/__tests__/sign-context-helpers.test.d.ts +0 -1
  262. package/dist/bundle-core/__tests__/sign-context-helpers.test.js +0 -60
  263. package/dist/bundle-core/__tests__/sign-fixture.test.d.ts +0 -1
  264. package/dist/bundle-core/__tests__/sign-fixture.test.js +0 -220
  265. package/dist/bundle-core/__tests__/sign-fixtures.d.ts +0 -10
  266. package/dist/bundle-core/__tests__/sign-fixtures.js +0 -16
  267. package/dist/bundle-core/config-helpers.d.ts +0 -36
  268. package/dist/bundle-core/config-helpers.js +0 -57
  269. package/dist/bundle-core/errors.d.ts +0 -50
  270. package/dist/bundle-core/errors.js +0 -35
  271. package/dist/bundle-core/four-meme/approve-tokenmanager.d.ts +0 -7
  272. package/dist/bundle-core/four-meme/approve-tokenmanager.js +0 -99
  273. package/dist/bundle-core/four-meme/core-helpers.d.ts +0 -8
  274. package/dist/bundle-core/four-meme/core-helpers.js +0 -40
  275. package/dist/bundle-core/four-meme/core.d.ts +0 -4
  276. package/dist/bundle-core/four-meme/core.js +0 -515
  277. package/dist/bundle-core/four-meme/pancake-proxy.d.ts +0 -28
  278. package/dist/bundle-core/four-meme/pancake-proxy.js +0 -679
  279. package/dist/bundle-core/four-meme/private.d.ts +0 -27
  280. package/dist/bundle-core/four-meme/private.js +0 -465
  281. package/dist/bundle-core/four-meme/sign-context-helpers.d.ts +0 -2
  282. package/dist/bundle-core/four-meme/sign-context-helpers.js +0 -2
  283. package/dist/bundle-core/four-meme/swap-buy-first.d.ts +0 -8
  284. package/dist/bundle-core/four-meme/swap-buy-first.js +0 -493
  285. package/dist/bundle-core/four-meme/swap-hop-helpers.d.ts +0 -6
  286. package/dist/bundle-core/four-meme/swap-hop-helpers.js +0 -63
  287. package/dist/bundle-core/four-meme/swap-internal.d.ts +0 -3
  288. package/dist/bundle-core/four-meme/swap-internal.js +0 -18
  289. package/dist/bundle-core/four-meme/swap-sign-helpers.d.ts +0 -27
  290. package/dist/bundle-core/four-meme/swap-sign-helpers.js +0 -105
  291. package/dist/bundle-core/four-meme/swap.d.ts +0 -17
  292. package/dist/bundle-core/four-meme/swap.js +0 -505
  293. package/dist/bundle-core/four-meme/types/buy-first.d.ts +0 -50
  294. package/dist/bundle-core/four-meme/types/buy-first.js +0 -1
  295. package/dist/bundle-core/four-meme/types/core-flow.d.ts +0 -63
  296. package/dist/bundle-core/four-meme/types/core-flow.js +0 -1
  297. package/dist/bundle-core/four-meme/types/index.d.ts +0 -600
  298. package/dist/bundle-core/four-meme/types/index.js +0 -1
  299. package/dist/bundle-core/four-meme/types/swap-internal.d.ts +0 -19
  300. package/dist/bundle-core/four-meme/types/swap-internal.js +0 -1
  301. package/dist/bundle-core/four-meme/types.d.ts +0 -1
  302. package/dist/bundle-core/four-meme/types.js +0 -1
  303. package/dist/bundle-core/four-meme/utils-disperse.d.ts +0 -7
  304. package/dist/bundle-core/four-meme/utils-disperse.js +0 -396
  305. package/dist/bundle-core/four-meme/utils-pairwise.d.ts +0 -8
  306. package/dist/bundle-core/four-meme/utils-pairwise.js +0 -328
  307. package/dist/bundle-core/four-meme/utils-sweep.d.ts +0 -8
  308. package/dist/bundle-core/four-meme/utils-sweep.js +0 -744
  309. package/dist/bundle-core/index.d.ts +0 -8
  310. package/dist/bundle-core/index.js +0 -8
  311. package/dist/bundle-core/internal.d.ts +0 -21
  312. package/dist/bundle-core/internal.js +0 -182
  313. package/dist/bundle-core/sign-context-helpers.d.ts +0 -25
  314. package/dist/bundle-core/sign-context-helpers.js +0 -67
  315. package/dist/bundle-core/submit.d.ts +0 -293
  316. package/dist/bundle-core/submit.js +0 -727
  317. package/dist/bundle-core/types/index.d.ts +0 -8
  318. package/dist/bundle-core/types/index.js +0 -1
  319. package/dist/bundle-core/types.d.ts +0 -1
  320. package/dist/bundle-core/types.js +0 -1
  321. package/dist/chains/bsc/four/utils-disperse.d.ts +0 -1
  322. package/dist/chains/bsc/four/utils-disperse.js +0 -1
  323. package/dist/chains/bsc/four/utils-pairwise.d.ts +0 -1
  324. package/dist/chains/bsc/four/utils-pairwise.js +0 -1
  325. package/dist/chains/bsc/four/utils-sweep.d.ts +0 -1
  326. package/dist/chains/bsc/four/utils-sweep.js +0 -1
  327. package/dist/chains/bsc/iro.d.ts +0 -5
  328. package/dist/chains/bsc/iro.js +0 -4
  329. package/dist/chains/bsc/pancake/bundle-buy-first-helpers.d.ts +0 -159
  330. package/dist/chains/bsc/pancake/bundle-buy-first-helpers.js +0 -117
  331. package/dist/chains/bsc/pancake/bundle-swap-helpers.d.ts +0 -241
  332. package/dist/chains/bsc/pancake/bundle-swap-helpers.js +0 -565
  333. package/dist/chains/eni/flat-aliases.d.ts +0 -10
  334. package/dist/chains/eni/flat-aliases.js +0 -8
  335. package/dist/chains/eni/submit.d.ts +0 -43
  336. package/dist/chains/eni/submit.js +0 -286
  337. package/dist/chains/xlayer/eip7702/flat-aliases.d.ts +0 -13
  338. package/dist/chains/xlayer/eip7702/flat-aliases.js +0 -10
  339. package/dist/chains/xlayer/eip7702/multi-hop-transfer-helpers.d.ts +0 -79
  340. package/dist/chains/xlayer/eip7702/multi-hop-transfer-helpers.js +0 -1
  341. package/dist/chains/xlayer/eip7702/transfer-context-helpers.d.ts +0 -26
  342. package/dist/chains/xlayer/eip7702/transfer-context-helpers.js +0 -57
  343. package/dist/chains/xlayer/eip7702/volume-helpers.d.ts +0 -148
  344. package/dist/chains/xlayer/eip7702/volume-helpers.js +0 -48
  345. package/dist/chains/xlayer/eoa/eoa-bundle-swap-helpers.d.ts +0 -126
  346. package/dist/chains/xlayer/eoa/eoa-bundle-swap-helpers.js +0 -228
  347. package/dist/contracts/tm-bundle-helpers.d.ts +0 -88
  348. package/dist/contracts/tm-bundle-helpers.js +0 -72
  349. package/dist/contracts/tm-bundle-merkle/utils-disperse.d.ts +0 -1
  350. package/dist/contracts/tm-bundle-merkle/utils-disperse.js +0 -1
  351. package/dist/contracts/tm-bundle-merkle/utils-pairwise.d.ts +0 -1
  352. package/dist/contracts/tm-bundle-merkle/utils-pairwise.js +0 -1
  353. package/dist/contracts/tm-bundle-merkle/utils-sweep.d.ts +0 -1
  354. package/dist/contracts/tm-bundle-merkle/utils-sweep.js +0 -1
  355. package/dist/dex/direct-router-helpers.d.ts +0 -264
  356. package/dist/dex/direct-router-helpers.js +0 -539
  357. package/dist/dex/types.d.ts +0 -81
  358. package/dist/dex/types.js +0 -1
  359. package/dist/exports/root-bundle-and-tooling.d.ts +0 -27
  360. package/dist/exports/root-bundle-and-tooling.js +0 -30
  361. package/dist/exports/root-eni-and-bsc-iro.d.ts +0 -26
  362. package/dist/exports/root-eni-and-bsc-iro.js +0 -66
  363. package/dist/exports/root-foundations.d.ts +0 -35
  364. package/dist/exports/root-foundations.js +0 -70
  365. package/dist/exports/root-swap-dex-and-xlayer.d.ts +0 -30
  366. package/dist/exports/root-swap-dex-and-xlayer.js +0 -78
  367. package/dist/flap/index.d.ts +0 -10
  368. package/dist/flap/index.js +0 -8
  369. package/dist/flows/index.d.ts +0 -1
  370. package/dist/flows/index.js +0 -1
  371. package/dist/merkle/index.d.ts +0 -12
  372. package/dist/merkle/index.js +0 -11
  373. package/dist/shared/clients/index.d.ts +0 -8
  374. package/dist/shared/clients/index.js +0 -8
  375. package/dist/shared/constants/quote.d.ts +0 -30
  376. package/dist/shared/constants/quote.js +0 -37
  377. package/dist/shared/flap/portal-bundle-merkle/core-helpers.d.ts +0 -32
  378. package/dist/shared/flap/portal-bundle-merkle/core-helpers.js +0 -83
  379. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first-helpers.d.ts +0 -125
  380. package/dist/shared/flap/portal-bundle-merkle/swap-buy-first-helpers.js +0 -113
  381. package/dist/shared/flap/portal-bundle-merkle/swap-helpers.d.ts +0 -149
  382. package/dist/shared/flap/portal-bundle-merkle/swap-helpers.js +0 -259
  383. package/dist/shared/flap/portal-create-token.d.ts +0 -79
  384. package/dist/shared/flap/portal-create-token.js +0 -261
  385. package/dist/shared/foundation/dex/v3-path.d.ts +0 -6
  386. package/dist/shared/foundation/dex/v3-path.js +0 -35
  387. package/dist/shared/foundation/gas/bundle-gas.d.ts +0 -49
  388. package/dist/shared/foundation/gas/bundle-gas.js +0 -93
  389. package/dist/shared/foundation/gas/profit-hop.d.ts +0 -20
  390. package/dist/shared/foundation/gas/profit-hop.js +0 -72
  391. package/dist/shared/foundation/index.d.ts +0 -13
  392. package/dist/shared/foundation/index.js +0 -12
  393. package/dist/shared/foundation/nonce/nonce-manager.d.ts +0 -17
  394. package/dist/shared/foundation/nonce/nonce-manager.js +0 -183
  395. package/dist/shared/foundation/normalize-unknown.d.ts +0 -9
  396. package/dist/shared/foundation/normalize-unknown.js +0 -29
  397. package/dist/shared/foundation/sdk-logger.d.ts +0 -13
  398. package/dist/shared/foundation/sdk-logger.js +0 -12
  399. package/dist/shared/foundation/tx/build-request.d.ts +0 -17
  400. package/dist/shared/foundation/tx/build-request.js +0 -25
  401. package/dist/shared/foundation/tx/sign-batch.d.ts +0 -5
  402. package/dist/shared/foundation/tx/sign-batch.js +0 -26
  403. package/dist/shared/foundation/tx/wallet-sign-patch.d.ts +0 -1
  404. package/dist/shared/foundation/tx/wallet-sign-patch.js +0 -18
  405. package/dist/shared/foundation/types/airdrop-sweep.d.ts +0 -79
  406. package/dist/shared/foundation/types/airdrop-sweep.js +0 -1
  407. package/dist/shared/foundation/types/erc20.d.ts +0 -65
  408. package/dist/shared/foundation/types/erc20.js +0 -1
  409. package/dist/shared/foundation/types/holders-maker.d.ts +0 -64
  410. package/dist/shared/foundation/types/holders-maker.js +0 -1
  411. package/dist/shared/foundation/types/index.d.ts +0 -7
  412. package/dist/shared/foundation/types/index.js +0 -1
  413. package/dist/shared/foundation/types/lp-inspect.d.ts +0 -102
  414. package/dist/shared/foundation/types/lp-inspect.js +0 -1
  415. package/dist/shared/foundation/types/multicall.d.ts +0 -5
  416. package/dist/shared/foundation/types/multicall.js +0 -1
  417. package/dist/shared/foundation/types/private-sale.d.ts +0 -35
  418. package/dist/shared/foundation/types/private-sale.js +0 -1
  419. package/dist/shared/foundation/types/quote-helpers.d.ts +0 -17
  420. package/dist/shared/foundation/types/quote-helpers.js +0 -1
  421. package/dist/types/errors.d.ts +0 -27
  422. package/dist/types/errors.js +0 -34
  423. package/dist/utils/holders-maker/addresses.d.ts +0 -12
  424. package/dist/utils/holders-maker/addresses.js +0 -15
  425. package/dist/utils/holders-maker/buy-tx.d.ts +0 -44
  426. package/dist/utils/holders-maker/buy-tx.js +0 -278
  427. package/dist/utils/holders-maker/constants.d.ts +0 -6
  428. package/dist/utils/holders-maker/constants.js +0 -7
  429. package/dist/utils/holders-maker/disperse.d.ts +0 -18
  430. package/dist/utils/holders-maker/disperse.js +0 -90
  431. package/dist/utils/holders-maker/routing.d.ts +0 -4
  432. package/dist/utils/holders-maker/routing.js +0 -45
  433. package/dist/utils/holders-maker/transfer-tx.d.ts +0 -4
  434. package/dist/utils/holders-maker/transfer-tx.js +0 -67
  435. package/dist/utils/holders-maker-helpers.d.ts +0 -9
  436. package/dist/utils/holders-maker-helpers.js +0 -9
  437. package/dist/utils/hop-chains.d.ts +0 -35
  438. package/dist/utils/hop-chains.js +0 -215
  439. package/dist/utils/lp-inspect-helpers.d.ts +0 -9
  440. package/dist/utils/lp-inspect-helpers.js +0 -109
  441. package/dist/utils/types/airdrop-sweep.d.ts +0 -1
  442. package/dist/utils/types/airdrop-sweep.js +0 -1
  443. package/dist/utils/types/contract-factory.d.ts +0 -1
  444. package/dist/utils/types/contract-factory.js +0 -1
  445. package/dist/utils/types/erc20.d.ts +0 -1
  446. package/dist/utils/types/erc20.js +0 -1
  447. package/dist/utils/types/errors.d.ts +0 -1
  448. package/dist/utils/types/errors.js +0 -1
  449. package/dist/utils/types/holders-maker.d.ts +0 -1
  450. package/dist/utils/types/holders-maker.js +0 -1
  451. package/dist/utils/types/hop-chains.d.ts +0 -8
  452. package/dist/utils/types/hop-chains.js +0 -1
  453. package/dist/utils/types/index.d.ts +0 -13
  454. package/dist/utils/types/index.js +0 -1
  455. package/dist/utils/types/lp-inspect.d.ts +0 -1
  456. package/dist/utils/types/lp-inspect.js +0 -1
  457. package/dist/utils/types/mpc-exclusive.d.ts +0 -5
  458. package/dist/utils/types/mpc-exclusive.js +0 -1
  459. package/dist/utils/types/private-sale.d.ts +0 -1
  460. package/dist/utils/types/private-sale.js +0 -1
  461. package/dist/utils/types/quote-helpers.d.ts +0 -1
  462. package/dist/utils/types/quote-helpers.js +0 -1
  463. package/dist/utils/types/stealth-transfer.d.ts +0 -44
  464. package/dist/utils/types/stealth-transfer.js +0 -1
  465. package/dist/utils/types/wallet.d.ts +0 -25
  466. package/dist/utils/types/wallet.js +0 -1
  467. package/dist/vanity/index.d.ts +0 -5
  468. package/dist/vanity/index.js +0 -5
  469. package/src/abis/contracts/TaxToken.json +0 -969
  470. package/src/abis/contracts/TokenManager.json +0 -836
  471. package/src/abis/contracts/TokenManager2.json +0 -136
  472. package/src/abis/contracts/TokenManagerHelper3.json +0 -993
  473. /package/dist/{abis/contracts → shared/abis}/TokenManager.json +0 -0
  474. /package/dist/{abis/contracts → shared/abis}/TokenManagerHelper3.json +0 -0
@@ -1,8 +0,0 @@
1
- /** 金额输入(字符串 / 数字 / bigint) */
2
- export type AmountLike = string | number | bigint;
3
- /** Gas Limit 计算所需的最小配置 */
4
- export type BundleGasConfig = {
5
- chainId?: number;
6
- gasLimit?: number | bigint;
7
- gasLimitMultiplier?: number;
8
- };
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export type * from './types/index.js';
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export { disperseWithBundleMerkle } from '../../../bundle-core/four-meme/utils-disperse.js';
@@ -1 +0,0 @@
1
- export { disperseWithBundleMerkle } from '../../../bundle-core/four-meme/utils-disperse.js';
@@ -1 +0,0 @@
1
- export { pairwiseTransferWithBundleMerkle } from '../../../bundle-core/four-meme/utils-pairwise.js';
@@ -1 +0,0 @@
1
- export { pairwiseTransferWithBundleMerkle } from '../../../bundle-core/four-meme/utils-pairwise.js';
@@ -1 +0,0 @@
1
- export { sweepWithBundleMerkle } from '../../../bundle-core/four-meme/utils-sweep.js';
@@ -1 +0,0 @@
1
- export { sweepWithBundleMerkle } from '../../../bundle-core/four-meme/utils-sweep.js';
@@ -1,5 +0,0 @@
1
- /**
2
- * BSC IRO 平台子路径(与包根 `bscIro*` 扁平别名一致)
3
- */
4
- export { IroFactoryQuery as BscIroFactoryQuery, createProject as bscIroCreateProject, encodeCreateProjectCall as bscIroEncodeCreateProjectCall, parseCreateProjectEvent as bscIroParseCreateProjectEvent, IroTokenQuery as BscIroTokenQuery, subscribe as bscIroSubscribe, pledge as bscIroPledge, batchSubscribe as bscIroBatchSubscribe, batchSubscribeForSubmit as bscIroBatchSubscribeForSubmit, IroPoolQuery as BscIroPoolQuery, poolRemovePledge as bscIroPoolRemovePledge, poolExtract as bscIroPoolExtract, poolTransferAwards as bscIroPoolTransferAwards, batchExtract as bscIroBatchExtract, IRO_FACTORY_ADDRESS as BSC_IRO_FACTORY_ADDRESS, IRO_FACTORY_ABI as BSC_IRO_FACTORY_ABI, IRO_TOKEN_ABI as BSC_IRO_TOKEN_ABI, IRO_POOL_ABI as BSC_IRO_POOL_ABI, IRO_PLATFORM_URL as BSC_IRO_PLATFORM_URL, IRO_TESTNET_PLATFORM_URL as BSC_IRO_TESTNET_PLATFORM_URL, setIroApiBase as setBscIroApiBase, setIroTestApiBase as setBscIroTestApiBase, iroApiCreateProject as bscIroApiCreateProject, iroApiUploadImage as bscIroApiUploadImage, } from './platforms/iro/index.js';
5
- export type { WhiteListQuota as BscIroWhiteListQuota, IroCreateProjectParams as BscIroCreateProjectParams, IroFactoryTokenInfo as BscIroFactoryTokenInfo, IroSubscribeParams as BscIroSubscribeParams, IroPledgeParams as BscIroPledgeParams, IroTokenPrice as BscIroTokenPrice, IroPoolRemovePledgeParams as BscIroPoolRemovePledgeParams, IroPoolExtractParams as BscIroPoolExtractParams, IroPoolTransferAwardsParams as BscIroPoolTransferAwardsParams, IroTokenInfo as BscIroTokenInfo, IroTxResult as BscIroTxResult, IroCreateProjectResult as BscIroCreateProjectResult, IroQueryConfig as BscIroQueryConfig, IroCreateParams as BscIroCreateParams, IroApiCreateProjectRequest as BscIroApiCreateProjectRequest, IroBatchSubscribeForSubmitParams as BscIroBatchSubscribeForSubmitParams, IroBatchSubscribeForSubmitResult as BscIroBatchSubscribeForSubmitResult, } from './platforms/iro/index.js';
@@ -1,4 +0,0 @@
1
- /**
2
- * BSC IRO 平台子路径(与包根 `bscIro*` 扁平别名一致)
3
- */
4
- export { IroFactoryQuery as BscIroFactoryQuery, createProject as bscIroCreateProject, encodeCreateProjectCall as bscIroEncodeCreateProjectCall, parseCreateProjectEvent as bscIroParseCreateProjectEvent, IroTokenQuery as BscIroTokenQuery, subscribe as bscIroSubscribe, pledge as bscIroPledge, batchSubscribe as bscIroBatchSubscribe, batchSubscribeForSubmit as bscIroBatchSubscribeForSubmit, IroPoolQuery as BscIroPoolQuery, poolRemovePledge as bscIroPoolRemovePledge, poolExtract as bscIroPoolExtract, poolTransferAwards as bscIroPoolTransferAwards, batchExtract as bscIroBatchExtract, IRO_FACTORY_ADDRESS as BSC_IRO_FACTORY_ADDRESS, IRO_FACTORY_ABI as BSC_IRO_FACTORY_ABI, IRO_TOKEN_ABI as BSC_IRO_TOKEN_ABI, IRO_POOL_ABI as BSC_IRO_POOL_ABI, IRO_PLATFORM_URL as BSC_IRO_PLATFORM_URL, IRO_TESTNET_PLATFORM_URL as BSC_IRO_TESTNET_PLATFORM_URL, setIroApiBase as setBscIroApiBase, setIroTestApiBase as setBscIroTestApiBase, iroApiCreateProject as bscIroApiCreateProject, iroApiUploadImage as bscIroApiUploadImage, } from './platforms/iro/index.js';
@@ -1,159 +0,0 @@
1
- /**
2
- * PancakeSwap V2/V3 通用捆绑换手(Merkle Bundle)- 先买后卖
3
- *
4
- * 功能:钱包B先买入代币 → 钱包A卖出相同数量 → 原子执行
5
- */
6
- import { ethers } from 'ethers';
7
- import type { GeneratedWallet } from '../../../utils/wallet.js';
8
- import { CommonBundleConfig } from '../../../utils/bundle-helpers.js';
9
- export interface PancakeBuyFirstSignConfig {
10
- rpcUrl: string;
11
- gasLimit?: number | bigint;
12
- gasLimitMultiplier?: number;
13
- minGasPriceGwei?: number;
14
- maxGasPriceGwei?: number;
15
- txType?: 0 | 2;
16
- chainId?: number;
17
- reserveGasBNB?: number;
18
- skipQuoteOnError?: boolean;
19
- userType?: UserType;
20
- bribeAmount?: number;
21
- v2RouterAddress?: string;
22
- }
23
- /**
24
- * 获取 Gas Limit
25
- */
26
- export declare function getGasLimit(config: PancakeBuyFirstSignConfig | PancakeBuyFirstConfig, defaultGas?: number): bigint;
27
- export declare function getGasPrice(provider: ethers.JsonRpcProvider, config: PancakeBuyFirstSignConfig | PancakeBuyFirstConfig): Promise<bigint>;
28
- export declare const PANCAKE_V2_ROUTER_ABI: string[];
29
- export declare const PANCAKE_V3_ROUTER_ABI: (string | {
30
- inputs: {
31
- components: {
32
- name: string;
33
- type: string;
34
- }[];
35
- name: string;
36
- type: string;
37
- }[];
38
- name: string;
39
- outputs: {
40
- name: string;
41
- type: string;
42
- }[];
43
- stateMutability: string;
44
- type: string;
45
- })[];
46
- export declare const ERC20_BALANCE_OF_ABI: string[];
47
- export declare const PANCAKE_V2_ROUTER_ADDRESS: "0x10ED43C718714eb63d5aA57B78B54704E256024E";
48
- export declare const PANCAKE_V3_ROUTER_ADDRESS: "0x13f4EA83D0bd40E75C8222255bc855a974568Dd4";
49
- export declare const FLAT_FEE = 0n;
50
- /** 最大 Bundle 签名数 */
51
- export declare const MAX_BUNDLE_SIGNATURES = 50;
52
- /** 贿赂交易数 */
53
- export declare const BRIBE_TX_COUNT = 1;
54
- /** 利润中转交易数(支付者 1 笔 + 中转钱包 PROFIT_HOP_COUNT 笔 + 最终接收 1 笔) */
55
- export declare const PROFIT_TX_COUNT: number;
56
- /** 最大买卖交易数 */
57
- export declare const MAX_SWAP_TX_COUNT: number;
58
- export type UserType = 'v0' | 'v1';
59
- /**
60
- * 根据 userType 获取每笔交易的利润率
61
- */
62
- export declare function getProfitRatePerTxBps(userType?: UserType): number;
63
- /**
64
- * 验证买卖笔数
65
- */
66
- export declare function validateSwapCounts(buyCount: number, sellCount: number): void;
67
- /**
68
- * ✅ 将金额随机拆分成多份(更自然,不像机器人)
69
- * 每份金额在平均值的 50%-150% 之间随机浮动
70
- */
71
- export declare function splitAmount(totalAmount: bigint, count: number): bigint[];
72
- /** 多笔买卖 nonce 规划(与 Flap 一致) */
73
- export type MultiNoncePlan = {
74
- buyerNonces: number[];
75
- sellerNonces: number[];
76
- bribeNonce?: number;
77
- profitNonce?: number;
78
- };
79
- export type SwapRouteType = 'v2' | 'v3-single' | 'v3-multi';
80
- export interface V2RouteParams {
81
- routeType: 'v2';
82
- v2Path: string[];
83
- }
84
- export interface V3SingleRouteParams {
85
- routeType: 'v3-single';
86
- v3TokenIn: string;
87
- v3TokenOut: string;
88
- v3Fee: number;
89
- v2Path?: string[];
90
- }
91
- export interface V3MultiRouteParams {
92
- routeType: 'v3-multi';
93
- v3LpAddresses: string[];
94
- v3ExactTokenIn: string;
95
- v2Path?: string[];
96
- }
97
- export type RouteParams = V2RouteParams | V3SingleRouteParams | V3MultiRouteParams;
98
- export interface PancakeBuyFirstConfig extends CommonBundleConfig {
99
- apiKey: string;
100
- customRpcUrl?: string;
101
- bundleBlockOffset?: number;
102
- reserveGasBNB?: number;
103
- waitForConfirmation?: boolean;
104
- waitTimeoutMs?: number;
105
- }
106
- export interface PancakeBundleBuyFirstSignParams {
107
- buyerPrivateKey?: string;
108
- buyerPrivateKeys?: string[];
109
- sellerPrivateKey?: string;
110
- sellerPrivateKeys?: string[];
111
- tokenAddress: string;
112
- routeParams: RouteParams;
113
- buyerFunds?: string;
114
- buyerFundsPercentage?: number;
115
- config: PancakeBuyFirstSignConfig;
116
- quoteToken?: string;
117
- quoteTokenDecimals?: number;
118
- startNonces?: number[];
119
- buyCount?: number;
120
- sellCount?: number;
121
- taxRateBps?: number;
122
- }
123
- export interface PancakeBundleBuyFirstParams {
124
- buyerPrivateKey: string;
125
- sellerPrivateKey: string;
126
- tokenAddress: string;
127
- routeParams: RouteParams;
128
- buyerFunds?: string;
129
- buyerFundsPercentage?: number;
130
- config: PancakeBuyFirstConfig;
131
- }
132
- /** ✅ Pancake BuyFirst 结果(简化版) */
133
- export type PancakeBuyFirstResult = {
134
- signedTransactions: string[];
135
- profitHopWallets?: GeneratedWallet[];
136
- metadata?: {
137
- buyerAddress: string;
138
- sellerAddress: string;
139
- buyAmount: string;
140
- sellAmount: string;
141
- profitAmount?: string;
142
- buyCount?: number;
143
- sellCount?: number;
144
- buyAmounts?: string[];
145
- sellAmounts?: string[];
146
- };
147
- };
148
- export type PancakeContext = {
149
- chainId: number;
150
- provider: ethers.JsonRpcProvider;
151
- };
152
- export type BuyerFundsResult = {
153
- buyerFundsWei: bigint;
154
- buyerBalance: bigint;
155
- reserveGas: bigint;
156
- };
157
- export type QuoteTokenResult = {
158
- quotedTokenOut: bigint;
159
- };
@@ -1,117 +0,0 @@
1
- /**
2
- * PancakeSwap V2/V3 通用捆绑换手(Merkle Bundle)- 先买后卖
3
- *
4
- * 功能:钱包B先买入代币 → 钱包A卖出相同数量 → 原子执行
5
- */
6
- import { ethers } from 'ethers';
7
- import { PROFIT_HOP_COUNT } from '../../../utils/bundle-helpers.js';
8
- import { V2_ROUTER_ABI, V3_ROUTER02_ABI, ERC20_BALANCE_ABI } from '../../../abis/common.js';
9
- import { getProfitRateBps } from '../../../shared/constants/index.js';
10
- import { ADDRESSES } from '../../../shared/constants/index.js';
11
- /**
12
- * 获取 Gas Limit
13
- */
14
- export function getGasLimit(config, defaultGas = 800000) {
15
- if (config.gasLimit !== undefined) {
16
- return typeof config.gasLimit === 'bigint' ? config.gasLimit : BigInt(config.gasLimit);
17
- }
18
- const multiplier = config.gasLimitMultiplier ?? 1.0;
19
- const calculatedGas = Math.ceil(defaultGas * multiplier);
20
- return BigInt(calculatedGas);
21
- }
22
- export async function getGasPrice(provider, config) {
23
- const feeData = await provider.getFeeData();
24
- let gasPrice = feeData.gasPrice || ethers.parseUnits('3', 'gwei');
25
- if (config.minGasPriceGwei) {
26
- const minGas = ethers.parseUnits(config.minGasPriceGwei.toString(), 'gwei');
27
- if (gasPrice < minGas)
28
- gasPrice = minGas;
29
- }
30
- if (config.maxGasPriceGwei) {
31
- const maxGas = ethers.parseUnits(config.maxGasPriceGwei.toString(), 'gwei');
32
- if (gasPrice > maxGas)
33
- gasPrice = maxGas;
34
- }
35
- return gasPrice;
36
- }
37
- // ✅ ABI 别名(从公共模块导入)
38
- export const PANCAKE_V2_ROUTER_ABI = V2_ROUTER_ABI;
39
- export const PANCAKE_V3_ROUTER_ABI = V3_ROUTER02_ABI;
40
- export const ERC20_BALANCE_OF_ABI = ERC20_BALANCE_ABI;
41
- // ✅ 使用官方 PancakeSwap Router 地址
42
- export const PANCAKE_V2_ROUTER_ADDRESS = ADDRESSES.BSC.PancakeV2Router;
43
- export const PANCAKE_V3_ROUTER_ADDRESS = ADDRESSES.BSC.PancakeV3Router;
44
- // 常量
45
- export const FLAT_FEE = 0n;
46
- // ==================== 多笔买卖常量 ====================
47
- /** 最大 Bundle 签名数 */
48
- export const MAX_BUNDLE_SIGNATURES = 50;
49
- /** 贿赂交易数 */
50
- export const BRIBE_TX_COUNT = 1;
51
- /** 利润中转交易数(支付者 1 笔 + 中转钱包 PROFIT_HOP_COUNT 笔 + 最终接收 1 笔) */
52
- export const PROFIT_TX_COUNT = PROFIT_HOP_COUNT + 2; // 2 + 2 = 4
53
- /** 最大买卖交易数 */
54
- export const MAX_SWAP_TX_COUNT = MAX_BUNDLE_SIGNATURES - BRIBE_TX_COUNT - PROFIT_TX_COUNT; // 50 - 1 - 4 = 45
55
- /**
56
- * 根据 userType 获取每笔交易的利润率
57
- */
58
- export function getProfitRatePerTxBps(userType) {
59
- if (userType === 'v1') {
60
- return getProfitRateBps('v1Double');
61
- }
62
- return getProfitRateBps('v0Double'); // v0 或默认
63
- }
64
- /**
65
- * 验证买卖笔数
66
- */
67
- export function validateSwapCounts(buyCount, sellCount) {
68
- if (buyCount < 1) {
69
- throw new Error(`买入笔数必须至少为 1,当前为 ${buyCount}`);
70
- }
71
- if (sellCount < 1) {
72
- throw new Error(`卖出笔数必须至少为 1,当前为 ${sellCount}`);
73
- }
74
- const totalSwaps = buyCount + sellCount;
75
- if (totalSwaps > MAX_SWAP_TX_COUNT) {
76
- throw new Error(`买卖笔数总和 (${totalSwaps}) 超出限制 (${MAX_SWAP_TX_COUNT}),` +
77
- `最大签名数为 ${MAX_BUNDLE_SIGNATURES}(${BRIBE_TX_COUNT} 贿赂 + ${PROFIT_TX_COUNT} 利润 + ${MAX_SWAP_TX_COUNT} 买卖)`);
78
- }
79
- }
80
- /**
81
- * ✅ 将金额随机拆分成多份(更自然,不像机器人)
82
- * 每份金额在平均值的 50%-150% 之间随机浮动
83
- */
84
- export function splitAmount(totalAmount, count) {
85
- if (count <= 0) {
86
- throw new Error('拆分份数必须大于 0');
87
- }
88
- if (count === 1) {
89
- return [totalAmount];
90
- }
91
- // 生成随机权重(0.5 - 1.5 之间)
92
- const weights = [];
93
- for (let i = 0; i < count; i++) {
94
- // 随机值在 0.5 - 1.5 之间,使每份金额有 ±50% 的浮动
95
- weights.push(0.5 + Math.random());
96
- }
97
- // 计算权重总和
98
- const totalWeight = weights.reduce((a, b) => a + b, 0);
99
- // 根据权重分配金额
100
- const amounts = [];
101
- let allocated = 0n;
102
- for (let i = 0; i < count - 1; i++) {
103
- // 按权重比例分配
104
- const ratio = weights[i] / totalWeight;
105
- const amount = BigInt(Math.floor(Number(totalAmount) * ratio));
106
- amounts.push(amount);
107
- allocated += amount;
108
- }
109
- // 最后一份分配剩余的全部(确保总和精确)
110
- amounts.push(totalAmount - allocated);
111
- // 随机打乱顺序(让大小金额交错出现)
112
- for (let i = amounts.length - 1; i > 0; i--) {
113
- const j = Math.floor(Math.random() * (i + 1));
114
- [amounts[i], amounts[j]] = [amounts[j], amounts[i]];
115
- }
116
- return amounts;
117
- }
@@ -1,241 +0,0 @@
1
- import { ethers, Wallet, JsonRpcProvider } from 'ethers';
2
- import { type GeneratedWallet } from '../../../utils/wallet.js';
3
- import { NonceManager, CommonBundleConfig } from '../../../utils/bundle-helpers.js';
4
- export declare const NATIVE_TRANSFER_GAS_LIMIT: 21055n;
5
- export declare const ERC20_TRANSFER_GAS_LIMIT_HOP: 65000n;
6
- export declare const BRIBE_GAS_LIMIT: 21000n;
7
- /**
8
- * 分发多跳路径信息
9
- */
10
- export type DisperseHopPath = {
11
- targetAddress: string;
12
- hopWallets: Wallet[];
13
- hopWalletsInfo: GeneratedWallet[];
14
- };
15
- /**
16
- * 生成分发多跳路径
17
- */
18
- export declare function generateDisperseHopPaths(targetAddresses: string[], hopCount: number, provider: JsonRpcProvider): DisperseHopPath[];
19
- /**
20
- * 构建原生代币多跳转账链
21
- */
22
- export declare function buildNativeHopChain(payer: Wallet, path: DisperseHopPath, finalAmount: bigint, gasPrice: bigint, chainId: number, txType: 0 | 2, payerNonce: number): Promise<string[]>;
23
- /**
24
- * 构建 ERC20 多跳转账链(需要配合 BNB 多跳使用)
25
- */
26
- export declare function buildERC20HopChain(payer: Wallet, path: DisperseHopPath, erc20Address: string, erc20Amount: bigint, gasPrice: bigint, chainId: number, txType: 0 | 2, payerNonce: number): Promise<string[]>;
27
- /**
28
- * 构建 BNB 多跳转账链(为 ERC20 中间钱包预留 gas)
29
- */
30
- export declare function buildBNBHopChainForERC20(payer: Wallet, path: DisperseHopPath, finalGasAmount: bigint, gasPrice: bigint, chainId: number, txType: 0 | 2, payerNonce: number): Promise<string[]>;
31
- export declare function createPancakeContext(config: PancakeSwapSignConfig): PancakeContext;
32
- export type QuoteSellParams = {
33
- routeParams: RouteParams;
34
- sellAmountWei: bigint;
35
- provider: ethers.JsonRpcProvider;
36
- v2RouterAddress?: string;
37
- };
38
- export declare function quoteSellOutput({ routeParams, sellAmountWei, provider, v2RouterAddress, }: QuoteSellParams): Promise<QuoteBNBResult>;
39
- export type BuildSwapParams = {
40
- routeParams: RouteParams;
41
- sellAmountWei: bigint;
42
- buyAmountBNB: bigint;
43
- buyer: Wallet;
44
- seller: Wallet;
45
- tokenAddress: string;
46
- useNativeToken?: boolean;
47
- v2RouterAddress?: string;
48
- };
49
- export declare function buildSwapTransactions({ routeParams, sellAmountWei, buyAmountBNB, buyer, seller, tokenAddress, useNativeToken, v2RouterAddress, }: BuildSwapParams): Promise<SwapUnsignedResult>;
50
- export type BuyerBudgetParams = {
51
- buyer: Wallet;
52
- quotedBNBOut: bigint;
53
- reserveGasBNB?: number;
54
- useNativeToken?: boolean;
55
- quoteToken?: string;
56
- quoteTokenDecimals?: number;
57
- provider?: ethers.JsonRpcProvider;
58
- };
59
- export declare function calculateBuyerBudget({ buyer, quotedBNBOut, reserveGasBNB, useNativeToken, quoteToken, quoteTokenDecimals, provider, }: BuyerBudgetParams): Promise<BuyerBudget>;
60
- export type PlanNonceParams = {
61
- seller: Wallet;
62
- buyer: Wallet;
63
- sameAddress: boolean;
64
- approvalExists: boolean;
65
- profitNeeded: boolean;
66
- needBribeTx: boolean;
67
- nonceManager: NonceManager;
68
- };
69
- /**
70
- * ✅ 从前端传入的 startNonces 构建 NoncePlan(用于性能优化)
71
- * 顺序:[sellerBaseNonce, buyerNonce]
72
- */
73
- export declare function buildNoncePlanFromNonces(startNonces: number[], sameAddress: boolean, approvalExists: boolean, profitNeeded: boolean, needBribeTx: boolean): NoncePlan;
74
- /**
75
- * ✅ 规划 nonce
76
- * 交易顺序:贿赂 → 授权 → 卖出 → 买入 → 利润
77
- * 贿赂和利润由卖方发送
78
- */
79
- export declare function planNonces({ seller, buyer, sameAddress, approvalExists, profitNeeded, needBribeTx, nonceManager, }: PlanNonceParams): Promise<NoncePlan>;
80
- /**
81
- * 根据 userType 计算利润率
82
- */
83
- export declare function getProfitRateBps(userType?: UserType): number;
84
- export declare function calculateProfitAmount(estimatedBNBOut: bigint, userType?: UserType): bigint;
85
- /**
86
- * ✅ 获取 ERC20 代币 → 原生代币(BNB)的报价
87
- * 用于将 ERC20 利润转换为 BNB
88
- * 使用共享的报价函数
89
- */
90
- export declare function getERC20ToNativeQuote(provider: ethers.JsonRpcProvider, tokenAddress: string, tokenAmount: bigint, version?: 'v2' | 'v3', fee?: number): Promise<bigint>;
91
- export type BalanceValidationParams = {
92
- sameAddress: boolean;
93
- buyerBalance: bigint;
94
- buyAmountBNB: bigint;
95
- reserveGas: bigint;
96
- gasLimit: bigint;
97
- gasPrice: bigint;
98
- useNativeToken?: boolean;
99
- quoteTokenDecimals?: number;
100
- provider?: ethers.JsonRpcProvider;
101
- buyerAddress?: string;
102
- };
103
- export declare function validateFinalBalances({ sameAddress, buyerBalance, buyAmountBNB, reserveGas, gasLimit, gasPrice, useNativeToken, quoteTokenDecimals, provider, buyerAddress, }: BalanceValidationParams): Promise<void>;
104
- export declare function countTruthy(values: Array<string | number | bigint | boolean | null | undefined>): number;
105
- /**
106
- * PancakeSwap V2/V3 通用捆绑换手(Merkle Bundle)
107
- *
108
- * 功能:钱包A卖出代币 → 钱包B买入相同数量 → 原子执行
109
- * 适用于所有已迁移到外盘的代币(不区分Four/Flap)
110
- */
111
- export type UserType = 'v0' | 'v1';
112
- export interface PancakeSwapSignConfig {
113
- rpcUrl: string;
114
- gasLimit?: number | bigint;
115
- gasLimitMultiplier?: number;
116
- minGasPriceGwei?: number;
117
- maxGasPriceGwei?: number;
118
- txType?: 0 | 2;
119
- chainId?: number;
120
- reserveGasBNB?: number;
121
- userType?: UserType;
122
- bribeAmount?: number;
123
- v2RouterAddress?: string;
124
- }
125
- /**
126
- * 获取 Gas Limit
127
- */
128
- export declare function getGasLimit(config: PancakeSwapSignConfig | PancakeSwapConfig, defaultGas?: number): bigint;
129
- export declare function getGasPrice(provider: ethers.JsonRpcProvider, config: PancakeSwapSignConfig | PancakeSwapConfig): Promise<bigint>;
130
- export declare const PANCAKE_V2_ROUTER_ABI: string[];
131
- export declare const PANCAKE_V3_ROUTER_ABI: (string | {
132
- inputs: {
133
- components: {
134
- name: string;
135
- type: string;
136
- }[];
137
- name: string;
138
- type: string;
139
- }[];
140
- name: string;
141
- outputs: {
142
- name: string;
143
- type: string;
144
- }[];
145
- stateMutability: string;
146
- type: string;
147
- })[];
148
- export declare const ERC20_BALANCE_OF_ABI: string[];
149
- export declare const PANCAKE_V2_ROUTER_ADDRESS: "0x10ED43C718714eb63d5aA57B78B54704E256024E";
150
- export declare const PANCAKE_V3_ROUTER_ADDRESS: "0x13f4EA83D0bd40E75C8222255bc855a974568Dd4";
151
- export declare const FLAT_FEE = 0n;
152
- export declare const WBNB_ADDRESS: "0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c";
153
- export type SwapRouteType = 'v2' | 'v3-single' | 'v3-multi';
154
- export interface PancakeSwapConfig extends CommonBundleConfig {
155
- apiKey: string;
156
- customRpcUrl?: string;
157
- bundleBlockOffset?: number;
158
- reserveGasBNB?: number;
159
- waitForConfirmation?: boolean;
160
- waitTimeoutMs?: number;
161
- }
162
- export interface V2RouteParams {
163
- routeType: 'v2';
164
- v2Path: string[];
165
- }
166
- export interface V3SingleRouteParams {
167
- routeType: 'v3-single';
168
- v3TokenIn: string;
169
- v3TokenOut: string;
170
- v3Fee: number;
171
- v2Path?: string[];
172
- }
173
- export interface V3MultiRouteParams {
174
- routeType: 'v3-multi';
175
- v3LpAddresses: string[];
176
- v3ExactTokenIn: string;
177
- v2Path?: string[];
178
- }
179
- export type RouteParams = V2RouteParams | V3SingleRouteParams | V3MultiRouteParams;
180
- export interface PancakeBundleSwapSignParams {
181
- sellerPrivateKey: string;
182
- sellAmount?: string;
183
- sellPercentage?: number;
184
- buyerPrivateKey: string;
185
- tokenAddress: string;
186
- routeParams: RouteParams;
187
- config: PancakeSwapSignConfig;
188
- quoteToken?: string;
189
- quoteTokenDecimals?: number;
190
- startNonces?: number[];
191
- }
192
- export interface PancakeBundleSwapParams {
193
- sellerPrivateKey: string;
194
- sellAmount?: string;
195
- sellPercentage?: number;
196
- buyerPrivateKey: string;
197
- tokenAddress: string;
198
- routeParams: RouteParams;
199
- config: PancakeSwapConfig;
200
- }
201
- /** ✅ Pancake Swap 结果(简化版) */
202
- export type PancakeSwapResult = {
203
- signedTransactions: string[];
204
- profitHopWallets?: GeneratedWallet[];
205
- metadata?: {
206
- sellerAddress: string;
207
- buyerAddress: string;
208
- sellAmount: string;
209
- buyAmount: string;
210
- profitAmount?: string;
211
- };
212
- };
213
- export type PancakeContext = {
214
- chainId: number;
215
- provider: ethers.JsonRpcProvider;
216
- };
217
- export type QuoteBNBResult = {
218
- estimatedBNBOut: bigint;
219
- };
220
- export type SwapUnsignedResult = {
221
- sellUnsigned: ethers.TransactionLike;
222
- buyUnsigned: ethers.TransactionLike;
223
- };
224
- export type BuyerBudget = {
225
- buyerBalance: bigint;
226
- reserveGas: bigint;
227
- requiredBalance: bigint;
228
- buyAmountBNB: bigint;
229
- useNativeToken: boolean;
230
- };
231
- export type NoncePlan = {
232
- sellerNonce: number;
233
- buyerNonce: number;
234
- bribeNonce?: number;
235
- profitNonce?: number;
236
- };
237
- export declare const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
238
- /**
239
- * PancakeSwap捆绑换手(V2/V3通用)
240
- * ✅ 支持 quoteToken:传入 USDT 等地址时,卖出得到该代币,买入使用该代币
241
- */