@ember-finance/sdk 1.0.29 → 1.1.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 (441) hide show
  1. package/README.md +239 -29
  2. package/dist/src/abis/ERC20Token.json +659 -0
  3. package/dist/src/abis/EmberProtocolConfig.json +1078 -0
  4. package/dist/src/abis/EmberVault.json +2807 -0
  5. package/dist/src/common/types.d.ts +4 -0
  6. package/dist/src/common/types.js +1 -0
  7. package/dist/src/ember-vaults.d.ts +169 -0
  8. package/dist/src/ember-vaults.js +239 -0
  9. package/dist/src/{vaults → evm-vaults}/index.d.ts +0 -2
  10. package/dist/src/{vaults → evm-vaults}/index.js +0 -2
  11. package/dist/src/evm-vaults/interfaces/index.d.ts +168 -0
  12. package/dist/src/evm-vaults/on-chain-calls/admin.d.ts +108 -0
  13. package/dist/src/evm-vaults/on-chain-calls/admin.js +147 -0
  14. package/dist/src/evm-vaults/on-chain-calls/index.d.ts +7 -0
  15. package/dist/src/evm-vaults/on-chain-calls/index.js +23 -0
  16. package/dist/src/evm-vaults/on-chain-calls/onchain-calls.d.ts +79 -0
  17. package/dist/src/evm-vaults/on-chain-calls/onchain-calls.js +190 -0
  18. package/dist/src/evm-vaults/on-chain-calls/operator.d.ts +72 -0
  19. package/dist/src/evm-vaults/on-chain-calls/operator.js +99 -0
  20. package/dist/src/evm-vaults/on-chain-calls/tx-builder.d.ts +250 -0
  21. package/dist/src/evm-vaults/on-chain-calls/tx-builder.js +542 -0
  22. package/dist/src/evm-vaults/on-chain-calls/user.d.ts +122 -0
  23. package/dist/src/evm-vaults/on-chain-calls/user.js +179 -0
  24. package/dist/src/evm-vaults/on-chain-calls/vault-admin.d.ts +137 -0
  25. package/dist/src/evm-vaults/on-chain-calls/vault-admin.js +185 -0
  26. package/dist/src/evm-vaults/on-chain-calls/vault-reader.d.ts +431 -0
  27. package/dist/src/evm-vaults/on-chain-calls/vault-reader.js +542 -0
  28. package/dist/src/evm-vaults/utils/deployment-parser.d.ts +97 -0
  29. package/dist/src/evm-vaults/utils/deployment-parser.js +164 -0
  30. package/dist/src/evm-vaults/utils/index.d.ts +1 -0
  31. package/dist/src/evm-vaults/utils/index.js +17 -0
  32. package/dist/src/index.d.ts +3 -0
  33. package/dist/src/index.js +19 -0
  34. package/dist/src/sui-vaults/index.d.ts +4 -0
  35. package/dist/src/sui-vaults/index.js +20 -0
  36. package/dist/src/{vaults → sui-vaults}/interfaces/index.d.ts +1 -1
  37. package/dist/src/sui-vaults/interfaces/index.js +2 -0
  38. package/dist/src/{vaults → sui-vaults}/on-chain-calls/admin.d.ts +2 -2
  39. package/dist/src/{vaults → sui-vaults}/on-chain-calls/onchain-calls.d.ts +5 -5
  40. package/dist/src/{vaults → sui-vaults}/on-chain-calls/onchain-calls.js +1 -1
  41. package/dist/src/{vaults → sui-vaults}/on-chain-calls/operator.d.ts +2 -2
  42. package/dist/src/{vaults → sui-vaults}/on-chain-calls/tx-builder.d.ts +5 -5
  43. package/dist/src/{vaults → sui-vaults}/on-chain-calls/tx-builder.js +1 -1
  44. package/dist/src/{vaults → sui-vaults}/on-chain-calls/user.d.ts +2 -2
  45. package/dist/src/{vaults → sui-vaults}/on-chain-calls/vault-admin.d.ts +2 -2
  46. package/dist/src/{vaults → sui-vaults}/utils/deployment-parser.d.ts +5 -5
  47. package/dist/src/{vaults → sui-vaults}/utils/deployment-parser.js +3 -3
  48. package/package.json +17 -11
  49. package/dist/src/vaults/ember-vaults.d.ts +0 -39
  50. package/dist/src/vaults/ember-vaults.js +0 -73
  51. /package/dist/src/{vaults/api → api}/api.d.ts +0 -0
  52. /package/dist/src/{vaults/api → api}/api.js +0 -0
  53. /package/dist/src/{vaults/api → api}/apis/accounts-api.d.ts +0 -0
  54. /package/dist/src/{vaults/api → api}/apis/accounts-api.js +0 -0
  55. /package/dist/src/{vaults/api → api}/apis/vaults-api.d.ts +0 -0
  56. /package/dist/src/{vaults/api → api}/apis/vaults-api.js +0 -0
  57. /package/dist/src/{vaults/api → api}/base.d.ts +0 -0
  58. /package/dist/src/{vaults/api → api}/base.js +0 -0
  59. /package/dist/src/{vaults/api → api}/common.d.ts +0 -0
  60. /package/dist/src/{vaults/api → api}/common.js +0 -0
  61. /package/dist/src/{vaults/api → api}/configuration.d.ts +0 -0
  62. /package/dist/src/{vaults/api → api}/configuration.js +0 -0
  63. /package/dist/src/{vaults/api → api}/index.d.ts +0 -0
  64. /package/dist/src/{vaults/api → api}/index.js +0 -0
  65. /package/dist/src/{vaults/api → api}/models/account-transaction-transaction-data.d.ts +0 -0
  66. /package/dist/src/{vaults/api → api}/models/account-transaction-transaction-data.js +0 -0
  67. /package/dist/src/{vaults/api → api}/models/account-transaction.d.ts +0 -0
  68. /package/dist/src/{vaults/api → api}/models/account-transaction.js +0 -0
  69. /package/dist/src/{vaults/api → api}/models/account-withdrawal-request.d.ts +0 -0
  70. /package/dist/src/{vaults/api → api}/models/account-withdrawal-request.js +0 -0
  71. /package/dist/src/{vaults/api → api}/models/apy-history-v2.d.ts +0 -0
  72. /package/dist/src/{vaults/api → api}/models/apy-history-v2.js +0 -0
  73. /package/dist/src/{vaults/api → api}/models/apy-history.d.ts +0 -0
  74. /package/dist/src/{vaults/api → api}/models/apy-history.js +0 -0
  75. /package/dist/src/{vaults/api → api}/models/asset.d.ts +0 -0
  76. /package/dist/src/{vaults/api → api}/models/asset.js +0 -0
  77. /package/dist/src/{vaults/api → api}/models/borrowed.d.ts +0 -0
  78. /package/dist/src/{vaults/api → api}/models/borrowed.js +0 -0
  79. /package/dist/src/{vaults/api → api}/models/chain.d.ts +0 -0
  80. /package/dist/src/{vaults/api → api}/models/chain.js +0 -0
  81. /package/dist/src/{vaults/api → api}/models/coin-price.d.ts +0 -0
  82. /package/dist/src/{vaults/api → api}/models/coin-price.js +0 -0
  83. /package/dist/src/{vaults/api → api}/models/deposit-transaction.d.ts +0 -0
  84. /package/dist/src/{vaults/api → api}/models/deposit-transaction.js +0 -0
  85. /package/dist/src/{vaults/api → api}/models/ember-position.d.ts +0 -0
  86. /package/dist/src/{vaults/api → api}/models/ember-position.js +0 -0
  87. /package/dist/src/{vaults/api → api}/models/exposure-coin.d.ts +0 -0
  88. /package/dist/src/{vaults/api → api}/models/exposure-coin.js +0 -0
  89. /package/dist/src/{vaults/api → api}/models/exposure-protocol.d.ts +0 -0
  90. /package/dist/src/{vaults/api → api}/models/exposure-protocol.js +0 -0
  91. /package/dist/src/{vaults/api → api}/models/exposure.d.ts +0 -0
  92. /package/dist/src/{vaults/api → api}/models/exposure.js +0 -0
  93. /package/dist/src/{vaults/api → api}/models/fee.d.ts +0 -0
  94. /package/dist/src/{vaults/api → api}/models/fee.js +0 -0
  95. /package/dist/src/{vaults/api → api}/models/fees.d.ts +0 -0
  96. /package/dist/src/{vaults/api → api}/models/fees.js +0 -0
  97. /package/dist/src/{vaults/api → api}/models/history-interval.d.ts +0 -0
  98. /package/dist/src/{vaults/api → api}/models/history-interval.js +0 -0
  99. /package/dist/src/{vaults/api → api}/models/index.d.ts +0 -0
  100. /package/dist/src/{vaults/api → api}/models/index.js +0 -0
  101. /package/dist/src/{vaults/api → api}/models/lp.d.ts +0 -0
  102. /package/dist/src/{vaults/api → api}/models/lp.js +0 -0
  103. /package/dist/src/{vaults/api → api}/models/manager.d.ts +0 -0
  104. /package/dist/src/{vaults/api → api}/models/manager.js +0 -0
  105. /package/dist/src/{vaults/api → api}/models/min-withdrawal-shares-updated-event.d.ts +0 -0
  106. /package/dist/src/{vaults/api → api}/models/min-withdrawal-shares-updated-event.js +0 -0
  107. /package/dist/src/{vaults/api → api}/models/perps.d.ts +0 -0
  108. /package/dist/src/{vaults/api → api}/models/perps.js +0 -0
  109. /package/dist/src/{vaults/api → api}/models/pnl-history-interval.d.ts +0 -0
  110. /package/dist/src/{vaults/api → api}/models/pnl-history-interval.js +0 -0
  111. /package/dist/src/{vaults/api → api}/models/pnl-history.d.ts +0 -0
  112. /package/dist/src/{vaults/api → api}/models/pnl-history.js +0 -0
  113. /package/dist/src/{vaults/api → api}/models/poc-report-asset.d.ts +0 -0
  114. /package/dist/src/{vaults/api → api}/models/poc-report-asset.js +0 -0
  115. /package/dist/src/{vaults/api → api}/models/poc-report-assets.d.ts +0 -0
  116. /package/dist/src/{vaults/api → api}/models/poc-report-assets.js +0 -0
  117. /package/dist/src/{vaults/api → api}/models/poc-report-exchange.d.ts +0 -0
  118. /package/dist/src/{vaults/api → api}/models/poc-report-exchange.js +0 -0
  119. /package/dist/src/{vaults/api → api}/models/poc-report-exchanges.d.ts +0 -0
  120. /package/dist/src/{vaults/api → api}/models/poc-report-exchanges.js +0 -0
  121. /package/dist/src/{vaults/api → api}/models/poc-report-protocol.d.ts +0 -0
  122. /package/dist/src/{vaults/api → api}/models/poc-report-protocol.js +0 -0
  123. /package/dist/src/{vaults/api → api}/models/poc-report-token.d.ts +0 -0
  124. /package/dist/src/{vaults/api → api}/models/poc-report-token.js +0 -0
  125. /package/dist/src/{vaults/api → api}/models/poc-report-wallet.d.ts +0 -0
  126. /package/dist/src/{vaults/api → api}/models/poc-report-wallet.js +0 -0
  127. /package/dist/src/{vaults/api → api}/models/poc-report-wallets.d.ts +0 -0
  128. /package/dist/src/{vaults/api → api}/models/poc-report-wallets.js +0 -0
  129. /package/dist/src/{vaults/api → api}/models/position-history-interval.d.ts +0 -0
  130. /package/dist/src/{vaults/api → api}/models/position-history-interval.js +0 -0
  131. /package/dist/src/{vaults/api → api}/models/position-history.d.ts +0 -0
  132. /package/dist/src/{vaults/api → api}/models/position-history.js +0 -0
  133. /package/dist/src/{vaults/api → api}/models/position-value.d.ts +0 -0
  134. /package/dist/src/{vaults/api → api}/models/position-value.js +0 -0
  135. /package/dist/src/{vaults/api → api}/models/position.d.ts +0 -0
  136. /package/dist/src/{vaults/api → api}/models/position.js +0 -0
  137. /package/dist/src/{vaults/api → api}/models/process-requests-summary-event.d.ts +0 -0
  138. /package/dist/src/{vaults/api → api}/models/process-requests-summary-event.js +0 -0
  139. /package/dist/src/{vaults/api → api}/models/proof-of-capital-report.d.ts +0 -0
  140. /package/dist/src/{vaults/api → api}/models/proof-of-capital-report.js +0 -0
  141. /package/dist/src/{vaults/api → api}/models/protocol-fee-collected-event.d.ts +0 -0
  142. /package/dist/src/{vaults/api → api}/models/protocol-fee-collected-event.js +0 -0
  143. /package/dist/src/{vaults/api → api}/models/protocol-info.d.ts +0 -0
  144. /package/dist/src/{vaults/api → api}/models/protocol-info.js +0 -0
  145. /package/dist/src/{vaults/api → api}/models/protocol.d.ts +0 -0
  146. /package/dist/src/{vaults/api → api}/models/protocol.js +0 -0
  147. /package/dist/src/{vaults/api → api}/models/raw-event-event-data.d.ts +0 -0
  148. /package/dist/src/{vaults/api → api}/models/raw-event-event-data.js +0 -0
  149. /package/dist/src/{vaults/api → api}/models/raw-event.d.ts +0 -0
  150. /package/dist/src/{vaults/api → api}/models/raw-event.js +0 -0
  151. /package/dist/src/{vaults/api → api}/models/redeem-request-cancelled-transaction.d.ts +0 -0
  152. /package/dist/src/{vaults/api → api}/models/redeem-request-cancelled-transaction.js +0 -0
  153. /package/dist/src/{vaults/api → api}/models/redeem-request-processed-transaction.d.ts +0 -0
  154. /package/dist/src/{vaults/api → api}/models/redeem-request-processed-transaction.js +0 -0
  155. /package/dist/src/{vaults/api → api}/models/redeem-request-skipped-transaction.d.ts +0 -0
  156. /package/dist/src/{vaults/api → api}/models/redeem-request-skipped-transaction.js +0 -0
  157. /package/dist/src/{vaults/api → api}/models/redeem-request-transaction.d.ts +0 -0
  158. /package/dist/src/{vaults/api → api}/models/redeem-request-transaction.js +0 -0
  159. /package/dist/src/{vaults/api → api}/models/reported-apy.d.ts +0 -0
  160. /package/dist/src/{vaults/api → api}/models/reported-apy.js +0 -0
  161. /package/dist/src/{vaults/api → api}/models/request-processed-event.d.ts +0 -0
  162. /package/dist/src/{vaults/api → api}/models/request-processed-event.js +0 -0
  163. /package/dist/src/{vaults/api → api}/models/request-redeemed-event.d.ts +0 -0
  164. /package/dist/src/{vaults/api → api}/models/request-redeemed-event.js +0 -0
  165. /package/dist/src/{vaults/api → api}/models/reward-token.d.ts +0 -0
  166. /package/dist/src/{vaults/api → api}/models/reward-token.js +0 -0
  167. /package/dist/src/{vaults/api → api}/models/reward.d.ts +0 -0
  168. /package/dist/src/{vaults/api → api}/models/reward.js +0 -0
  169. /package/dist/src/{vaults/api → api}/models/share-price-history.d.ts +0 -0
  170. /package/dist/src/{vaults/api → api}/models/share-price-history.js +0 -0
  171. /package/dist/src/{vaults/api → api}/models/strategy-account.d.ts +0 -0
  172. /package/dist/src/{vaults/api → api}/models/strategy-account.js +0 -0
  173. /package/dist/src/{vaults/api → api}/models/strategy.d.ts +0 -0
  174. /package/dist/src/{vaults/api → api}/models/strategy.js +0 -0
  175. /package/dist/src/{vaults/api → api}/models/sub-account.d.ts +0 -0
  176. /package/dist/src/{vaults/api → api}/models/sub-account.js +0 -0
  177. /package/dist/src/{vaults/api → api}/models/supplied.d.ts +0 -0
  178. /package/dist/src/{vaults/api → api}/models/supplied.js +0 -0
  179. /package/dist/src/{vaults/api → api}/models/tag.d.ts +0 -0
  180. /package/dist/src/{vaults/api → api}/models/tag.js +0 -0
  181. /package/dist/src/{vaults/api → api}/models/tvl-history.d.ts +0 -0
  182. /package/dist/src/{vaults/api → api}/models/tvl-history.js +0 -0
  183. /package/dist/src/{vaults/api → api}/models/ultra-coin-info.d.ts +0 -0
  184. /package/dist/src/{vaults/api → api}/models/ultra-coin-info.js +0 -0
  185. /package/dist/src/{vaults/api → api}/models/update-vault-strategies.d.ts +0 -0
  186. /package/dist/src/{vaults/api → api}/models/update-vault-strategies.js +0 -0
  187. /package/dist/src/{vaults/api → api}/models/vault-admin-changed-event.d.ts +0 -0
  188. /package/dist/src/{vaults/api → api}/models/vault-admin-changed-event.js +0 -0
  189. /package/dist/src/{vaults/api → api}/models/vault-created-event.d.ts +0 -0
  190. /package/dist/src/{vaults/api → api}/models/vault-created-event.js +0 -0
  191. /package/dist/src/{vaults/api → api}/models/vault-deposit-event.d.ts +0 -0
  192. /package/dist/src/{vaults/api → api}/models/vault-deposit-event.js +0 -0
  193. /package/dist/src/{vaults/api → api}/models/vault-deposit-without-minting-shares-event.d.ts +0 -0
  194. /package/dist/src/{vaults/api → api}/models/vault-deposit-without-minting-shares-event.js +0 -0
  195. /package/dist/src/{vaults/api → api}/models/vault-detail.d.ts +0 -0
  196. /package/dist/src/{vaults/api → api}/models/vault-detail.js +0 -0
  197. /package/dist/src/{vaults/api → api}/models/vault-fee-percentage-updated-event.d.ts +0 -0
  198. /package/dist/src/{vaults/api → api}/models/vault-fee-percentage-updated-event.js +0 -0
  199. /package/dist/src/{vaults/api → api}/models/vault-info.d.ts +0 -0
  200. /package/dist/src/{vaults/api → api}/models/vault-info.js +0 -0
  201. /package/dist/src/{vaults/api → api}/models/vault-max-tvl-updated-event.d.ts +0 -0
  202. /package/dist/src/{vaults/api → api}/models/vault-max-tvl-updated-event.js +0 -0
  203. /package/dist/src/{vaults/api → api}/models/vault-operator-changed-event.d.ts +0 -0
  204. /package/dist/src/{vaults/api → api}/models/vault-operator-changed-event.js +0 -0
  205. /package/dist/src/{vaults/api → api}/models/vault-paused-status-updated-event.d.ts +0 -0
  206. /package/dist/src/{vaults/api → api}/models/vault-paused-status-updated-event.js +0 -0
  207. /package/dist/src/{vaults/api → api}/models/vault-platform-fee-charged-event.d.ts +0 -0
  208. /package/dist/src/{vaults/api → api}/models/vault-platform-fee-charged-event.js +0 -0
  209. /package/dist/src/{vaults/api → api}/models/vault-protocol.d.ts +0 -0
  210. /package/dist/src/{vaults/api → api}/models/vault-protocol.js +0 -0
  211. /package/dist/src/{vaults/api → api}/models/vault-rate-updated-event.d.ts +0 -0
  212. /package/dist/src/{vaults/api → api}/models/vault-rate-updated-event.js +0 -0
  213. /package/dist/src/{vaults/api → api}/models/vault-slice.d.ts +0 -0
  214. /package/dist/src/{vaults/api → api}/models/vault-slice.js +0 -0
  215. /package/dist/src/{vaults/api → api}/models/vault-sub-account-updated-event.d.ts +0 -0
  216. /package/dist/src/{vaults/api → api}/models/vault-sub-account-updated-event.js +0 -0
  217. /package/dist/src/{vaults/api → api}/models/vault-withdrawal-without-redeeming-shares-event.d.ts +0 -0
  218. /package/dist/src/{vaults/api → api}/models/vault-withdrawal-without-redeeming-shares-event.js +0 -0
  219. /package/dist/src/{vaults/api → api}/models/vaults-stats.d.ts +0 -0
  220. /package/dist/src/{vaults/api → api}/models/vaults-stats.js +0 -0
  221. /package/dist/src/{vaults/api → api}/models/yield-aggregate-value.d.ts +0 -0
  222. /package/dist/src/{vaults/api → api}/models/yield-aggregate-value.js +0 -0
  223. /package/dist/src/{vaults/api → api}/v2/api.d.ts +0 -0
  224. /package/dist/src/{vaults/api → api}/v2/api.js +0 -0
  225. /package/dist/src/{vaults/api → api}/v2/apis/accounts-api.d.ts +0 -0
  226. /package/dist/src/{vaults/api → api}/v2/apis/accounts-api.js +0 -0
  227. /package/dist/src/{vaults/api → api}/v2/apis/vaults-api.d.ts +0 -0
  228. /package/dist/src/{vaults/api → api}/v2/apis/vaults-api.js +0 -0
  229. /package/dist/src/{vaults/api → api}/v2/base.d.ts +0 -0
  230. /package/dist/src/{vaults/api → api}/v2/base.js +0 -0
  231. /package/dist/src/{vaults/api → api}/v2/common.d.ts +0 -0
  232. /package/dist/src/{vaults/api → api}/v2/common.js +0 -0
  233. /package/dist/src/{vaults/api → api}/v2/configuration.d.ts +0 -0
  234. /package/dist/src/{vaults/api → api}/v2/configuration.js +0 -0
  235. /package/dist/src/{vaults/api → api}/v2/index.d.ts +0 -0
  236. /package/dist/src/{vaults/api → api}/v2/index.js +0 -0
  237. /package/dist/src/{vaults/api → api}/v2/models/account-transaction-transaction-data.d.ts +0 -0
  238. /package/dist/src/{vaults/api → api}/v2/models/account-transaction-transaction-data.js +0 -0
  239. /package/dist/src/{vaults/api → api}/v2/models/account-transaction.d.ts +0 -0
  240. /package/dist/src/{vaults/api → api}/v2/models/account-transaction.js +0 -0
  241. /package/dist/src/{vaults/api → api}/v2/models/account-vault-position-history.d.ts +0 -0
  242. /package/dist/src/{vaults/api → api}/v2/models/account-vault-position-history.js +0 -0
  243. /package/dist/src/{vaults/api → api}/v2/models/account-withdrawal-request.d.ts +0 -0
  244. /package/dist/src/{vaults/api → api}/v2/models/account-withdrawal-request.js +0 -0
  245. /package/dist/src/{vaults/api → api}/v2/models/aggregated-account-position-history.d.ts +0 -0
  246. /package/dist/src/{vaults/api → api}/v2/models/aggregated-account-position-history.js +0 -0
  247. /package/dist/src/{vaults/api → api}/v2/models/apy-history-response.d.ts +0 -0
  248. /package/dist/src/{vaults/api → api}/v2/models/apy-history-response.js +0 -0
  249. /package/dist/src/{vaults/api → api}/v2/models/apy-history.d.ts +0 -0
  250. /package/dist/src/{vaults/api → api}/v2/models/apy-history.js +0 -0
  251. /package/dist/src/{vaults/api → api}/v2/models/asset.d.ts +0 -0
  252. /package/dist/src/{vaults/api → api}/v2/models/asset.js +0 -0
  253. /package/dist/src/{vaults/api → api}/v2/models/borrowed.d.ts +0 -0
  254. /package/dist/src/{vaults/api → api}/v2/models/borrowed.js +0 -0
  255. /package/dist/src/{vaults/api → api}/v2/models/chain-vault-details.d.ts +0 -0
  256. /package/dist/src/{vaults/api → api}/v2/models/chain-vault-details.js +0 -0
  257. /package/dist/src/{vaults/api → api}/v2/models/chain.d.ts +0 -0
  258. /package/dist/src/{vaults/api → api}/v2/models/chain.js +0 -0
  259. /package/dist/src/{vaults/api → api}/v2/models/coin-price.d.ts +0 -0
  260. /package/dist/src/{vaults/api → api}/v2/models/coin-price.js +0 -0
  261. /package/dist/src/{vaults/api → api}/v2/models/deposit-transaction.d.ts +0 -0
  262. /package/dist/src/{vaults/api → api}/v2/models/deposit-transaction.js +0 -0
  263. /package/dist/src/{vaults/api → api}/v2/models/ember-position.d.ts +0 -0
  264. /package/dist/src/{vaults/api → api}/v2/models/ember-position.js +0 -0
  265. /package/dist/src/{vaults/api → api}/v2/models/evm-contracts.d.ts +0 -0
  266. /package/dist/src/{vaults/api → api}/v2/models/evm-contracts.js +0 -0
  267. /package/dist/src/{vaults/api → api}/v2/models/evm-deposit-token.d.ts +0 -0
  268. /package/dist/src/{vaults/api → api}/v2/models/evm-deposit-token.js +0 -0
  269. /package/dist/src/{vaults/api → api}/v2/models/evm-price-feed.d.ts +0 -0
  270. /package/dist/src/{vaults/api → api}/v2/models/evm-price-feed.js +0 -0
  271. /package/dist/src/{vaults/api → api}/v2/models/evm-protocol-config.d.ts +0 -0
  272. /package/dist/src/{vaults/api → api}/v2/models/evm-protocol-config.js +0 -0
  273. /package/dist/src/{vaults/api → api}/v2/models/evm-protocol-info.d.ts +0 -0
  274. /package/dist/src/{vaults/api → api}/v2/models/evm-protocol-info.js +0 -0
  275. /package/dist/src/{vaults/api → api}/v2/models/evm-receipt-token.d.ts +0 -0
  276. /package/dist/src/{vaults/api → api}/v2/models/evm-receipt-token.js +0 -0
  277. /package/dist/src/{vaults/api → api}/v2/models/evm-vault.d.ts +0 -0
  278. /package/dist/src/{vaults/api → api}/v2/models/evm-vault.js +0 -0
  279. /package/dist/src/{vaults/api → api}/v2/models/exposure-coin.d.ts +0 -0
  280. /package/dist/src/{vaults/api → api}/v2/models/exposure-coin.js +0 -0
  281. /package/dist/src/{vaults/api → api}/v2/models/exposure-protocol.d.ts +0 -0
  282. /package/dist/src/{vaults/api → api}/v2/models/exposure-protocol.js +0 -0
  283. /package/dist/src/{vaults/api → api}/v2/models/exposure.d.ts +0 -0
  284. /package/dist/src/{vaults/api → api}/v2/models/exposure.js +0 -0
  285. /package/dist/src/{vaults/api → api}/v2/models/fee.d.ts +0 -0
  286. /package/dist/src/{vaults/api → api}/v2/models/fee.js +0 -0
  287. /package/dist/src/{vaults/api → api}/v2/models/fees.d.ts +0 -0
  288. /package/dist/src/{vaults/api → api}/v2/models/fees.js +0 -0
  289. /package/dist/src/{vaults/api → api}/v2/models/history-interval.d.ts +0 -0
  290. /package/dist/src/{vaults/api → api}/v2/models/history-interval.js +0 -0
  291. /package/dist/src/{vaults/api → api}/v2/models/index.d.ts +0 -0
  292. /package/dist/src/{vaults/api → api}/v2/models/index.js +0 -0
  293. /package/dist/src/{vaults/api → api}/v2/models/lp.d.ts +0 -0
  294. /package/dist/src/{vaults/api → api}/v2/models/lp.js +0 -0
  295. /package/dist/src/{vaults/api → api}/v2/models/manager.d.ts +0 -0
  296. /package/dist/src/{vaults/api → api}/v2/models/manager.js +0 -0
  297. /package/dist/src/{vaults/api → api}/v2/models/min-withdrawal-shares-updated-event.d.ts +0 -0
  298. /package/dist/src/{vaults/api → api}/v2/models/min-withdrawal-shares-updated-event.js +0 -0
  299. /package/dist/src/{vaults/api → api}/v2/models/perps.d.ts +0 -0
  300. /package/dist/src/{vaults/api → api}/v2/models/perps.js +0 -0
  301. /package/dist/src/{vaults/api → api}/v2/models/pnl-by-chain.d.ts +0 -0
  302. /package/dist/src/{vaults/api → api}/v2/models/pnl-by-chain.js +0 -0
  303. /package/dist/src/{vaults/api → api}/v2/models/pnl-history-interval.d.ts +0 -0
  304. /package/dist/src/{vaults/api → api}/v2/models/pnl-history-interval.js +0 -0
  305. /package/dist/src/{vaults/api → api}/v2/models/pnl-history.d.ts +0 -0
  306. /package/dist/src/{vaults/api → api}/v2/models/pnl-history.js +0 -0
  307. /package/dist/src/{vaults/api → api}/v2/models/poc-report-asset.d.ts +0 -0
  308. /package/dist/src/{vaults/api → api}/v2/models/poc-report-asset.js +0 -0
  309. /package/dist/src/{vaults/api → api}/v2/models/poc-report-assets.d.ts +0 -0
  310. /package/dist/src/{vaults/api → api}/v2/models/poc-report-assets.js +0 -0
  311. /package/dist/src/{vaults/api → api}/v2/models/poc-report-exchange.d.ts +0 -0
  312. /package/dist/src/{vaults/api → api}/v2/models/poc-report-exchange.js +0 -0
  313. /package/dist/src/{vaults/api → api}/v2/models/poc-report-exchanges.d.ts +0 -0
  314. /package/dist/src/{vaults/api → api}/v2/models/poc-report-exchanges.js +0 -0
  315. /package/dist/src/{vaults/api → api}/v2/models/poc-report-protocol.d.ts +0 -0
  316. /package/dist/src/{vaults/api → api}/v2/models/poc-report-protocol.js +0 -0
  317. /package/dist/src/{vaults/api → api}/v2/models/poc-report-token.d.ts +0 -0
  318. /package/dist/src/{vaults/api → api}/v2/models/poc-report-token.js +0 -0
  319. /package/dist/src/{vaults/api → api}/v2/models/poc-report-wallet.d.ts +0 -0
  320. /package/dist/src/{vaults/api → api}/v2/models/poc-report-wallet.js +0 -0
  321. /package/dist/src/{vaults/api → api}/v2/models/poc-report-wallets.d.ts +0 -0
  322. /package/dist/src/{vaults/api → api}/v2/models/poc-report-wallets.js +0 -0
  323. /package/dist/src/{vaults/api → api}/v2/models/position-history-interval.d.ts +0 -0
  324. /package/dist/src/{vaults/api → api}/v2/models/position-history-interval.js +0 -0
  325. /package/dist/src/{vaults/api → api}/v2/models/position-value.d.ts +0 -0
  326. /package/dist/src/{vaults/api → api}/v2/models/position-value.js +0 -0
  327. /package/dist/src/{vaults/api → api}/v2/models/position.d.ts +0 -0
  328. /package/dist/src/{vaults/api → api}/v2/models/position.js +0 -0
  329. /package/dist/src/{vaults/api → api}/v2/models/process-requests-summary-event.d.ts +0 -0
  330. /package/dist/src/{vaults/api → api}/v2/models/process-requests-summary-event.js +0 -0
  331. /package/dist/src/{vaults/api → api}/v2/models/proof-of-capital-report.d.ts +0 -0
  332. /package/dist/src/{vaults/api → api}/v2/models/proof-of-capital-report.js +0 -0
  333. /package/dist/src/{vaults/api → api}/v2/models/protocol-fee-collected-event.d.ts +0 -0
  334. /package/dist/src/{vaults/api → api}/v2/models/protocol-fee-collected-event.js +0 -0
  335. /package/dist/src/{vaults/api → api}/v2/models/protocol-pnl-history.d.ts +0 -0
  336. /package/dist/src/{vaults/api → api}/v2/models/protocol-pnl-history.js +0 -0
  337. /package/dist/src/{vaults/api → api}/v2/models/protocol-tvl-history.d.ts +0 -0
  338. /package/dist/src/{vaults/api → api}/v2/models/protocol-tvl-history.js +0 -0
  339. /package/dist/src/{vaults/api → api}/v2/models/protocol.d.ts +0 -0
  340. /package/dist/src/{vaults/api → api}/v2/models/protocol.js +0 -0
  341. /package/dist/src/{vaults/api → api}/v2/models/raw-event-event-data.d.ts +0 -0
  342. /package/dist/src/{vaults/api → api}/v2/models/raw-event-event-data.js +0 -0
  343. /package/dist/src/{vaults/api → api}/v2/models/raw-event.d.ts +0 -0
  344. /package/dist/src/{vaults/api → api}/v2/models/raw-event.js +0 -0
  345. /package/dist/src/{vaults/api → api}/v2/models/redeem-request-cancelled-transaction.d.ts +0 -0
  346. /package/dist/src/{vaults/api → api}/v2/models/redeem-request-cancelled-transaction.js +0 -0
  347. /package/dist/src/{vaults/api → api}/v2/models/redeem-request-processed-transaction.d.ts +0 -0
  348. /package/dist/src/{vaults/api → api}/v2/models/redeem-request-processed-transaction.js +0 -0
  349. /package/dist/src/{vaults/api → api}/v2/models/redeem-request-skipped-transaction.d.ts +0 -0
  350. /package/dist/src/{vaults/api → api}/v2/models/redeem-request-skipped-transaction.js +0 -0
  351. /package/dist/src/{vaults/api → api}/v2/models/redeem-request-transaction.d.ts +0 -0
  352. /package/dist/src/{vaults/api → api}/v2/models/redeem-request-transaction.js +0 -0
  353. /package/dist/src/{vaults/api → api}/v2/models/reported-apy.d.ts +0 -0
  354. /package/dist/src/{vaults/api → api}/v2/models/reported-apy.js +0 -0
  355. /package/dist/src/{vaults/api → api}/v2/models/request-processed-event.d.ts +0 -0
  356. /package/dist/src/{vaults/api → api}/v2/models/request-processed-event.js +0 -0
  357. /package/dist/src/{vaults/api → api}/v2/models/request-redeemed-event.d.ts +0 -0
  358. /package/dist/src/{vaults/api → api}/v2/models/request-redeemed-event.js +0 -0
  359. /package/dist/src/{vaults/api → api}/v2/models/reward-token.d.ts +0 -0
  360. /package/dist/src/{vaults/api → api}/v2/models/reward-token.js +0 -0
  361. /package/dist/src/{vaults/api → api}/v2/models/reward.d.ts +0 -0
  362. /package/dist/src/{vaults/api → api}/v2/models/reward.js +0 -0
  363. /package/dist/src/{vaults/api → api}/v2/models/share-price-history.d.ts +0 -0
  364. /package/dist/src/{vaults/api → api}/v2/models/share-price-history.js +0 -0
  365. /package/dist/src/{vaults/api → api}/v2/models/strategy-account.d.ts +0 -0
  366. /package/dist/src/{vaults/api → api}/v2/models/strategy-account.js +0 -0
  367. /package/dist/src/{vaults/api → api}/v2/models/strategy.d.ts +0 -0
  368. /package/dist/src/{vaults/api → api}/v2/models/strategy.js +0 -0
  369. /package/dist/src/{vaults/api → api}/v2/models/sub-account.d.ts +0 -0
  370. /package/dist/src/{vaults/api → api}/v2/models/sub-account.js +0 -0
  371. /package/dist/src/{vaults/api → api}/v2/models/sui-protocol-info.d.ts +0 -0
  372. /package/dist/src/{vaults/api → api}/v2/models/sui-protocol-info.js +0 -0
  373. /package/dist/src/{vaults/api → api}/v2/models/supplied.d.ts +0 -0
  374. /package/dist/src/{vaults/api → api}/v2/models/supplied.js +0 -0
  375. /package/dist/src/{vaults/api → api}/v2/models/tag.d.ts +0 -0
  376. /package/dist/src/{vaults/api → api}/v2/models/tag.js +0 -0
  377. /package/dist/src/{vaults/api → api}/v2/models/tvl-by-chain.d.ts +0 -0
  378. /package/dist/src/{vaults/api → api}/v2/models/tvl-by-chain.js +0 -0
  379. /package/dist/src/{vaults/api → api}/v2/models/tvl-history.d.ts +0 -0
  380. /package/dist/src/{vaults/api → api}/v2/models/tvl-history.js +0 -0
  381. /package/dist/src/{vaults/api → api}/v2/models/ultra-coin-info.d.ts +0 -0
  382. /package/dist/src/{vaults/api → api}/v2/models/ultra-coin-info.js +0 -0
  383. /package/dist/src/{vaults/api → api}/v2/models/update-vault-strategies.d.ts +0 -0
  384. /package/dist/src/{vaults/api → api}/v2/models/update-vault-strategies.js +0 -0
  385. /package/dist/src/{vaults/api → api}/v2/models/vault-admin-changed-event.d.ts +0 -0
  386. /package/dist/src/{vaults/api → api}/v2/models/vault-admin-changed-event.js +0 -0
  387. /package/dist/src/{vaults/api → api}/v2/models/vault-created-event.d.ts +0 -0
  388. /package/dist/src/{vaults/api → api}/v2/models/vault-created-event.js +0 -0
  389. /package/dist/src/{vaults/api → api}/v2/models/vault-deposit-event.d.ts +0 -0
  390. /package/dist/src/{vaults/api → api}/v2/models/vault-deposit-event.js +0 -0
  391. /package/dist/src/{vaults/api → api}/v2/models/vault-deposit-without-minting-shares-event.d.ts +0 -0
  392. /package/dist/src/{vaults/api → api}/v2/models/vault-deposit-without-minting-shares-event.js +0 -0
  393. /package/dist/src/{vaults/api → api}/v2/models/vault-detail.d.ts +0 -0
  394. /package/dist/src/{vaults/api → api}/v2/models/vault-detail.js +0 -0
  395. /package/dist/src/{vaults/api → api}/v2/models/vault-fee-percentage-updated-event.d.ts +0 -0
  396. /package/dist/src/{vaults/api → api}/v2/models/vault-fee-percentage-updated-event.js +0 -0
  397. /package/dist/src/{vaults/api → api}/v2/models/vault-info.d.ts +0 -0
  398. /package/dist/src/{vaults/api → api}/v2/models/vault-info.js +0 -0
  399. /package/dist/src/{vaults/api → api}/v2/models/vault-max-tvl-updated-event.d.ts +0 -0
  400. /package/dist/src/{vaults/api → api}/v2/models/vault-max-tvl-updated-event.js +0 -0
  401. /package/dist/src/{vaults/api → api}/v2/models/vault-operator-changed-event.d.ts +0 -0
  402. /package/dist/src/{vaults/api → api}/v2/models/vault-operator-changed-event.js +0 -0
  403. /package/dist/src/{vaults/api → api}/v2/models/vault-paused-status-updated-event.d.ts +0 -0
  404. /package/dist/src/{vaults/api → api}/v2/models/vault-paused-status-updated-event.js +0 -0
  405. /package/dist/src/{vaults/api → api}/v2/models/vault-platform-fee-charged-event.d.ts +0 -0
  406. /package/dist/src/{vaults/api → api}/v2/models/vault-platform-fee-charged-event.js +0 -0
  407. /package/dist/src/{vaults/api → api}/v2/models/vault-protocol.d.ts +0 -0
  408. /package/dist/src/{vaults/api → api}/v2/models/vault-protocol.js +0 -0
  409. /package/dist/src/{vaults/api → api}/v2/models/vault-rate-updated-event.d.ts +0 -0
  410. /package/dist/src/{vaults/api → api}/v2/models/vault-rate-updated-event.js +0 -0
  411. /package/dist/src/{vaults/api → api}/v2/models/vault-slice.d.ts +0 -0
  412. /package/dist/src/{vaults/api → api}/v2/models/vault-slice.js +0 -0
  413. /package/dist/src/{vaults/api → api}/v2/models/vault-sub-account-updated-event.d.ts +0 -0
  414. /package/dist/src/{vaults/api → api}/v2/models/vault-sub-account-updated-event.js +0 -0
  415. /package/dist/src/{vaults/api → api}/v2/models/vault-tag.d.ts +0 -0
  416. /package/dist/src/{vaults/api → api}/v2/models/vault-tag.js +0 -0
  417. /package/dist/src/{vaults/api → api}/v2/models/vault-withdrawal-without-redeeming-shares-event.d.ts +0 -0
  418. /package/dist/src/{vaults/api → api}/v2/models/vault-withdrawal-without-redeeming-shares-event.js +0 -0
  419. /package/dist/src/{vaults/api → api}/v2/models/vaults-deployment-config-config.d.ts +0 -0
  420. /package/dist/src/{vaults/api → api}/v2/models/vaults-deployment-config-config.js +0 -0
  421. /package/dist/src/{vaults/api → api}/v2/models/vaults-deployment-config.d.ts +0 -0
  422. /package/dist/src/{vaults/api → api}/v2/models/vaults-deployment-config.js +0 -0
  423. /package/dist/src/{vaults/api → api}/v2/models/vaults-stats.d.ts +0 -0
  424. /package/dist/src/{vaults/api → api}/v2/models/vaults-stats.js +0 -0
  425. /package/dist/src/{vaults/api → api}/v2/models/yield-aggregate-value.d.ts +0 -0
  426. /package/dist/src/{vaults/api → api}/v2/models/yield-aggregate-value.js +0 -0
  427. /package/dist/src/{vaults → evm-vaults}/interfaces/index.js +0 -0
  428. /package/dist/src/{vaults → sui-vaults}/interfaces/bcs.d.ts +0 -0
  429. /package/dist/src/{vaults → sui-vaults}/interfaces/bcs.js +0 -0
  430. /package/dist/src/{vaults → sui-vaults}/on-chain-calls/admin.js +0 -0
  431. /package/dist/src/{vaults → sui-vaults}/on-chain-calls/index.d.ts +0 -0
  432. /package/dist/src/{vaults → sui-vaults}/on-chain-calls/index.js +0 -0
  433. /package/dist/src/{vaults → sui-vaults}/on-chain-calls/operator.js +0 -0
  434. /package/dist/src/{vaults → sui-vaults}/on-chain-calls/user.js +0 -0
  435. /package/dist/src/{vaults → sui-vaults}/on-chain-calls/vault-admin.js +0 -0
  436. /package/dist/src/{vaults → sui-vaults}/on-chain-calls/vault.d.ts +0 -0
  437. /package/dist/src/{vaults → sui-vaults}/on-chain-calls/vault.js +0 -0
  438. /package/dist/src/{vaults → sui-vaults}/utils/common.d.ts +0 -0
  439. /package/dist/src/{vaults → sui-vaults}/utils/common.js +0 -0
  440. /package/dist/src/{vaults → sui-vaults}/utils/index.d.ts +0 -0
  441. /package/dist/src/{vaults → sui-vaults}/utils/index.js +0 -0
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Type alias for numeric values that can be strings or numbers
3
+ */
4
+ export type NumStr = string | number | bigint;
@@ -1 +1,2 @@
1
1
  "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,169 @@
1
+ import { Signer as SuiSigner, SuiClient } from "@firefly-exchange/library-sui";
2
+ import { Signer as EvmSigner, Provider as EvmProvider } from "ethers";
3
+ import { ISuiDeployment } from "./sui-vaults/interfaces";
4
+ import { TxBuilder as SuiTxBuilder } from "./sui-vaults/on-chain-calls";
5
+ import { AdminCalls as SuiAdminCalls } from "./sui-vaults/on-chain-calls/admin";
6
+ import { OperatorCalls as SuiOperatorCalls } from "./sui-vaults/on-chain-calls/operator";
7
+ import { UserCalls as SuiUserCalls } from "./sui-vaults/on-chain-calls/user";
8
+ import { VaultAdminCalls as SuiVaultAdminCalls } from "./sui-vaults/on-chain-calls/vault-admin";
9
+ import { SuiDeploymentParser } from "./sui-vaults/utils/deployment-parser";
10
+ import { IEvmDeployment } from "./evm-vaults/interfaces";
11
+ import { EVMTxBuilder } from "./evm-vaults/on-chain-calls/tx-builder";
12
+ import { EVMAdminCalls } from "./evm-vaults/on-chain-calls/admin";
13
+ import { EVMOperatorCalls } from "./evm-vaults/on-chain-calls/operator";
14
+ import { EVMUserCalls } from "./evm-vaults/on-chain-calls/user";
15
+ import { EVMVaultAdminCalls } from "./evm-vaults/on-chain-calls/vault-admin";
16
+ import { EVMDeploymentParser } from "./evm-vaults/utils/deployment-parser";
17
+ import { AccountsApi, VaultsApi } from "./api";
18
+ export type PlatformEnv = "prod" | "staging" | "dev";
19
+ export type ChainType = "sui" | "evm";
20
+ /**
21
+ * SUI-specific initialization options
22
+ */
23
+ export interface SuiInitOptions {
24
+ chainType: "sui";
25
+ network: string;
26
+ suiClient: SuiClient;
27
+ signer?: SuiSigner;
28
+ walletAddress?: string;
29
+ deployment?: ISuiDeployment;
30
+ basePath?: string;
31
+ environment?: PlatformEnv;
32
+ }
33
+ /**
34
+ * EVM-specific initialization options
35
+ */
36
+ export interface EvmInitOptions {
37
+ chainType: "evm";
38
+ signer?: EvmSigner;
39
+ provider?: EvmProvider;
40
+ walletAddress?: string;
41
+ deployment?: IEvmDeployment;
42
+ basePath?: string;
43
+ environment?: PlatformEnv;
44
+ }
45
+ export type EmberVaultsInitOptions = SuiInitOptions | EvmInitOptions;
46
+ /**
47
+ * SUI-specific EmberVaults instance type
48
+ */
49
+ export interface SuiEmberVaults {
50
+ chainType: "sui";
51
+ suiClient: SuiClient;
52
+ signer?: SuiSigner;
53
+ parser: SuiDeploymentParser;
54
+ walletAddress?: string;
55
+ txBuilder: SuiTxBuilder;
56
+ network: string;
57
+ admin: SuiAdminCalls;
58
+ operator: SuiOperatorCalls;
59
+ vaultAdmin: SuiVaultAdminCalls;
60
+ user: SuiUserCalls;
61
+ deployment: ISuiDeployment;
62
+ }
63
+ /**
64
+ * EVM-specific EmberVaults instance type
65
+ */
66
+ export interface EvmEmberVaults {
67
+ chainType: "evm";
68
+ signer?: EvmSigner;
69
+ provider?: EvmProvider;
70
+ parser: EVMDeploymentParser;
71
+ walletAddress?: string;
72
+ txBuilder: EVMTxBuilder;
73
+ admin: EVMAdminCalls;
74
+ operator: EVMOperatorCalls;
75
+ vaultAdmin: EVMVaultAdminCalls;
76
+ user: EVMUserCalls;
77
+ deployment: IEvmDeployment;
78
+ }
79
+ /**
80
+ * EmberVaults - Unified interface for both SUI and EVM chains
81
+ *
82
+ * @example SUI initialization:
83
+ * ```typescript
84
+ * const ember = new EmberVaults({
85
+ * chainType: "sui",
86
+ * network: "mainnet",
87
+ * suiClient,
88
+ * signer,
89
+ * walletAddress
90
+ * });
91
+ * await ember.init();
92
+ * ```
93
+ *
94
+ * @example EVM initialization:
95
+ * ```typescript
96
+ * const ember = new EmberVaults({
97
+ * chainType: "evm",
98
+ * signer,
99
+ * provider,
100
+ * deployment
101
+ * });
102
+ * ```
103
+ */
104
+ export declare class EmberVaults {
105
+ readonly chainType: ChainType;
106
+ apiHost: string;
107
+ api: AccountsApi;
108
+ vaultsApi: VaultsApi;
109
+ private _suiClient?;
110
+ private _suiSigner?;
111
+ private _suiParser?;
112
+ private _suiTxBuilder?;
113
+ private _suiAdmin?;
114
+ private _suiOperator?;
115
+ private _suiVaultAdmin?;
116
+ private _suiUser?;
117
+ private _suiDeployment?;
118
+ private _suiNetwork?;
119
+ private _evmSigner?;
120
+ private _evmProvider?;
121
+ private _evmParser?;
122
+ private _evmTxBuilder?;
123
+ private _evmAdmin?;
124
+ private _evmOperator?;
125
+ private _evmVaultAdmin?;
126
+ private _evmUser?;
127
+ private _evmDeployment?;
128
+ private _walletAddress?;
129
+ constructor(options: EmberVaultsInitOptions);
130
+ private _initSui;
131
+ private _initEvm;
132
+ /**
133
+ * Initialize by fetching deployment from API (SUI only currently)
134
+ */
135
+ init(): Promise<void>;
136
+ /**
137
+ * Updates the deployment configuration
138
+ * @param newDeployment The new deployment configuration (ISuiDeployment or IEvmDeployment)
139
+ */
140
+ updateDeployment(newDeployment: ISuiDeployment | IEvmDeployment): void;
141
+ get suiClient(): SuiClient;
142
+ get network(): string;
143
+ get provider(): EvmProvider | undefined;
144
+ get walletAddress(): string | undefined;
145
+ get signer(): SuiSigner | EvmSigner | undefined;
146
+ get parser(): SuiDeploymentParser | EVMDeploymentParser;
147
+ get txBuilder(): SuiTxBuilder | EVMTxBuilder;
148
+ get admin(): SuiAdminCalls | EVMAdminCalls;
149
+ get operator(): SuiOperatorCalls | EVMOperatorCalls;
150
+ get vaultAdmin(): SuiVaultAdminCalls | EVMVaultAdminCalls;
151
+ get user(): SuiUserCalls | EVMUserCalls;
152
+ get deployment(): ISuiDeployment | IEvmDeployment;
153
+ /**
154
+ * Check if this is a SUI instance
155
+ */
156
+ isSui(): this is EmberVaults & SuiEmberVaults;
157
+ /**
158
+ * Check if this is an EVM instance
159
+ */
160
+ isEvm(): this is EmberVaults & EvmEmberVaults;
161
+ /**
162
+ * Get SUI-specific instance (throws if not SUI)
163
+ */
164
+ asSui(): SuiEmberVaults;
165
+ /**
166
+ * Get EVM-specific instance (throws if not EVM)
167
+ */
168
+ asEvm(): EvmEmberVaults;
169
+ }
@@ -0,0 +1,239 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EmberVaults = void 0;
4
+ const on_chain_calls_1 = require("./sui-vaults/on-chain-calls");
5
+ const admin_1 = require("./sui-vaults/on-chain-calls/admin");
6
+ const operator_1 = require("./sui-vaults/on-chain-calls/operator");
7
+ const user_1 = require("./sui-vaults/on-chain-calls/user");
8
+ const vault_admin_1 = require("./sui-vaults/on-chain-calls/vault-admin");
9
+ const deployment_parser_1 = require("./sui-vaults/utils/deployment-parser");
10
+ const tx_builder_1 = require("./evm-vaults/on-chain-calls/tx-builder");
11
+ const admin_2 = require("./evm-vaults/on-chain-calls/admin");
12
+ const operator_2 = require("./evm-vaults/on-chain-calls/operator");
13
+ const user_2 = require("./evm-vaults/on-chain-calls/user");
14
+ const vault_admin_2 = require("./evm-vaults/on-chain-calls/vault-admin");
15
+ const deployment_parser_2 = require("./evm-vaults/utils/deployment-parser");
16
+ // API imports
17
+ const api_1 = require("./api");
18
+ const environmentConfig = {
19
+ prod: {
20
+ apiHost: "https://vaults.api.sui-prod.bluefin.io"
21
+ },
22
+ staging: {
23
+ apiHost: "https://vaults.api.sui-staging.bluefin.io"
24
+ },
25
+ dev: {
26
+ apiHost: "https://vaults.api.sui-dev.bluefin.io"
27
+ }
28
+ };
29
+ /**
30
+ * EmberVaults - Unified interface for both SUI and EVM chains
31
+ *
32
+ * @example SUI initialization:
33
+ * ```typescript
34
+ * const ember = new EmberVaults({
35
+ * chainType: "sui",
36
+ * network: "mainnet",
37
+ * suiClient,
38
+ * signer,
39
+ * walletAddress
40
+ * });
41
+ * await ember.init();
42
+ * ```
43
+ *
44
+ * @example EVM initialization:
45
+ * ```typescript
46
+ * const ember = new EmberVaults({
47
+ * chainType: "evm",
48
+ * signer,
49
+ * provider,
50
+ * deployment
51
+ * });
52
+ * ```
53
+ */
54
+ class EmberVaults {
55
+ constructor(options) {
56
+ this.chainType = options.chainType;
57
+ this._walletAddress = options.walletAddress;
58
+ const environment = options.environment ?? "prod";
59
+ this.apiHost = options.basePath || environmentConfig[environment].apiHost;
60
+ this.api = new api_1.AccountsApi(new api_1.Configuration({ basePath: this.apiHost }));
61
+ this.vaultsApi = new api_1.VaultsApi(new api_1.Configuration({ basePath: this.apiHost }));
62
+ if (options.chainType === "sui") {
63
+ this._initSui(options);
64
+ }
65
+ else {
66
+ this._initEvm(options);
67
+ }
68
+ }
69
+ _initSui(options) {
70
+ this._suiNetwork = options.network;
71
+ this._suiClient = options.suiClient;
72
+ this._suiSigner = options.signer;
73
+ this._suiDeployment = options.deployment || {};
74
+ this._walletAddress = options.walletAddress || options.signer?.toSuiAddress();
75
+ this._suiParser = new deployment_parser_1.SuiDeploymentParser(this._suiDeployment);
76
+ this._suiTxBuilder = new on_chain_calls_1.TxBuilder(this._suiDeployment);
77
+ this._suiAdmin = new admin_1.AdminCalls(options.network, options.suiClient, this._suiDeployment, options.signer, this._walletAddress);
78
+ this._suiOperator = new operator_1.OperatorCalls(options.network, options.suiClient, this._suiDeployment, options.signer, this._walletAddress);
79
+ this._suiVaultAdmin = new vault_admin_1.VaultAdminCalls(options.network, options.suiClient, this._suiDeployment, options.signer, this._walletAddress);
80
+ this._suiUser = new user_1.UserCalls(options.network, options.suiClient, this._suiDeployment, options.signer, this._walletAddress);
81
+ }
82
+ _initEvm(options) {
83
+ this._evmSigner = options.signer;
84
+ this._evmProvider = options.provider;
85
+ this._evmDeployment = options.deployment || {};
86
+ this._evmParser = new deployment_parser_2.EVMDeploymentParser(this._evmDeployment);
87
+ this._evmTxBuilder = new tx_builder_1.EVMTxBuilder(this._evmDeployment);
88
+ this._evmAdmin = new admin_2.EVMAdminCalls(this._evmDeployment, options.signer, options.provider, options.walletAddress);
89
+ this._evmOperator = new operator_2.EVMOperatorCalls(this._evmDeployment, options.signer, options.provider, options.walletAddress);
90
+ this._evmVaultAdmin = new vault_admin_2.EVMVaultAdminCalls(this._evmDeployment, options.signer, options.provider, options.walletAddress);
91
+ this._evmUser = new user_2.EVMUserCalls(this._evmDeployment, options.signer, options.provider, options.walletAddress);
92
+ }
93
+ /**
94
+ * Initialize by fetching deployment from API (SUI only currently)
95
+ */
96
+ async init() {
97
+ // Assuming that the vaults Api will return the correct deployment for the requested chain
98
+ // TODO: We might need to provide an input to the vaults Api
99
+ // so it knows for which chain the deployment is requested ??
100
+ // Confirm above with Burhan/Shahzaib
101
+ const deployment = await this.vaultsApi.getVaultsProtocolInfo();
102
+ const deploymentData = deployment.data;
103
+ this.updateDeployment(deploymentData);
104
+ }
105
+ /**
106
+ * Updates the deployment configuration
107
+ * @param newDeployment The new deployment configuration (ISuiDeployment or IEvmDeployment)
108
+ */
109
+ updateDeployment(newDeployment) {
110
+ if (this.chainType === "sui") {
111
+ const suiDeployment = newDeployment;
112
+ this._suiDeployment = suiDeployment;
113
+ this._suiParser?.updateDeployment(suiDeployment);
114
+ this._suiTxBuilder?.updateDeployment(suiDeployment);
115
+ this._suiAdmin?.updateDeployment(suiDeployment);
116
+ this._suiOperator?.updateDeployment(suiDeployment);
117
+ this._suiVaultAdmin?.updateDeployment(suiDeployment);
118
+ this._suiUser?.updateDeployment(suiDeployment);
119
+ }
120
+ else {
121
+ const evmDeployment = newDeployment;
122
+ this._evmDeployment = evmDeployment;
123
+ this._evmParser?.updateDeployment(evmDeployment);
124
+ this._evmTxBuilder?.updateDeployment(evmDeployment);
125
+ this._evmAdmin?.updateDeployment(evmDeployment);
126
+ this._evmOperator?.updateDeployment(evmDeployment);
127
+ this._evmVaultAdmin?.updateDeployment(evmDeployment);
128
+ this._evmUser?.updateDeployment(evmDeployment);
129
+ }
130
+ }
131
+ // ============================================
132
+ // SUI Getters
133
+ // ============================================
134
+ get suiClient() {
135
+ if (this.chainType !== "sui")
136
+ throw new Error("suiClient is only available for SUI chain");
137
+ return this._suiClient;
138
+ }
139
+ get network() {
140
+ if (this.chainType !== "sui")
141
+ throw new Error("network is only available for SUI chain");
142
+ return this._suiNetwork;
143
+ }
144
+ // ============================================
145
+ // EVM Getters
146
+ // ============================================
147
+ get provider() {
148
+ if (this.chainType !== "evm")
149
+ throw new Error("provider is only available for EVM chain");
150
+ return this._evmProvider;
151
+ }
152
+ // ============================================
153
+ // Common Getters (chain-specific implementations)
154
+ // ============================================
155
+ get walletAddress() {
156
+ return this._walletAddress;
157
+ }
158
+ get signer() {
159
+ return this.chainType === "sui" ? this._suiSigner : this._evmSigner;
160
+ }
161
+ get parser() {
162
+ return this.chainType === "sui" ? this._suiParser : this._evmParser;
163
+ }
164
+ get txBuilder() {
165
+ return this.chainType === "sui" ? this._suiTxBuilder : this._evmTxBuilder;
166
+ }
167
+ get admin() {
168
+ return this.chainType === "sui" ? this._suiAdmin : this._evmAdmin;
169
+ }
170
+ get operator() {
171
+ return this.chainType === "sui" ? this._suiOperator : this._evmOperator;
172
+ }
173
+ get vaultAdmin() {
174
+ return this.chainType === "sui" ? this._suiVaultAdmin : this._evmVaultAdmin;
175
+ }
176
+ get user() {
177
+ return this.chainType === "sui" ? this._suiUser : this._evmUser;
178
+ }
179
+ get deployment() {
180
+ return this.chainType === "sui" ? this._suiDeployment : this._evmDeployment;
181
+ }
182
+ // ============================================
183
+ // Type Guards for chain-specific access
184
+ // ============================================
185
+ /**
186
+ * Check if this is a SUI instance
187
+ */
188
+ isSui() {
189
+ return this.chainType === "sui";
190
+ }
191
+ /**
192
+ * Check if this is an EVM instance
193
+ */
194
+ isEvm() {
195
+ return this.chainType === "evm";
196
+ }
197
+ /**
198
+ * Get SUI-specific instance (throws if not SUI)
199
+ */
200
+ asSui() {
201
+ if (!this.isSui())
202
+ throw new Error("This EmberVaults instance is not configured for SUI");
203
+ return {
204
+ chainType: "sui",
205
+ suiClient: this._suiClient,
206
+ signer: this._suiSigner,
207
+ parser: this._suiParser,
208
+ walletAddress: this._walletAddress,
209
+ txBuilder: this._suiTxBuilder,
210
+ network: this._suiNetwork,
211
+ admin: this._suiAdmin,
212
+ operator: this._suiOperator,
213
+ vaultAdmin: this._suiVaultAdmin,
214
+ user: this._suiUser,
215
+ deployment: this._suiDeployment
216
+ };
217
+ }
218
+ /**
219
+ * Get EVM-specific instance (throws if not EVM)
220
+ */
221
+ asEvm() {
222
+ if (!this.isEvm())
223
+ throw new Error("This EmberVaults instance is not configured for EVM");
224
+ return {
225
+ chainType: "evm",
226
+ signer: this._evmSigner,
227
+ provider: this._evmProvider,
228
+ parser: this._evmParser,
229
+ walletAddress: this._walletAddress,
230
+ txBuilder: this._evmTxBuilder,
231
+ admin: this._evmAdmin,
232
+ operator: this._evmOperator,
233
+ vaultAdmin: this._evmVaultAdmin,
234
+ user: this._evmUser,
235
+ deployment: this._evmDeployment
236
+ };
237
+ }
238
+ }
239
+ exports.EmberVaults = EmberVaults;
@@ -1,5 +1,3 @@
1
- export * from "./ember-vaults";
2
- export * from "./api";
3
1
  export * from "./interfaces";
4
2
  export * from "./on-chain-calls";
5
3
  export * from "./utils";
@@ -14,8 +14,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- __exportStar(require("./ember-vaults"), exports);
18
- __exportStar(require("./api"), exports);
19
17
  __exportStar(require("./interfaces"), exports);
20
18
  __exportStar(require("./on-chain-calls"), exports);
21
19
  __exportStar(require("./utils"), exports);
@@ -0,0 +1,168 @@
1
+ import { Signer, Provider, TransactionResponse, TransactionReceipt, Log, LogDescription } from "ethers";
2
+ /**
3
+ * Represents the deployment configuration for the Ember Protocol on EVM-compatible chains
4
+ */
5
+ export interface IEvmDeployment {
6
+ network: string;
7
+ chainId: string;
8
+ contracts: {
9
+ protocolConfig: {
10
+ proxyAddress: string;
11
+ implementationAddress: string;
12
+ ownerAddress: string;
13
+ version: string;
14
+ deployedAt: string;
15
+ deploymentBlockNumber: number;
16
+ };
17
+ receiptTokens: {
18
+ [key: string]: {
19
+ proxyAddress: string;
20
+ implementationAddress: string;
21
+ ownerAddress: string;
22
+ name: string;
23
+ symbol: string;
24
+ decimals: number;
25
+ version: string;
26
+ deployedAt: string;
27
+ deploymentBlockNumber: number;
28
+ };
29
+ };
30
+ vaults: {
31
+ [key: string]: {
32
+ proxyAddress: string;
33
+ implementationAddress: string;
34
+ ownerAddress: string;
35
+ name: string;
36
+ baseToken: string;
37
+ receiptToken: string;
38
+ baseTokenPriceFeed: string;
39
+ baseTokenName: string;
40
+ admin: string;
41
+ operator: string;
42
+ rateManager: string;
43
+ protocolConfig: string;
44
+ maxTVL: string;
45
+ version: string;
46
+ deployedAt: string;
47
+ deploymentBlockNumber: number;
48
+ };
49
+ };
50
+ };
51
+ }
52
+ /**
53
+ * Optional parameters for EVM transaction building
54
+ */
55
+ export interface IEvmTxBuilderParams {
56
+ /** Gas limit for the transaction */
57
+ gasLimit?: bigint;
58
+ /** Max fee per gas (EIP-1559) */
59
+ maxFeePerGas?: bigint;
60
+ /** Max priority fee per gas (EIP-1559) */
61
+ maxPriorityFeePerGas?: bigint;
62
+ /** Gas price (legacy transactions) */
63
+ gasPrice?: bigint;
64
+ /** Transaction value in wei */
65
+ value?: bigint;
66
+ /** Nonce for the transaction */
67
+ nonce?: number;
68
+ }
69
+ /**
70
+ * Represents an encoded EVM transaction ready to be sent
71
+ */
72
+ export interface IEncodedTransaction {
73
+ /** The target contract address */
74
+ to: string;
75
+ /** The encoded function data */
76
+ data: string;
77
+ /** The value in wei (default: 0) */
78
+ value: bigint;
79
+ /** Optional gas limit */
80
+ gasLimit?: bigint;
81
+ /** Chain ID */
82
+ chainId: string;
83
+ }
84
+ /**
85
+ * Vault pause operation types for EVM
86
+ */
87
+ export type VaultPauseOperation = "deposits" | "withdrawals" | "privilegedOperations";
88
+ /**
89
+ * Represents a transaction call that can be encoded by ethers.js
90
+ */
91
+ export interface ITransactionCall {
92
+ /** The target contract address */
93
+ to: string;
94
+ /** The function name to call */
95
+ functionName: string;
96
+ /** The arguments to pass to the function */
97
+ args: unknown[];
98
+ /** The ABI of the contract */
99
+ abi: unknown[];
100
+ /** The value in wei (default: 0n) */
101
+ value: bigint;
102
+ /** Chain ID from deployment */
103
+ chainId: string;
104
+ }
105
+ /**
106
+ * Optional parameters for EVM on-chain calls
107
+ */
108
+ export interface IEvmCallOptions {
109
+ /** If true, simulates the transaction without sending */
110
+ dryRun?: boolean;
111
+ /** If true, returns the transaction call object without executing */
112
+ returnTxCall?: boolean;
113
+ /** If true, waits for the transaction to be mined and returns receipt with events */
114
+ waitForReceipt?: boolean;
115
+ /** Number of confirmations to wait for (default: 1) */
116
+ confirmations?: number;
117
+ /** Gas limit override */
118
+ gasLimit?: bigint;
119
+ }
120
+ /**
121
+ * Optional parameters for user deposit/mint/redeem calls
122
+ */
123
+ export interface IUserCallOptions extends IEvmCallOptions {
124
+ /** Receiver address for shares/funds. Defaults to the caller's address if not provided */
125
+ receiver?: string;
126
+ }
127
+ /**
128
+ * Parsed event from a transaction
129
+ */
130
+ export interface IParsedEvent {
131
+ /** Event name */
132
+ name: string;
133
+ /** Event signature */
134
+ signature: string;
135
+ /** Decoded event arguments */
136
+ args: Record<string, unknown>;
137
+ /** Raw log */
138
+ log: Log;
139
+ }
140
+ /**
141
+ * Response for dry run calls
142
+ */
143
+ export interface IDryRunResponse {
144
+ success: boolean;
145
+ /** Error message if the call failed */
146
+ error?: string;
147
+ /** Decoded return value from the call (if successful) */
148
+ result?: unknown;
149
+ }
150
+ /**
151
+ * Response for executed transactions with receipt
152
+ */
153
+ export interface ITransactionReceiptResponse {
154
+ /** Transaction response */
155
+ response: TransactionResponse;
156
+ /** Transaction receipt */
157
+ receipt: TransactionReceipt;
158
+ /** Parsed events from the transaction */
159
+ events: IParsedEvent[];
160
+ }
161
+ /**
162
+ * Response type for EVM on-chain calls
163
+ */
164
+ export type EvmOnChainCallResponse = TransactionResponse | ITransactionReceiptResponse | ITransactionCall | IDryRunResponse;
165
+ /**
166
+ * Re-export ethers types for convenience
167
+ */
168
+ export type { Signer, Provider, TransactionResponse, TransactionReceipt, Log, LogDescription };