@across-protocol/sdk 4.1.63-beta.0 → 4.1.63

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 (366) hide show
  1. package/dist/cjs/arch/evm/SpokeUtils.d.ts +1 -1
  2. package/dist/cjs/arch/evm/SpokeUtils.js +5 -6
  3. package/dist/cjs/arch/evm/SpokeUtils.js.map +1 -1
  4. package/dist/cjs/arch/svm/index.d.ts +1 -5
  5. package/dist/cjs/arch/svm/index.js +2 -6
  6. package/dist/cjs/arch/svm/index.js.map +1 -1
  7. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  8. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +7 -7
  9. package/dist/cjs/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  10. package/dist/cjs/clients/BaseAbstractClient.d.ts +5 -6
  11. package/dist/cjs/clients/BaseAbstractClient.js +19 -30
  12. package/dist/cjs/clients/BaseAbstractClient.js.map +1 -1
  13. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js +11 -15
  14. package/dist/cjs/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  15. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -1
  16. package/dist/cjs/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  17. package/dist/cjs/clients/BundleDataClient/utils/SuperstructUtils.d.ts +90 -90
  18. package/dist/cjs/clients/HubPoolClient.d.ts +1 -1
  19. package/dist/cjs/clients/HubPoolClient.js +16 -16
  20. package/dist/cjs/clients/HubPoolClient.js.map +1 -1
  21. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  22. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js +20 -23
  23. package/dist/cjs/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  24. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.d.ts +5 -5
  25. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js +54 -50
  26. package/dist/cjs/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  27. package/dist/cjs/clients/SpokePoolClient/index.d.ts +0 -3
  28. package/dist/cjs/clients/SpokePoolClient/index.js +1 -8
  29. package/dist/cjs/clients/SpokePoolClient/index.js.map +1 -1
  30. package/dist/cjs/clients/index.d.ts +1 -1
  31. package/dist/cjs/clients/index.js +1 -2
  32. package/dist/cjs/clients/index.js.map +1 -1
  33. package/dist/cjs/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  34. package/dist/cjs/clients/mocks/MockConfigStoreClient.js +2 -2
  35. package/dist/cjs/clients/mocks/MockConfigStoreClient.js.map +1 -1
  36. package/dist/cjs/clients/mocks/MockHubPoolClient.js +2 -2
  37. package/dist/cjs/clients/mocks/MockHubPoolClient.js.map +1 -1
  38. package/dist/cjs/clients/mocks/MockSpokePoolClient.js +4 -7
  39. package/dist/cjs/clients/mocks/MockSpokePoolClient.js.map +1 -1
  40. package/dist/cjs/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  41. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  42. package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  43. package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
  44. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js +2 -3
  45. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  46. package/dist/cjs/gasPriceOracle/adapters/polygon.d.ts +3 -3
  47. package/dist/cjs/gasPriceOracle/index.d.ts +1 -1
  48. package/dist/cjs/gasPriceOracle/oracle.d.ts +3 -4
  49. package/dist/cjs/gasPriceOracle/oracle.js +9 -16
  50. package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
  51. package/dist/cjs/gasPriceOracle/types.d.ts +1 -6
  52. package/dist/cjs/index.d.ts +1 -0
  53. package/dist/cjs/index.js +2 -1
  54. package/dist/cjs/index.js.map +1 -1
  55. package/dist/cjs/interfaces/SpokePool.d.ts +0 -7
  56. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  57. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +4 -5
  58. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  59. package/dist/cjs/relayFeeCalculator/chain-queries/factory.d.ts +11 -4
  60. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js +1 -7
  61. package/dist/cjs/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  62. package/dist/cjs/relayFeeCalculator/chain-queries/index.d.ts +0 -1
  63. package/dist/cjs/relayFeeCalculator/chain-queries/index.js +0 -1
  64. package/dist/cjs/relayFeeCalculator/chain-queries/index.js.map +1 -1
  65. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +9 -0
  66. package/dist/cjs/svm/eventsClient.d.ts +15 -0
  67. package/dist/cjs/{arch/svm → svm}/eventsClient.js +28 -60
  68. package/dist/cjs/svm/eventsClient.js.map +1 -0
  69. package/dist/cjs/svm/index.d.ts +3 -0
  70. package/dist/cjs/svm/index.js +8 -0
  71. package/dist/cjs/svm/index.js.map +1 -0
  72. package/dist/{esm/arch → cjs}/svm/types.d.ts +4 -9
  73. package/dist/cjs/svm/types.js.map +1 -0
  74. package/dist/cjs/svm/utils/events.d.ts +8 -0
  75. package/dist/cjs/svm/utils/events.js +47 -0
  76. package/dist/cjs/svm/utils/events.js.map +1 -0
  77. package/dist/cjs/svm/utils/helpers.d.ts +2 -0
  78. package/dist/cjs/svm/utils/helpers.js +19 -0
  79. package/dist/cjs/svm/utils/helpers.js.map +1 -0
  80. package/dist/cjs/svm/utils/index.d.ts +1 -0
  81. package/dist/cjs/svm/utils/index.js +5 -0
  82. package/dist/cjs/svm/utils/index.js.map +1 -0
  83. package/dist/cjs/utils/AddressUtils.d.ts +3 -9
  84. package/dist/cjs/utils/AddressUtils.js +6 -36
  85. package/dist/cjs/utils/AddressUtils.js.map +1 -1
  86. package/dist/cjs/utils/ArrayUtils.d.ts +0 -1
  87. package/dist/cjs/utils/ArrayUtils.js +1 -6
  88. package/dist/cjs/utils/ArrayUtils.js.map +1 -1
  89. package/dist/cjs/utils/EventUtils.d.ts +4 -4
  90. package/dist/cjs/utils/EventUtils.js +4 -7
  91. package/dist/cjs/utils/EventUtils.js.map +1 -1
  92. package/dist/cjs/utils/JSONUtils.js +0 -3
  93. package/dist/cjs/utils/JSONUtils.js.map +1 -1
  94. package/dist/cjs/utils/SpokeUtils.js +0 -5
  95. package/dist/cjs/utils/SpokeUtils.js.map +1 -1
  96. package/dist/cjs/utils/TokenUtils.d.ts +18 -0
  97. package/dist/esm/arch/evm/SpokeUtils.d.ts +1 -1
  98. package/dist/esm/arch/evm/SpokeUtils.js +5 -6
  99. package/dist/esm/arch/evm/SpokeUtils.js.map +1 -1
  100. package/dist/esm/arch/svm/index.d.ts +1 -5
  101. package/dist/esm/arch/svm/index.js +1 -5
  102. package/dist/esm/arch/svm/index.js.map +1 -1
  103. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  104. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js +7 -7
  105. package/dist/esm/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.js.map +1 -1
  106. package/dist/esm/clients/BaseAbstractClient.d.ts +5 -6
  107. package/dist/esm/clients/BaseAbstractClient.js +19 -30
  108. package/dist/esm/clients/BaseAbstractClient.js.map +1 -1
  109. package/dist/esm/clients/BundleDataClient/BundleDataClient.js +14 -17
  110. package/dist/esm/clients/BundleDataClient/BundleDataClient.js.map +1 -1
  111. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js +1 -1
  112. package/dist/esm/clients/BundleDataClient/utils/PoolRebalanceUtils.js.map +1 -1
  113. package/dist/esm/clients/BundleDataClient/utils/SuperstructUtils.d.ts +90 -90
  114. package/dist/esm/clients/HubPoolClient.d.ts +1 -1
  115. package/dist/esm/clients/HubPoolClient.js +16 -16
  116. package/dist/esm/clients/HubPoolClient.js.map +1 -1
  117. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  118. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js +20 -23
  119. package/dist/esm/clients/SpokePoolClient/EVMSpokePoolClient.js.map +1 -1
  120. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.d.ts +7 -7
  121. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js +55 -51
  122. package/dist/esm/clients/SpokePoolClient/SpokePoolClient.js.map +1 -1
  123. package/dist/esm/clients/SpokePoolClient/index.d.ts +0 -8
  124. package/dist/esm/clients/SpokePoolClient/index.js +0 -10
  125. package/dist/esm/clients/SpokePoolClient/index.js.map +1 -1
  126. package/dist/esm/clients/index.d.ts +1 -1
  127. package/dist/esm/clients/index.js +1 -1
  128. package/dist/esm/clients/index.js.map +1 -1
  129. package/dist/esm/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  130. package/dist/esm/clients/mocks/MockConfigStoreClient.js +2 -2
  131. package/dist/esm/clients/mocks/MockConfigStoreClient.js.map +1 -1
  132. package/dist/esm/clients/mocks/MockHubPoolClient.js +2 -2
  133. package/dist/esm/clients/mocks/MockHubPoolClient.js.map +1 -1
  134. package/dist/esm/clients/mocks/MockSpokePoolClient.js +5 -8
  135. package/dist/esm/clients/mocks/MockSpokePoolClient.js.map +1 -1
  136. package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  137. package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  138. package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  139. package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
  140. package/dist/esm/gasPriceOracle/adapters/linea-viem.js +2 -3
  141. package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  142. package/dist/esm/gasPriceOracle/adapters/polygon.d.ts +4 -4
  143. package/dist/esm/gasPriceOracle/adapters/polygon.js +1 -1
  144. package/dist/esm/gasPriceOracle/index.d.ts +1 -1
  145. package/dist/esm/gasPriceOracle/oracle.d.ts +3 -4
  146. package/dist/esm/gasPriceOracle/oracle.js +9 -18
  147. package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
  148. package/dist/esm/gasPriceOracle/types.d.ts +1 -6
  149. package/dist/esm/index.d.ts +1 -0
  150. package/dist/esm/index.js +2 -0
  151. package/dist/esm/index.js.map +1 -1
  152. package/dist/esm/interfaces/SpokePool.d.ts +0 -7
  153. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  154. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +3 -4
  155. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  156. package/dist/esm/relayFeeCalculator/chain-queries/factory.d.ts +11 -4
  157. package/dist/esm/relayFeeCalculator/chain-queries/factory.js +2 -8
  158. package/dist/esm/relayFeeCalculator/chain-queries/factory.js.map +1 -1
  159. package/dist/esm/relayFeeCalculator/chain-queries/index.d.ts +0 -1
  160. package/dist/esm/relayFeeCalculator/chain-queries/index.js +0 -1
  161. package/dist/esm/relayFeeCalculator/chain-queries/index.js.map +1 -1
  162. package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +9 -0
  163. package/dist/esm/svm/eventsClient.d.ts +51 -0
  164. package/dist/esm/{arch/svm → svm}/eventsClient.js +27 -69
  165. package/dist/esm/svm/eventsClient.js.map +1 -0
  166. package/dist/esm/svm/index.d.ts +3 -0
  167. package/dist/esm/svm/index.js +5 -0
  168. package/dist/esm/svm/index.js.map +1 -0
  169. package/dist/{cjs/arch → esm}/svm/types.d.ts +4 -9
  170. package/dist/esm/svm/types.js.map +1 -0
  171. package/dist/esm/svm/utils/events.d.ts +17 -0
  172. package/dist/esm/svm/utils/events.js +55 -0
  173. package/dist/esm/svm/utils/events.js.map +1 -0
  174. package/dist/esm/svm/utils/helpers.d.ts +5 -0
  175. package/dist/esm/svm/utils/helpers.js +18 -0
  176. package/dist/esm/svm/utils/helpers.js.map +1 -0
  177. package/dist/esm/svm/utils/index.d.ts +1 -0
  178. package/dist/esm/svm/utils/index.js +2 -0
  179. package/dist/esm/svm/utils/index.js.map +1 -0
  180. package/dist/esm/utils/AddressUtils.d.ts +3 -9
  181. package/dist/esm/utils/AddressUtils.js +6 -41
  182. package/dist/esm/utils/AddressUtils.js.map +1 -1
  183. package/dist/esm/utils/ArrayUtils.d.ts +0 -6
  184. package/dist/esm/utils/ArrayUtils.js +0 -9
  185. package/dist/esm/utils/ArrayUtils.js.map +1 -1
  186. package/dist/esm/utils/EventUtils.d.ts +4 -4
  187. package/dist/esm/utils/EventUtils.js +4 -7
  188. package/dist/esm/utils/EventUtils.js.map +1 -1
  189. package/dist/esm/utils/JSONUtils.js +0 -3
  190. package/dist/esm/utils/JSONUtils.js.map +1 -1
  191. package/dist/esm/utils/SpokeUtils.js +0 -5
  192. package/dist/esm/utils/SpokeUtils.js.map +1 -1
  193. package/dist/esm/utils/TokenUtils.d.ts +18 -0
  194. package/dist/types/arch/evm/SpokeUtils.d.ts +1 -1
  195. package/dist/types/arch/evm/SpokeUtils.d.ts.map +1 -1
  196. package/dist/types/arch/svm/index.d.ts +1 -5
  197. package/dist/types/arch/svm/index.d.ts.map +1 -1
  198. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts +1 -1
  199. package/dist/types/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.d.ts.map +1 -1
  200. package/dist/types/clients/BaseAbstractClient.d.ts +5 -6
  201. package/dist/types/clients/BaseAbstractClient.d.ts.map +1 -1
  202. package/dist/types/clients/BundleDataClient/BundleDataClient.d.ts.map +1 -1
  203. package/dist/types/clients/BundleDataClient/utils/SuperstructUtils.d.ts +90 -90
  204. package/dist/types/clients/HubPoolClient.d.ts +1 -1
  205. package/dist/types/clients/HubPoolClient.d.ts.map +1 -1
  206. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts +3 -3
  207. package/dist/types/clients/SpokePoolClient/EVMSpokePoolClient.d.ts.map +1 -1
  208. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts +7 -7
  209. package/dist/types/clients/SpokePoolClient/SpokePoolClient.d.ts.map +1 -1
  210. package/dist/types/clients/SpokePoolClient/index.d.ts +0 -8
  211. package/dist/types/clients/SpokePoolClient/index.d.ts.map +1 -1
  212. package/dist/types/clients/index.d.ts +1 -1
  213. package/dist/types/clients/index.d.ts.map +1 -1
  214. package/dist/types/clients/mocks/MockConfigStoreClient.d.ts +1 -1
  215. package/dist/types/clients/mocks/MockConfigStoreClient.d.ts.map +1 -1
  216. package/dist/types/clients/mocks/MockSpokePoolClient.d.ts.map +1 -1
  217. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +2 -2
  218. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -1
  219. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +4 -4
  220. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -1
  221. package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts.map +1 -1
  222. package/dist/types/gasPriceOracle/adapters/polygon.d.ts +4 -4
  223. package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -1
  224. package/dist/types/gasPriceOracle/index.d.ts +1 -1
  225. package/dist/types/gasPriceOracle/index.d.ts.map +1 -1
  226. package/dist/types/gasPriceOracle/oracle.d.ts +3 -4
  227. package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
  228. package/dist/types/gasPriceOracle/types.d.ts +1 -6
  229. package/dist/types/gasPriceOracle/types.d.ts.map +1 -1
  230. package/dist/types/index.d.ts +1 -0
  231. package/dist/types/index.d.ts.map +1 -1
  232. package/dist/types/interfaces/SpokePool.d.ts +0 -7
  233. package/dist/types/interfaces/SpokePool.d.ts.map +1 -1
  234. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +1 -1
  235. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
  236. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts +11 -4
  237. package/dist/types/relayFeeCalculator/chain-queries/factory.d.ts.map +1 -1
  238. package/dist/types/relayFeeCalculator/chain-queries/index.d.ts +0 -1
  239. package/dist/types/relayFeeCalculator/chain-queries/index.d.ts.map +1 -1
  240. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +9 -0
  241. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
  242. package/dist/types/svm/eventsClient.d.ts +52 -0
  243. package/dist/types/svm/eventsClient.d.ts.map +1 -0
  244. package/dist/types/svm/index.d.ts +4 -0
  245. package/dist/types/svm/index.d.ts.map +1 -0
  246. package/dist/types/{arch/svm → svm}/types.d.ts +4 -9
  247. package/dist/types/svm/types.d.ts.map +1 -0
  248. package/dist/types/svm/utils/events.d.ts +18 -0
  249. package/dist/types/svm/utils/events.d.ts.map +1 -0
  250. package/dist/types/svm/utils/helpers.d.ts +6 -0
  251. package/dist/types/svm/utils/helpers.d.ts.map +1 -0
  252. package/dist/types/svm/utils/index.d.ts +2 -0
  253. package/dist/types/svm/utils/index.d.ts.map +1 -0
  254. package/dist/types/utils/AddressUtils.d.ts +3 -9
  255. package/dist/types/utils/AddressUtils.d.ts.map +1 -1
  256. package/dist/types/utils/ArrayUtils.d.ts +0 -6
  257. package/dist/types/utils/ArrayUtils.d.ts.map +1 -1
  258. package/dist/types/utils/EventUtils.d.ts +4 -4
  259. package/dist/types/utils/EventUtils.d.ts.map +1 -1
  260. package/dist/types/utils/JSONUtils.d.ts.map +1 -1
  261. package/dist/types/utils/SpokeUtils.d.ts.map +1 -1
  262. package/dist/types/utils/TokenUtils.d.ts +18 -0
  263. package/dist/types/utils/TokenUtils.d.ts.map +1 -1
  264. package/package.json +2 -5
  265. package/src/arch/evm/SpokeUtils.ts +5 -5
  266. package/src/arch/svm/index.ts +1 -5
  267. package/src/clients/AcrossConfigStoreClient/AcrossConfigStoreClient.ts +7 -7
  268. package/src/clients/BaseAbstractClient.ts +13 -20
  269. package/src/clients/BundleDataClient/BundleDataClient.ts +19 -28
  270. package/src/clients/BundleDataClient/utils/PoolRebalanceUtils.ts +1 -1
  271. package/src/clients/HubPoolClient.ts +16 -16
  272. package/src/clients/SpokePoolClient/EVMSpokePoolClient.ts +21 -23
  273. package/src/clients/SpokePoolClient/SpokePoolClient.ts +56 -44
  274. package/src/clients/SpokePoolClient/index.ts +0 -11
  275. package/src/clients/index.ts +1 -1
  276. package/src/clients/mocks/MockConfigStoreClient.ts +2 -2
  277. package/src/clients/mocks/MockHubPoolClient.ts +2 -2
  278. package/src/clients/mocks/MockSpokePoolClient.ts +4 -9
  279. package/src/gasPriceOracle/adapters/arbitrum.ts +2 -5
  280. package/src/gasPriceOracle/adapters/ethereum.ts +4 -7
  281. package/src/gasPriceOracle/adapters/linea-viem.ts +1 -3
  282. package/src/gasPriceOracle/adapters/polygon.ts +6 -6
  283. package/src/gasPriceOracle/index.ts +1 -1
  284. package/src/gasPriceOracle/oracle.ts +4 -20
  285. package/src/gasPriceOracle/types.ts +1 -7
  286. package/src/index.ts +1 -0
  287. package/src/interfaces/SpokePool.ts +0 -7
  288. package/src/relayFeeCalculator/chain-queries/baseQuery.ts +3 -5
  289. package/src/relayFeeCalculator/chain-queries/factory.ts +5 -21
  290. package/src/relayFeeCalculator/chain-queries/index.ts +0 -1
  291. package/src/{arch/svm → svm}/eventsClient.ts +45 -67
  292. package/src/svm/index.ts +3 -0
  293. package/src/{arch/svm → svm}/types.ts +4 -21
  294. package/src/svm/utils/events.ts +58 -0
  295. package/src/svm/utils/helpers.ts +9 -0
  296. package/src/svm/utils/index.ts +1 -0
  297. package/src/utils/AddressUtils.ts +6 -49
  298. package/src/utils/ArrayUtils.ts +0 -12
  299. package/src/utils/EventUtils.ts +11 -11
  300. package/src/utils/JSONUtils.ts +0 -2
  301. package/src/utils/SpokeUtils.ts +1 -5
  302. package/dist/cjs/arch/svm/SpokeUtils.d.ts +0 -20
  303. package/dist/cjs/arch/svm/SpokeUtils.js +0 -428
  304. package/dist/cjs/arch/svm/SpokeUtils.js.map +0 -1
  305. package/dist/cjs/arch/svm/constants.d.ts +0 -1
  306. package/dist/cjs/arch/svm/constants.js +0 -5
  307. package/dist/cjs/arch/svm/constants.js.map +0 -1
  308. package/dist/cjs/arch/svm/eventsClient.d.ts +0 -21
  309. package/dist/cjs/arch/svm/eventsClient.js.map +0 -1
  310. package/dist/cjs/arch/svm/types.js.map +0 -1
  311. package/dist/cjs/arch/svm/utils.d.ts +0 -17
  312. package/dist/cjs/arch/svm/utils.js +0 -204
  313. package/dist/cjs/arch/svm/utils.js.map +0 -1
  314. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +0 -23
  315. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js +0 -145
  316. package/dist/cjs/clients/SpokePoolClient/SVMSpokePoolClient.js.map +0 -1
  317. package/dist/cjs/gasPriceOracle/adapters/solana.d.ts +0 -4
  318. package/dist/cjs/gasPriceOracle/adapters/solana.js +0 -43
  319. package/dist/cjs/gasPriceOracle/adapters/solana.js.map +0 -1
  320. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.d.ts +0 -31
  321. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js +0 -136
  322. package/dist/cjs/relayFeeCalculator/chain-queries/svmQuery.js.map +0 -1
  323. package/dist/esm/arch/svm/SpokeUtils.d.ts +0 -94
  324. package/dist/esm/arch/svm/SpokeUtils.js +0 -513
  325. package/dist/esm/arch/svm/SpokeUtils.js.map +0 -1
  326. package/dist/esm/arch/svm/constants.d.ts +0 -1
  327. package/dist/esm/arch/svm/constants.js +0 -2
  328. package/dist/esm/arch/svm/constants.js.map +0 -1
  329. package/dist/esm/arch/svm/eventsClient.d.ts +0 -67
  330. package/dist/esm/arch/svm/eventsClient.js.map +0 -1
  331. package/dist/esm/arch/svm/types.js.map +0 -1
  332. package/dist/esm/arch/svm/utils.d.ts +0 -59
  333. package/dist/esm/arch/svm/utils.js +0 -248
  334. package/dist/esm/arch/svm/utils.js.map +0 -1
  335. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +0 -67
  336. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js +0 -196
  337. package/dist/esm/clients/SpokePoolClient/SVMSpokePoolClient.js.map +0 -1
  338. package/dist/esm/gasPriceOracle/adapters/solana.d.ts +0 -8
  339. package/dist/esm/gasPriceOracle/adapters/solana.js +0 -43
  340. package/dist/esm/gasPriceOracle/adapters/solana.js.map +0 -1
  341. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.d.ts +0 -66
  342. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js +0 -169
  343. package/dist/esm/relayFeeCalculator/chain-queries/svmQuery.js.map +0 -1
  344. package/dist/types/arch/svm/SpokeUtils.d.ts +0 -95
  345. package/dist/types/arch/svm/SpokeUtils.d.ts.map +0 -1
  346. package/dist/types/arch/svm/constants.d.ts +0 -2
  347. package/dist/types/arch/svm/constants.d.ts.map +0 -1
  348. package/dist/types/arch/svm/eventsClient.d.ts +0 -68
  349. package/dist/types/arch/svm/eventsClient.d.ts.map +0 -1
  350. package/dist/types/arch/svm/types.d.ts.map +0 -1
  351. package/dist/types/arch/svm/utils.d.ts +0 -60
  352. package/dist/types/arch/svm/utils.d.ts.map +0 -1
  353. package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts +0 -68
  354. package/dist/types/clients/SpokePoolClient/SVMSpokePoolClient.d.ts.map +0 -1
  355. package/dist/types/gasPriceOracle/adapters/solana.d.ts +0 -9
  356. package/dist/types/gasPriceOracle/adapters/solana.d.ts.map +0 -1
  357. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts +0 -67
  358. package/dist/types/relayFeeCalculator/chain-queries/svmQuery.d.ts.map +0 -1
  359. package/src/arch/svm/SpokeUtils.ts +0 -526
  360. package/src/arch/svm/constants.ts +0 -1
  361. package/src/arch/svm/utils.ts +0 -222
  362. package/src/clients/SpokePoolClient/SVMSpokePoolClient.ts +0 -244
  363. package/src/gasPriceOracle/adapters/solana.ts +0 -45
  364. package/src/relayFeeCalculator/chain-queries/svmQuery.ts +0 -193
  365. /package/dist/cjs/{arch/svm → svm}/types.js +0 -0
  366. /package/dist/esm/{arch/svm → svm}/types.js +0 -0
@@ -1,193 +0,0 @@
1
- import { pipe } from "@solana/functional";
2
- import { Coingecko } from "../../coingecko";
3
- import { SymbolMappingType } from "./";
4
- import { CHAIN_IDs, DEFAULT_SIMULATED_RELAYER_ADDRESS } from "../../constants";
5
- import { Deposit } from "../../interfaces";
6
- import { getGasPriceEstimate, SvmGasPriceEstimate } from "../../gasPriceOracle";
7
- import {
8
- BigNumberish,
9
- TransactionCostEstimate,
10
- BigNumber,
11
- SvmAddress,
12
- toBN,
13
- isDefined,
14
- toAddressType,
15
- } from "../../utils";
16
- import { Logger, QueryInterface } from "../relayFeeCalculator";
17
- import {
18
- fillRelayInstruction,
19
- createApproveInstruction,
20
- createTokenAccountsInstruction,
21
- SVMProvider,
22
- SolanaVoidSigner,
23
- getAssociatedTokenAddress,
24
- } from "../../arch/svm";
25
- import {
26
- createTransactionMessage,
27
- setTransactionMessageFeePayer,
28
- setTransactionMessageLifetimeUsingBlockhash,
29
- appendTransactionMessageInstructions,
30
- getComputeUnitEstimateForTransactionMessageFactory,
31
- fetchEncodedAccount,
32
- IInstruction,
33
- } from "@solana/kit";
34
- import { TOKEN_PROGRAM_ADDRESS, getMintSize, getInitializeMintInstruction, fetchMint } from "@solana-program/token";
35
- import { getCreateAccountInstruction } from "@solana-program/system";
36
-
37
- /**
38
- * A special QueryBase implementation for SVM used for querying gas costs, token prices, and decimals of various tokens
39
- * on Solana.
40
- */
41
- export class SvmQuery implements QueryInterface {
42
- protected computeUnitEstimator;
43
-
44
- /**
45
- * Instantiates a SvmQuery instance
46
- * @param provider A valid solana/kit rpc client.
47
- * @param symbolMapping A mapping to valid ERC20 tokens and their respective characteristics
48
- * @param spokePoolAddress The valid address of the Spoke Pool deployment
49
- * @param simulatedRelayerAddress The address that these queries will reference as the sender. Note: This address must be approved for USDC
50
- * @param logger A logging utility to report logs
51
- * @param coingeckoProApiKey An optional CoinGecko API key that links to a PRO account
52
- * @param fixedGasPrice Overrides the gas price with a fixed value. Note: primarily used for the Boba blockchain
53
- * @param coingeckoBaseCurrency The basis currency that CoinGecko will use to resolve pricing
54
- */
55
- constructor(
56
- readonly provider: SVMProvider,
57
- readonly symbolMapping: SymbolMappingType,
58
- readonly spokePoolAddress: SvmAddress,
59
- readonly simulatedRelayerAddress: SvmAddress,
60
- readonly logger: Logger,
61
- readonly coingeckoProApiKey?: string,
62
- readonly fixedGasPrice?: BigNumberish,
63
- readonly coingeckoBaseCurrency: string = "eth"
64
- ) {
65
- this.computeUnitEstimator = getComputeUnitEstimateForTransactionMessageFactory({
66
- rpc: provider,
67
- });
68
- }
69
-
70
- /**
71
- * Retrieves the current gas costs of performing a fillRelay contract at the referenced SpokePool.
72
- * @param deposit V3 deposit instance.
73
- * @param relayerAddress Relayer address to simulate with.
74
- * @param options
75
- * @param options.gasPrice Optional gas price to use for the simulation.
76
- * @param options.gasUnits Optional gas units to use for the simulation.
77
- * @param options.transport Optional transport object for custom gas price retrieval.
78
- * @returns The gas estimate for this function call (multiplied with the optional buffer).
79
- */
80
- async getGasCosts(
81
- deposit: Omit<Deposit, "messageHash">,
82
- _relayer = DEFAULT_SIMULATED_RELAYER_ADDRESS,
83
- options: Partial<{
84
- gasPrice: BigNumberish;
85
- gasUnits: BigNumberish;
86
- baseFeeMultiplier: BigNumber;
87
- priorityFeeMultiplier: BigNumber;
88
- }> = {}
89
- ): Promise<TransactionCostEstimate> {
90
- // If the user did not have a token account created on destination, then we need to include this as a gas cost.
91
- const mint = toAddressType(deposit.outputToken).forceSvmAddress();
92
- const owner = toAddressType(deposit.recipient).forceSvmAddress();
93
- const associatedToken = await getAssociatedTokenAddress(owner, mint);
94
- const simulatedSigner = SolanaVoidSigner(this.simulatedRelayerAddress.toBase58());
95
-
96
- // If the recipient has an associated token account on destination, then skip generating the instruction for creating a new token account.
97
- let recipientCreateTokenAccountInstructions: IInstruction[] | undefined = undefined;
98
- const [associatedTokenAccountExists, mintInfo] = await Promise.all([
99
- (await fetchEncodedAccount(this.provider, associatedToken)).exists,
100
- fetchMint(this.provider, mint.toV2Address()),
101
- ]);
102
- if (!associatedTokenAccountExists) {
103
- const space = BigInt(getMintSize());
104
- const rent = await this.provider.getMinimumBalanceForRentExemption(space).send();
105
- const createAccountIx = getCreateAccountInstruction({
106
- payer: simulatedSigner,
107
- newAccount: SolanaVoidSigner(mint.toBase58()),
108
- lamports: rent,
109
- space,
110
- programAddress: TOKEN_PROGRAM_ADDRESS,
111
- });
112
-
113
- const initializeMintIx = getInitializeMintInstruction({
114
- mint: mint.toV2Address(),
115
- decimals: mintInfo.data.decimals,
116
- mintAuthority: owner.toV2Address(),
117
- });
118
- recipientCreateTokenAccountInstructions = [createAccountIx, initializeMintIx];
119
- }
120
-
121
- const [createTokenAccountsIx, approveIx, fillIx] = await Promise.all([
122
- createTokenAccountsInstruction(mint, simulatedSigner),
123
- createApproveInstruction(
124
- mint,
125
- deposit.outputAmount,
126
- this.simulatedRelayerAddress,
127
- this.spokePoolAddress,
128
- mintInfo.data.decimals
129
- ),
130
- fillRelayInstruction(this.spokePoolAddress, deposit, simulatedSigner, associatedToken),
131
- ]);
132
-
133
- // Get the most recent confirmed blockhash.
134
- const recentBlockhash = await this.provider.getLatestBlockhash().send();
135
- const fillRelayTx = pipe(
136
- createTransactionMessage({ version: 0 }),
137
- (tx) => setTransactionMessageFeePayer(this.simulatedRelayerAddress.toV2Address(), tx),
138
- (tx) => setTransactionMessageLifetimeUsingBlockhash(recentBlockhash.value, tx),
139
- (tx) =>
140
- isDefined(recipientCreateTokenAccountInstructions)
141
- ? appendTransactionMessageInstructions(recipientCreateTokenAccountInstructions, tx)
142
- : tx,
143
- (tx) => appendTransactionMessageInstructions([createTokenAccountsIx, approveIx, fillIx], tx)
144
- );
145
-
146
- const [computeUnitsConsumed, _gasPriceEstimate] = await Promise.all([
147
- toBN(await this.computeUnitEstimator(fillRelayTx)),
148
- getGasPriceEstimate(this.provider, {
149
- unsignedTx: fillRelayTx,
150
- baseFeeMultiplier: options.baseFeeMultiplier,
151
- priorityFeeMultiplier: options.priorityFeeMultiplier,
152
- }),
153
- ]);
154
-
155
- // We can cast the gas price estimate to an SvmGasPriceEstimate here since the oracle should always
156
- // query the Solana adapter.
157
- const gasPriceEstimate = _gasPriceEstimate as SvmGasPriceEstimate;
158
- const gasPrice = gasPriceEstimate.baseFee.add(
159
- gasPriceEstimate.microLamportsPerComputeUnit.mul(computeUnitsConsumed).div(toBN(1_000_000)) // 1_000_000 microLamports/lamport.
160
- );
161
-
162
- return {
163
- nativeGasCost: computeUnitsConsumed,
164
- tokenGasCost: gasPrice,
165
- gasPrice,
166
- };
167
- }
168
-
169
- /**
170
- * Retrieves the current price of a token
171
- * @param tokenSymbol A valid [CoinGecko-ID](https://api.coingecko.com/api/v3/coins/list)
172
- * @returns The resolved token price within the specified coingeckoBaseCurrency
173
- */
174
- async getTokenPrice(tokenSymbol: string): Promise<number> {
175
- if (!this.symbolMapping[tokenSymbol]) throw new Error(`${tokenSymbol} does not exist in mapping`);
176
- const coingeckoInstance = Coingecko.get(this.logger, this.coingeckoProApiKey);
177
- const [, price] = await coingeckoInstance.getCurrentPriceByContract(
178
- this.symbolMapping[tokenSymbol].addresses[CHAIN_IDs.MAINNET],
179
- this.coingeckoBaseCurrency
180
- );
181
- return price;
182
- }
183
-
184
- /**
185
- * Resolves the number of decimal places a token can have
186
- * @param tokenSymbol A valid Across-Enabled Token ID
187
- * @returns The number of decimals of precision for the corresponding tokenSymbol
188
- */
189
- getTokenDecimals(tokenSymbol: string): number {
190
- if (!this.symbolMapping[tokenSymbol]) throw new Error(`${tokenSymbol} does not exist in mapping`);
191
- return this.symbolMapping[tokenSymbol].decimals;
192
- }
193
- }
File without changes
File without changes