@berachain/berajs 0.1.2 → 0.2.0

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 (453) hide show
  1. package/dist/{BeraError-D1HS_rbb.d.cts → BeraError-_mQdkanr.d.cts} +35 -10
  2. package/dist/{BeraError-D1HS_rbb.d.ts → BeraError-_mQdkanr.d.ts} +35 -10
  3. package/dist/HoneyConfigProvider-CK6mOKFH.d.ts +390 -0
  4. package/dist/HoneyConfigProvider-Ca3ouozs.d.cts +390 -0
  5. package/dist/{RequestError-D8AE6xnI.d.cts → RequestError-A8XJ6QR9.d.cts} +1 -1
  6. package/dist/{RequestError-m4jxyM7D.d.ts → RequestError-Dk97z8rm.d.ts} +1 -1
  7. package/dist/abi/exports.cjs +2 -0
  8. package/dist/abi/exports.cjs.map +1 -0
  9. package/dist/abi/{index.d.cts → exports.d.cts} +12369 -9122
  10. package/dist/abi/{index.d.ts → exports.d.ts} +12369 -9122
  11. package/dist/abi/exports.mjs +2 -0
  12. package/dist/abi/exports.mjs.map +1 -0
  13. package/dist/actions/exports.cjs +2 -0
  14. package/dist/actions/exports.cjs.map +1 -0
  15. package/dist/actions/{index.d.cts → exports.d.cts} +80 -107
  16. package/dist/actions/{index.d.ts → exports.d.ts} +80 -107
  17. package/dist/actions/exports.mjs +2 -0
  18. package/dist/actions/exports.mjs.map +1 -0
  19. package/dist/chunk-575OK77P.mjs +2 -0
  20. package/dist/chunk-575OK77P.mjs.map +1 -0
  21. package/dist/chunk-7GWTHOLO.mjs +2 -0
  22. package/dist/chunk-7GWTHOLO.mjs.map +1 -0
  23. package/dist/chunk-7SC4VD3U.cjs +2 -0
  24. package/dist/chunk-7SC4VD3U.cjs.map +1 -0
  25. package/dist/chunk-BHNQX4XC.mjs +2 -0
  26. package/dist/chunk-BHNQX4XC.mjs.map +1 -0
  27. package/dist/chunk-BOYZVULX.cjs +2 -0
  28. package/dist/chunk-BOYZVULX.cjs.map +1 -0
  29. package/dist/chunk-C3FHGFLK.mjs +2 -0
  30. package/dist/chunk-C3FHGFLK.mjs.map +1 -0
  31. package/dist/chunk-C3G5KXCH.mjs +2 -0
  32. package/dist/chunk-C3G5KXCH.mjs.map +1 -0
  33. package/dist/chunk-CYKCYPFR.cjs +2 -0
  34. package/dist/chunk-CYKCYPFR.cjs.map +1 -0
  35. package/dist/chunk-F4BKSBEM.mjs +2 -0
  36. package/dist/chunk-F4BKSBEM.mjs.map +1 -0
  37. package/dist/chunk-FL2N3XHK.cjs +2 -0
  38. package/dist/chunk-FL2N3XHK.cjs.map +1 -0
  39. package/dist/chunk-G6NA6NSM.mjs +4 -0
  40. package/dist/chunk-G6NA6NSM.mjs.map +1 -0
  41. package/dist/chunk-H2QSRMVS.mjs +2 -0
  42. package/dist/chunk-H2QSRMVS.mjs.map +1 -0
  43. package/dist/chunk-IJM76AWK.cjs +4 -0
  44. package/dist/chunk-IJM76AWK.cjs.map +1 -0
  45. package/dist/chunk-MTS5SZLA.mjs +2 -0
  46. package/dist/chunk-MTS5SZLA.mjs.map +1 -0
  47. package/dist/chunk-MUNAP5TM.cjs +2 -0
  48. package/dist/chunk-MUNAP5TM.cjs.map +1 -0
  49. package/dist/chunk-NAXAZJJY.mjs +2 -0
  50. package/dist/chunk-NAXAZJJY.mjs.map +1 -0
  51. package/dist/chunk-OGJMSGB2.mjs +2 -0
  52. package/dist/chunk-OGJMSGB2.mjs.map +1 -0
  53. package/dist/chunk-OIYXOKTT.cjs +2 -0
  54. package/dist/chunk-OIYXOKTT.cjs.map +1 -0
  55. package/dist/chunk-OS5AJMYJ.cjs +2 -0
  56. package/dist/chunk-OS5AJMYJ.cjs.map +1 -0
  57. package/dist/chunk-Q3SCM6WL.mjs +2 -0
  58. package/dist/chunk-Q3SCM6WL.mjs.map +1 -0
  59. package/dist/chunk-SWMJQOH6.cjs +2 -0
  60. package/dist/chunk-SWMJQOH6.cjs.map +1 -0
  61. package/dist/chunk-TEBJWAVU.mjs +2 -0
  62. package/dist/chunk-TEBJWAVU.mjs.map +1 -0
  63. package/dist/chunk-TJWKS54T.mjs +2 -0
  64. package/dist/chunk-TJWKS54T.mjs.map +1 -0
  65. package/dist/chunk-UQUWMHVF.cjs +2 -0
  66. package/dist/chunk-UQUWMHVF.cjs.map +1 -0
  67. package/dist/chunk-UXUWSRVV.cjs +2 -0
  68. package/dist/chunk-UXUWSRVV.cjs.map +1 -0
  69. package/dist/chunk-VP7XUOSI.cjs +2 -0
  70. package/dist/chunk-VP7XUOSI.cjs.map +1 -0
  71. package/dist/chunk-VXL2ZZ4X.cjs +2 -0
  72. package/dist/chunk-VXL2ZZ4X.cjs.map +1 -0
  73. package/dist/chunk-WRFDB3QJ.cjs +2 -0
  74. package/dist/chunk-WRFDB3QJ.cjs.map +1 -0
  75. package/dist/chunk-WTCBORPB.cjs +2 -0
  76. package/dist/chunk-WTCBORPB.cjs.map +1 -0
  77. package/dist/chunk-XNJLSA6P.cjs +2 -0
  78. package/dist/chunk-XNJLSA6P.cjs.map +1 -0
  79. package/dist/chunk-YQGZMWDT.mjs +2 -0
  80. package/dist/chunk-YQGZMWDT.mjs.map +1 -0
  81. package/dist/chunk-YXLFOEZN.mjs +2 -0
  82. package/dist/chunk-YXLFOEZN.mjs.map +1 -0
  83. package/dist/chunk-ZAKA4TGK.cjs +2 -0
  84. package/dist/chunk-ZAKA4TGK.cjs.map +1 -0
  85. package/dist/chunk-ZQRACIGR.mjs +2 -0
  86. package/dist/chunk-ZQRACIGR.mjs.map +1 -0
  87. package/dist/contexts/exports.cjs +2 -0
  88. package/dist/contexts/exports.cjs.map +1 -0
  89. package/dist/contexts/{index.d.ts → exports.d.cts} +19 -28
  90. package/dist/contexts/{index.d.cts → exports.d.ts} +19 -28
  91. package/dist/contexts/exports.mjs +2 -0
  92. package/dist/contexts/exports.mjs.map +1 -0
  93. package/dist/contracts-CQIPk0Jc.d.cts +74 -0
  94. package/dist/contracts-CQIPk0Jc.d.ts +74 -0
  95. package/dist/{defaultFlags-V-tJs2K8.d.cts → defaultFlags-d0kPbT0i.d.cts} +1 -1
  96. package/dist/{defaultFlags-V-tJs2K8.d.ts → defaultFlags-d0kPbT0i.d.ts} +1 -1
  97. package/dist/dex-C_BB0b0O.d.cts +37 -0
  98. package/dist/dex-C_BB0b0O.d.ts +37 -0
  99. package/dist/enum/exports.cjs +2 -0
  100. package/dist/enum/exports.cjs.map +1 -0
  101. package/dist/enum/exports.d.cts +24 -0
  102. package/dist/enum/exports.d.ts +24 -0
  103. package/dist/enum/exports.mjs +2 -0
  104. package/dist/enum/exports.mjs.map +1 -0
  105. package/dist/errors/exports.cjs +2 -0
  106. package/dist/errors/exports.cjs.map +1 -0
  107. package/dist/errors/exports.d.cts +385 -0
  108. package/dist/errors/exports.d.ts +385 -0
  109. package/dist/errors/exports.mjs +2 -0
  110. package/dist/{getValidatorQueuedOperatorAddress-9xY2RUGe.d.cts → getValidatorQueuedOperatorAddress-BX35p2Lv.d.ts} +125 -15
  111. package/dist/{getValidatorQueuedOperatorAddress-Ne2zoiiV.d.ts → getValidatorQueuedOperatorAddress-It0GsdvQ.d.cts} +125 -15
  112. package/dist/global.d-Ba-NIojH.d.cts +474 -0
  113. package/dist/global.d-By70bEv2.d.ts +474 -0
  114. package/dist/honey-CYm0RWf4.d.cts +14 -0
  115. package/dist/honey-CYm0RWf4.d.ts +14 -0
  116. package/dist/hooks/exports.cjs +4 -0
  117. package/dist/hooks/exports.cjs.map +1 -0
  118. package/dist/hooks/{index.d.cts → exports.d.cts} +223 -173
  119. package/dist/hooks/{index.d.ts → exports.d.ts} +223 -173
  120. package/dist/hooks/exports.mjs +4 -0
  121. package/dist/hooks/exports.mjs.map +1 -0
  122. package/dist/{BexStatusProvider-nS3NcdxI.d.cts → transactionStore-BvStaXf3.d.ts} +41 -1
  123. package/dist/{BexStatusProvider-nS3NcdxI.d.ts → transactionStore-CQrGYSY2.d.cts} +41 -1
  124. package/dist/{txnEnum-BQKDfaeH.d.cts → txnEnum-BYNbCxla.d.cts} +1 -0
  125. package/dist/{txnEnum-BQKDfaeH.d.ts → txnEnum-BYNbCxla.d.ts} +1 -0
  126. package/dist/types/exports.cjs +1 -0
  127. package/dist/types/exports.cjs.map +1 -0
  128. package/dist/types/exports.d.cts +58 -0
  129. package/dist/types/exports.d.ts +58 -0
  130. package/dist/types/exports.mjs +1 -0
  131. package/dist/{useHoneySwapState-C-9BV4VB.d.cts → useHoneySwapState-B-vmIP1b.d.cts} +1 -1
  132. package/dist/{useHoneySwapState-CUY5Sm1b.d.ts → useHoneySwapState-D1DKG_Of.d.ts} +1 -1
  133. package/dist/utils/exports.cjs +2 -0
  134. package/dist/utils/exports.cjs.map +1 -0
  135. package/dist/utils/{index.d.cts → exports.d.cts} +83 -20
  136. package/dist/utils/{index.d.ts → exports.d.ts} +83 -20
  137. package/dist/utils/exports.mjs +2 -0
  138. package/dist/utils/exports.mjs.map +1 -0
  139. package/package.json +16 -17
  140. package/src/abi/{index.ts → exports.ts} +3 -0
  141. package/src/abi/pol/LSTStakerVault.ts +2032 -0
  142. package/src/abi/utils/openChainErrors.ts +71 -30
  143. package/src/abi/utils/thirdwebMinimalAccount.ts +616 -0
  144. package/src/actions/clients/BeraApolloClient.ts +8 -6
  145. package/src/actions/dex/__tests__/aggregators.unit.test.ts +2 -5
  146. package/src/actions/dex/aggregators/base.ts +74 -16
  147. package/src/actions/dex/aggregators/bex.ts +54 -74
  148. package/src/actions/dex/aggregators/bgt.ts +31 -8
  149. package/src/actions/dex/aggregators/{enso.ts → enso/enso.ts} +18 -14
  150. package/src/actions/dex/aggregators/enso/ensoErc4626.debug.test.ts +37 -0
  151. package/src/actions/dex/aggregators/enso/ensoErc4626.ts +176 -0
  152. package/src/actions/dex/aggregators/erc4626.ts +122 -0
  153. package/src/actions/dex/aggregators/fly.ts +59 -53
  154. package/src/actions/dex/aggregators/haiku.ts +52 -54
  155. package/src/actions/dex/aggregators/honey.ts +54 -45
  156. package/src/actions/dex/aggregators/kyberswap.ts +41 -39
  157. package/src/actions/dex/aggregators/oogabooga.ts +47 -46
  158. package/src/actions/dex/aggregators/openOcean.ts +51 -46
  159. package/src/actions/dex/aggregators/wbera.ts +54 -42
  160. package/src/actions/dex/b-sdk.ts +5 -2
  161. package/src/actions/dex/getIsTokenExploited.ts +2 -2
  162. package/src/actions/enso/{zap.ts → getEnsoSwapBundle.ts} +4 -5
  163. package/src/actions/enso/getEnsoUserTokensWithBalances.debug.test.ts +73 -0
  164. package/src/actions/enso/{getEnsoUserToken.ts → getEnsoUserTokensWithBalances.ts} +42 -30
  165. package/src/actions/enso/util.ts +1 -1
  166. package/src/actions/{index.ts → exports.ts} +5 -0
  167. package/src/actions/governance/__tests__/checkProposalField.unit.test.ts +1 -1
  168. package/src/actions/governance/__tests__/getQuorum.integration.test.ts +1 -1
  169. package/src/actions/governance/checkProposalField.ts +1 -1
  170. package/src/actions/governance/computeActualStatus.ts +1 -1
  171. package/src/actions/governance/getBodyErrors.ts +1 -1
  172. package/src/actions/governance/getDecodedFunctionData.ts +1 -4
  173. package/src/actions/governance/getProposalDetails.ts +2 -2
  174. package/src/actions/governance/getProposalFromTx.ts +1 -2
  175. package/src/actions/governance/getProposalParams.ts +7 -8
  176. package/src/actions/governance/getQuorum.ts +1 -2
  177. package/src/actions/honey/getCollateralWeights.ts +1 -1
  178. package/src/actions/honey/getHoneyCollaterals.ts +1 -0
  179. package/src/actions/honey/getHoneyVaultsBalance.ts +51 -55
  180. package/src/actions/honey/getSwapPayload.ts +37 -35
  181. package/src/actions/honey/tests/pyth.integration.test.ts +0 -1
  182. package/src/actions/pol/__tests__/getAllValidators.integration.test.ts +1 -1
  183. package/src/actions/pol/getEarnedStakedBeraVault.ts +31 -0
  184. package/src/actions/pol/getGlobalData.ts +14 -13
  185. package/src/actions/pol/getLSTStakeConfig.ts +67 -0
  186. package/src/actions/pol/getMarkets.ts +1 -1
  187. package/src/actions/pol/getRewardProofsByValidator.ts +1 -1
  188. package/src/actions/pol/getRewardVaultIncentives.ts +3 -5
  189. package/src/actions/pol/getRewardVaults.ts +2 -3
  190. package/src/actions/pol/getSWBeraVaultMetadata.ts +7 -5
  191. package/src/actions/pol/getSWBeraWithdrawal.ts +41 -27
  192. package/src/actions/pol/getStakeWithdrawalCooldown.ts +5 -7
  193. package/src/actions/pol/getStakingDailyAssets.ts +21 -0
  194. package/src/actions/pol/getStakingTokenInformation.ts +3 -4
  195. package/src/actions/pol/getTotalStakedAmount.ts +47 -0
  196. package/src/actions/pol/getUserClaimableIncentives.ts +1 -1
  197. package/src/actions/pol/getUserVaults.ts +8 -6
  198. package/src/actions/pol/getUserVaultsBalance.ts +4 -16
  199. package/src/actions/prices/getTokenCurrentPrices.ts +8 -3
  200. package/src/actions/tokens/getAllowances.ts +68 -41
  201. package/src/actions/tokens/getTokenInformation.ts +4 -1
  202. package/src/actions/tokens/getTokens.ts +1 -1
  203. package/src/actions/tokens/getUnderlyingToken.ts +53 -0
  204. package/src/actions/tokens/getWalletBalances.integration.test.ts +53 -14
  205. package/src/actions/tokens/getWalletBalances.ts +69 -43
  206. package/src/actions/transactions/beraWriteContract.integration.test.ts +18 -6
  207. package/src/actions/transactions/beraWriteContract.ts +3 -3
  208. package/src/actions/validators/getUserActiveValidators.ts +2 -3
  209. package/src/actions/validators/getUserBoostsOnValidator.ts +2 -3
  210. package/src/contexts/BeraFlags/defaultFlags.ts +4 -0
  211. package/src/contexts/SwrFallback.tsx +13 -3
  212. package/src/contexts/TokensProvider.tsx +35 -8
  213. package/src/{hooks/transactions → contexts}/TransactionStoreContext.tsx +32 -4
  214. package/src/contexts/block-time-provider.tsx +1 -1
  215. package/src/contexts/{index.ts → exports.ts} +1 -1
  216. package/src/data/contracts.ts +16 -1
  217. package/src/enum/contracts.ts +13 -0
  218. package/src/enum/dex.ts +29 -0
  219. package/src/enum/{index.ts → exports.ts} +3 -0
  220. package/src/enum/governance.ts +61 -0
  221. package/src/enum/honey.ts +12 -0
  222. package/src/enum/txnEnum.ts +1 -0
  223. package/src/errors/BeraError.ts +50 -11
  224. package/src/errors/BeraMonitoring.ts +66 -0
  225. package/src/errors/BeraTracing.ts +79 -0
  226. package/src/errors/BeraTracing.unit.test.ts +198 -0
  227. package/src/errors/RequestError.ts +2 -2
  228. package/src/errors/assert.ts +4 -2
  229. package/src/errors/assert.unit.test.ts +6 -2
  230. package/src/errors/errorMap.ts +16 -6
  231. package/src/errors/{index.ts → exports.ts} +7 -0
  232. package/src/errors/getErrorMessage.ts +22 -3
  233. package/src/errors/getRevertReason.integration.test.ts +17 -5
  234. package/src/errors/getRevertReason.ts +41 -2
  235. package/src/errors/initBeraError.ts +52 -7
  236. package/src/errors/parseViemError.ts +114 -27
  237. package/src/errors/severity.ts +12 -0
  238. package/src/hooks/bend/useGetConvertToAssets.ts +3 -2
  239. package/src/hooks/dex/useAggregatorsQuotes.ts +126 -365
  240. package/src/hooks/dex/useAllUserPools.ts +1 -1
  241. package/src/hooks/dex/useApiPool.ts +1 -1
  242. package/src/hooks/dex/useCreatePool.ts +6 -5
  243. package/src/hooks/dex/useExploitedTokens.ts +1 -1
  244. package/src/hooks/dex/useLiquidityMismatch.ts +2 -5
  245. package/src/hooks/dex/useLpPosition.ts +21 -20
  246. package/src/hooks/dex/useMultipleTokenApprovalsWithSlippage.ts +40 -29
  247. package/src/hooks/dex/usePollPoolCreationRelayerApproval.ts +1 -1
  248. package/src/hooks/dex/usePoolEvents.ts +1 -1
  249. package/src/hooks/dex/usePools.ts +1 -1
  250. package/src/hooks/dex/usePriceImpact.ts +40 -0
  251. package/src/hooks/dex/useSingleAggregatorQuote.ts +350 -0
  252. package/src/hooks/enso/useBendZapSupply.ts +216 -0
  253. package/src/hooks/enso/useEnsoSwapBundle.ts +107 -0
  254. package/src/hooks/enso/useEnsoUserTokensWithBalances.ts +43 -0
  255. package/src/hooks/enso/useZapStakeBera.ts +113 -0
  256. package/src/hooks/{index.ts → exports.ts} +18 -7
  257. package/src/hooks/governance/useCreateProposal.ts +8 -8
  258. package/src/hooks/governance/usePollAllProposals.ts +1 -1
  259. package/src/hooks/governance/usePollProposal.ts +1 -1
  260. package/src/hooks/governance/usePollProposalThreshold.ts +1 -1
  261. package/src/hooks/governance/usePollUserDelegates.ts +1 -1
  262. package/src/hooks/governance/useProposalState.ts +2 -2
  263. package/src/hooks/honey/useCappedGlobally.ts +2 -1
  264. package/src/hooks/honey/useCappedRelatively.ts +1 -1
  265. package/src/hooks/honey/useCollateralWeights.ts +2 -1
  266. package/src/hooks/honey/useHoneyAlerts.ts +11 -11
  267. package/src/hooks/honey/useHoneyBalances.ts +7 -3
  268. package/src/hooks/honey/useHoneyGlobalData.ts +2 -1
  269. package/src/hooks/honey/useHoneySwapState.ts +2 -1
  270. package/src/hooks/honey/useHoneyVaultsBalance.ts +1 -1
  271. package/src/hooks/honey/useIsBadCollateralAsset.ts +2 -1
  272. package/src/hooks/honey/useIsBasketModeEnabled.ts +1 -1
  273. package/src/hooks/honey/usePythLatestPrices.ts +1 -1
  274. package/src/hooks/pol/useOnChainRewardVault.ts +3 -2
  275. package/src/hooks/pol/usePollGlobalData.ts +1 -1
  276. package/src/hooks/pol/usePollMarkets.ts +1 -1
  277. package/src/hooks/pol/useQueuedBeraUnlock.ts +17 -15
  278. package/src/hooks/pol/useRewardTokenToBeraRate.ts +6 -3
  279. package/src/hooks/pol/useRewardVault.ts +1 -1
  280. package/src/hooks/pol/useRewardVaults.ts +1 -1
  281. package/src/hooks/pol/useSWBeraVaultMetadata.ts +35 -0
  282. package/src/hooks/pol/useStakedAPR.ts +38 -0
  283. package/src/hooks/pol/useStakedData.ts +117 -0
  284. package/src/hooks/pol/useStakedSnapshots.ts +52 -0
  285. package/src/hooks/pol/useTotalStakedAmount.ts +30 -0
  286. package/src/hooks/pol/useUserVaultInfo.ts +1 -1
  287. package/src/hooks/pol/useVaultValidators.ts +1 -1
  288. package/src/hooks/tokens/useMultipleTokenInformation.ts +15 -6
  289. package/src/hooks/tokens/usePollAllowances.ts +15 -19
  290. package/src/hooks/tokens/usePollBalance.ts +8 -4
  291. package/src/hooks/tokens/usePollWalletBalances.ts +14 -11
  292. package/src/hooks/tokens/useStakingTokenInformation.ts +2 -1
  293. package/src/hooks/tokens/useTokenCurrentPrice.ts +4 -2
  294. package/src/hooks/tokens/useTokenCurrentPrices.ts +92 -13
  295. package/src/hooks/tokens/useTokenInformation.ts +11 -6
  296. package/src/hooks/tokens/useTokenPrice.ts +21 -0
  297. package/src/hooks/tokens/useTokenPrices.ts +133 -0
  298. package/src/hooks/tokens/useTokens.ts +1 -0
  299. package/src/hooks/tokens/useUnderlyingAsset.ts +23 -0
  300. package/src/hooks/transactions/transactionStore.ts +86 -65
  301. package/src/hooks/transactions/transactionStore.unit.test.ts +54 -1
  302. package/src/hooks/transactions/useAddRecentTransaction.ts +1 -1
  303. package/src/hooks/transactions/useRecentTransactions.ts +1 -1
  304. package/src/hooks/transactions/useSetTransactionStatus.ts +31 -0
  305. package/src/hooks/useContractWrite/useBeraContractWrite.ts +2 -1
  306. package/src/hooks/validators/useAllValidators.ts +1 -1
  307. package/src/hooks/validators/useApiValidator.ts +1 -1
  308. package/src/hooks/validators/useDailyValidatorBlockStats.ts +1 -1
  309. package/src/hooks/validators/useManagedValidatorByAccount.ts +1 -1
  310. package/src/hooks/validators/useManagedValidatorRole.ts +1 -1
  311. package/src/hooks/validators/useOnChainValidator.ts +1 -1
  312. package/src/hooks/validators/useStakingPoolBatch.ts +1 -1
  313. package/src/hooks/validators/useUserActiveValidators.ts +1 -1
  314. package/src/hooks/validators/useUserBoostsOnValidator.ts +1 -1
  315. package/src/hooks/validators/useUserClaimableIncentives.ts +8 -8
  316. package/src/hooks/validators/useValidator.ts +1 -1
  317. package/src/hooks/validators/useValidatorAnalytics.ts +1 -1
  318. package/src/hooks/validators/useValidatorCommission.ts +1 -1
  319. package/src/hooks/validators/useValidatorQueuedCommission.ts +1 -1
  320. package/src/hooks/validators/useValidatorQueuedOperatorAddress.ts +1 -1
  321. package/src/hooks/validators/useValidatorQueuedRewardAllocation.ts +1 -1
  322. package/src/hooks/validators/useValidatorRewardAllocation.ts +1 -1
  323. package/src/types/{dex.ts → dex.d.ts} +96 -67
  324. package/src/types/{enso.ts → enso.d.ts} +1 -1
  325. package/src/types/exports.ts +8 -0
  326. package/src/types/{global.ts → global.d.ts} +1 -30
  327. package/src/types/{governance.ts → governance.d.ts} +2 -64
  328. package/src/types/{honeySwap.ts → honeySwap.d.ts} +1 -13
  329. package/src/types/{pol.ts → pol.d.ts} +12 -1
  330. package/src/types/staking.d.ts +22 -0
  331. package/src/utils/createEmitter.ts +122 -0
  332. package/src/utils/createEmitter.unit.test.ts +149 -0
  333. package/src/utils/{index.ts → exports.ts} +3 -2
  334. package/src/utils/filter.ts +34 -0
  335. package/src/utils/formatNumber.ts +1 -1
  336. package/src/utils/formatNumber.unit.test.ts +2 -1
  337. package/src/utils/formatTokenList.ts +4 -10
  338. package/src/utils/getHoneySwapMessage.test.ts +1 -2
  339. package/src/utils/getServerSideClient.ts +4 -5
  340. package/src/utils/isDifferenceExceedingThreshold.ts +1 -1
  341. package/src/utils/layerZeroScan.ts +122 -0
  342. package/src/utils/math.ts +1 -1
  343. package/src/utils/parseWhiskToken.ts +15 -0
  344. package/src/utils/poolNamings.ts +1 -1
  345. package/src/utils/tokens.ts +23 -7
  346. package/dist/HoneyConfigProvider-6PXZJMSU.d.cts +0 -562
  347. package/dist/HoneyConfigProvider-CwDFrt02.d.ts +0 -562
  348. package/dist/abi/index.cjs +0 -2
  349. package/dist/abi/index.cjs.map +0 -1
  350. package/dist/abi/index.mjs +0 -2
  351. package/dist/actions/index.cjs +0 -2
  352. package/dist/actions/index.cjs.map +0 -1
  353. package/dist/actions/index.mjs +0 -2
  354. package/dist/aggregatorsRouter-Cny4B_MB.d.cts +0 -593
  355. package/dist/aggregatorsRouter-Cny4B_MB.d.ts +0 -593
  356. package/dist/chunk-22MQVFHP.cjs +0 -2
  357. package/dist/chunk-22MQVFHP.cjs.map +0 -1
  358. package/dist/chunk-3TKSVFZ3.mjs +0 -2
  359. package/dist/chunk-3TKSVFZ3.mjs.map +0 -1
  360. package/dist/chunk-6VF3RF53.cjs +0 -3
  361. package/dist/chunk-6VF3RF53.cjs.map +0 -1
  362. package/dist/chunk-6W22TFYA.mjs +0 -2
  363. package/dist/chunk-6W22TFYA.mjs.map +0 -1
  364. package/dist/chunk-AMRJ4B36.mjs +0 -2
  365. package/dist/chunk-AMRJ4B36.mjs.map +0 -1
  366. package/dist/chunk-DS2ZDVKU.mjs +0 -2
  367. package/dist/chunk-DS2ZDVKU.mjs.map +0 -1
  368. package/dist/chunk-ED43NYSE.cjs +0 -2
  369. package/dist/chunk-ED43NYSE.cjs.map +0 -1
  370. package/dist/chunk-EU4WFADK.cjs +0 -2
  371. package/dist/chunk-EU4WFADK.cjs.map +0 -1
  372. package/dist/chunk-HCTFDGXL.mjs +0 -2
  373. package/dist/chunk-HCTFDGXL.mjs.map +0 -1
  374. package/dist/chunk-IOSYBHKU.mjs +0 -2
  375. package/dist/chunk-IOSYBHKU.mjs.map +0 -1
  376. package/dist/chunk-JMKLDDKY.cjs +0 -2
  377. package/dist/chunk-JMKLDDKY.cjs.map +0 -1
  378. package/dist/chunk-KMKUXP2S.mjs +0 -3
  379. package/dist/chunk-KMKUXP2S.mjs.map +0 -1
  380. package/dist/chunk-OJXJ6CZ4.mjs +0 -4
  381. package/dist/chunk-OJXJ6CZ4.mjs.map +0 -1
  382. package/dist/chunk-PHIOKO3A.mjs +0 -2
  383. package/dist/chunk-PHIOKO3A.mjs.map +0 -1
  384. package/dist/chunk-QCK474XD.cjs +0 -2
  385. package/dist/chunk-QCK474XD.cjs.map +0 -1
  386. package/dist/chunk-REDXXUK7.cjs +0 -2
  387. package/dist/chunk-REDXXUK7.cjs.map +0 -1
  388. package/dist/chunk-S74ZMG2G.cjs +0 -2
  389. package/dist/chunk-S74ZMG2G.cjs.map +0 -1
  390. package/dist/chunk-TOAXF4YW.cjs +0 -2
  391. package/dist/chunk-TOAXF4YW.cjs.map +0 -1
  392. package/dist/chunk-UZ5CB33M.cjs +0 -2
  393. package/dist/chunk-UZ5CB33M.cjs.map +0 -1
  394. package/dist/chunk-VYWYJR63.mjs +0 -2
  395. package/dist/chunk-VYWYJR63.mjs.map +0 -1
  396. package/dist/chunk-XFPTQMAK.cjs +0 -4
  397. package/dist/chunk-XFPTQMAK.cjs.map +0 -1
  398. package/dist/chunk-YK4NINF5.mjs +0 -2
  399. package/dist/chunk-YK4NINF5.mjs.map +0 -1
  400. package/dist/contexts/index.cjs +0 -2
  401. package/dist/contexts/index.cjs.map +0 -1
  402. package/dist/contexts/index.mjs +0 -2
  403. package/dist/contexts/index.mjs.map +0 -1
  404. package/dist/enum/index.cjs +0 -2
  405. package/dist/enum/index.cjs.map +0 -1
  406. package/dist/enum/index.d.cts +0 -31
  407. package/dist/enum/index.d.ts +0 -31
  408. package/dist/enum/index.mjs +0 -2
  409. package/dist/enum/index.mjs.map +0 -1
  410. package/dist/errors/index.cjs +0 -2
  411. package/dist/errors/index.cjs.map +0 -1
  412. package/dist/errors/index.d.cts +0 -204
  413. package/dist/errors/index.d.ts +0 -204
  414. package/dist/errors/index.mjs +0 -2
  415. package/dist/errors/index.mjs.map +0 -1
  416. package/dist/hooks/index.cjs +0 -4
  417. package/dist/hooks/index.cjs.map +0 -1
  418. package/dist/hooks/index.mjs +0 -4
  419. package/dist/hooks/index.mjs.map +0 -1
  420. package/dist/staking-F9Nx9TKD.d.ts +0 -246
  421. package/dist/staking-f4BpYH7l.d.cts +0 -246
  422. package/dist/types/index.cjs +0 -2
  423. package/dist/types/index.cjs.map +0 -1
  424. package/dist/types/index.d.cts +0 -56
  425. package/dist/types/index.d.ts +0 -56
  426. package/dist/types/index.mjs +0 -2
  427. package/dist/types/index.mjs.map +0 -1
  428. package/dist/utils/index.cjs +0 -2
  429. package/dist/utils/index.cjs.map +0 -1
  430. package/dist/utils/index.mjs +0 -2
  431. package/dist/utils/index.mjs.map +0 -1
  432. package/src/actions/dex/getTransactionCount.ts +0 -29
  433. package/src/actions/enso/bend.ts +0 -143
  434. package/src/actions/enso/getEnsoUserToken.debug.test.ts +0 -57
  435. package/src/contexts/berajsProvider/context.tsx +0 -49
  436. package/src/contexts/berajsProvider/index.ts +0 -2
  437. package/src/contexts/berajsProvider/useBeraJs.ts +0 -18
  438. package/src/hooks/dex/usePollVaultIsPaused.ts +0 -30
  439. package/src/hooks/enso/useBendTransactionRequests.ts +0 -247
  440. package/src/hooks/enso/useEnsoZap.ts +0 -166
  441. package/src/hooks/enso/useZapTransactionRequests.ts +0 -81
  442. package/src/hooks/pol/useEarnedStakedBeraVault.ts +0 -59
  443. package/src/hooks/pol/useStakedBeraSnapshots.ts +0 -27
  444. package/src/hooks/validators/validatorRoleManager.ts +0 -0
  445. package/src/types/index.ts +0 -8
  446. package/src/types/staking.ts +0 -7
  447. package/src/utils/formatAggregatorsQuotes.ts +0 -57
  448. package/src/utils/formatAggregatorsQuotes.unit.test.ts +0 -191
  449. package/src/utils/sentryBeforeSend.ts +0 -52
  450. /package/dist/{abi/index.mjs.map → errors/exports.mjs.map} +0 -0
  451. /package/dist/{actions/index.mjs.map → types/exports.mjs.map} +0 -0
  452. /package/src/actions/dex/{__tests__ → aggregators}/haiku.integration.test.ts +0 -0
  453. /package/src/types/{bribe-boost.ts → bribe-boost.d.ts} +0 -0
@@ -1,562 +0,0 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import * as react from 'react';
3
- import { Address, PublicClient, Abi, ContractFunctionName, ContractFunctionArgs, TransactionReceipt, WalletCallReceipt, Hex, Account } from 'viem';
4
- import { Token as Token$1 } from '@berachain/graphql/pol/api';
5
- import { SwapKind } from '@berachain-foundation/berancer-sdk';
6
- import { a as aggregatorsRouterAbi } from './aggregatorsRouter-Cny4B_MB.cjs';
7
- import { Config, GetWalletClientReturnType } from '@wagmi/core';
8
- import { SWRConfiguration, SWRResponse } from 'swr';
9
- import { ChainId, BeraConfig } from '@berachain/config';
10
- import { T as TransactionActionType } from './txnEnum-BQKDfaeH.cjs';
11
- import { B as BeraError } from './BeraError-D1HS_rbb.cjs';
12
-
13
- interface CollateralRates {
14
- mintFee: number;
15
- redeemFee: number;
16
- }
17
- interface HoneyFeeMap {
18
- single: Record<Address, CollateralRates>;
19
- basket: CollateralRates;
20
- }
21
- interface CollateralRatesArgs extends BeraJS.BaseFunctionArgs {
22
- client: PublicClient;
23
- collateralList: Token$1[];
24
- }
25
- /**
26
- * Fetches the mint and redeem rates for all collateral tokens and calculates the weighted basket rates
27
- * @param {Object} params - The parameters object
28
- * @param {PublicClient} params.client - The Viem public client instance
29
- * @param {Address[]} params.collateralList - Array of collateral token addresses
30
- * @returns {Promise<HoneyFeeMap | undefined>} Object containing individual collateral rates and weighted basket rates,
31
- * or undefined if the operation fails
32
- */
33
- declare function getHoneyFees({ client, collateralList, ...args }: CollateralRatesArgs): Promise<HoneyFeeMap>;
34
-
35
- interface UseContractWriteApi {
36
- isLoading: boolean;
37
- isSubmitting: boolean;
38
- isSuccess: boolean;
39
- isError: boolean;
40
- write: IContractWriteFn;
41
- reset: () => void;
42
- }
43
- type PropagatedArgs<args> = Omit<args, TxnEventKeys | "contractName"> & {
44
- contractName?: string;
45
- };
46
- type TxnEventKeys = "onSuccess" | "onError" | "onLoading" | "onSubmission" | "onWarning";
47
- interface IUseContractWriteArgs<abi extends Abi | undefined = undefined, functionName extends abi extends Abi ? ContractFunctionName<abi> : never = abi extends Abi ? ContractFunctionName<abi> : never, params extends abi extends Abi ? ContractFunctionArgs<abi, "payable" | "nonpayable", functionName> : never = abi extends Abi ? ContractFunctionArgs<abi, "payable" | "nonpayable", functionName> : never> {
48
- onSuccess?: (receipts: TransactionReceipt | WalletCallReceipt<bigint, "success" | "reverted">,
49
- /**
50
- * Arguments that were used to call the write function.
51
- */
52
- writeArgs: PropagatedArgs<IContractWrite<abi, functionName, params>>) => void;
53
- onError?: (e: BeraError,
54
- /**
55
- * Arguments that were used to call the write function.
56
- */
57
- writeArgs: PropagatedArgs<IContractWrite<abi, functionName, params>>) => void;
58
- onLoading?: (
59
- /**
60
- * Arguments that were used to call the write function.
61
- */
62
- writeArgs: PropagatedArgs<IContractWrite<abi, functionName, params>>) => void;
63
- onSubmission?: (
64
- /**
65
- * @param args.id If request is a batch call, this will be the id of the request to the wallet provider
66
- * @param args.txHash If request is a single transaction, this will be the hash of the transaction to wait for
67
- */
68
- args: {
69
- txHash: Hex;
70
- id?: never;
71
- } | {
72
- id: string;
73
- txHash?: never;
74
- },
75
- /**
76
- * Arguments that were used to call the write function.
77
- */
78
- writeArgs: PropagatedArgs<IContractWrite<abi, functionName, params>>) => void;
79
- /**
80
- * Callback function executed when a transaction encounters a warning. Transaction will still be submitted.
81
- */
82
- onWarning?: (e: BeraError, writeArgs: Omit<IContractWrite<abi, functionName, params>, TxnEventKeys>) => void;
83
- }
84
-
85
- type DefaultHookOptions = {
86
- opts?: SWRConfiguration & {
87
- isEnabled?: boolean;
88
- };
89
- };
90
- type DefaultHookReturnType<T = any> = Omit<SWRResponse<T, any, any>, "mutate"> & {
91
- refresh: () => void;
92
- };
93
- interface TokenBalance {
94
- address: Address;
95
- /**
96
- * Balance in wei, should be string to be serializable in JSON
97
- */
98
- balance: bigint | string;
99
- formattedBalance: string;
100
- /**
101
- * Balance in USD
102
- */
103
- usdValue?: number;
104
- }
105
- interface AllowanceToken extends Token {
106
- allowance: bigint;
107
- formattedAllowance: string;
108
- }
109
- type IContractWriteFn = <abi extends Abi | undefined = undefined, functionName extends abi extends Abi ? ContractFunctionName<abi> : never = abi extends Abi ? ContractFunctionName<abi> : never, params extends abi extends Abi ? ContractFunctionArgs<abi, "payable" | "nonpayable", functionName> : never = abi extends Abi ? ContractFunctionArgs<abi, "payable" | "nonpayable", functionName> : never>(props: IContractWrite<abi, functionName, params>) => Promise<TransactionReceipt | WalletCallReceipt<bigint, "success" | "reverted"> | undefined>;
110
- /**
111
- * Posthog must be able to serialize this. BigInts are not supported.
112
- */
113
- type AllowedEventData = number | string | boolean | null | undefined;
114
- type EventData = Record<string, AllowedEventData | AllowedEventData[] | Record<string, AllowedEventData | AllowedEventData[] | Record<string, AllowedEventData | AllowedEventData[]>>>;
115
- /**
116
- * A list of contract names that are not mapped in the devrel's contract mapping or that are generated by factories (e.g. RewardVault).
117
- */
118
- declare enum ContractName {
119
- ENSO_ROUTER = "enso.router",
120
- POL_REWARD_VAULT = "pol.rewardVault",
121
- BEX_POOL = "bex.pool",
122
- ERC20 = "others.erc20",
123
- BEX_EXPLOITED_FUND_DISTRIBUTOR = "bex.exploitedFundDistributor"
124
- }
125
- type IContractWrite<abi extends Abi | undefined = undefined, functionName extends abi extends Abi ? ContractFunctionName<abi> : never = abi extends Abi ? ContractFunctionName<abi> : never, params extends abi extends Abi ? ContractFunctionArgs<abi, "payable" | "nonpayable", functionName> : never = abi extends Abi ? ContractFunctionArgs<abi, "payable" | "nonpayable", functionName> : never> = {
126
- /**
127
- * A message that will be shown to user while the transaction is pending.
128
- *
129
- * @example "Sending approvals"
130
- */
131
- message: string;
132
- /**
133
- * The chain ID of the transaction.
134
- *
135
- * @default berachainChainId
136
- */
137
- chainId?: ChainId;
138
- /**
139
- * The type of transaction to be performed. It will be stored in the transaction history.
140
- *
141
- * Generally uses infinite tense.
142
- * @example TransactionActionType.APPROVAL => "Approve tokens"
143
- */
144
- actionType: TransactionActionType;
145
- txnName?: string;
146
- gasLimit?: bigint;
147
- account?: Account | Address;
148
- /**
149
- * Wheter the transaction can be sent by any account. Before setting this to true, make sure smart contract doesn't rely on `msg.sender`.
150
- *
151
- * Only transaction with permissionless flag set to true can be sent with overriden account.
152
- * Everything else will throw an error.
153
- */
154
- permissionless?: boolean;
155
- /**
156
- * The event to be tracked more specifically.
157
- * If not provided, the event will be tracked with the message and actionType.
158
- */
159
- track?: {
160
- eventName: string;
161
- eventData?: EventData;
162
- };
163
- /**
164
- * A wagmi config used to get wallet clients, switch chains, etc.
165
- *
166
- * This is preferred over providing clients as state updates are kept synched in this config object w/o re-rendering.
167
- */
168
- wagmiConfig?: Config;
169
- /**
170
- * walletClient should only be provided for tests or scripts.
171
- *
172
- * Wagmi Config is preferred.
173
- */
174
- walletClient?: GetWalletClientReturnType | undefined;
175
- /**
176
- * The name of the contract to be used for the transaction. By default, it will be devrel's contract mapping.
177
- * Custom values will be ignored if the address is already mapped in the devrel's contract mapping.
178
- *
179
- * @example "pol.rewardVault"
180
- */
181
- contractName?: ContractName;
182
- /**
183
- * This is a canonical list of ABIs that will be used to parse the error.
184
- *
185
- * This is an useful way to parse errors when providing raw data with no ABI.
186
- */
187
- errorsAbi?: Abi;
188
- } & IUseContractWriteArgs<abi, functionName, params> & (abi extends Abi ? {
189
- abi: abi;
190
- functionName: functionName;
191
- params: params;
192
- address: Address;
193
- calls?: never;
194
- value?: bigint;
195
- } : {
196
- data: Hex;
197
- address: Address;
198
- value?: bigint;
199
- calls?: never;
200
- } | {
201
- value: bigint;
202
- address: Address;
203
- data?: Hex;
204
- calls?: never;
205
- } | {
206
- value?: never;
207
- address?: never;
208
- calls: (Omit<IContractWrite, "calls" | "gasLimit" | "account" | "address" | "message" | "actionType" | TxnEventKeys> & {
209
- address: Address;
210
- })[];
211
- });
212
- declare global {
213
- export namespace BeraJS {
214
- type BaseFunctionArgs = {
215
- /**
216
- * If only chainId is provided, config will be inferred from it
217
- *
218
- * @default `import { defaultChainId } from "@berachain/config/internal";`
219
- */
220
- chainId?: ChainId;
221
- /**
222
- * A config to infer the default values of the other arguments
223
- *
224
- * @default chainConfigs[chainId]
225
- */
226
- config?: BeraConfig;
227
- };
228
- }
229
- }
230
-
231
- type MinimalERC20 = {
232
- address: Address;
233
- decimals: number;
234
- symbol: string;
235
- name: string;
236
- };
237
- type TokenWithMetadata = MinimalERC20 & {
238
- tags?: string[];
239
- base64?: string;
240
- logoURI?: string;
241
- chainId?: number;
242
- };
243
- type Token = TokenWithMetadata & {
244
- /**
245
- * @deprecated
246
- */
247
- default?: boolean;
248
- totalSupply?: string;
249
- weight?: number | string | null;
250
- };
251
- interface TokenPriceInfo {
252
- price: number;
253
- updatedAt: number;
254
- }
255
- type TokenCurrentPriceMap = Record<Lowercase<Address> | string, TokenPriceInfo | undefined>;
256
- interface TokenWithAmount extends Token {
257
- amount: string;
258
- }
259
- interface BalanceToken extends Token {
260
- balance: bigint;
261
- formattedBalance: string;
262
- price?: number;
263
- }
264
- type BalanceTokenWithMetadata = BalanceToken & TokenWithMetadata;
265
- interface TokenInput extends Token {
266
- amount: string;
267
- exceeding: boolean;
268
- }
269
- interface SwapRequest {
270
- tokenIn: Address;
271
- tokenOut: Address;
272
- tokenInDecimals: number;
273
- tokenOutDecimals: number;
274
- amount: string;
275
- wberaIsBera: boolean;
276
- swapKind: SwapKind;
277
- }
278
- interface IUserPosition {
279
- lpBalance?: TokenBalance;
280
- tokenBalances?: TokenBalance[];
281
- userSharePercentage?: number;
282
- stakedBalance?: TokenBalance;
283
- /**
284
- * Just a utility to detect if there is a price for the LP token.
285
- */
286
- lpTokenPrice?: number;
287
- }
288
- declare enum PoolCreationStep {
289
- POOL_TYPE = "Pool Type",
290
- SELECT_TOKENS = "Select Tokens",
291
- DEPOSIT_LIQUIDITY = "Deposit Liquidity",
292
- SET_PARAMETERS = "Set Parameters",
293
- SET_INFO = "Set Info"
294
- }
295
- type BexStatus = {
296
- protocol: {
297
- /**
298
- * If the whole protocol is paused (i.e. ~the~ vault contract) disable any functionality except withdrawing proportional
299
- * liquidity (provided that pool's recovery mode is enabled). Specifically we disable swaps and pool creation.
300
- */
301
- isPaused: boolean;
302
- };
303
- /**
304
- * Pool is undefined if pool status is still loading if no pool address was provided.
305
- */
306
- pool?: {
307
- /**
308
- * Pool should be put into recovery mode if tx are reverting on-chain to do with fee computation or pool exits.
309
- * It reduces the computation needed to withdraw liquidity and does not charge protocol fees on exits while enabled.
310
- *
311
- * NOTE: that you can potentially still do regular exits/joins/etc in recovery mode, but if the flag is true will only
312
- * present the safe exit option to the user in FE.
313
- */
314
- isInRecoveryMode: boolean;
315
- /**
316
- * If the pool is paused you cannot do anything unless you also enable recovery mode (then you can withdraw safely).
317
- */
318
- isPaused: boolean;
319
- /**
320
- * Disable withdrawals for a pool due to a combination of pool and vault statuses.
321
- */
322
- disablePoolWithdrawals: boolean;
323
- /**
324
- * Disable deposits for a pool due to a combination of pool and vault statuses.
325
- */
326
- disablePoolDeposits: boolean;
327
- };
328
- };
329
- type IAggregatorArgs = {
330
- tokenIn: string;
331
- tokenOut: string;
332
- tokenInDecimals?: number;
333
- tokenOutDecimals?: number;
334
- amount: string;
335
- slippage: number;
336
- account?: Address;
337
- publicClient?: PublicClient;
338
- aggregatorsFeeBps?: number;
339
- proxyAggregatorsThroughVercel?: boolean;
340
- referrer?: SwapReferrer;
341
- /**
342
- * If provided, the aggregator will stake into the reward vault after the swap.
343
- */
344
- rewardVault?: Address;
345
- honeyNativeState?: Pick<HoneyConfigContextReturn, "collateralList">;
346
- };
347
- declare enum Aggregators {
348
- Oogabooga = "Oogabooga",
349
- Fly = "Fly",
350
- HubPools = "Hub Pools",
351
- Wrap = "Wrap",
352
- Unwrap = "Unwrap",
353
- KyberSwap = "KyberSwap",
354
- OpenOcean = "OpenOcean",
355
- Haiku = "Haiku",
356
- Enso = "Enso",
357
- RedeemBgt = "RedeemBgt",
358
- Honey = "Honey"
359
- }
360
- type IRawAggregatorQuote<isRoutedThroughAggregator = true> = {
361
- amountOut: string;
362
- amountIn: string;
363
- name: Aggregators;
364
- spender: Address | undefined;
365
- /**
366
- * True if it's bera wrap/unwrap or bgt redeem.
367
- */
368
- isNativeSwap?: boolean;
369
- priceImpactPercentage?: number;
370
- swapFeeBps: number;
371
- calldata?: isRoutedThroughAggregator extends true ? Omit<IContractWrite<typeof aggregatorsRouterAbi, "swap">, "message" | "actionType"> : {
372
- params: readonly unknown[] | undefined;
373
- functionName: string;
374
- abi: Abi;
375
- address: Address;
376
- value?: bigint;
377
- };
378
- };
379
- type IAggregatorQuote = IRawAggregatorQuote<false> & {
380
- amountOut: string;
381
- amountOutUsd: string;
382
- amountIn: string;
383
- amountInUsd: string;
384
- priceImpactPercentage: number;
385
- exchangeRate: number;
386
- relativeLossPercentage: number;
387
- isBest?: boolean;
388
- };
389
- declare enum SwapReferrer {
390
- SWAP = "SWAP",
391
- ZAP = "ZAP"
392
- }
393
-
394
- /**
395
- * Interface representing the latest Pyth price updates
396
- * @interface PythLatestUpdates
397
- * @property {`0x${string}`[]} calldata - Array of hex-encoded calldata for price updates
398
- * @property {string[]} prices - Array of formatted price strings
399
- */
400
- interface PythLatestUpdates {
401
- calldata: `0x${string}`[];
402
- prices: string[];
403
- }
404
- /**
405
- * Fetches the latest price updates from Pyth Network's Hermes service
406
- * @param {Object} params - The parameters object
407
- * @param {string[]} params.priceFeedId - Array of Pyth price feed IDs to fetch updates for
408
- * @returns {Promise<PythLatestUpdates>} Promise resolving to the latest price updates
409
- * @example
410
- * ```ts
411
- * const updates = await getPythLatestPrices({
412
- * priceFeedId: ["0x123...", "0x456..."]
413
- * });
414
- * ```
415
- */
416
- declare function getPythLatestPrices({ priceFeedId, }: {
417
- priceFeedId: string[];
418
- }): Promise<PythLatestUpdates>;
419
-
420
- declare enum HoneyPreviewMethod {
421
- Mint = "previewMintHoney",
422
- MintWithPrice = "previewMintHoneyWithPrices",
423
- RequiredCollateral = "previewMintCollaterals",
424
- RequiredCollateralWithPrice = "previewMintCollateralsWithPrices",
425
- Redeem = "previewRedeemCollaterals",
426
- RedeemWithPrice = "previewRedeemCollateralsWithPrices",
427
- HoneyToRedeem = "previewRedeemHoney",
428
- HoneyToRedeemWithPrice = "previewRedeemHoneyWithPrices"
429
- }
430
- interface HoneyPreviewArgs extends BeraJS.BaseFunctionArgs {
431
- client: PublicClient;
432
- collateral: Token;
433
- collateralList: TokenWithOrder[];
434
- amount: string;
435
- method: HoneyPreviewMethod;
436
- latestPrices?: PythLatestUpdates;
437
- isPythWrapperEnabled: boolean;
438
- }
439
- interface HoneyPreviewResult {
440
- collaterals: Record<Address, bigint>;
441
- honey: bigint;
442
- }
443
- interface HoneyPreviewReadResult {
444
- collaterals: bigint[];
445
- honey: bigint;
446
- }
447
- /**
448
- * Calculates preview amounts for Honey protocol operations including minting and redeeming.
449
- * This function handles different preview methods to calculate either the amount of Honey tokens
450
- * that can be minted with given collateral or the amount of collateral needed to mint/redeem Honey tokens.
451
- *
452
- * @param {Object} params - The parameters for the preview calculation
453
- * @param {PublicClient} params.client - The Viem public client for blockchain interaction
454
- * @param {Token} params.collateral - The primary collateral token being used
455
- * @param {Address[]} params.collateralList - List of all supported collateral tokens
456
- * @param {string} params.amount - The amount to calculate preview for (in token units)
457
- * @param {HoneyPreviewMethod} params.method - The type of preview calculation to perform
458
- * @param {PythLatestUpdates | undefined} params.latestPrices - Optional latest price updates from Pyth oracle
459
- *
460
- * @returns {Promise<HoneyPreviewResult | undefined>} An object containing:
461
- * - collaterals: Record mapping collateral token addresses to their respective amounts
462
- * - honey: The amount of Honey tokens involved in the operation
463
- *
464
- * @throws {Error} If there's an error during the contract interaction or calculation
465
- */
466
- declare function getHoneyPreview({ client, collateral, collateralList, amount, method, latestPrices, isPythWrapperEnabled, ...baseArgs }: HoneyPreviewArgs): Promise<HoneyPreviewResult | undefined>;
467
-
468
- declare enum HoneySwapAction {
469
- RESET_AMOUNTS = "RESET_AMOUNTS",
470
- ACTION_TYPE_CHANGE = "ACTION_TYPE_CHANGE",
471
- COLLATERALS_CHANGE = "COLLATERALS_CHANGE",
472
- FROM_AMOUNT_CHANGE = "FROM_AMOUNT_CHANGE",
473
- TO_AMOUNT_CHANGE = "TO_AMOUNT_CHANGE",
474
- PREVIEW_CHANGE = "PREVIEW_CHANGE",
475
- IS_BASKET_MODE_ENABLED_CHANGE = "IS_BASKET_MODE_ENABLED_CHANGE",
476
- IS_TYPING_CHANGE = "IS_TYPING_CHANGE",
477
- IS_SUBMITTING_CHANGE = "IS_SUBMITTING_CHANGE",
478
- IS_LOADING_CHANGE = "IS_LOADING_CHANGE"
479
- }
480
- type PythPriceFeedMap = Record<Address, Hex>;
481
- type HoneySwapActions = {
482
- type: HoneySwapAction.RESET_AMOUNTS;
483
- } | {
484
- type: HoneySwapAction.ACTION_TYPE_CHANGE;
485
- value: "mint" | "redeem";
486
- } | {
487
- type: HoneySwapAction.COLLATERALS_CHANGE;
488
- value: TokenWithOrder[];
489
- } | {
490
- type: HoneySwapAction.FROM_AMOUNT_CHANGE;
491
- index: number;
492
- value: string;
493
- } | {
494
- type: HoneySwapAction.TO_AMOUNT_CHANGE;
495
- index: number;
496
- value: string;
497
- } | {
498
- type: HoneySwapAction.PREVIEW_CHANGE;
499
- value: HoneyPreviewResult;
500
- changedAsset: Address;
501
- } | {
502
- type: HoneySwapAction.IS_BASKET_MODE_ENABLED_CHANGE;
503
- value: boolean;
504
- } | {
505
- type: HoneySwapAction.IS_TYPING_CHANGE;
506
- value: boolean;
507
- } | {
508
- type: HoneySwapAction.IS_SUBMITTING_CHANGE;
509
- value: boolean;
510
- } | {
511
- type: HoneySwapAction.IS_LOADING_CHANGE;
512
- value: boolean;
513
- };
514
-
515
- declare const HoneyConfigContext: react.Context<HoneyConfigContextReturn | undefined>;
516
- type TokenWithOrder = TokenWithMetadata & {
517
- order: number;
518
- };
519
- interface HoneyConfigContextReturn {
520
- /**
521
- * Map of the Pyth price feed ids for each collateral
522
- */
523
- priceFeedMap: PythPriceFeedMap;
524
- /**
525
- * This is the list of all the collaterals that are supported by the Honey protocol
526
- */
527
- collateralList: TokenWithOrder[];
528
- /**
529
- * This is the main collateral that is used to calculate the relative cap limit
530
- */
531
- referenceCollateral: TokenWithOrder;
532
- /**
533
- * An object that maps the redeem/mint rate for each collateral and the weighted rates for the basket mode
534
- */
535
- feeMap: HoneyFeeMap;
536
- flags: {
537
- /**
538
- * If true, mint/redeem will also update pyth prices
539
- */
540
- isPythWrapperEnabled: boolean;
541
- };
542
- /**
543
- * Honey protocol configs
544
- */
545
- protocol: {
546
- /**
547
- * Honey protocol paused state
548
- */
549
- isPaused: boolean;
550
- /**
551
- * The label for the Honey protocol paused message
552
- */
553
- pausedBannerLabel?: string;
554
- };
555
- }
556
- interface HoneyConfigProviderProps extends HoneyConfigContextReturn {
557
- children: React.ReactNode;
558
- }
559
- declare function HoneyConfigProvider({ children, ...props }: HoneyConfigProviderProps): react_jsx_runtime.JSX.Element;
560
- declare function useHoneyConfig(): HoneyConfigContextReturn;
561
-
562
- export { Aggregators as A, type BalanceToken as B, type CollateralRates as C, type DefaultHookOptions as D, type DefaultHookReturnType as E, type IUserPosition as F, type BalanceTokenWithMetadata as G, type HoneySwapActions as H, type IRawAggregatorQuote as I, type TokenPriceInfo as J, type IUseContractWriteArgs as K, type TxnEventKeys as L, type MinimalERC20 as M, type SwapRequest as N, type BexStatus as O, type PythLatestUpdates as P, type IContractWriteFn as Q, ContractName as R, SwapReferrer as S, type TokenWithOrder as T, type UseContractWriteApi as U, HoneySwapAction as V, type Token as a, type TokenWithMetadata as b, HoneyConfigContext as c, type HoneyConfigContextReturn as d, type HoneyConfigProviderProps as e, HoneyConfigProvider as f, type IAggregatorQuote as g, type TokenBalance as h, type IAggregatorArgs as i, type PythPriceFeedMap as j, type TokenCurrentPriceMap as k, type AllowanceToken as l, type IContractWrite as m, type HoneyFeeMap as n, type CollateralRatesArgs as o, getHoneyFees as p, HoneyPreviewMethod as q, type HoneyPreviewArgs as r, type HoneyPreviewResult as s, type HoneyPreviewReadResult as t, useHoneyConfig as u, getHoneyPreview as v, getPythLatestPrices as w, type TokenInput as x, PoolCreationStep as y, type TokenWithAmount as z };