@folks-finance/xchain-sdk 0.0.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 (346) hide show
  1. package/README.md +1 -0
  2. package/dist/chains/evm/common/constants/abi/ccip-data-adapter-abi.d.ts +796 -0
  3. package/dist/chains/evm/common/constants/abi/ccip-data-adapter-abi.js +614 -0
  4. package/dist/chains/evm/common/constants/abi/ccip-data-adapter-abi.js.map +1 -0
  5. package/dist/chains/evm/common/constants/abi/erc-20-abi.d.ts +235 -0
  6. package/dist/chains/evm/common/constants/abi/erc-20-abi.js +157 -0
  7. package/dist/chains/evm/common/constants/abi/erc-20-abi.js.map +1 -0
  8. package/dist/chains/evm/common/constants/abi/wormhole-data-adapter-abi.d.ts +807 -0
  9. package/dist/chains/evm/common/constants/abi/wormhole-data-adapter-abi.js +621 -0
  10. package/dist/chains/evm/common/constants/abi/wormhole-data-adapter-abi.js.map +1 -0
  11. package/dist/chains/evm/common/constants/chain.d.ts +2349 -0
  12. package/dist/chains/evm/common/constants/chain.js +45 -0
  13. package/dist/chains/evm/common/constants/chain.js.map +1 -0
  14. package/dist/chains/evm/common/constants/contract.d.ts +2 -0
  15. package/dist/chains/evm/common/constants/contract.js +6 -0
  16. package/dist/chains/evm/common/constants/contract.js.map +1 -0
  17. package/dist/chains/evm/common/constants/tokens.d.ts +6 -0
  18. package/dist/chains/evm/common/constants/tokens.js +33 -0
  19. package/dist/chains/evm/common/constants/tokens.js.map +1 -0
  20. package/dist/chains/evm/common/types/chain.d.ts +10 -0
  21. package/dist/chains/evm/common/types/chain.js +2 -0
  22. package/dist/chains/evm/common/types/chain.js.map +1 -0
  23. package/dist/chains/evm/common/types/contract.d.ts +8 -0
  24. package/dist/chains/evm/common/types/contract.js +2 -0
  25. package/dist/chains/evm/common/types/contract.js.map +1 -0
  26. package/dist/chains/evm/common/types/gmp.d.ts +14 -0
  27. package/dist/chains/evm/common/types/gmp.js +2 -0
  28. package/dist/chains/evm/common/types/gmp.js.map +1 -0
  29. package/dist/chains/evm/common/types/index.d.ts +3 -0
  30. package/dist/chains/evm/common/types/index.js +4 -0
  31. package/dist/chains/evm/common/types/index.js.map +1 -0
  32. package/dist/chains/evm/common/types/module.d.ts +66 -0
  33. package/dist/chains/evm/common/types/module.js +2 -0
  34. package/dist/chains/evm/common/types/module.js.map +1 -0
  35. package/dist/chains/evm/common/types/tokens.d.ts +28 -0
  36. package/dist/chains/evm/common/types/tokens.js +2 -0
  37. package/dist/chains/evm/common/types/tokens.js.map +1 -0
  38. package/dist/chains/evm/common/utils/chain.d.ts +6 -0
  39. package/dist/chains/evm/common/utils/chain.js +16 -0
  40. package/dist/chains/evm/common/utils/chain.js.map +1 -0
  41. package/dist/chains/evm/common/utils/contract.d.ts +6006 -0
  42. package/dist/chains/evm/common/utils/contract.js +54 -0
  43. package/dist/chains/evm/common/utils/contract.js.map +1 -0
  44. package/dist/chains/evm/common/utils/gmp.d.ts +4 -0
  45. package/dist/chains/evm/common/utils/gmp.js +13 -0
  46. package/dist/chains/evm/common/utils/gmp.js.map +1 -0
  47. package/dist/chains/evm/common/utils/message.d.ts +22 -0
  48. package/dist/chains/evm/common/utils/message.js +398 -0
  49. package/dist/chains/evm/common/utils/message.js.map +1 -0
  50. package/dist/chains/evm/common/utils/provider.d.ts +5 -0
  51. package/dist/chains/evm/common/utils/provider.js +24 -0
  52. package/dist/chains/evm/common/utils/provider.js.map +1 -0
  53. package/dist/chains/evm/common/utils/tokens.d.ts +10 -0
  54. package/dist/chains/evm/common/utils/tokens.js +37 -0
  55. package/dist/chains/evm/common/utils/tokens.js.map +1 -0
  56. package/dist/chains/evm/hub/constants/abi/account-manager-abi.d.ts +907 -0
  57. package/dist/chains/evm/hub/constants/abi/account-manager-abi.js +686 -0
  58. package/dist/chains/evm/hub/constants/abi/account-manager-abi.js.map +1 -0
  59. package/dist/chains/evm/hub/constants/abi/bridge-router-hub-abi.d.ts +969 -0
  60. package/dist/chains/evm/hub/constants/abi/bridge-router-hub-abi.js +764 -0
  61. package/dist/chains/evm/hub/constants/abi/bridge-router-hub-abi.js.map +1 -0
  62. package/dist/chains/evm/hub/constants/abi/hub-abi.d.ts +285 -0
  63. package/dist/chains/evm/hub/constants/abi/hub-abi.js +187 -0
  64. package/dist/chains/evm/hub/constants/abi/hub-abi.js.map +1 -0
  65. package/dist/chains/evm/hub/constants/abi/hub-pool-abi.d.ts +1742 -0
  66. package/dist/chains/evm/hub/constants/abi/hub-pool-abi.js +1346 -0
  67. package/dist/chains/evm/hub/constants/abi/hub-pool-abi.js.map +1 -0
  68. package/dist/chains/evm/hub/constants/abi/loan-manager-abi.d.ts +1559 -0
  69. package/dist/chains/evm/hub/constants/abi/loan-manager-abi.js +1040 -0
  70. package/dist/chains/evm/hub/constants/abi/loan-manager-abi.js.map +1 -0
  71. package/dist/chains/evm/hub/constants/abi/oracle-manager-abi.d.ts +495 -0
  72. package/dist/chains/evm/hub/constants/abi/oracle-manager-abi.js +389 -0
  73. package/dist/chains/evm/hub/constants/abi/oracle-manager-abi.js.map +1 -0
  74. package/dist/chains/evm/hub/constants/chain.d.ts +3 -0
  75. package/dist/chains/evm/hub/constants/chain.js +96 -0
  76. package/dist/chains/evm/hub/constants/chain.js.map +1 -0
  77. package/dist/chains/evm/hub/modules/folks-hub-account.d.ts +15 -0
  78. package/dist/chains/evm/hub/modules/folks-hub-account.js +98 -0
  79. package/dist/chains/evm/hub/modules/folks-hub-account.js.map +1 -0
  80. package/dist/chains/evm/hub/modules/folks-hub-gmp.d.ts +14 -0
  81. package/dist/chains/evm/hub/modules/folks-hub-gmp.js +57 -0
  82. package/dist/chains/evm/hub/modules/folks-hub-gmp.js.map +1 -0
  83. package/dist/chains/evm/hub/modules/folks-hub-loan.d.ts +25 -0
  84. package/dist/chains/evm/hub/modules/folks-hub-loan.js +397 -0
  85. package/dist/chains/evm/hub/modules/folks-hub-loan.js.map +1 -0
  86. package/dist/chains/evm/hub/modules/folks-hub-oracle.d.ts +5 -0
  87. package/dist/chains/evm/hub/modules/folks-hub-oracle.js +24 -0
  88. package/dist/chains/evm/hub/modules/folks-hub-oracle.js.map +1 -0
  89. package/dist/chains/evm/hub/modules/folks-hub-pool.d.ts +5 -0
  90. package/dist/chains/evm/hub/modules/folks-hub-pool.js +114 -0
  91. package/dist/chains/evm/hub/modules/folks-hub-pool.js.map +1 -0
  92. package/dist/chains/evm/hub/modules/index.d.ts +5 -0
  93. package/dist/chains/evm/hub/modules/index.js +6 -0
  94. package/dist/chains/evm/hub/modules/index.js.map +1 -0
  95. package/dist/chains/evm/hub/types/account.d.ts +23 -0
  96. package/dist/chains/evm/hub/types/account.js +2 -0
  97. package/dist/chains/evm/hub/types/account.js.map +1 -0
  98. package/dist/chains/evm/hub/types/chain.d.ts +15 -0
  99. package/dist/chains/evm/hub/types/chain.js +2 -0
  100. package/dist/chains/evm/hub/types/chain.js.map +1 -0
  101. package/dist/chains/evm/hub/types/loan.d.ts +126 -0
  102. package/dist/chains/evm/hub/types/loan.js +9 -0
  103. package/dist/chains/evm/hub/types/loan.js.map +1 -0
  104. package/dist/chains/evm/hub/types/oracle.d.ts +4 -0
  105. package/dist/chains/evm/hub/types/oracle.js +2 -0
  106. package/dist/chains/evm/hub/types/oracle.js.map +1 -0
  107. package/dist/chains/evm/hub/types/pool.d.ts +60 -0
  108. package/dist/chains/evm/hub/types/pool.js +2 -0
  109. package/dist/chains/evm/hub/types/pool.js.map +1 -0
  110. package/dist/chains/evm/hub/types/token.d.ts +9 -0
  111. package/dist/chains/evm/hub/types/token.js +2 -0
  112. package/dist/chains/evm/hub/types/token.js.map +1 -0
  113. package/dist/chains/evm/hub/utils/chain.d.ts +13 -0
  114. package/dist/chains/evm/hub/utils/chain.js +29 -0
  115. package/dist/chains/evm/hub/utils/chain.js.map +1 -0
  116. package/dist/chains/evm/hub/utils/contract.d.ts +17 -0
  117. package/dist/chains/evm/hub/utils/contract.js +52 -0
  118. package/dist/chains/evm/hub/utils/contract.js.map +1 -0
  119. package/dist/chains/evm/hub/utils/events.d.ts +24 -0
  120. package/dist/chains/evm/hub/utils/events.js +97 -0
  121. package/dist/chains/evm/hub/utils/events.js.map +1 -0
  122. package/dist/chains/evm/hub/utils/loan.d.ts +4 -0
  123. package/dist/chains/evm/hub/utils/loan.js +36 -0
  124. package/dist/chains/evm/hub/utils/loan.js.map +1 -0
  125. package/dist/chains/evm/spoke/constants/abi/bridge-router-spoke-abi.d.ts +951 -0
  126. package/dist/chains/evm/spoke/constants/abi/bridge-router-spoke-abi.js +754 -0
  127. package/dist/chains/evm/spoke/constants/abi/bridge-router-spoke-abi.js.map +1 -0
  128. package/dist/chains/evm/spoke/constants/abi/spoke-common-abi.d.ts +1101 -0
  129. package/dist/chains/evm/spoke/constants/abi/spoke-common-abi.js +710 -0
  130. package/dist/chains/evm/spoke/constants/abi/spoke-common-abi.js.map +1 -0
  131. package/dist/chains/evm/spoke/constants/abi/spoke-token-abi.d.ts +882 -0
  132. package/dist/chains/evm/spoke/constants/abi/spoke-token-abi.js +643 -0
  133. package/dist/chains/evm/spoke/constants/abi/spoke-token-abi.js.map +1 -0
  134. package/dist/chains/evm/spoke/modules/folks-evm-account.d.ts +18 -0
  135. package/dist/chains/evm/spoke/modules/folks-evm-account.js +119 -0
  136. package/dist/chains/evm/spoke/modules/folks-evm-account.js.map +1 -0
  137. package/dist/chains/evm/spoke/modules/folks-evm-gmp.d.ts +14 -0
  138. package/dist/chains/evm/spoke/modules/folks-evm-gmp.js +57 -0
  139. package/dist/chains/evm/spoke/modules/folks-evm-gmp.js.map +1 -0
  140. package/dist/chains/evm/spoke/modules/folks-evm-loan.d.ts +39 -0
  141. package/dist/chains/evm/spoke/modules/folks-evm-loan.js +396 -0
  142. package/dist/chains/evm/spoke/modules/folks-evm-loan.js.map +1 -0
  143. package/dist/chains/evm/spoke/modules/index.d.ts +3 -0
  144. package/dist/chains/evm/spoke/modules/index.js +4 -0
  145. package/dist/chains/evm/spoke/modules/index.js.map +1 -0
  146. package/dist/chains/evm/spoke/types/pool.d.ts +7 -0
  147. package/dist/chains/evm/spoke/types/pool.js +2 -0
  148. package/dist/chains/evm/spoke/types/pool.js.map +1 -0
  149. package/dist/chains/evm/spoke/utils/contract.d.ts +12 -0
  150. package/dist/chains/evm/spoke/utils/contract.js +28 -0
  151. package/dist/chains/evm/spoke/utils/contract.js.map +1 -0
  152. package/dist/common/constants/adapter.d.ts +4 -0
  153. package/dist/common/constants/adapter.js +5 -0
  154. package/dist/common/constants/adapter.js.map +1 -0
  155. package/dist/common/constants/bytes.d.ts +5 -0
  156. package/dist/common/constants/bytes.js +6 -0
  157. package/dist/common/constants/bytes.js.map +1 -0
  158. package/dist/common/constants/chain.d.ts +15 -0
  159. package/dist/common/constants/chain.js +152 -0
  160. package/dist/common/constants/chain.js.map +1 -0
  161. package/dist/common/constants/gmp.d.ts +4 -0
  162. package/dist/common/constants/gmp.js +32 -0
  163. package/dist/common/constants/gmp.js.map +1 -0
  164. package/dist/common/constants/lending.d.ts +1 -0
  165. package/dist/common/constants/lending.js +3 -0
  166. package/dist/common/constants/lending.js.map +1 -0
  167. package/dist/common/constants/message.d.ts +4 -0
  168. package/dist/common/constants/message.js +5 -0
  169. package/dist/common/constants/message.js.map +1 -0
  170. package/dist/common/constants/pool.d.ts +8 -0
  171. package/dist/common/constants/pool.js +10 -0
  172. package/dist/common/constants/pool.js.map +1 -0
  173. package/dist/common/constants/token.d.ts +2 -0
  174. package/dist/common/constants/token.js +3 -0
  175. package/dist/common/constants/token.js.map +1 -0
  176. package/dist/common/types/adapter.d.ts +30 -0
  177. package/dist/common/types/adapter.js +7 -0
  178. package/dist/common/types/adapter.js.map +1 -0
  179. package/dist/common/types/address.d.ts +9 -0
  180. package/dist/common/types/address.js +2 -0
  181. package/dist/common/types/address.js.map +1 -0
  182. package/dist/common/types/brand.d.ts +6 -0
  183. package/dist/common/types/brand.js +2 -0
  184. package/dist/common/types/brand.js.map +1 -0
  185. package/dist/common/types/chain.d.ts +29 -0
  186. package/dist/common/types/chain.js +10 -0
  187. package/dist/common/types/chain.js.map +1 -0
  188. package/dist/common/types/core.d.ts +28 -0
  189. package/dist/common/types/core.js +2 -0
  190. package/dist/common/types/core.js.map +1 -0
  191. package/dist/common/types/gmp.d.ts +17 -0
  192. package/dist/common/types/gmp.js +6 -0
  193. package/dist/common/types/gmp.js.map +1 -0
  194. package/dist/common/types/lending.d.ts +4 -0
  195. package/dist/common/types/lending.js +2 -0
  196. package/dist/common/types/lending.js.map +1 -0
  197. package/dist/common/types/message.d.ts +239 -0
  198. package/dist/common/types/message.js +33 -0
  199. package/dist/common/types/message.js.map +1 -0
  200. package/dist/common/types/module.d.ts +21 -0
  201. package/dist/common/types/module.js +6 -0
  202. package/dist/common/types/module.js.map +1 -0
  203. package/dist/common/types/token.d.ts +42 -0
  204. package/dist/common/types/token.js +15 -0
  205. package/dist/common/types/token.js.map +1 -0
  206. package/dist/common/utils/adapter.d.ts +11 -0
  207. package/dist/common/utils/adapter.js +63 -0
  208. package/dist/common/utils/adapter.js.map +1 -0
  209. package/dist/common/utils/address.d.ts +8 -0
  210. package/dist/common/utils/address.js +35 -0
  211. package/dist/common/utils/address.js.map +1 -0
  212. package/dist/common/utils/bytes.d.ts +9 -0
  213. package/dist/common/utils/bytes.js +34 -0
  214. package/dist/common/utils/bytes.js.map +1 -0
  215. package/dist/common/utils/chain.d.ts +19 -0
  216. package/dist/common/utils/chain.js +74 -0
  217. package/dist/common/utils/chain.js.map +1 -0
  218. package/dist/common/utils/formulae.d.ts +15 -0
  219. package/dist/common/utils/formulae.js +77 -0
  220. package/dist/common/utils/formulae.js.map +1 -0
  221. package/dist/common/utils/gmp.d.ts +4 -0
  222. package/dist/common/utils/gmp.js +14 -0
  223. package/dist/common/utils/gmp.js.map +1 -0
  224. package/dist/common/utils/math-lib.d.ts +9 -0
  225. package/dist/common/utils/math-lib.js +38 -0
  226. package/dist/common/utils/math-lib.js.map +1 -0
  227. package/dist/common/utils/messages.d.ts +7 -0
  228. package/dist/common/utils/messages.js +93 -0
  229. package/dist/common/utils/messages.js.map +1 -0
  230. package/dist/common/utils/token.d.ts +2 -0
  231. package/dist/common/utils/token.js +5 -0
  232. package/dist/common/utils/token.js.map +1 -0
  233. package/dist/index.d.ts +30 -0
  234. package/dist/index.js +38 -0
  235. package/dist/index.js.map +1 -0
  236. package/dist/utils/exhaustive-check.d.ts +1 -0
  237. package/dist/utils/exhaustive-check.js +4 -0
  238. package/dist/utils/exhaustive-check.js.map +1 -0
  239. package/dist/xchain/core/folks-core.d.ts +24 -0
  240. package/dist/xchain/core/folks-core.js +100 -0
  241. package/dist/xchain/core/folks-core.js.map +1 -0
  242. package/dist/xchain/modules/folks-account.d.ts +30 -0
  243. package/dist/xchain/modules/folks-account.js +205 -0
  244. package/dist/xchain/modules/folks-account.js.map +1 -0
  245. package/dist/xchain/modules/folks-gmp.d.ts +12 -0
  246. package/dist/xchain/modules/folks-gmp.js +53 -0
  247. package/dist/xchain/modules/folks-gmp.js.map +1 -0
  248. package/dist/xchain/modules/folks-loan.d.ts +68 -0
  249. package/dist/xchain/modules/folks-loan.js +598 -0
  250. package/dist/xchain/modules/folks-loan.js.map +1 -0
  251. package/dist/xchain/modules/folks-oracle.d.ts +4 -0
  252. package/dist/xchain/modules/folks-oracle.js +11 -0
  253. package/dist/xchain/modules/folks-oracle.js.map +1 -0
  254. package/dist/xchain/modules/folks-pool.d.ts +5 -0
  255. package/dist/xchain/modules/folks-pool.js +8 -0
  256. package/dist/xchain/modules/folks-pool.js.map +1 -0
  257. package/dist/xchain/modules/index.d.ts +5 -0
  258. package/dist/xchain/modules/index.js +6 -0
  259. package/dist/xchain/modules/index.js.map +1 -0
  260. package/package.json +79 -0
  261. package/src/chains/evm/common/constants/abi/ccip-data-adapter-abi.ts +613 -0
  262. package/src/chains/evm/common/constants/abi/erc-20-abi.ts +156 -0
  263. package/src/chains/evm/common/constants/abi/wormhole-data-adapter-abi.ts +620 -0
  264. package/src/chains/evm/common/constants/chain.ts +56 -0
  265. package/src/chains/evm/common/constants/contract.ts +7 -0
  266. package/src/chains/evm/common/constants/tokens.ts +39 -0
  267. package/src/chains/evm/common/types/chain.ts +23 -0
  268. package/src/chains/evm/common/types/contract.ts +7 -0
  269. package/src/chains/evm/common/types/gmp.ts +15 -0
  270. package/src/chains/evm/common/types/index.ts +3 -0
  271. package/src/chains/evm/common/types/module.ts +85 -0
  272. package/src/chains/evm/common/types/tokens.ts +31 -0
  273. package/src/chains/evm/common/utils/chain.ts +20 -0
  274. package/src/chains/evm/common/utils/contract.ts +84 -0
  275. package/src/chains/evm/common/utils/gmp.ts +24 -0
  276. package/src/chains/evm/common/utils/message.ts +496 -0
  277. package/src/chains/evm/common/utils/provider.ts +32 -0
  278. package/src/chains/evm/common/utils/tokens.ts +52 -0
  279. package/src/chains/evm/hub/constants/abi/account-manager-abi.ts +685 -0
  280. package/src/chains/evm/hub/constants/abi/bridge-router-hub-abi.ts +763 -0
  281. package/src/chains/evm/hub/constants/abi/hub-abi.ts +186 -0
  282. package/src/chains/evm/hub/constants/abi/hub-pool-abi.ts +1345 -0
  283. package/src/chains/evm/hub/constants/abi/loan-manager-abi.ts +1039 -0
  284. package/src/chains/evm/hub/constants/abi/oracle-manager-abi.ts +388 -0
  285. package/src/chains/evm/hub/constants/chain.ts +130 -0
  286. package/src/chains/evm/hub/modules/folks-hub-account.ts +137 -0
  287. package/src/chains/evm/hub/modules/folks-hub-gmp.ts +105 -0
  288. package/src/chains/evm/hub/modules/folks-hub-loan.ts +603 -0
  289. package/src/chains/evm/hub/modules/folks-hub-oracle.ts +38 -0
  290. package/src/chains/evm/hub/modules/folks-hub-pool.ts +171 -0
  291. package/src/chains/evm/hub/modules/index.ts +5 -0
  292. package/src/chains/evm/hub/types/account.ts +27 -0
  293. package/src/chains/evm/hub/types/chain.ts +16 -0
  294. package/src/chains/evm/hub/types/loan.ts +147 -0
  295. package/src/chains/evm/hub/types/oracle.ts +6 -0
  296. package/src/chains/evm/hub/types/pool.ts +66 -0
  297. package/src/chains/evm/hub/types/token.ts +10 -0
  298. package/src/chains/evm/hub/utils/chain.ts +41 -0
  299. package/src/chains/evm/hub/utils/contract.ts +98 -0
  300. package/src/chains/evm/hub/utils/events.ts +112 -0
  301. package/src/chains/evm/hub/utils/loan.ts +60 -0
  302. package/src/chains/evm/spoke/constants/abi/bridge-router-spoke-abi.ts +753 -0
  303. package/src/chains/evm/spoke/constants/abi/spoke-common-abi.ts +709 -0
  304. package/src/chains/evm/spoke/constants/abi/spoke-token-abi.ts +642 -0
  305. package/src/chains/evm/spoke/modules/folks-evm-account.ts +228 -0
  306. package/src/chains/evm/spoke/modules/folks-evm-gmp.ts +105 -0
  307. package/src/chains/evm/spoke/modules/folks-evm-loan.ts +721 -0
  308. package/src/chains/evm/spoke/modules/index.ts +3 -0
  309. package/src/chains/evm/spoke/types/pool.ts +7 -0
  310. package/src/chains/evm/spoke/utils/contract.ts +74 -0
  311. package/src/common/constants/adapter.ts +5 -0
  312. package/src/common/constants/bytes.ts +6 -0
  313. package/src/common/constants/chain.ts +227 -0
  314. package/src/common/constants/gmp.ts +38 -0
  315. package/src/common/constants/lending.ts +3 -0
  316. package/src/common/constants/message.ts +4 -0
  317. package/src/common/constants/pool.ts +11 -0
  318. package/src/common/constants/token.ts +3 -0
  319. package/src/common/types/adapter.ts +38 -0
  320. package/src/common/types/address.ts +11 -0
  321. package/src/common/types/brand.ts +3 -0
  322. package/src/common/types/chain.ts +35 -0
  323. package/src/common/types/core.ts +31 -0
  324. package/src/common/types/gmp.ts +22 -0
  325. package/src/common/types/lending.ts +5 -0
  326. package/src/common/types/message.ts +330 -0
  327. package/src/common/types/module.ts +42 -0
  328. package/src/common/types/token.ts +50 -0
  329. package/src/common/utils/adapter.ts +75 -0
  330. package/src/common/utils/address.ts +49 -0
  331. package/src/common/utils/bytes.ts +46 -0
  332. package/src/common/utils/chain.ts +103 -0
  333. package/src/common/utils/formulae.ts +124 -0
  334. package/src/common/utils/gmp.ts +16 -0
  335. package/src/common/utils/math-lib.ts +46 -0
  336. package/src/common/utils/messages.ts +192 -0
  337. package/src/common/utils/token.ts +7 -0
  338. package/src/index.ts +47 -0
  339. package/src/utils/exhaustive-check.ts +3 -0
  340. package/src/xchain/core/folks-core.ts +128 -0
  341. package/src/xchain/modules/folks-account.ts +385 -0
  342. package/src/xchain/modules/folks-gmp.ts +129 -0
  343. package/src/xchain/modules/folks-loan.ts +1175 -0
  344. package/src/xchain/modules/folks-oracle.ts +15 -0
  345. package/src/xchain/modules/folks-pool.ts +11 -0
  346. package/src/xchain/modules/index.ts +5 -0
@@ -0,0 +1,18 @@
1
+ import type { EvmAddress, GenericAddress } from "../../../../common/types/address.js";
2
+ import type { FolksChainId, SpokeChain } from "../../../../common/types/chain.js";
3
+ import type { AccountId } from "../../../../common/types/lending.js";
4
+ import type { MessageToSend } from "../../../../common/types/message.js";
5
+ import type { PrepareAcceptInviteAddressCall, PrepareCreateAccountCall, PrepareInviteAddressCall, PrepareUnregisterAddressCall } from "../../common/types/module.js";
6
+ import type { Client, EstimateGasParameters, WalletClient } from "viem";
7
+ export declare const prepare: {
8
+ createAccount(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, refAccountId: AccountId, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareCreateAccountCall>;
9
+ inviteAddress(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, folksChainIdToInvite: number, addressToInvite: GenericAddress, refAccountId: AccountId, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareInviteAddressCall>;
10
+ acceptInvite(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareAcceptInviteAddressCall>;
11
+ unregisterAddress(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, folksChainIdToUnregister: FolksChainId, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareUnregisterAddressCall>;
12
+ };
13
+ export declare const write: {
14
+ createAccount(provider: Client, signer: WalletClient, accountId: AccountId, refAccountId: AccountId, prepareCall: PrepareCreateAccountCall): Promise<`0x${string}`>;
15
+ inviteAddress(provider: Client, signer: WalletClient, accountId: AccountId, folksChainIdToInvite: FolksChainId, addressToInvite: GenericAddress, refAccountId: AccountId, prepareCall: PrepareInviteAddressCall): Promise<`0x${string}`>;
16
+ acceptInvite(provider: Client, signer: WalletClient, accountId: AccountId, prepareCall: PrepareAcceptInviteAddressCall): Promise<`0x${string}`>;
17
+ unregisterAddress(provider: Client, signer: WalletClient, accountId: AccountId, folksChainIdToUnregister: FolksChainId, prepareCall: PrepareUnregisterAddressCall): Promise<`0x${string}`>;
18
+ };
@@ -0,0 +1,119 @@
1
+ import { getEvmSignerAccount } from "../../common/utils/chain.js";
2
+ import { getBridgeRouterSpokeContract, getSpokeCommonContract } from "../utils/contract.js";
3
+ export const prepare = {
4
+ async createAccount(provider, sender, messageToSend, accountId, refAccountId, spokeChain, transactionOptions = { account: sender }) {
5
+ const spokeCommonAddress = spokeChain.spokeCommonAddress;
6
+ const spokeCommon = getSpokeCommonContract(provider, spokeCommonAddress);
7
+ const bridgeRouter = getBridgeRouterSpokeContract(provider, spokeChain.bridgeRouterAddress);
8
+ // get adapter fees
9
+ const msgValue = await bridgeRouter.read.getSendFee([messageToSend]);
10
+ // get gas limits
11
+ const gasLimit = await spokeCommon.estimateGas.createAccount([messageToSend.params, accountId, refAccountId], {
12
+ value: msgValue,
13
+ ...transactionOptions,
14
+ });
15
+ return {
16
+ msgValue,
17
+ gasLimit,
18
+ messageParams: messageToSend.params,
19
+ spokeCommonAddress,
20
+ };
21
+ },
22
+ async inviteAddress(provider, sender, messageToSend, accountId, folksChainIdToInvite, addressToInvite, refAccountId, spokeChain, transactionOptions = { account: sender }) {
23
+ const spokeCommonAddress = spokeChain.spokeCommonAddress;
24
+ const spokeCommon = getSpokeCommonContract(provider, spokeCommonAddress);
25
+ const bridgeRouter = getBridgeRouterSpokeContract(provider, spokeChain.bridgeRouterAddress);
26
+ // get adapter fees
27
+ const msgValue = await bridgeRouter.read.getSendFee([messageToSend]);
28
+ // get gas limits
29
+ const gasLimit = await spokeCommon.estimateGas.inviteAddress([messageToSend.params, accountId, folksChainIdToInvite, addressToInvite, refAccountId], {
30
+ value: msgValue,
31
+ ...transactionOptions,
32
+ });
33
+ return {
34
+ msgValue,
35
+ gasLimit,
36
+ messageParams: messageToSend.params,
37
+ spokeCommonAddress,
38
+ };
39
+ },
40
+ async acceptInvite(provider, sender, messageToSend, accountId, spokeChain, transactionOptions = { account: sender }) {
41
+ const spokeCommonAddress = spokeChain.spokeCommonAddress;
42
+ const spokeCommon = getSpokeCommonContract(provider, spokeCommonAddress);
43
+ const bridgeRouter = getBridgeRouterSpokeContract(provider, spokeChain.bridgeRouterAddress);
44
+ // get adapter fees
45
+ const msgValue = await bridgeRouter.read.getSendFee([messageToSend]);
46
+ // get gas limits
47
+ const gasLimit = await spokeCommon.estimateGas.acceptInviteAddress([messageToSend.params, accountId], {
48
+ value: msgValue,
49
+ ...transactionOptions,
50
+ });
51
+ return {
52
+ msgValue,
53
+ gasLimit,
54
+ messageParams: messageToSend.params,
55
+ spokeCommonAddress,
56
+ };
57
+ },
58
+ async unregisterAddress(provider, sender, messageToSend, accountId, folksChainIdToUnregister, spokeChain, transactionOptions = { account: sender }) {
59
+ const spokeCommonAddress = spokeChain.spokeCommonAddress;
60
+ const spokeCommon = getSpokeCommonContract(provider, spokeCommonAddress);
61
+ const bridgeRouter = getBridgeRouterSpokeContract(provider, spokeChain.bridgeRouterAddress);
62
+ // get adapter fees
63
+ const msgValue = await bridgeRouter.read.getSendFee([messageToSend]);
64
+ // get gas limits
65
+ const gasLimit = await spokeCommon.estimateGas.unregisterAddress([messageToSend.params, accountId, folksChainIdToUnregister], {
66
+ value: msgValue,
67
+ ...transactionOptions,
68
+ });
69
+ return {
70
+ msgValue,
71
+ gasLimit,
72
+ messageParams: messageToSend.params,
73
+ spokeCommonAddress,
74
+ };
75
+ },
76
+ };
77
+ export const write = {
78
+ async createAccount(provider, signer, accountId, refAccountId, prepareCall) {
79
+ const { msgValue, gasLimit, messageParams, spokeCommonAddress } = prepareCall;
80
+ const spokeCommon = getSpokeCommonContract(provider, spokeCommonAddress, signer);
81
+ return await spokeCommon.write.createAccount([messageParams, accountId, refAccountId], {
82
+ account: getEvmSignerAccount(signer),
83
+ chain: signer.chain,
84
+ gas: gasLimit,
85
+ value: msgValue,
86
+ });
87
+ },
88
+ async inviteAddress(provider, signer, accountId, folksChainIdToInvite, addressToInvite, refAccountId, prepareCall) {
89
+ const { msgValue, gasLimit, messageParams, spokeCommonAddress } = prepareCall;
90
+ const spokeCommon = getSpokeCommonContract(provider, spokeCommonAddress, signer);
91
+ return await spokeCommon.write.inviteAddress([messageParams, accountId, folksChainIdToInvite, addressToInvite, refAccountId], {
92
+ account: getEvmSignerAccount(signer),
93
+ chain: signer.chain,
94
+ gas: gasLimit,
95
+ value: msgValue,
96
+ });
97
+ },
98
+ async acceptInvite(provider, signer, accountId, prepareCall) {
99
+ const { msgValue, gasLimit, messageParams, spokeCommonAddress } = prepareCall;
100
+ const spokeCommon = getSpokeCommonContract(provider, spokeCommonAddress, signer);
101
+ return await spokeCommon.write.acceptInviteAddress([messageParams, accountId], {
102
+ account: getEvmSignerAccount(signer),
103
+ chain: signer.chain,
104
+ gas: gasLimit,
105
+ value: msgValue,
106
+ });
107
+ },
108
+ async unregisterAddress(provider, signer, accountId, folksChainIdToUnregister, prepareCall) {
109
+ const { msgValue, gasLimit, messageParams, spokeCommonAddress } = prepareCall;
110
+ const spokeCommon = getSpokeCommonContract(provider, spokeCommonAddress, signer);
111
+ return await spokeCommon.write.unregisterAddress([messageParams, accountId, folksChainIdToUnregister], {
112
+ account: getEvmSignerAccount(signer),
113
+ chain: signer.chain,
114
+ gas: gasLimit,
115
+ value: msgValue,
116
+ });
117
+ },
118
+ };
119
+ //# sourceMappingURL=folks-evm-account.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"folks-evm-account.js","sourceRoot":"","sources":["../../../../../src/chains/evm/spoke/modules/folks-evm-account.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { EvmAddress } from "../../../../common/types/address.js";
2
+ import type { SpokeChain } from "../../../../common/types/chain.js";
3
+ import type { MessageId, ReverseMessageExtraAgrs } from "../../../../common/types/gmp.js";
4
+ import type { AdapterType } from "../../../../common/types/message.js";
5
+ import type { PrepareRetryMessageCall, PrepareReverseMessageCall } from "../../common/types/module.js";
6
+ import type { Client, EstimateGasParameters, WalletClient } from "viem";
7
+ export declare const prepare: {
8
+ retryMessage(provider: Client, sender: EvmAddress, adapterId: AdapterType, messageId: MessageId, value: bigint, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareRetryMessageCall>;
9
+ reverseMessage(provider: Client, sender: EvmAddress, adapterId: AdapterType, messageId: MessageId, extraArgs: ReverseMessageExtraAgrs, value: bigint, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareRetryMessageCall>;
10
+ };
11
+ export declare const write: {
12
+ retryMessage(provider: Client, signer: WalletClient, adapterId: AdapterType, messageId: MessageId, prepareCall: PrepareRetryMessageCall): Promise<`0x${string}`>;
13
+ reverseMessage(provider: Client, signer: WalletClient, adapterId: AdapterType, messageId: MessageId, extraArgs: ReverseMessageExtraAgrs, prepareCall: PrepareReverseMessageCall): Promise<`0x${string}`>;
14
+ };
@@ -0,0 +1,57 @@
1
+ import { getEvmSignerAccount } from "../../common/utils/chain.js";
2
+ import { getBridgeRouterSpokeContract } from "../utils/contract.js";
3
+ export const prepare = {
4
+ async retryMessage(provider, sender, adapterId, messageId, value, spokeChain, transactionOptions = {
5
+ account: sender,
6
+ }) {
7
+ const bridgeRouter = getBridgeRouterSpokeContract(provider, spokeChain.bridgeRouterAddress);
8
+ const gasLimit = await bridgeRouter.estimateGas.retryMessage([adapterId, messageId], {
9
+ ...transactionOptions,
10
+ value,
11
+ });
12
+ return {
13
+ gasLimit,
14
+ msgValue: value,
15
+ isHub: false,
16
+ bridgeRouterAddress: spokeChain.bridgeRouterAddress,
17
+ };
18
+ },
19
+ async reverseMessage(provider, sender, adapterId, messageId, extraArgs, value, spokeChain, transactionOptions = {
20
+ account: sender,
21
+ }) {
22
+ const bridgeRouter = getBridgeRouterSpokeContract(provider, spokeChain.bridgeRouterAddress);
23
+ const gasLimit = await bridgeRouter.estimateGas.reverseMessage([adapterId, messageId, extraArgs], {
24
+ ...transactionOptions,
25
+ value,
26
+ });
27
+ return {
28
+ gasLimit,
29
+ msgValue: value,
30
+ isHub: false,
31
+ bridgeRouterAddress: spokeChain.bridgeRouterAddress,
32
+ };
33
+ },
34
+ };
35
+ export const write = {
36
+ async retryMessage(provider, signer, adapterId, messageId, prepareCall) {
37
+ const { gasLimit, msgValue, bridgeRouterAddress } = prepareCall;
38
+ const bridgeRouter = getBridgeRouterSpokeContract(provider, bridgeRouterAddress, signer);
39
+ return await bridgeRouter.write.retryMessage([adapterId, messageId], {
40
+ account: getEvmSignerAccount(signer),
41
+ chain: signer.chain,
42
+ gas: gasLimit,
43
+ msgValue,
44
+ });
45
+ },
46
+ async reverseMessage(provider, signer, adapterId, messageId, extraArgs, prepareCall) {
47
+ const { gasLimit, msgValue, bridgeRouterAddress } = prepareCall;
48
+ const bridgeRouter = getBridgeRouterSpokeContract(provider, bridgeRouterAddress, signer);
49
+ return await bridgeRouter.write.reverseMessage([adapterId, messageId, extraArgs], {
50
+ account: getEvmSignerAccount(signer),
51
+ chain: signer.chain,
52
+ gas: gasLimit,
53
+ msgValue,
54
+ });
55
+ },
56
+ };
57
+ //# sourceMappingURL=folks-evm-gmp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"folks-evm-gmp.js","sourceRoot":"","sources":["../../../../../src/chains/evm/spoke/modules/folks-evm-gmp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,4BAA4B,EAAE,MAAM,sBAAsB,CAAC;AASpE,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,KAAK,CAAC,YAAY,CAChB,QAAgB,EAChB,MAAkB,EAClB,SAAsB,EACtB,SAAoB,EACpB,KAAa,EACb,UAAsB,EACtB,qBAA4C;QAC1C,OAAO,EAAE,MAAM;KAChB;QAED,MAAM,YAAY,GAAG,4BAA4B,CAAC,QAAQ,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;QAE5F,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;YACnF,GAAG,kBAAkB;YACrB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO;YACL,QAAQ;YACR,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;YACZ,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;SACpD,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,QAAgB,EAChB,MAAkB,EAClB,SAAsB,EACtB,SAAoB,EACpB,SAAkC,EAClC,KAAa,EACb,UAAsB,EACtB,qBAA4C;QAC1C,OAAO,EAAE,MAAM;KAChB;QAED,MAAM,YAAY,GAAG,4BAA4B,CAAC,QAAQ,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;QAE5F,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE;YAChG,GAAG,kBAAkB;YACrB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO;YACL,QAAQ;YACR,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,KAAK;YACZ,mBAAmB,EAAE,UAAU,CAAC,mBAAmB;SACpD,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,KAAK,CAAC,YAAY,CAChB,QAAgB,EAChB,MAAoB,EACpB,SAAsB,EACtB,SAAoB,EACpB,WAAoC;QAEpC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,GAAG,WAAW,CAAC;QAEhE,MAAM,YAAY,GAAG,4BAA4B,CAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;QAEzF,OAAO,MAAM,YAAY,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE;YACnE,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC;YACpC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,EAAE,QAAQ;YACb,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,QAAgB,EAChB,MAAoB,EACpB,SAAsB,EACtB,SAAoB,EACpB,SAAkC,EAClC,WAAsC;QAEtC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,mBAAmB,EAAE,GAAG,WAAW,CAAC;QAEhE,MAAM,YAAY,GAAG,4BAA4B,CAAC,QAAQ,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAC;QAEzF,OAAO,MAAM,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE;YAChF,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC;YACpC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,GAAG,EAAE,QAAQ;YACb,QAAQ;SACT,CAAC,CAAC;IACL,CAAC;CACF,CAAC"}
@@ -0,0 +1,39 @@
1
+ import type { EvmAddress } from "../../../../common/types/address.js";
2
+ import type { FolksChainId, NetworkType, SpokeChain } from "../../../../common/types/chain.js";
3
+ import type { AccountId, LoanId, LoanName } from "../../../../common/types/lending.js";
4
+ import type { MessageToSend } from "../../../../common/types/message.js";
5
+ import type { LoanTypeId } from "../../../../common/types/module.js";
6
+ import type { FolksTokenId, SpokeTokenData } from "../../../../common/types/token.js";
7
+ import type { PrepareBorrowCall, PrepareCreateLoanAndDepositCall, PrepareCreateLoanCall, PrepareDeleteLoanCall, PrepareDepositCall, PrepareRepayCall, PrepareRepayWithCollateralCall, PrepareSwitchBorrowTypeCall, PrepareWithdrawCall } from "../../common/types/module.js";
8
+ import type { TokenRateLimit } from "../types/pool.js";
9
+ import type { Client, EstimateGasParameters, WalletClient } from "viem";
10
+ export declare const prepare: {
11
+ createLoan(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, loanId: LoanId, loanTypeId: LoanTypeId, loanName: LoanName, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareCreateLoanCall>;
12
+ deleteLoan(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, loanId: LoanId, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareDeleteLoanCall>;
13
+ createLoanAndDeposit(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, loanId: LoanId, loanTypeId: LoanTypeId, loanName: LoanName, amount: bigint, spokeChain: SpokeChain, spokeTokenData: SpokeTokenData, transactionOptions?: EstimateGasParameters): Promise<{
14
+ msgValue: bigint;
15
+ gasLimit: bigint;
16
+ messageParams: import("../../../../common/types/message.js").MessageParams;
17
+ spokeTokenData: SpokeTokenData;
18
+ }>;
19
+ deposit(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, loanId: LoanId, amount: bigint, spokeChain: SpokeChain, spokeTokenData: SpokeTokenData, transactionOptions?: EstimateGasParameters): Promise<PrepareDepositCall>;
20
+ withdraw(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, network: NetworkType, accountId: AccountId, loanId: LoanId, folksTokenId: FolksTokenId, amount: bigint, isFAmount: boolean, receiverFolksChainId: FolksChainId, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareWithdrawCall>;
21
+ borrow(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, network: NetworkType, accountId: AccountId, loanId: LoanId, folksTokenId: FolksTokenId, amount: bigint, maxStableRate: bigint, receiverFolksChainId: FolksChainId, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareBorrowCall>;
22
+ repay(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, accountId: AccountId, loanId: LoanId, amount: bigint, maxOverRepayment: bigint, spokeChain: SpokeChain, spokeTokenData: SpokeTokenData, transactionOptions?: EstimateGasParameters): Promise<PrepareRepayCall>;
23
+ repayWithCollateral(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, network: NetworkType, accountId: AccountId, loanId: LoanId, folksTokenId: FolksTokenId, amount: bigint, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareRepayWithCollateralCall>;
24
+ switchBorrowType(provider: Client, sender: EvmAddress, messageToSend: MessageToSend, network: NetworkType, accountId: AccountId, loanId: LoanId, folksTokenId: FolksTokenId, maxStableRate: bigint, spokeChain: SpokeChain, transactionOptions?: EstimateGasParameters): Promise<PrepareSwitchBorrowTypeCall>;
25
+ };
26
+ export declare const write: {
27
+ createLoan(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, loanTypeId: LoanTypeId, loanName: LoanName, prepareCall: PrepareCreateLoanCall): Promise<`0x${string}`>;
28
+ deleteLoan(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, prepareCall: PrepareDeleteLoanCall): Promise<`0x${string}`>;
29
+ createLoanAndDeposit(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, loanTypeId: LoanTypeId, loanName: LoanName, amount: bigint, includeApprove: boolean | undefined, prepareCall: PrepareCreateLoanAndDepositCall): Promise<`0x${string}`>;
30
+ deposit(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, amount: bigint, includeApprove: boolean | undefined, prepareCall: PrepareDepositCall): Promise<`0x${string}`>;
31
+ withdraw(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, poolId: number, amount: bigint, isFAmount: boolean, receiverChainId: FolksChainId, prepareCall: PrepareWithdrawCall): Promise<`0x${string}`>;
32
+ borrow(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, poolId: number, amount: bigint, maxStableRate: bigint, receiverChainId: FolksChainId, prepareCall: PrepareBorrowCall): Promise<`0x${string}`>;
33
+ repay(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, amount: bigint, maxOverRepayment: bigint, includeApprove: boolean | undefined, prepareCall: PrepareRepayCall): Promise<`0x${string}`>;
34
+ repayWithCollateral(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, poolId: number, amount: bigint, prepareCall: PrepareRepayWithCollateralCall): Promise<`0x${string}`>;
35
+ switchBorrowType(provider: Client, signer: WalletClient, accountId: AccountId, loanId: LoanId, poolId: number, maxStableRate: bigint, prepareCall: PrepareSwitchBorrowTypeCall): Promise<`0x${string}`>;
36
+ };
37
+ export declare const read: {
38
+ rateLimitInfo(provider: Client, token: SpokeTokenData): Promise<TokenRateLimit>;
39
+ };