@lifi/sdk 3.0.0-alpha.9 → 3.0.0-beta.1

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 (516) hide show
  1. package/package.json +40 -98
  2. package/src/_cjs/config.js +90 -0
  3. package/src/_cjs/config.js.map +1 -0
  4. package/{dist/cjs → src/_cjs}/constants.js +3 -5
  5. package/src/_cjs/constants.js.map +1 -0
  6. package/src/_cjs/core/BaseStepExecutor.js +55 -0
  7. package/src/_cjs/core/BaseStepExecutor.js.map +1 -0
  8. package/src/_cjs/core/EVM/EVM.js +43 -0
  9. package/src/_cjs/core/EVM/EVM.js.map +1 -0
  10. package/src/_cjs/core/EVM/EVMStepExecutor.js +304 -0
  11. package/src/_cjs/core/EVM/EVMStepExecutor.js.map +1 -0
  12. package/{dist/cjs/types → src/_cjs/core/EVM}/abi.js +1 -0
  13. package/src/_cjs/core/EVM/abi.js.map +1 -0
  14. package/{dist/cjs/execution → src/_cjs/core/EVM}/checkAllowance.js +19 -12
  15. package/src/_cjs/core/EVM/checkAllowance.js.map +1 -0
  16. package/{dist/cjs/allowance → src/_cjs/core/EVM}/getAllowance.js +13 -17
  17. package/src/_cjs/core/EVM/getAllowance.js.map +1 -0
  18. package/src/_cjs/core/EVM/getENSAddress.js +20 -0
  19. package/src/_cjs/core/EVM/getENSAddress.js.map +1 -0
  20. package/{dist/cjs/balance/getBalance.js → src/_cjs/core/EVM/getEVMBalance.js} +20 -22
  21. package/src/_cjs/core/EVM/getEVMBalance.js.map +1 -0
  22. package/{dist/cjs/execution → src/_cjs/core/EVM}/multisig.js +7 -8
  23. package/src/_cjs/core/EVM/multisig.js.map +1 -0
  24. package/src/_cjs/core/EVM/publicClient.js +43 -0
  25. package/src/_cjs/core/EVM/publicClient.js.map +1 -0
  26. package/{dist/cjs/allowance → src/_cjs/core/EVM}/setAllowance.js +11 -12
  27. package/src/_cjs/core/EVM/setAllowance.js.map +1 -0
  28. package/src/_cjs/core/EVM/switchChain.js +38 -0
  29. package/src/_cjs/core/EVM/switchChain.js.map +1 -0
  30. package/src/_cjs/core/EVM/types.js +9 -0
  31. package/src/_cjs/core/EVM/types.js.map +1 -0
  32. package/{dist/cjs/utils/getMaxPriorityFeePerGas.js → src/_cjs/core/EVM/utils.js} +13 -3
  33. package/src/_cjs/core/EVM/utils.js.map +1 -0
  34. package/src/_cjs/core/Solana/KeypairWalletAdapter.js +88 -0
  35. package/src/_cjs/core/Solana/KeypairWalletAdapter.js.map +1 -0
  36. package/src/_cjs/core/Solana/Solana.js +38 -0
  37. package/src/_cjs/core/Solana/Solana.js.map +1 -0
  38. package/src/_cjs/core/Solana/SolanaStepExecutor.js +200 -0
  39. package/src/_cjs/core/Solana/SolanaStepExecutor.js.map +1 -0
  40. package/src/_cjs/core/Solana/connection.js +19 -0
  41. package/src/_cjs/core/Solana/connection.js.map +1 -0
  42. package/src/_cjs/core/Solana/getSNSAddress.js +26 -0
  43. package/src/_cjs/core/Solana/getSNSAddress.js.map +1 -0
  44. package/src/_cjs/core/Solana/getSolanaBalance.js +60 -0
  45. package/src/_cjs/core/Solana/getSolanaBalance.js.map +1 -0
  46. package/src/_cjs/core/Solana/isAddress.js +15 -0
  47. package/src/_cjs/core/Solana/isAddress.js.map +1 -0
  48. package/src/_cjs/core/Solana/types.js +10 -0
  49. package/src/_cjs/core/Solana/types.js.map +1 -0
  50. package/src/_cjs/core/StatusManager.js +168 -0
  51. package/src/_cjs/core/StatusManager.js.map +1 -0
  52. package/{dist/cjs/execution → src/_cjs/core}/checkBalance.js +6 -6
  53. package/src/_cjs/core/checkBalance.js.map +1 -0
  54. package/src/_cjs/core/execution.js +138 -0
  55. package/src/_cjs/core/execution.js.map +1 -0
  56. package/src/_cjs/core/executionState.js +29 -0
  57. package/src/_cjs/core/executionState.js.map +1 -0
  58. package/src/_cjs/core/index.js +7 -0
  59. package/src/_cjs/core/index.js.map +1 -0
  60. package/src/_cjs/core/prepareRestart.js +23 -0
  61. package/src/_cjs/core/prepareRestart.js.map +1 -0
  62. package/src/_cjs/core/provider.js +15 -0
  63. package/src/_cjs/core/provider.js.map +1 -0
  64. package/src/_cjs/core/rpc.js +18 -0
  65. package/src/_cjs/core/rpc.js.map +1 -0
  66. package/src/_cjs/core/stepComparison.js +25 -0
  67. package/src/_cjs/core/stepComparison.js.map +1 -0
  68. package/{dist/cjs/allowance → src/_cjs/core}/types.js +1 -0
  69. package/src/_cjs/core/types.js.map +1 -0
  70. package/{dist/cjs/execution → src/_cjs/core}/utils.js +2 -11
  71. package/src/_cjs/core/utils.js.map +1 -0
  72. package/{dist/cjs/execution → src/_cjs/core}/waitForReceivingTransaction.js +13 -14
  73. package/src/_cjs/core/waitForReceivingTransaction.js.map +1 -0
  74. package/src/_cjs/createConfig.js +34 -0
  75. package/src/_cjs/createConfig.js.map +1 -0
  76. package/src/_cjs/helpers.js +50 -0
  77. package/src/_cjs/helpers.js.map +1 -0
  78. package/src/_cjs/index.js +30 -0
  79. package/src/_cjs/index.js.map +1 -0
  80. package/src/_cjs/package.json +1 -0
  81. package/{dist/cjs → src/_cjs}/request.js +18 -15
  82. package/src/_cjs/request.js.map +1 -0
  83. package/src/_cjs/services/api.js +309 -0
  84. package/src/_cjs/services/api.js.map +1 -0
  85. package/src/_cjs/services/balance.js +49 -0
  86. package/src/_cjs/services/balance.js.map +1 -0
  87. package/src/_cjs/services/getNameServiceAddress.js +29 -0
  88. package/src/_cjs/services/getNameServiceAddress.js.map +1 -0
  89. package/{dist/cjs → src/_cjs}/typeguards.js +1 -0
  90. package/src/_cjs/typeguards.js.map +1 -0
  91. package/src/_cjs/types/index.js +5 -0
  92. package/src/_cjs/types/index.js.map +1 -0
  93. package/{dist/cjs → src/_cjs}/types/internal.js +1 -0
  94. package/src/_cjs/types/internal.js.map +1 -0
  95. package/src/_cjs/utils/base64ToUint8Array.js +14 -0
  96. package/src/_cjs/utils/base64ToUint8Array.js.map +1 -0
  97. package/{dist/cjs → src/_cjs}/utils/errors.js +26 -3
  98. package/src/_cjs/utils/errors.js.map +1 -0
  99. package/src/_cjs/utils/getTransactionMessage.js +31 -0
  100. package/src/_cjs/utils/getTransactionMessage.js.map +1 -0
  101. package/src/_cjs/utils/index.js +9 -0
  102. package/src/_cjs/utils/index.js.map +1 -0
  103. package/{dist/cjs → src/_cjs}/utils/median.js +1 -0
  104. package/src/_cjs/utils/median.js.map +1 -0
  105. package/src/_cjs/utils/parseBackendError.js +27 -0
  106. package/src/_cjs/utils/parseBackendError.js.map +1 -0
  107. package/src/_cjs/utils/parseError.js +69 -0
  108. package/src/_cjs/utils/parseError.js.map +1 -0
  109. package/{dist/cjs → src/_cjs}/utils/utils.js +5 -11
  110. package/src/_cjs/utils/utils.js.map +1 -0
  111. package/{dist/cjs → src/_cjs}/version.js +2 -1
  112. package/src/_cjs/version.js.map +1 -0
  113. package/src/_esm/config.js +87 -0
  114. package/src/_esm/config.js.map +1 -0
  115. package/{dist → src/_esm}/constants.js +2 -4
  116. package/src/_esm/constants.js.map +1 -0
  117. package/src/_esm/core/BaseStepExecutor.js +52 -0
  118. package/src/_esm/core/BaseStepExecutor.js.map +1 -0
  119. package/src/_esm/core/EVM/EVM.js +39 -0
  120. package/src/_esm/core/EVM/EVM.js.map +1 -0
  121. package/src/_esm/core/EVM/EVMStepExecutor.js +329 -0
  122. package/src/_esm/core/EVM/EVMStepExecutor.js.map +1 -0
  123. package/{dist/types → src/_esm/core/EVM}/abi.js +1 -0
  124. package/src/_esm/core/EVM/abi.js.map +1 -0
  125. package/{dist/execution → src/_esm/core/EVM}/checkAllowance.js +14 -5
  126. package/src/_esm/core/EVM/checkAllowance.js.map +1 -0
  127. package/{dist/allowance → src/_esm/core/EVM}/getAllowance.js +19 -6
  128. package/src/_esm/core/EVM/getAllowance.js.map +1 -0
  129. package/src/_esm/core/EVM/getENSAddress.js +17 -0
  130. package/src/_esm/core/EVM/getENSAddress.js.map +1 -0
  131. package/{dist/balance/getBalance.js → src/_esm/core/EVM/getEVMBalance.js} +10 -12
  132. package/src/_esm/core/EVM/getEVMBalance.js.map +1 -0
  133. package/{dist/execution → src/_esm/core/EVM}/multisig.js +5 -6
  134. package/src/_esm/core/EVM/multisig.js.map +1 -0
  135. package/src/_esm/core/EVM/publicClient.js +46 -0
  136. package/src/_esm/core/EVM/publicClient.js.map +1 -0
  137. package/{dist/allowance → src/_esm/core/EVM}/setAllowance.js +23 -4
  138. package/src/_esm/core/EVM/setAllowance.js.map +1 -0
  139. package/{dist/execution → src/_esm/core/EVM}/switchChain.js +6 -4
  140. package/src/_esm/core/EVM/switchChain.js.map +1 -0
  141. package/src/_esm/core/EVM/types.js +6 -0
  142. package/src/_esm/core/EVM/types.js.map +1 -0
  143. package/{dist/utils/getMaxPriorityFeePerGas.js → src/_esm/core/EVM/utils.js} +12 -1
  144. package/src/_esm/core/EVM/utils.js.map +1 -0
  145. package/src/_esm/core/Solana/KeypairWalletAdapter.js +92 -0
  146. package/src/_esm/core/Solana/KeypairWalletAdapter.js.map +1 -0
  147. package/src/_esm/core/Solana/Solana.js +34 -0
  148. package/src/_esm/core/Solana/Solana.js.map +1 -0
  149. package/src/_esm/core/Solana/SolanaStepExecutor.js +214 -0
  150. package/src/_esm/core/Solana/SolanaStepExecutor.js.map +1 -0
  151. package/src/_esm/core/Solana/connection.js +20 -0
  152. package/src/_esm/core/Solana/connection.js.map +1 -0
  153. package/src/_esm/core/Solana/getSNSAddress.js +26 -0
  154. package/src/_esm/core/Solana/getSNSAddress.js.map +1 -0
  155. package/src/_esm/core/Solana/getSolanaBalance.js +56 -0
  156. package/src/_esm/core/Solana/getSolanaBalance.js.map +1 -0
  157. package/src/_esm/core/Solana/isAddress.js +11 -0
  158. package/src/_esm/core/Solana/isAddress.js.map +1 -0
  159. package/src/_esm/core/Solana/types.js +7 -0
  160. package/src/_esm/core/Solana/types.js.map +1 -0
  161. package/src/_esm/core/StatusManager.js +204 -0
  162. package/src/_esm/core/StatusManager.js.map +1 -0
  163. package/{dist/execution → src/_esm/core}/checkBalance.js +4 -3
  164. package/src/_esm/core/checkBalance.js.map +1 -0
  165. package/src/_esm/core/execution.js +176 -0
  166. package/src/_esm/core/execution.js.map +1 -0
  167. package/src/_esm/core/executionState.js +26 -0
  168. package/src/_esm/core/executionState.js.map +1 -0
  169. package/src/_esm/core/index.js +4 -0
  170. package/src/_esm/core/index.js.map +1 -0
  171. package/src/_esm/core/prepareRestart.js +19 -0
  172. package/src/_esm/core/prepareRestart.js.map +1 -0
  173. package/src/_esm/core/provider.js +11 -0
  174. package/src/_esm/core/provider.js.map +1 -0
  175. package/src/_esm/core/rpc.js +14 -0
  176. package/src/_esm/core/rpc.js.map +1 -0
  177. package/{dist/execution → src/_esm/core}/stepComparison.js +6 -4
  178. package/src/_esm/core/stepComparison.js.map +1 -0
  179. package/src/_esm/core/types.js +2 -0
  180. package/src/_esm/core/types.js.map +1 -0
  181. package/{dist/execution → src/_esm/core}/utils.js +4 -3
  182. package/src/_esm/core/utils.js.map +1 -0
  183. package/{dist/execution → src/_esm/core}/waitForReceivingTransaction.js +11 -9
  184. package/src/_esm/core/waitForReceivingTransaction.js.map +1 -0
  185. package/src/_esm/createConfig.js +30 -0
  186. package/src/_esm/createConfig.js.map +1 -0
  187. package/{dist → src/_esm}/helpers.js +6 -30
  188. package/src/_esm/helpers.js.map +1 -0
  189. package/src/_esm/index.js +17 -0
  190. package/src/_esm/index.js.map +1 -0
  191. package/src/_esm/package.json +1 -0
  192. package/{dist → src/_esm}/request.js +14 -10
  193. package/src/_esm/request.js.map +1 -0
  194. package/src/_esm/services/api.js +378 -0
  195. package/src/_esm/services/api.js.map +1 -0
  196. package/src/_esm/services/balance.js +65 -0
  197. package/src/_esm/services/balance.js.map +1 -0
  198. package/src/_esm/services/getNameServiceAddress.js +25 -0
  199. package/src/_esm/services/getNameServiceAddress.js.map +1 -0
  200. package/{dist → src/_esm}/typeguards.js +1 -0
  201. package/src/_esm/typeguards.js.map +1 -0
  202. package/src/_esm/types/index.js +2 -0
  203. package/src/_esm/types/index.js.map +1 -0
  204. package/src/_esm/types/internal.js +2 -0
  205. package/src/_esm/types/internal.js.map +1 -0
  206. package/src/_esm/utils/base64ToUint8Array.js +10 -0
  207. package/src/_esm/utils/base64ToUint8Array.js.map +1 -0
  208. package/{dist → src/_esm}/utils/errors.js +26 -0
  209. package/src/_esm/utils/errors.js.map +1 -0
  210. package/src/_esm/utils/getTransactionMessage.js +28 -0
  211. package/src/_esm/utils/getTransactionMessage.js.map +1 -0
  212. package/src/_esm/utils/index.js +6 -0
  213. package/src/_esm/utils/index.js.map +1 -0
  214. package/{dist → src/_esm}/utils/median.js +1 -0
  215. package/src/_esm/utils/median.js.map +1 -0
  216. package/src/_esm/utils/parseBackendError.js +24 -0
  217. package/src/_esm/utils/parseBackendError.js.map +1 -0
  218. package/{dist → src/_esm}/utils/parseError.js +6 -53
  219. package/src/_esm/utils/parseError.js.map +1 -0
  220. package/{dist → src/_esm}/utils/utils.js +2 -1
  221. package/src/_esm/utils/utils.js.map +1 -0
  222. package/src/_esm/version.js +3 -0
  223. package/src/_esm/version.js.map +1 -0
  224. package/src/_types/config.d.ts +15 -0
  225. package/src/_types/config.d.ts.map +1 -0
  226. package/{dist/cjs → src/_types}/constants.d.ts +2 -4
  227. package/src/_types/constants.d.ts.map +1 -0
  228. package/src/_types/core/BaseStepExecutor.d.ts +13 -0
  229. package/src/_types/core/BaseStepExecutor.d.ts.map +1 -0
  230. package/src/_types/core/EVM/EVM.d.ts +3 -0
  231. package/src/_types/core/EVM/EVM.d.ts.map +1 -0
  232. package/src/_types/core/EVM/EVMStepExecutor.d.ts +17 -0
  233. package/src/_types/core/EVM/EVMStepExecutor.d.ts.map +1 -0
  234. package/{dist/cjs/types → src/_types/core/EVM}/abi.d.ts +1 -0
  235. package/src/_types/core/EVM/abi.d.ts.map +1 -0
  236. package/src/_types/core/EVM/checkAllowance.d.ts +6 -0
  237. package/src/_types/core/EVM/checkAllowance.d.ts.map +1 -0
  238. package/{dist/cjs/allowance → src/_types/core/EVM}/getAllowance.d.ts +15 -1
  239. package/src/_types/core/EVM/getAllowance.d.ts.map +1 -0
  240. package/src/_types/core/EVM/getENSAddress.d.ts +2 -0
  241. package/src/_types/core/EVM/getENSAddress.d.ts.map +1 -0
  242. package/src/_types/core/EVM/getEVMBalance.d.ts +3 -0
  243. package/src/_types/core/EVM/getEVMBalance.d.ts.map +1 -0
  244. package/src/_types/core/EVM/multisig.d.ts +6 -0
  245. package/src/_types/core/EVM/multisig.d.ts.map +1 -0
  246. package/src/_types/core/EVM/publicClient.d.ts +8 -0
  247. package/src/_types/core/EVM/publicClient.d.ts.map +1 -0
  248. package/src/_types/core/EVM/setAllowance.d.ts +25 -0
  249. package/src/_types/core/EVM/setAllowance.d.ts.map +1 -0
  250. package/{dist/execution → src/_types/core/EVM}/switchChain.d.ts +4 -4
  251. package/src/_types/core/EVM/switchChain.d.ts.map +1 -0
  252. package/src/_types/core/EVM/types.d.ts +55 -0
  253. package/src/_types/core/EVM/types.d.ts.map +1 -0
  254. package/src/_types/core/EVM/utils.d.ts +10 -0
  255. package/src/_types/core/EVM/utils.d.ts.map +1 -0
  256. package/src/_types/core/Solana/KeypairWalletAdapter.d.ts +28 -0
  257. package/src/_types/core/Solana/KeypairWalletAdapter.d.ts.map +1 -0
  258. package/src/_types/core/Solana/Solana.d.ts +3 -0
  259. package/src/_types/core/Solana/Solana.d.ts.map +1 -0
  260. package/src/_types/core/Solana/SolanaStepExecutor.d.ts +13 -0
  261. package/src/_types/core/Solana/SolanaStepExecutor.d.ts.map +1 -0
  262. package/src/_types/core/Solana/connection.d.ts +8 -0
  263. package/src/_types/core/Solana/connection.d.ts.map +1 -0
  264. package/src/_types/core/Solana/getSNSAddress.d.ts +2 -0
  265. package/src/_types/core/Solana/getSNSAddress.d.ts.map +1 -0
  266. package/src/_types/core/Solana/getSolanaBalance.d.ts +3 -0
  267. package/src/_types/core/Solana/getSolanaBalance.d.ts.map +1 -0
  268. package/src/_types/core/Solana/isAddress.d.ts +2 -0
  269. package/src/_types/core/Solana/isAddress.d.ts.map +1 -0
  270. package/src/_types/core/Solana/types.d.ts +11 -0
  271. package/src/_types/core/Solana/types.d.ts.map +1 -0
  272. package/{dist/cjs/execution → src/_types/core}/StatusManager.d.ts +14 -28
  273. package/src/_types/core/StatusManager.d.ts.map +1 -0
  274. package/{dist/cjs/execution → src/_types/core}/checkBalance.d.ts +1 -0
  275. package/src/_types/core/checkBalance.d.ts.map +1 -0
  276. package/src/_types/core/execution.d.ts +42 -0
  277. package/src/_types/core/execution.d.ts.map +1 -0
  278. package/src/_types/core/executionState.d.ts +17 -0
  279. package/src/_types/core/executionState.d.ts.map +1 -0
  280. package/src/_types/core/index.d.ts +4 -0
  281. package/src/_types/core/index.d.ts.map +1 -0
  282. package/src/_types/core/prepareRestart.d.ts +3 -0
  283. package/src/_types/core/prepareRestart.d.ts.map +1 -0
  284. package/src/_types/core/provider.d.ts +3 -0
  285. package/src/_types/core/provider.d.ts.map +1 -0
  286. package/src/_types/core/rpc.d.ts +4 -0
  287. package/src/_types/core/rpc.d.ts.map +1 -0
  288. package/{dist/execution → src/_types/core}/stepComparison.d.ts +5 -3
  289. package/src/_types/core/stepComparison.d.ts.map +1 -0
  290. package/src/_types/core/types.d.ts +81 -0
  291. package/src/_types/core/types.d.ts.map +1 -0
  292. package/{dist/execution → src/_types/core}/utils.d.ts +3 -2
  293. package/src/_types/core/utils.d.ts.map +1 -0
  294. package/{dist/cjs/execution → src/_types/core}/waitForReceivingTransaction.d.ts +2 -1
  295. package/src/_types/core/waitForReceivingTransaction.d.ts.map +1 -0
  296. package/src/_types/createConfig.d.ts +4 -0
  297. package/src/_types/createConfig.d.ts.map +1 -0
  298. package/{dist/cjs → src/_types}/helpers.d.ts +3 -9
  299. package/src/_types/helpers.d.ts.map +1 -0
  300. package/src/_types/index.d.ts +18 -0
  301. package/src/_types/index.d.ts.map +1 -0
  302. package/{dist → src/_types}/request.d.ts +1 -0
  303. package/src/_types/request.d.ts.map +1 -0
  304. package/src/_types/services/api.d.ts +89 -0
  305. package/src/_types/services/api.d.ts.map +1 -0
  306. package/src/_types/services/balance.d.ts +30 -0
  307. package/src/_types/services/balance.d.ts.map +1 -0
  308. package/src/_types/services/getNameServiceAddress.d.ts +3 -0
  309. package/src/_types/services/getNameServiceAddress.d.ts.map +1 -0
  310. package/{dist/cjs → src/_types}/typeguards.d.ts +1 -0
  311. package/src/_types/typeguards.d.ts.map +1 -0
  312. package/src/_types/types/index.d.ts +2 -0
  313. package/src/_types/types/index.d.ts.map +1 -0
  314. package/{dist → src/_types}/types/internal.d.ts +14 -15
  315. package/src/_types/types/internal.d.ts.map +1 -0
  316. package/src/_types/utils/base64ToUint8Array.d.ts +2 -0
  317. package/src/_types/utils/base64ToUint8Array.d.ts.map +1 -0
  318. package/{dist/cjs → src/_types}/utils/errors.d.ts +3 -1
  319. package/src/_types/utils/errors.d.ts.map +1 -0
  320. package/src/_types/utils/getTransactionMessage.d.ts +4 -0
  321. package/src/_types/utils/getTransactionMessage.d.ts.map +1 -0
  322. package/src/_types/utils/index.d.ts +6 -0
  323. package/src/_types/utils/index.d.ts.map +1 -0
  324. package/{dist/cjs → src/_types}/utils/median.d.ts +1 -0
  325. package/src/_types/utils/median.d.ts.map +1 -0
  326. package/src/_types/utils/parseBackendError.d.ts +3 -0
  327. package/src/_types/utils/parseBackendError.d.ts.map +1 -0
  328. package/{dist → src/_types}/utils/parseError.d.ts +2 -4
  329. package/src/_types/utils/parseError.d.ts.map +1 -0
  330. package/{dist → src/_types}/utils/utils.d.ts +1 -0
  331. package/src/_types/utils/utils.d.ts.map +1 -0
  332. package/src/_types/version.d.ts +3 -0
  333. package/src/_types/version.d.ts.map +1 -0
  334. package/src/config.ts +91 -0
  335. package/src/constants.ts +4 -0
  336. package/src/core/BaseStepExecutor.ts +40 -0
  337. package/src/core/EVM/EVM.ts +47 -0
  338. package/src/core/EVM/EVMStepExecutor.ts +500 -0
  339. package/src/core/EVM/abi.ts +47 -0
  340. package/src/core/EVM/checkAllowance.ts +168 -0
  341. package/src/core/EVM/getAllowance.ts +144 -0
  342. package/src/core/EVM/getENSAddress.ts +18 -0
  343. package/src/core/EVM/getEVMBalance.ts +118 -0
  344. package/src/core/EVM/multisig.ts +53 -0
  345. package/src/core/EVM/publicClient.ts +54 -0
  346. package/src/core/EVM/setAllowance.ts +143 -0
  347. package/src/core/EVM/switchChain.ts +77 -0
  348. package/src/core/EVM/types.ts +73 -0
  349. package/src/core/EVM/utils.ts +48 -0
  350. package/src/core/Solana/KeypairWalletAdapter.ts +100 -0
  351. package/src/core/Solana/Solana.ts +41 -0
  352. package/src/core/Solana/SolanaStepExecutor.ts +331 -0
  353. package/src/core/Solana/connection.ts +20 -0
  354. package/src/core/Solana/getSNSAddress.ts +33 -0
  355. package/src/core/Solana/getSolanaBalance.ts +72 -0
  356. package/src/core/Solana/isAddress.ts +10 -0
  357. package/src/core/Solana/types.ts +17 -0
  358. package/src/core/StatusManager.ts +233 -0
  359. package/src/core/checkBalance.ts +48 -0
  360. package/src/core/execution.ts +214 -0
  361. package/src/core/executionState.ts +44 -0
  362. package/src/core/index.ts +3 -0
  363. package/src/core/prepareRestart.ts +26 -0
  364. package/src/core/provider.ts +12 -0
  365. package/src/core/rpc.ts +15 -0
  366. package/src/core/stepComparison.ts +51 -0
  367. package/src/core/types.ts +118 -0
  368. package/src/core/utils.ts +108 -0
  369. package/src/core/waitForReceivingTransaction.ts +74 -0
  370. package/src/createConfig.ts +35 -0
  371. package/src/helpers.ts +69 -0
  372. package/src/index.ts +24 -0
  373. package/src/request.ts +79 -0
  374. package/src/services/api.ts +509 -0
  375. package/src/services/balance.ts +93 -0
  376. package/src/services/getNameServiceAddress.ts +30 -0
  377. package/src/typeguards.ts +89 -0
  378. package/src/types/index.ts +1 -0
  379. package/src/types/internal.ts +62 -0
  380. package/src/utils/base64ToUint8Array.ts +9 -0
  381. package/src/utils/errors.ts +232 -0
  382. package/src/utils/getTransactionMessage.ts +46 -0
  383. package/src/utils/index.ts +5 -0
  384. package/src/utils/median.ts +11 -0
  385. package/src/utils/parseBackendError.ts +50 -0
  386. package/src/utils/parseError.ts +210 -0
  387. package/src/utils/utils.ts +48 -0
  388. package/src/version.ts +2 -0
  389. package/dist/LiFi.d.ts +0 -178
  390. package/dist/LiFi.js +0 -253
  391. package/dist/allowance/getAllowance.d.ts +0 -6
  392. package/dist/allowance/index.d.ts +0 -3
  393. package/dist/allowance/index.js +0 -3
  394. package/dist/allowance/setAllowance.d.ts +0 -6
  395. package/dist/allowance/types.d.ts +0 -27
  396. package/dist/allowance/types.js +0 -1
  397. package/dist/balance/getBalance.d.ts +0 -2
  398. package/dist/balance/getTokenBalance.d.ts +0 -8
  399. package/dist/balance/getTokenBalance.js +0 -27
  400. package/dist/balance/index.d.ts +0 -2
  401. package/dist/balance/index.js +0 -2
  402. package/dist/cjs/LiFi.d.ts +0 -178
  403. package/dist/cjs/LiFi.js +0 -283
  404. package/dist/cjs/allowance/index.d.ts +0 -3
  405. package/dist/cjs/allowance/index.js +0 -19
  406. package/dist/cjs/allowance/setAllowance.d.ts +0 -6
  407. package/dist/cjs/allowance/types.d.ts +0 -27
  408. package/dist/cjs/balance/getBalance.d.ts +0 -2
  409. package/dist/cjs/balance/getTokenBalance.d.ts +0 -8
  410. package/dist/cjs/balance/getTokenBalance.js +0 -33
  411. package/dist/cjs/balance/index.d.ts +0 -2
  412. package/dist/cjs/balance/index.js +0 -18
  413. package/dist/cjs/connectors.d.ts +0 -8
  414. package/dist/cjs/connectors.js +0 -72
  415. package/dist/cjs/execution/BaseStepExecutor.d.ts +0 -12
  416. package/dist/cjs/execution/BaseStepExecutor.js +0 -27
  417. package/dist/cjs/execution/EVMStepExecutor.d.ts +0 -13
  418. package/dist/cjs/execution/EVMStepExecutor.js +0 -292
  419. package/dist/cjs/execution/RouteExecutionManager.d.ts +0 -60
  420. package/dist/cjs/execution/RouteExecutionManager.js +0 -204
  421. package/dist/cjs/execution/StatusManager.js +0 -171
  422. package/dist/cjs/execution/StepExecutionManager.d.ts +0 -7
  423. package/dist/cjs/execution/StepExecutionManager.js +0 -272
  424. package/dist/cjs/execution/checkAllowance.d.ts +0 -5
  425. package/dist/cjs/execution/index.d.ts +0 -2
  426. package/dist/cjs/execution/index.js +0 -18
  427. package/dist/cjs/execution/multisig.d.ts +0 -4
  428. package/dist/cjs/execution/prepareRestart.d.ts +0 -2
  429. package/dist/cjs/execution/prepareRestart.js +0 -65
  430. package/dist/cjs/execution/stepComparison.d.ts +0 -15
  431. package/dist/cjs/execution/stepComparison.js +0 -37
  432. package/dist/cjs/execution/switchChain.d.ts +0 -22
  433. package/dist/cjs/execution/switchChain.js +0 -55
  434. package/dist/cjs/execution/types.d.ts +0 -82
  435. package/dist/cjs/execution/types.js +0 -2
  436. package/dist/cjs/execution/utils.d.ts +0 -12
  437. package/dist/cjs/helpers.js +0 -84
  438. package/dist/cjs/index.d.ts +0 -9
  439. package/dist/cjs/index.js +0 -30
  440. package/dist/cjs/providers/EVM.d.ts +0 -10
  441. package/dist/cjs/providers/EVM.js +0 -34
  442. package/dist/cjs/providers/Solana.d.ts +0 -9
  443. package/dist/cjs/providers/Solana.js +0 -38
  444. package/dist/cjs/providers/index.d.ts +0 -1
  445. package/dist/cjs/providers/index.js +0 -17
  446. package/dist/cjs/providers/types.d.ts +0 -12
  447. package/dist/cjs/providers/types.js +0 -8
  448. package/dist/cjs/request.d.ts +0 -9
  449. package/dist/cjs/services/ApiService.d.ts +0 -16
  450. package/dist/cjs/services/ApiService.js +0 -323
  451. package/dist/cjs/services/ChainsService.d.ts +0 -11
  452. package/dist/cjs/services/ChainsService.js +0 -40
  453. package/dist/cjs/services/ConfigService.d.ts +0 -26
  454. package/dist/cjs/services/ConfigService.js +0 -104
  455. package/dist/cjs/types/index.d.ts +0 -2
  456. package/dist/cjs/types/index.js +0 -18
  457. package/dist/cjs/types/internal.d.ts +0 -60
  458. package/dist/cjs/utils/getMaxPriorityFeePerGas.d.ts +0 -2
  459. package/dist/cjs/utils/index.d.ts +0 -5
  460. package/dist/cjs/utils/index.js +0 -21
  461. package/dist/cjs/utils/parseError.d.ts +0 -37
  462. package/dist/cjs/utils/parseError.js +0 -154
  463. package/dist/cjs/utils/utils.d.ts +0 -10
  464. package/dist/cjs/version.d.ts +0 -2
  465. package/dist/connectors.d.ts +0 -8
  466. package/dist/connectors.js +0 -41
  467. package/dist/constants.d.ts +0 -6
  468. package/dist/execution/BaseStepExecutor.d.ts +0 -12
  469. package/dist/execution/BaseStepExecutor.js +0 -23
  470. package/dist/execution/EVMStepExecutor.d.ts +0 -13
  471. package/dist/execution/EVMStepExecutor.js +0 -285
  472. package/dist/execution/RouteExecutionManager.d.ts +0 -60
  473. package/dist/execution/RouteExecutionManager.js +0 -200
  474. package/dist/execution/StatusManager.d.ts +0 -68
  475. package/dist/execution/StatusManager.js +0 -167
  476. package/dist/execution/StepExecutionManager.d.ts +0 -7
  477. package/dist/execution/StepExecutionManager.js +0 -265
  478. package/dist/execution/checkAllowance.d.ts +0 -5
  479. package/dist/execution/checkBalance.d.ts +0 -2
  480. package/dist/execution/index.d.ts +0 -2
  481. package/dist/execution/index.js +0 -2
  482. package/dist/execution/multisig.d.ts +0 -4
  483. package/dist/execution/prepareRestart.d.ts +0 -2
  484. package/dist/execution/prepareRestart.js +0 -61
  485. package/dist/execution/types.d.ts +0 -82
  486. package/dist/execution/types.js +0 -1
  487. package/dist/execution/waitForReceivingTransaction.d.ts +0 -3
  488. package/dist/helpers.d.ts +0 -18
  489. package/dist/index.d.ts +0 -9
  490. package/dist/index.js +0 -9
  491. package/dist/providers/EVM.d.ts +0 -10
  492. package/dist/providers/EVM.js +0 -29
  493. package/dist/providers/Solana.d.ts +0 -9
  494. package/dist/providers/Solana.js +0 -33
  495. package/dist/providers/index.d.ts +0 -1
  496. package/dist/providers/index.js +0 -1
  497. package/dist/providers/types.d.ts +0 -12
  498. package/dist/providers/types.js +0 -5
  499. package/dist/services/ApiService.d.ts +0 -16
  500. package/dist/services/ApiService.js +0 -321
  501. package/dist/services/ChainsService.d.ts +0 -11
  502. package/dist/services/ChainsService.js +0 -33
  503. package/dist/services/ConfigService.d.ts +0 -26
  504. package/dist/services/ConfigService.js +0 -100
  505. package/dist/typeguards.d.ts +0 -4
  506. package/dist/types/abi.d.ts +0 -5
  507. package/dist/types/index.d.ts +0 -2
  508. package/dist/types/index.js +0 -2
  509. package/dist/types/internal.js +0 -1
  510. package/dist/utils/errors.d.ts +0 -107
  511. package/dist/utils/getMaxPriorityFeePerGas.d.ts +0 -2
  512. package/dist/utils/index.d.ts +0 -5
  513. package/dist/utils/index.js +0 -5
  514. package/dist/utils/median.d.ts +0 -1
  515. package/dist/version.d.ts +0 -2
  516. package/dist/version.js +0 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"median.js","sourceRoot":"","sources":["../../utils/median.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,GAAa,EAAsB,EAAE;IAC1D,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QAChB,OAAM;IACR,CAAC;IACD,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;IACpC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;IACnC,CAAC;IACD,OAAO,CAAC,CAAC,GAAG,CAAC,CAAA;AACf,CAAC,CAAA"}
@@ -0,0 +1,24 @@
1
+ import { ErrorMessage, NotFoundError, ServerError, SlippageError, ValidationError, } from './errors.js';
2
+ export const parseBackendError = async (e) => {
3
+ let data;
4
+ try {
5
+ data = await e.response?.json();
6
+ }
7
+ catch (error) {
8
+ // ignore
9
+ }
10
+ if (e.response?.status === 400) {
11
+ return new ValidationError(data?.message || e.response?.statusText, undefined, e.stack);
12
+ }
13
+ if (e.response?.status === 404) {
14
+ return new NotFoundError(data?.message || e.response?.statusText, undefined, e.stack);
15
+ }
16
+ if (e.response?.status === 409) {
17
+ return new SlippageError(data?.message || e.response?.statusText, ErrorMessage.SlippageError, e.stack);
18
+ }
19
+ if (e.response?.status === 500) {
20
+ return new ServerError(data?.message || e.response?.statusText, undefined, e.stack);
21
+ }
22
+ return new ServerError(ErrorMessage.Default, undefined, e.stack);
23
+ };
24
+ //# sourceMappingURL=parseBackendError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseBackendError.js","sourceRoot":"","sources":["../../utils/parseBackendError.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,aAAa,EACb,WAAW,EACX,aAAa,EACb,eAAe,GAChB,MAAM,aAAa,CAAA;AAEpB,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,CAAM,EAAsB,EAAE;IACpE,IAAI,IAAI,CAAA;IACR,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,CAAC,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAA;IACjC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS;IACX,CAAC;IACD,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;QAC/B,OAAO,IAAI,eAAe,CACxB,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,EACvC,SAAS,EACT,CAAC,CAAC,KAAK,CACR,CAAA;IACH,CAAC;IAED,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;QAC/B,OAAO,IAAI,aAAa,CACtB,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,EACvC,SAAS,EACT,CAAC,CAAC,KAAK,CACR,CAAA;IACH,CAAC;IAED,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;QAC/B,OAAO,IAAI,aAAa,CACtB,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,EACvC,YAAY,CAAC,aAAa,EAC1B,CAAC,CAAC,KAAK,CACR,CAAA;IACH,CAAC;IAED,IAAI,CAAC,CAAC,QAAQ,EAAE,MAAM,KAAK,GAAG,EAAE,CAAC;QAC/B,OAAO,IAAI,WAAW,CACpB,IAAI,EAAE,OAAO,IAAI,CAAC,CAAC,QAAQ,EAAE,UAAU,EACvC,SAAS,EACT,CAAC,CAAC,KAAK,CACR,CAAA;IACH,CAAC;IAED,OAAO,IAAI,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAA;AAClE,CAAC,CAAA"}
@@ -1,8 +1,7 @@
1
1
  import { errorCodes as MetaMaskErrorCodes, getMessageFromCode, } from 'eth-rpc-errors';
2
- import { formatUnits } from 'viem';
3
- import { fetchTxErrorDetails } from '../helpers';
4
- import { ChainsService } from '../services/ChainsService';
5
- import { ErrorMessage, EthersErrorMessage, EthersErrorType, LiFiError, LiFiErrorCode, MetaMaskProviderErrorCode, NotFoundError, ProviderError, RPCError, ServerError, SlippageError, TransactionError, UnknownError, ValidationError, } from './errors';
2
+ import { fetchTxErrorDetails } from '../helpers.js';
3
+ import { ErrorMessage, EthersErrorMessage, EthersErrorType, LiFiError, LiFiErrorCode, MetaMaskProviderErrorCode, ProviderError, RPCError, TransactionError, UnknownError, } from './errors.js';
4
+ import { getTransactionNotSentMessage } from './getTransactionMessage.js';
6
5
  /**
7
6
  * Available MetaMask error codes:
8
7
  *
@@ -34,33 +33,6 @@ import { ErrorMessage, EthersErrorMessage, EthersErrorType, LiFiError, LiFiError
34
33
  * https://eips.ethereum.org/EIPS/eip-1474#error-codes
35
34
  * https://eips.ethereum.org/EIPS/eip-1193#provider-errors
36
35
  */
37
- export const getTransactionNotSentMessage = async (step, process) => {
38
- let transactionNotSend = 'Transaction was not sent, your funds are still in your wallet';
39
- // add information about funds if available
40
- if (step) {
41
- const chainService = ChainsService.getInstance();
42
- const chain = await chainService.getChainById(step.action.fromChainId);
43
- transactionNotSend += ` (${formatUnits(BigInt(step.action.fromAmount), step.action.fromToken.decimals)} ${step.action.fromToken.symbol} on ${chain.name})`;
44
- }
45
- transactionNotSend +=
46
- ", please retry.<br/>If it still doesn't work, it is safe to delete this transfer and start a new one.";
47
- // add transaction explorer link if available
48
- transactionNotSend +=
49
- process && process.txLink
50
- ? `<br>You can check the failed transaction&nbsp;<a href="${process.txLink}" target="_blank" rel="nofollow noreferrer">here</a>.`
51
- : '';
52
- return transactionNotSend;
53
- };
54
- export const getTransactionFailedMessage = async (step, txLink) => {
55
- const chainsService = ChainsService.getInstance();
56
- const chain = await chainsService.getChainById(step.action.toChainId);
57
- const baseString = `It appears that your transaction may not have been successful.
58
- However, to confirm this, please check your ${chain.name} wallet for ${step.action.toToken.symbol}.`;
59
- return txLink
60
- ? `${baseString}
61
- You can also check the&nbsp;<a href="${txLink}" target="_blank" rel="nofollow noreferrer">block explorer</a> for more information.`
62
- : baseString;
63
- };
64
36
  export const parseError = async (e, step, process) => {
65
37
  if (e instanceof LiFiError) {
66
38
  return e;
@@ -98,6 +70,8 @@ export const parseError = async (e, step, process) => {
98
70
  return new TransactionError(LiFiErrorCode.TransactionCanceled, e.message, e.htmlMessage);
99
71
  case LiFiErrorCode.ExchangeRateUpdateCanceled:
100
72
  return new TransactionError(LiFiErrorCode.ExchangeRateUpdateCanceled, e.message, e.htmlMessage);
73
+ case LiFiErrorCode.WalletChangedDuringExecution:
74
+ return new TransactionError(LiFiErrorCode.WalletChangedDuringExecution, e.message, e.htmlMessage);
101
75
  default: {
102
76
  if (errorCode && typeof errorCode === 'number') {
103
77
  if (Object.values(MetaMaskErrorCodes.rpc).includes(errorCode)) {
@@ -123,25 +97,4 @@ export const parseError = async (e, step, process) => {
123
97
  }
124
98
  }
125
99
  };
126
- export const parseBackendError = async (e) => {
127
- let data;
128
- try {
129
- data = await e.response?.json();
130
- }
131
- catch (error) {
132
- // ignore
133
- }
134
- if (e.response?.status === 400) {
135
- return new ValidationError(data?.message || e.response?.statusText, undefined, e.stack);
136
- }
137
- if (e.response?.status === 404) {
138
- return new NotFoundError(data?.message || e.response?.statusText, undefined, e.stack);
139
- }
140
- if (e.response?.status === 409) {
141
- return new SlippageError(data?.message || e.response?.statusText, ErrorMessage.SlippageError, e.stack);
142
- }
143
- if (e.response?.status === 500) {
144
- return new ServerError(data?.message || e.response?.statusText, undefined, e.stack);
145
- }
146
- return new ServerError(ErrorMessage.Default, undefined, e.stack);
147
- };
100
+ //# sourceMappingURL=parseError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseError.js","sourceRoot":"","sources":["../../utils/parseError.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { AddressZero, AlternativeAddressZero } from '../constants';
1
+ import { AddressZero, AlternativeAddressZero } from '../constants.js';
2
2
  export const wait = (ms) => {
3
3
  return new Promise((resolve) => {
4
4
  setTimeout(resolve, ms);
@@ -35,3 +35,4 @@ export const isNativeTokenAddress = (address) => {
35
35
  }
36
36
  return false;
37
37
  };
38
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../utils/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AAErE,MAAM,CAAC,MAAM,IAAI,GAAG,CAAC,EAAU,EAAsB,EAAE;IACrD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;IACzB,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,KAAK,EAClC,QAAsC,EACtC,OAAO,GAAG,IAAI,EACF,EAAE;IACd,IAAI,MAAqB,CAAA;IAEzB,OAAO,CAAC,MAAM,EAAE,CAAC;QACf,MAAM,GAAG,MAAM,QAAQ,EAAE,CAAA;QACzB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,CAAC,OAAO,CAAC,CAAA;QACrB,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAe,EAAW,EAAE;IACxD,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,sBAAsB,EAAE,CAAC;QAClE,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,OAAe,EAAW,EAAE;IAC/D,IACE,OAAO,KAAK,WAAW;QACvB,OAAO,KAAK,sBAAsB;QAClC,oBAAoB;QACpB,OAAO,KAAK,4CAA4C,EACxD,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA"}
@@ -0,0 +1,3 @@
1
+ export const name = '@lifi/sdk';
2
+ export const version = '3.0.0-beta.1';
3
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../version.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,IAAI,GAAG,WAAW,CAAA;AAC/B,MAAM,CAAC,MAAM,OAAO,GAAG,cAAc,CAAA"}
@@ -0,0 +1,15 @@
1
+ import type { ChainId, ExtendedChain } from '@lifi/types';
2
+ import type { SDKProvider } from './core/types.js';
3
+ import type { RPCUrls, SDKBaseConfig, SDKConfig } from './types/internal.js';
4
+ export declare const config: {
5
+ loading: Promise<void>;
6
+ get(): SDKBaseConfig;
7
+ set(options: SDKConfig): SDKBaseConfig;
8
+ setProviders(providers: SDKProvider[]): void;
9
+ setChains(chains: ExtendedChain[]): void;
10
+ getChains(): Promise<ExtendedChain[]>;
11
+ getChainById(chainId: ChainId): Promise<ExtendedChain>;
12
+ setRPCUrls(rpcUrls: RPCUrls): void;
13
+ getRPCUrls(): Promise<Partial<Record<ChainId, string[]>>>;
14
+ };
15
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAE5E,eAAO,MAAM,MAAM;;;iBAiBF,SAAS;4BAcE,WAAW,EAAE;sBAOnB,aAAa,EAAE;;0BAiBL,OAAO;wBAUf,OAAO;;CAqB3B,CAAA"}
@@ -1,6 +1,4 @@
1
1
  export declare const AddressZero = "0x0000000000000000000000000000000000000000";
2
2
  export declare const AlternativeAddressZero = "0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee";
3
- /**
4
- * Cronos require bigger multicall chunks than default 1024 (1 KB)
5
- */
6
- export declare const MulticallBatchSize = 16384;
3
+ export declare const wrappedSolAddress = "So11111111111111111111111111111111111111112";
4
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,+CAA+C,CAAA;AACvE,eAAO,MAAM,sBAAsB,+CACW,CAAA;AAC9C,eAAO,MAAM,iBAAiB,gDAAgD,CAAA"}
@@ -0,0 +1,13 @@
1
+ import type { LiFiStep } from '@lifi/types';
2
+ import { StatusManager } from './StatusManager.js';
3
+ import type { ExecutionOptions, InteractionSettings, StepExecutor, StepExecutorOptions } from './types.js';
4
+ export declare abstract class BaseStepExecutor implements StepExecutor {
5
+ protected executionOptions?: ExecutionOptions;
6
+ protected statusManager: StatusManager;
7
+ allowUserInteraction: boolean;
8
+ allowExecution: boolean;
9
+ constructor(options: StepExecutorOptions);
10
+ setInteraction: (settings?: InteractionSettings) => void;
11
+ abstract executeStep(step: LiFiStep): Promise<LiFiStep>;
12
+ }
13
+ //# sourceMappingURL=BaseStepExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseStepExecutor.d.ts","sourceRoot":"","sources":["../../core/BaseStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACpB,MAAM,YAAY,CAAA;AASnB,8BAAsB,gBAAiB,YAAW,YAAY;IAC5D,SAAS,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IAC7C,SAAS,CAAC,aAAa,EAAE,aAAa,CAAA;IAE/B,oBAAoB,UAAO;IAC3B,cAAc,UAAO;gBAEhB,OAAO,EAAE,mBAAmB;IAKxC,cAAc,cAAe,mBAAmB,KAAG,IAAI,CAQtD;IAED,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;CACxD"}
@@ -0,0 +1,3 @@
1
+ import type { EVMProvider, EVMProviderOptions } from './types.js';
2
+ export declare function EVM(options?: EVMProviderOptions): EVMProvider;
3
+ //# sourceMappingURL=EVM.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EVM.d.ts","sourceRoot":"","sources":["../../../core/EVM/EVM.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AAEjE,wBAAgB,GAAG,CAAC,OAAO,CAAC,EAAE,kBAAkB,GAAG,WAAW,CAsC7D"}
@@ -0,0 +1,17 @@
1
+ import type { Process } from '@lifi/types';
2
+ import type { WalletClient } from 'viem';
3
+ import { BaseStepExecutor } from '../BaseStepExecutor.js';
4
+ import type { LiFiStepExtended, StepExecutorOptions } from '../types.js';
5
+ import type { MultisigConfig } from './types.js';
6
+ export interface EVMStepExecutorOptions extends StepExecutorOptions {
7
+ walletClient: WalletClient;
8
+ multisig?: MultisigConfig;
9
+ }
10
+ export declare class EVMStepExecutor extends BaseStepExecutor {
11
+ private walletClient;
12
+ private multisig?;
13
+ constructor(options: EVMStepExecutorOptions);
14
+ checkWalletClient: (step: LiFiStepExtended, process?: Process) => Promise<WalletClient | undefined>;
15
+ executeStep: (step: LiFiStepExtended) => Promise<LiFiStepExtended>;
16
+ }
17
+ //# sourceMappingURL=EVMStepExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EVMStepExecutor.d.ts","sourceRoot":"","sources":["../../../core/EVM/EVMStepExecutor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,OAAO,EACR,MAAM,aAAa,CAAA;AACpB,OAAO,KAAK,EAKV,YAAY,EACb,MAAM,MAAM,CAAA;AAYb,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EAEpB,MAAM,aAAa,CAAA;AAMpB,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,YAAY,CAAA;AAGrE,MAAM,WAAW,sBAAuB,SAAQ,mBAAmB;IACjE,YAAY,EAAE,YAAY,CAAA;IAC1B,QAAQ,CAAC,EAAE,cAAc,CAAA;CAC1B;AAED,qBAAa,eAAgB,SAAQ,gBAAgB;IACnD,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,CAAgB;gBAErB,OAAO,EAAE,sBAAsB;IAO3C,iBAAiB,SACT,gBAAgB,YACZ,OAAO,KAChB,QAAQ,YAAY,GAAG,SAAS,CAAC,CAqCnC;IAED,WAAW,SAAgB,gBAAgB,KAAG,QAAQ,gBAAgB,CAAC,CAiZtE;CACF"}
@@ -3,3 +3,4 @@ export declare const approveAbi: Abi;
3
3
  export declare const allowanceAbi: Abi;
4
4
  export declare const getEthBalanceAbi: Abi;
5
5
  export declare const balanceOfAbi: Abi;
6
+ //# sourceMappingURL=abi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../../core/EVM/abi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAA;AAE/B,eAAO,MAAM,UAAU,EAAE,GAWxB,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,GAW1B,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,GAQ9B,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,GAQ1B,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { Chain, LiFiStep } from '@lifi/types';
2
+ import type { Hash, WalletClient } from 'viem';
3
+ import type { StatusManager } from '../StatusManager.js';
4
+ import type { ExecutionOptions } from '../types.js';
5
+ export declare const checkAllowance: (chain: Chain, step: LiFiStep, walletClient: WalletClient, statusManager: StatusManager, settings?: ExecutionOptions, allowUserInteraction?: boolean, shouldBatchTransactions?: boolean) => Promise<Hash | void>;
6
+ //# sourceMappingURL=checkAllowance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkAllowance.d.ts","sourceRoot":"","sources":["../../../core/EVM/checkAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAwB,MAAM,aAAa,CAAA;AACxE,OAAO,KAAK,EAAW,IAAI,EAAqB,YAAY,EAAE,MAAM,MAAM,CAAA;AAI1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAKnD,eAAO,MAAM,cAAc,UAClB,KAAK,QACN,QAAQ,gBACA,YAAY,iBACX,aAAa,aACjB,gBAAgB,wEAG1B,QAAQ,IAAI,GAAG,IAAI,CAoGrB,CAAA"}
@@ -1,6 +1,20 @@
1
1
  import type { ChainId, Token } from '@lifi/types';
2
- import type { TokenAllowance, TokenSpender, TokenSpenderAllowance } from './types';
2
+ import type { TokenAllowance, TokenSpender, TokenSpenderAllowance } from './types.js';
3
3
  export declare const getAllowance: (chainId: ChainId, tokenAddress: string, ownerAddress: string, spenderAddress: string) => Promise<bigint>;
4
4
  export declare const getAllowanceMulticall: (chainId: ChainId, tokens: TokenSpender[], ownerAddress: string) => Promise<TokenSpenderAllowance[]>;
5
+ /**
6
+ * Get the current allowance for a certain token.
7
+ * @param token - The token that should be checked
8
+ * @param ownerAddress - The owner of the token
9
+ * @param spenderAddress - The spender address that has to be approved
10
+ * @returns Returns allowance
11
+ */
5
12
  export declare const getTokenAllowance: (token: Token, ownerAddress: string, spenderAddress: string) => Promise<bigint | undefined>;
13
+ /**
14
+ * Get the current allowance for a list of token/spender address pairs.
15
+ * @param ownerAddress - The owner of the tokens
16
+ * @param tokens - A list of token and spender address pairs
17
+ * @returns Returns array of tokens and their allowance
18
+ */
6
19
  export declare const getTokenAllowanceMulticall: (ownerAddress: string, tokens: TokenSpender[]) => Promise<TokenAllowance[]>;
20
+ //# sourceMappingURL=getAllowance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAllowance.d.ts","sourceRoot":"","sources":["../../../core/EVM/getAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAMjD,OAAO,KAAK,EACV,cAAc,EACd,YAAY,EACZ,qBAAqB,EACtB,MAAM,YAAY,CAAA;AAGnB,eAAO,MAAM,YAAY,YACd,OAAO,gBACF,MAAM,gBACN,MAAM,kBACJ,MAAM,KACrB,QAAQ,MAAM,CAiBhB,CAAA;AAED,eAAO,MAAM,qBAAqB,YACvB,OAAO,UACR,YAAY,EAAE,gBACR,MAAM,KACnB,QAAQ,qBAAqB,EAAE,CAkCjC,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,UACrB,KAAK,gBACE,MAAM,kBACJ,MAAM,KACrB,QAAQ,MAAM,GAAG,SAAS,CAa5B,CAAA;AAED;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,iBACvB,MAAM,UACZ,YAAY,EAAE,KACrB,QAAQ,cAAc,EAAE,CA+B1B,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const getENSAddress: (name: string) => Promise<string | undefined>;
2
+ //# sourceMappingURL=getENSAddress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getENSAddress.d.ts","sourceRoot":"","sources":["../../../core/EVM/getENSAddress.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,aAAa,SAClB,MAAM,KACX,QAAQ,MAAM,GAAG,SAAS,CAW5B,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { Token, TokenAmount } from '@lifi/types';
2
+ export declare const getEVMBalance: (walletAddress: string, tokens: Token[]) => Promise<TokenAmount[]>;
3
+ //# sourceMappingURL=getEVMBalance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getEVMBalance.d.ts","sourceRoot":"","sources":["../../../core/EVM/getEVMBalance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAO9D,eAAO,MAAM,aAAa,kBACT,MAAM,UACb,KAAK,EAAE,KACd,QAAQ,WAAW,EAAE,CAuBvB,CAAA"}
@@ -0,0 +1,6 @@
1
+ import type { ExtendedChain, LiFiStep, ProcessType } from '@lifi/types';
2
+ import type { Hash } from 'viem';
3
+ import type { StatusManager } from '../StatusManager.js';
4
+ import type { MultisigConfig } from './types.js';
5
+ export declare const updateMultisigRouteProcess: (internalTxHash: Hash, step: LiFiStep, processType: ProcessType, fromChain: ExtendedChain, statusManager: StatusManager, multisig?: MultisigConfig) => Promise<void>;
6
+ //# sourceMappingURL=multisig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multisig.d.ts","sourceRoot":"","sources":["../../../core/EVM/multisig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACvE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAEhC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,cAAc,EAAqB,MAAM,YAAY,CAAA;AAEnE,eAAO,MAAM,0BAA0B,mBACrB,IAAI,QACd,QAAQ,eACD,WAAW,aACb,aAAa,iBACT,aAAa,aACjB,cAAc,kBAwC1B,CAAA"}
@@ -0,0 +1,8 @@
1
+ import type { PublicClient } from 'viem';
2
+ /**
3
+ * Get an instance of a provider for a specific chain
4
+ * @param chainId - Id of the chain the provider is for
5
+ * @returns The public client for the given chain
6
+ */
7
+ export declare const getPublicClient: (chainId: number) => Promise<PublicClient>;
8
+ //# sourceMappingURL=publicClient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publicClient.d.ts","sourceRoot":"","sources":["../../../core/EVM/publicClient.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AASxC;;;;GAIG;AACH,eAAO,MAAM,eAAe,YACjB,MAAM,KACd,QAAQ,YAAY,CAoCtB,CAAA"}
@@ -0,0 +1,25 @@
1
+ import type { Hash, WalletClient } from 'viem';
2
+ import type { ExecutionOptions } from '../types.js';
3
+ import type { ApproveTokenRequest, RevokeApprovalRequest } from './types.js';
4
+ export declare const setAllowance: (walletClient: WalletClient, tokenAddress: string, contractAddress: string, amount: bigint, settings?: ExecutionOptions, returnPopulatedTransaction?: boolean) => Promise<Hash>;
5
+ /**
6
+ * Set approval for a certain token and amount.
7
+ * @param request - The approval request
8
+ * @param request.walletClient
9
+ * @param request.token
10
+ * @param request.spenderAddress
11
+ * @param request.amount
12
+ * @param request.infiniteApproval
13
+ * @returns Returns Hash or nothing
14
+ */
15
+ export declare const setTokenAllowance: ({ walletClient, token, spenderAddress, amount, infiniteApproval, }: ApproveTokenRequest) => Promise<Hash | void>;
16
+ /**
17
+ * Revoke approval for a certain token.
18
+ * @param request - The revoke request
19
+ * @param request.walletClient
20
+ * @param request.token
21
+ * @param request.spenderAddress
22
+ * @returns Returns Hash or nothing
23
+ */
24
+ export declare const revokeTokenApproval: ({ walletClient, token, spenderAddress, }: RevokeApprovalRequest) => Promise<Hash | void>;
25
+ //# sourceMappingURL=setAllowance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setAllowance.d.ts","sourceRoot":"","sources":["../../../core/EVM/setAllowance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EAGJ,YAAY,EACb,MAAM,MAAM,CAAA;AAGb,OAAO,KAAK,EAAE,gBAAgB,EAAyB,MAAM,aAAa,CAAA;AAG1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAG5E,eAAO,MAAM,YAAY,iBACT,YAAY,gBACZ,MAAM,mBACH,MAAM,UACf,MAAM,aACH,gBAAgB,+BACE,OAAO,KACnC,QAAQ,IAAI,CA4Cd,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,iBAAiB,uEAM3B,mBAAmB,KAAG,QAAQ,IAAI,GAAG,IAAI,CAwB3C,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,6CAI7B,qBAAqB,KAAG,QAAQ,IAAI,GAAG,IAAI,CAqB7C,CAAA"}
@@ -1,7 +1,6 @@
1
- import type { LiFiStep } from '@lifi/types';
2
1
  import type { WalletClient } from 'viem';
3
- import type { StatusManager } from './StatusManager';
4
- import type { SwitchChainHook } from './types';
2
+ import type { StatusManager } from '../StatusManager.js';
3
+ import type { LiFiStepExtended, SwitchChainHook } from '../types.js';
5
4
  /**
6
5
  * This method checks whether the wallet client is configured for the correct chain.
7
6
  * If yes it returns the wallet clien.
@@ -19,4 +18,5 @@ import type { SwitchChainHook } from './types';
19
18
  * @param allowUserInteraction
20
19
  * @returns New WalletClient
21
20
  */
22
- export declare const switchChain: (walletClient: WalletClient, statusManager: StatusManager, step: LiFiStep, switchChainHook: SwitchChainHook, allowUserInteraction: boolean) => Promise<WalletClient | undefined>;
21
+ export declare const switchChain: (walletClient: WalletClient, statusManager: StatusManager, step: LiFiStepExtended, allowUserInteraction: boolean, switchChainHook?: SwitchChainHook) => Promise<WalletClient | undefined>;
22
+ //# sourceMappingURL=switchChain.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"switchChain.d.ts","sourceRoot":"","sources":["../../../core/EVM/switchChain.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAExC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACxD,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAEpE;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,WAAW,iBACR,YAAY,iBACX,aAAa,QACtB,gBAAgB,wBACA,OAAO,oBACX,eAAe,KAChC,QAAQ,YAAY,GAAG,SAAS,CAgDlC,CAAA"}
@@ -0,0 +1,55 @@
1
+ import { type Token } from '@lifi/types';
2
+ import type { Hash, WalletClient } from 'viem';
3
+ import type { SwitchChainHook } from '../types.js';
4
+ import { type SDKProvider } from '../types.js';
5
+ export interface EVMProviderOptions {
6
+ getWalletClient?: () => Promise<WalletClient>;
7
+ switchChain?: SwitchChainHook;
8
+ multisig?: MultisigConfig;
9
+ }
10
+ export interface EVMProvider extends SDKProvider {
11
+ setOptions(options: EVMProviderOptions): void;
12
+ multisig?: MultisigConfig;
13
+ }
14
+ export declare function isEVM(provider: SDKProvider): provider is EVMProvider;
15
+ export type TokenSpender = {
16
+ token: Token;
17
+ spenderAddress: string;
18
+ };
19
+ export type TokenAllowance = {
20
+ token: Token;
21
+ allowance?: bigint;
22
+ };
23
+ export type TokenSpenderAllowance = {
24
+ token: Token;
25
+ spenderAddress: string;
26
+ allowance?: bigint;
27
+ };
28
+ export interface ApproveTokenRequest {
29
+ walletClient: WalletClient;
30
+ token: Token;
31
+ spenderAddress: string;
32
+ amount: bigint;
33
+ infiniteApproval?: boolean;
34
+ }
35
+ export interface RevokeApprovalRequest {
36
+ walletClient: WalletClient;
37
+ token: Token;
38
+ spenderAddress: string;
39
+ }
40
+ export interface MultisigTxDetails {
41
+ status: 'DONE' | 'FAILED' | 'PENDING' | 'CANCELLED';
42
+ txHash?: Hash;
43
+ }
44
+ export interface MultisigTransaction {
45
+ to: string;
46
+ value?: bigint;
47
+ data: string;
48
+ }
49
+ export interface MultisigConfig {
50
+ isMultisigWalletClient: boolean;
51
+ getMultisigTransactionDetails: (txHash: Hash, fromChainId: number, updateIntermediateStatus?: () => void) => Promise<MultisigTxDetails>;
52
+ sendBatchTransaction?: (batchTransactions: MultisigTransaction[]) => Promise<Hash>;
53
+ shouldBatchTransactions?: boolean;
54
+ }
55
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../core/EVM/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,KAAK,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAC9C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,WAAW,kBAAkB;IACjC,eAAe,CAAC,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAA;IAC7C,WAAW,CAAC,EAAE,eAAe,CAAA;IAC7B,QAAQ,CAAC,EAAE,cAAc,CAAA;CAC1B;AAED,MAAM,WAAW,WAAY,SAAQ,WAAW;IAC9C,UAAU,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAAA;IAC7C,QAAQ,CAAC,EAAE,cAAc,CAAA;CAC1B;AAED,wBAAgB,KAAK,CAAC,QAAQ,EAAE,WAAW,GAAG,QAAQ,IAAI,WAAW,CAEpE;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,KAAK,EAAE,KAAK,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,KAAK,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,KAAK,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,YAAY,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,gBAAgB,CAAC,EAAE,OAAO,CAAA;CAC3B;AAED,MAAM,WAAW,qBAAqB;IACpC,YAAY,EAAE,YAAY,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAA;IACZ,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAA;IACnD,MAAM,CAAC,EAAE,IAAI,CAAA;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,cAAc;IAC7B,sBAAsB,EAAE,OAAO,CAAA;IAC/B,6BAA6B,EAAE,CAC7B,MAAM,EAAE,IAAI,EACZ,WAAW,EAAE,MAAM,EACnB,wBAAwB,CAAC,EAAE,MAAM,IAAI,KAClC,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC/B,oBAAoB,CAAC,EAAE,CACrB,iBAAiB,EAAE,mBAAmB,EAAE,KACrC,OAAO,CAAC,IAAI,CAAC,CAAA;IAClB,uBAAuB,CAAC,EAAE,OAAO,CAAA;CAClC"}
@@ -0,0 +1,10 @@
1
+ import { type ChainId } from '@lifi/types';
2
+ import type { PublicClient } from 'viem';
3
+ export declare const getMaxPriorityFeePerGas: (client: PublicClient) => Promise<bigint | undefined>;
4
+ export declare const getMulticallAddress: (chainId: ChainId) => Promise<string | undefined>;
5
+ export declare const retryDelay: ({ count }: {
6
+ count: number;
7
+ error: Error;
8
+ }) => number;
9
+ export declare const retryCount = 20;
10
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../core/EVM/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAA;AAC1C,OAAO,KAAK,EAAE,YAAY,EAAe,MAAM,MAAM,CAAA;AAIrD,eAAO,MAAM,uBAAuB,WAC1B,YAAY,KACnB,QAAQ,MAAM,GAAG,SAAS,CA0B5B,CAAA;AAGD,eAAO,MAAM,mBAAmB,YACrB,OAAO,KACf,QAAQ,MAAM,GAAG,SAAS,CAG5B,CAAA;AAGD,eAAO,MAAM,UAAU,cAAe;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,WAC/B,CAAA;AAEtC,eAAO,MAAM,UAAU,KAAK,CAAA"}
@@ -0,0 +1,28 @@
1
+ import type { SignerWalletAdapter, WalletName } from '@solana/wallet-adapter-base';
2
+ import { BaseSignerWalletAdapter, WalletReadyState } from '@solana/wallet-adapter-base';
3
+ import type { Transaction, TransactionVersion, VersionedTransaction } from '@solana/web3.js';
4
+ export declare const KeypairWalletName: WalletName<"Keypair Wallet">;
5
+ /**
6
+ * This keypair wallet adapter is unsafe to use on the frontend and is only included to provide an easy way for applications to test
7
+ * Wallet Adapter without using a third-party wallet.
8
+ */
9
+ export declare class KeypairWalletAdapter extends BaseSignerWalletAdapter implements SignerWalletAdapter {
10
+ name: WalletName<"Keypair Wallet">;
11
+ url: string;
12
+ icon: string;
13
+ supportedTransactionVersions: ReadonlySet<TransactionVersion>;
14
+ /**
15
+ * Storing a keypair locally like this is not safe because any application using this adapter could retrieve the
16
+ * secret key, and because the keypair will be lost any time the wallet is disconnected or the window is refreshed.
17
+ */
18
+ private _keypair;
19
+ constructor(privateKey: string);
20
+ get connecting(): boolean;
21
+ get publicKey(): import("@solana/web3.js").PublicKey | null;
22
+ get readyState(): WalletReadyState;
23
+ connect(privateKey?: string): Promise<void>;
24
+ disconnect(): Promise<void>;
25
+ signTransaction<T extends Transaction | VersionedTransaction>(transaction: T): Promise<T>;
26
+ signMessage(message: Uint8Array): Promise<Uint8Array>;
27
+ }
28
+ //# sourceMappingURL=KeypairWalletAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeypairWalletAdapter.d.ts","sourceRoot":"","sources":["../../../core/Solana/KeypairWalletAdapter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,UAAU,EACX,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,uBAAuB,EAGvB,gBAAgB,EAEjB,MAAM,6BAA6B,CAAA;AACpC,OAAO,KAAK,EACV,WAAW,EACX,kBAAkB,EAClB,oBAAoB,EACrB,MAAM,iBAAiB,CAAA;AAIxB,eAAO,MAAM,iBAAiB,8BACoB,CAAA;AAElD;;;GAGG;AACH,qBAAa,oBACX,SAAQ,uBACR,YAAW,mBAAmB;IAE9B,IAAI,+BAAoB;IACxB,GAAG,SAA+C;IAClD,IAAI,SAAK;IACT,4BAA4B,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAG3D;IAEF;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAqB;gBAEzB,UAAU,EAAE,MAAM;IAQ9B,IAAI,UAAU,YAEb;IAED,IAAI,SAAS,+CAEZ;IAED,IAAI,UAAU,qBAEb;IAEK,OAAO,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAO3C,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAI3B,eAAe,CAAC,CAAC,SAAS,WAAW,GAAG,oBAAoB,EAChE,WAAW,EAAE,CAAC,GACb,OAAO,CAAC,CAAC,CAAC;IAcP,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;CAO5D"}
@@ -0,0 +1,3 @@
1
+ import type { SolanaProvider, SolanaProviderOptions } from './types.js';
2
+ export declare function Solana(options?: SolanaProviderOptions): SolanaProvider;
3
+ //# sourceMappingURL=Solana.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Solana.d.ts","sourceRoot":"","sources":["../../../core/Solana/Solana.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAA;AAEvE,wBAAgB,MAAM,CAAC,OAAO,CAAC,EAAE,qBAAqB,GAAG,cAAc,CAgCtE"}
@@ -0,0 +1,13 @@
1
+ import { type SignerWalletAdapter } from '@solana/wallet-adapter-base';
2
+ import { BaseStepExecutor } from '../BaseStepExecutor.js';
3
+ import type { LiFiStepExtended, StepExecutorOptions } from '../types.js';
4
+ export interface SolanaStepExecutorOptions extends StepExecutorOptions {
5
+ walletAdapter: SignerWalletAdapter;
6
+ }
7
+ export declare class SolanaStepExecutor extends BaseStepExecutor {
8
+ private walletAdapter;
9
+ constructor(options: SolanaStepExecutorOptions);
10
+ checkWalletAdapter: (step: LiFiStepExtended) => void;
11
+ executeStep: (step: LiFiStepExtended) => Promise<LiFiStepExtended>;
12
+ }
13
+ //# sourceMappingURL=SolanaStepExecutor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SolanaStepExecutor.d.ts","sourceRoot":"","sources":["../../../core/Solana/SolanaStepExecutor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AAetE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAGzD,OAAO,KAAK,EACV,gBAAgB,EAChB,mBAAmB,EAEpB,MAAM,aAAa,CAAA;AAKpB,MAAM,WAAW,yBAA0B,SAAQ,mBAAmB;IACpE,aAAa,EAAE,mBAAmB,CAAA;CACnC;AAMD,qBAAa,kBAAmB,SAAQ,gBAAgB;IACtD,OAAO,CAAC,aAAa,CAAqB;gBAE9B,OAAO,EAAE,yBAAyB;IAK9C,kBAAkB,SAAU,gBAAgB,UAQ3C;IAED,WAAW,SAAgB,gBAAgB,KAAG,QAAQ,gBAAgB,CAAC,CAmRtE;CACF"}
@@ -0,0 +1,8 @@
1
+ import { Connection } from '@solana/web3.js';
2
+ /**
3
+ * getSolanaConnection is just a thin wrapper around getting the
4
+ * connection (rpc provider) for Solana
5
+ * @returns - Solana rpc connection
6
+ */
7
+ export declare const getSolanaConnection: () => Promise<Connection>;
8
+ //# sourceMappingURL=connection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connection.d.ts","sourceRoot":"","sources":["../../../core/Solana/connection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAK5C;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QAAa,QAAQ,UAAU,CAQ9D,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const getSNSAddress: (name: string) => Promise<string | undefined>;
2
+ //# sourceMappingURL=getSNSAddress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSNSAddress.d.ts","sourceRoot":"","sources":["../../../core/Solana/getSNSAddress.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,aAAa,SAAgB,MAAM,gCAuB/C,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { Token, TokenAmount } from '@lifi/types';
2
+ export declare const getSolanaBalance: (walletAddress: string, tokens: Token[]) => Promise<TokenAmount[]>;
3
+ //# sourceMappingURL=getSolanaBalance.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getSolanaBalance.d.ts","sourceRoot":"","sources":["../../../core/Solana/getSolanaBalance.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAW,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAM9D,eAAO,MAAM,gBAAgB,kBACZ,MAAM,UACb,KAAK,EAAE,KACd,QAAQ,WAAW,EAAE,CAYvB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare function isAddress(address: string): boolean;
2
+ //# sourceMappingURL=isAddress.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"isAddress.d.ts","sourceRoot":"","sources":["../../../core/Solana/isAddress.ts"],"names":[],"mappings":"AAEA,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAOlD"}
@@ -0,0 +1,11 @@
1
+ import type { SignerWalletAdapter } from '@solana/wallet-adapter-base';
2
+ import { type SDKProvider } from '../types.js';
3
+ export interface SolanaProviderOptions {
4
+ getWalletAdapter?: () => Promise<SignerWalletAdapter>;
5
+ }
6
+ export interface SolanaProvider extends SDKProvider {
7
+ setOptions(options: SolanaProviderOptions): void;
8
+ }
9
+ export declare function isSolana(provider: SDKProvider): provider is SolanaProvider;
10
+ export declare const TokenProgramAddress = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
11
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../core/Solana/types.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAA;AACtE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,WAAW,qBAAqB;IACpC,gBAAgB,CAAC,EAAE,MAAM,OAAO,CAAC,mBAAmB,CAAC,CAAA;CACtD;AAED,MAAM,WAAW,cAAe,SAAQ,WAAW;IACjD,UAAU,CAAC,OAAO,EAAE,qBAAqB,GAAG,IAAI,CAAA;CACjD;AAED,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,WAAW,GAAG,QAAQ,IAAI,cAAc,CAE1E;AAED,eAAO,MAAM,mBAAmB,gDAAgD,CAAA"}