@gurge/sdk 0.3.120 → 0.3.142

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 (546) hide show
  1. package/README.md +183 -159
  2. package/common/src/crypto/babyJub.cjs +1 -1
  3. package/common/src/crypto/babyJub.mjs +2 -3
  4. package/common/src/crypto/eddsa.cjs +1 -1
  5. package/common/src/crypto/eddsa.mjs +2 -3
  6. package/common/src/crypto/poseidon.cjs +1 -1
  7. package/common/src/crypto/poseidon.mjs +8 -17
  8. package/common/src/data-structures/IndexedDB/key-val-store.cjs +1 -1
  9. package/common/src/data-structures/IndexedDB/key-val-store.mjs +1 -1
  10. package/common/src/functions/index.cjs +1 -1
  11. package/common/src/functions/index.mjs +0 -1
  12. package/common/src/functions/utils/index.cjs +1 -1
  13. package/common/src/functions/utils/index.mjs +0 -1
  14. package/common/src/webworker/logError-CZYZ3oyV.js +2 -0
  15. package/common/src/webworker/package.json +119 -0
  16. package/common/src/webworker/snarkjsWorkerNode.cjs +1 -0
  17. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.cjs +1 -1
  18. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.ts?worker&url.mjs +1 -1
  19. package/common/src/webworker/utxoWorkerNode.cjs +1 -0
  20. package/common/src/webworker/viteWorkerURL.constant.cjs +3 -3
  21. package/common/src/webworker/viteWorkerURL.constant.mjs +3 -3
  22. package/common/src/webworker/workerProxy-DPeuP2Mg.js +1 -0
  23. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.cjs +1 -1
  24. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.ts?worker&url.mjs +1 -1
  25. package/common/src/webworker/zkProofWorkerNode.cjs +1 -0
  26. package/package.json +2 -3
  27. package/common/src/API/API.d.ts +0 -122
  28. package/common/src/API/TokenCallsCachedHelper.d.ts +0 -15
  29. package/common/src/API/accessCodeCalls.d.ts +0 -23
  30. package/common/src/API/admin-calls.d.ts +0 -9
  31. package/common/src/API/brotherhoodCalls.d.ts +0 -82
  32. package/common/src/API/callLifiAPI.d.ts +0 -33
  33. package/common/src/API/callMonitor.d.ts +0 -9
  34. package/common/src/API/callNearIntentsAPI.d.ts +0 -3
  35. package/common/src/API/callOdosAPI.d.ts +0 -63
  36. package/common/src/API/callOkxAPI.d.ts +0 -10
  37. package/common/src/API/callOneInchAPI.d.ts +0 -18
  38. package/common/src/API/callRelayer.d.ts +0 -41
  39. package/common/src/API/checkRisk.d.ts +0 -1
  40. package/common/src/API/dashboardAccountCalls.d.ts +0 -24
  41. package/common/src/API/dashboardAccountMemberCalls.d.ts +0 -34
  42. package/common/src/API/dashboardBalanceCalls.d.ts +0 -12
  43. package/common/src/API/dashboardContactCalls.d.ts +0 -9
  44. package/common/src/API/dashboardPayoutCalls.d.ts +0 -14
  45. package/common/src/API/dashboardTransactionCalls.d.ts +0 -3
  46. package/common/src/API/deposit-and-withdraw-status-calls.d.ts +0 -21
  47. package/common/src/API/enclaveRecipientInfoCalls.d.ts +0 -14
  48. package/common/src/API/enclaveSignatureCalls.d.ts +0 -5
  49. package/common/src/API/enclaveUtxoCalls.d.ts +0 -46
  50. package/common/src/API/fetchCommitmentsCache.d.ts +0 -19
  51. package/common/src/API/generate-trading-points.d.ts +0 -27
  52. package/common/src/API/get-token-data.d.ts +0 -6
  53. package/common/src/API/get-token-price-chart-data.d.ts +0 -16
  54. package/common/src/API/getAnyRecipientInfo.d.ts +0 -1
  55. package/common/src/API/getCoingeckoPrice.d.ts +0 -21
  56. package/common/src/API/getGasEstimates.d.ts +0 -10
  57. package/common/src/API/getServerURL.d.ts +0 -7
  58. package/common/src/API/getTokenPrice.d.ts +0 -10
  59. package/common/src/API/getWebsiteURL.d.ts +0 -5
  60. package/common/src/API/index.d.ts +0 -25
  61. package/common/src/API/leaderboardCalls.d.ts +0 -14
  62. package/common/src/API/onrampCalls.d.ts +0 -20
  63. package/common/src/API/privacy-score-calls.d.ts +0 -17
  64. package/common/src/API/privateSendEmailNotificationsCalls.d.ts +0 -8
  65. package/common/src/API/privateSendNonceCalls.d.ts +0 -13
  66. package/common/src/API/privateSendRecipientInfoCalls.d.ts +0 -11
  67. package/common/src/API/proxyAccountsCalls.d.ts +0 -6
  68. package/common/src/API/referralsCalls.d.ts +0 -22
  69. package/common/src/API/relayCalls.d.ts +0 -5
  70. package/common/src/API/resolve-sns.d.ts +0 -1
  71. package/common/src/API/rewardsUserCalls.d.ts +0 -60
  72. package/common/src/API/scheduled-transactions-calls.d.ts +0 -20
  73. package/common/src/API/seedless-calls.d.ts +0 -53
  74. package/common/src/API/send-telegram-callback.d.ts +0 -7
  75. package/common/src/API/simulate-batch-tx.d.ts +0 -3
  76. package/common/src/API/simulate-transaction.d.ts +0 -5
  77. package/common/src/API/snapshot-event-calls.d.ts +0 -7
  78. package/common/src/API/temporaryWalletCalls.d.ts +0 -13
  79. package/common/src/API/tenderly.api.d.ts +0 -20
  80. package/common/src/API/token-calls.d.ts +0 -4
  81. package/common/src/API/tronSubsidyCalls.d.ts +0 -13
  82. package/common/src/API/weeklyAnalyticCalls.d.ts +0 -22
  83. package/common/src/constants/activity.constants.d.ts +0 -2
  84. package/common/src/constants/addresses.constants.d.ts +0 -70
  85. package/common/src/constants/auth.constants.d.ts +0 -2
  86. package/common/src/constants/backend.constants.d.ts +0 -12
  87. package/common/src/constants/balance.constants.d.ts +0 -1
  88. package/common/src/constants/bridging.constants.d.ts +0 -25
  89. package/common/src/constants/chains.constants.d.ts +0 -72
  90. package/common/src/constants/coingecko.constants.d.ts +0 -44
  91. package/common/src/constants/contracts.constants.d.ts +0 -119
  92. package/common/src/constants/conversion.constants.d.ts +0 -1
  93. package/common/src/constants/deploy-data/index.d.ts +0 -14
  94. package/common/src/constants/deploy-data/mergeDeployData.d.ts +0 -4
  95. package/common/src/constants/events.constants.d.ts +0 -1
  96. package/common/src/constants/fees.constants.d.ts +0 -9
  97. package/common/src/constants/function-signatures.constants.d.ts +0 -4
  98. package/common/src/constants/images.constants.d.ts +0 -1
  99. package/common/src/constants/index.d.ts +0 -34
  100. package/common/src/constants/lifi.constants.d.ts +0 -3
  101. package/common/src/constants/link.constant.d.ts +0 -1
  102. package/common/src/constants/mediaUrls.constants.d.ts +0 -44
  103. package/common/src/constants/mystery-boxes.constants.d.ts +0 -0
  104. package/common/src/constants/oauthUrls.constants.d.ts +0 -4
  105. package/common/src/constants/okx.constants.d.ts +0 -2
  106. package/common/src/constants/pay.constants.d.ts +0 -1
  107. package/common/src/constants/permit2.constants.d.ts +0 -7
  108. package/common/src/constants/presale.constants.d.ts +0 -87
  109. package/common/src/constants/price-impact.constants.d.ts +0 -2
  110. package/common/src/constants/protocol.constants.d.ts +0 -64
  111. package/common/src/constants/reorg-depths.constants.d.ts +0 -17
  112. package/common/src/constants/rewards.constants.d.ts +0 -15
  113. package/common/src/constants/save-depths.d.ts +0 -19
  114. package/common/src/constants/schedule.constants.d.ts +0 -2
  115. package/common/src/constants/server.constants.d.ts +0 -138
  116. package/common/src/constants/tasks.constants.d.ts +0 -9
  117. package/common/src/constants/tokens.constants.d.ts +0 -4
  118. package/common/src/constants/tx-confirmation.constants.d.ts +0 -4
  119. package/common/src/constants/vite.constants.d.ts +0 -16
  120. package/common/src/constants/wallet.constants.d.ts +0 -1
  121. package/common/src/crypto/BabyJubRN.cjs +0 -1
  122. package/common/src/crypto/BabyJubRN.d.ts +0 -20
  123. package/common/src/crypto/BabyJubRN.mjs +0 -66
  124. package/common/src/crypto/EddsaRN.cjs +0 -1
  125. package/common/src/crypto/EddsaRN.d.ts +0 -19
  126. package/common/src/crypto/EddsaRN.mjs +0 -41
  127. package/common/src/crypto/babyJub.d.ts +0 -16
  128. package/common/src/crypto/ecdh-dual-path.d.ts +0 -13
  129. package/common/src/crypto/ecdh-sealed-keys.d.ts +0 -22
  130. package/common/src/crypto/ecdh.d.ts +0 -2
  131. package/common/src/crypto/eddsa.d.ts +0 -8
  132. package/common/src/crypto/index.d.ts +0 -7
  133. package/common/src/crypto/poseidon.d.ts +0 -15
  134. package/common/src/crypto/preProcessing.d.ts +0 -1
  135. package/common/src/data-structures/AccountActions/AccountActions.d.ts +0 -17
  136. package/common/src/data-structures/AccountActions/index.d.ts +0 -1
  137. package/common/src/data-structures/ApprovalDBs/EventsPublicApprovalsDB.d.ts +0 -18
  138. package/common/src/data-structures/ApprovalDBs/index.d.ts +0 -1
  139. package/common/src/data-structures/BlockchainEvent/BlockchainEvent.d.ts +0 -14
  140. package/common/src/data-structures/Hinkal/Hinkal.d.ts +0 -125
  141. package/common/src/data-structures/Hinkal/IHinkal.d.ts +0 -112
  142. package/common/src/data-structures/Hinkal/handleAutoDepositBack.d.ts +0 -3
  143. package/common/src/data-structures/Hinkal/hinkalActionReceive.d.ts +0 -7
  144. package/common/src/data-structures/Hinkal/hinkalClaimUtxo.d.ts +0 -5
  145. package/common/src/data-structures/Hinkal/hinkalDeposit.d.ts +0 -6
  146. package/common/src/data-structures/Hinkal/hinkalDepositAndBridge.d.ts +0 -4
  147. package/common/src/data-structures/Hinkal/hinkalDepositAndWithdraw.d.ts +0 -6
  148. package/common/src/data-structures/Hinkal/hinkalDepositOnChainUtxos.d.ts +0 -8
  149. package/common/src/data-structures/Hinkal/hinkalGetRecipientInfo.d.ts +0 -2
  150. package/common/src/data-structures/Hinkal/hinkalMultiSend.d.ts +0 -3
  151. package/common/src/data-structures/Hinkal/hinkalNearDepositAndBridge.d.ts +0 -6
  152. package/common/src/data-structures/Hinkal/hinkalPalEvmDeposit.d.ts +0 -9
  153. package/common/src/data-structures/Hinkal/hinkalPalSolanaDepositPrepare.d.ts +0 -9
  154. package/common/src/data-structures/Hinkal/hinkalPalTronDepositPrepare.d.ts +0 -9
  155. package/common/src/data-structures/Hinkal/hinkalPrivateWallet.d.ts +0 -6
  156. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.d.ts +0 -8
  157. package/common/src/data-structures/Hinkal/hinkalProoflessDeposit.utils.d.ts +0 -7
  158. package/common/src/data-structures/Hinkal/hinkalProoflessDepositViaWrapper.d.ts +0 -6
  159. package/common/src/data-structures/Hinkal/hinkalProxySwap.d.ts +0 -7
  160. package/common/src/data-structures/Hinkal/hinkalProxyToPrivate.d.ts +0 -6
  161. package/common/src/data-structures/Hinkal/hinkalSignSubAccount.d.ts +0 -4
  162. package/common/src/data-structures/Hinkal/hinkalSolanaClaimUtxo.d.ts +0 -5
  163. package/common/src/data-structures/Hinkal/hinkalSolanaDeposit.d.ts +0 -8
  164. package/common/src/data-structures/Hinkal/hinkalSolanaDepositAndWithdraw.d.ts +0 -24
  165. package/common/src/data-structures/Hinkal/hinkalSolanaProoflessDeposit.d.ts +0 -5
  166. package/common/src/data-structures/Hinkal/hinkalSolanaProxySend.d.ts +0 -6
  167. package/common/src/data-structures/Hinkal/hinkalSolanaProxyShield.d.ts +0 -6
  168. package/common/src/data-structures/Hinkal/hinkalSolanaProxySwap.d.ts +0 -6
  169. package/common/src/data-structures/Hinkal/hinkalSolanaSwap.d.ts +0 -4
  170. package/common/src/data-structures/Hinkal/hinkalSolanaTransfer.d.ts +0 -31
  171. package/common/src/data-structures/Hinkal/hinkalSolanaWithdraw.d.ts +0 -4
  172. package/common/src/data-structures/Hinkal/hinkalSwap.d.ts +0 -7
  173. package/common/src/data-structures/Hinkal/hinkalTransfer.d.ts +0 -4
  174. package/common/src/data-structures/Hinkal/hinkalWithdraw.d.ts +0 -7
  175. package/common/src/data-structures/Hinkal/hinkalWithdrawStuckUtxos.d.ts +0 -3
  176. package/common/src/data-structures/Hinkal/index.d.ts +0 -24
  177. package/common/src/data-structures/Hinkal/prepareDepositOnChainUtxosZkProof.d.ts +0 -22
  178. package/common/src/data-structures/Hinkal/resetMerkleTrees.d.ts +0 -2
  179. package/common/src/data-structures/IndexedDB/activity-db.d.ts +0 -14
  180. package/common/src/data-structures/IndexedDB/balances-db.d.ts +0 -13
  181. package/common/src/data-structures/IndexedDB/contact-db.d.ts +0 -12
  182. package/common/src/data-structures/IndexedDB/index.d.ts +0 -8
  183. package/common/src/data-structures/IndexedDB/key-val-store.d.ts +0 -6
  184. package/common/src/data-structures/IndexedDB/pay-activity-db.d.ts +0 -9
  185. package/common/src/data-structures/IndexedDB/prices-db.d.ts +0 -9
  186. package/common/src/data-structures/IndexedDB/private-balances-db.d.ts +0 -9
  187. package/common/src/data-structures/IndexedDB/signatures-db.d.ts +0 -10
  188. package/common/src/data-structures/MultiThreadedUtxoUtils/MultiThreadedUtxoUtils.d.ts +0 -20
  189. package/common/src/data-structures/TokenDBs/AlchemyPublicTokensDB.d.ts +0 -19
  190. package/common/src/data-structures/TokenDBs/ArcPublicTokensDB.d.ts +0 -11
  191. package/common/src/data-structures/TokenDBs/EventsPublicTokensDB.d.ts +0 -18
  192. package/common/src/data-structures/TokenDBs/IPublicTokensDB.d.ts +0 -6
  193. package/common/src/data-structures/TokenDBs/PrivateTokensDB.d.ts +0 -11
  194. package/common/src/data-structures/TokenDBs/PublicTokensDB.d.ts +0 -9
  195. package/common/src/data-structures/TokenDBs/TempoPublicTokensDB.d.ts +0 -9
  196. package/common/src/data-structures/TokenDBs/TronPublicTokensDB.d.ts +0 -9
  197. package/common/src/data-structures/TokenDBs/index.d.ts +0 -6
  198. package/common/src/data-structures/TokenDBs/token-visibility-db.d.ts +0 -17
  199. package/common/src/data-structures/ValueCache/ValueCache.d.ts +0 -10
  200. package/common/src/data-structures/ValueCache/index.d.ts +0 -1
  201. package/common/src/data-structures/WalletManager/WalletManager.d.ts +0 -51
  202. package/common/src/data-structures/WalletManager/index.d.ts +0 -1
  203. package/common/src/data-structures/cacheDevices/AttachableMemoryCacheDevice.d.ts +0 -8
  204. package/common/src/data-structures/cacheDevices/BaseCacheDevice.d.ts +0 -11
  205. package/common/src/data-structures/cacheDevices/FileCacheDevice.d.ts +0 -10
  206. package/common/src/data-structures/cacheDevices/LocalStorageCacheDevice.d.ts +0 -8
  207. package/common/src/data-structures/cacheDevices/index.d.ts +0 -2
  208. package/common/src/data-structures/crypto-keys/decodeUTXO.d.ts +0 -28
  209. package/common/src/data-structures/crypto-keys/encryptDecryptUtxo.d.ts +0 -18
  210. package/common/src/data-structures/crypto-keys/index.d.ts +0 -4
  211. package/common/src/data-structures/crypto-keys/keyUtils.d.ts +0 -2
  212. package/common/src/data-structures/crypto-keys/keys.d.ts +0 -131
  213. package/common/src/data-structures/custom-token-registry/CustomTokenRegistry.d.ts +0 -12
  214. package/common/src/data-structures/event-service/evm/AbstractCommitmentsSnapshotService.d.ts +0 -34
  215. package/common/src/data-structures/event-service/evm/AbstractEventService.d.ts +0 -14
  216. package/common/src/data-structures/event-service/evm/AbstractNullifierSnapshotService.d.ts +0 -22
  217. package/common/src/data-structures/event-service/evm/AbstractSnapshotService.d.ts +0 -22
  218. package/common/src/data-structures/event-service/evm/BlockchainEventEmitter.d.ts +0 -37
  219. package/common/src/data-structures/event-service/evm/ClientBlockchainEventEmitter.d.ts +0 -11
  220. package/common/src/data-structures/event-service/evm/PollingBlockchainEventEmitter.d.ts +0 -6
  221. package/common/src/data-structures/event-service/helpers/ClientEventHelper.d.ts +0 -10
  222. package/common/src/data-structures/event-service/helpers/PollingEventHelper.d.ts +0 -7
  223. package/common/src/data-structures/event-service/index.d.ts +0 -14
  224. package/common/src/data-structures/event-service/solana/AbstractSolanaCommitmentsSnapshotService.d.ts +0 -34
  225. package/common/src/data-structures/event-service/solana/AbstractSolanaEventService.d.ts +0 -17
  226. package/common/src/data-structures/event-service/solana/AbstractSolanaNullifierSnapshotService.d.ts +0 -22
  227. package/common/src/data-structures/event-service/solana/AbstractSolanaSnapshotService.d.ts +0 -21
  228. package/common/src/data-structures/event-service/solana/ClientSolanaBlockchainEventEmitter.d.ts +0 -11
  229. package/common/src/data-structures/event-service/solana/PollingSolanaBlockchainEventEmitter.d.ts +0 -6
  230. package/common/src/data-structures/event-service/solana/SolanaBlockchainEventEmitter.d.ts +0 -42
  231. package/common/src/data-structures/http/BasicHttpClient.d.ts +0 -11
  232. package/common/src/data-structures/http/HttpClient.d.ts +0 -10
  233. package/common/src/data-structures/http/index.d.ts +0 -2
  234. package/common/src/data-structures/index.d.ts +0 -22
  235. package/common/src/data-structures/merkle-tree/MerkleTree.d.ts +0 -82
  236. package/common/src/data-structures/merkle-tree/MerkleTreeIncompleteError.d.ts +0 -3
  237. package/common/src/data-structures/merkle-tree/index.d.ts +0 -2
  238. package/common/src/data-structures/presale/PresaleContractWrapper.d.ts +0 -23
  239. package/common/src/data-structures/presale/index.d.ts +0 -1
  240. package/common/src/data-structures/private-balances/BalanceChangedHandler.d.ts +0 -9
  241. package/common/src/data-structures/private-balances/HinkalPrivateBalanceController.d.ts +0 -21
  242. package/common/src/data-structures/private-balances/index.d.ts +0 -3
  243. package/common/src/data-structures/private-balances/privateBalancesReducer.d.ts +0 -2
  244. package/common/src/data-structures/provider-adapter/IProviderAdapter.d.ts +0 -40
  245. package/common/src/data-structures/snapshot/SnapshotFetcherService.d.ts +0 -14
  246. package/common/src/data-structures/snapshot/evm-snapshots/ClientCommitmentsSnapshotService.d.ts +0 -8
  247. package/common/src/data-structures/snapshot/evm-snapshots/ClientNullifierSnapshotService.d.ts +0 -8
  248. package/common/src/data-structures/snapshot/index.d.ts +0 -5
  249. package/common/src/data-structures/snapshot/solana-snapshots/ClientSolanaCommitmentsSnapshotService.d.ts +0 -8
  250. package/common/src/data-structures/snapshot/solana-snapshots/ClientSolanaNullifierSnapshotService.d.ts +0 -8
  251. package/common/src/data-structures/token-price-fetcher/TokenChecker.d.ts +0 -9
  252. package/common/src/data-structures/token-price-fetcher/index.d.ts +0 -1
  253. package/common/src/data-structures/transactions-manager/history/history.types.d.ts +0 -16
  254. package/common/src/data-structures/transactions-manager/index.d.ts +0 -1
  255. package/common/src/data-structures/utxo/Utxo.d.ts +0 -69
  256. package/common/src/error-handling/customErrors/ErrorWithAmount.d.ts +0 -4
  257. package/common/src/error-handling/customErrors/ErrorWithIndex.d.ts +0 -4
  258. package/common/src/error-handling/customErrors/ErrorWithTx.d.ts +0 -4
  259. package/common/src/error-handling/customErrors/FeeOverTransactionValueError.d.ts +0 -9
  260. package/common/src/error-handling/customErrors/HttpError.d.ts +0 -4
  261. package/common/src/error-handling/customErrors/SimulationFailureError.d.ts +0 -10
  262. package/common/src/error-handling/customErrors/customErrors.helpers.d.ts +0 -5
  263. package/common/src/error-handling/customErrors/index.d.ts +0 -7
  264. package/common/src/error-handling/error-codes.constants.d.ts +0 -249
  265. package/common/src/error-handling/get-error.message.d.ts +0 -5
  266. package/common/src/error-handling/index.d.ts +0 -6
  267. package/common/src/error-handling/isInsufficientFundsError.d.ts +0 -1
  268. package/common/src/error-handling/logError.d.ts +0 -1
  269. package/common/src/error-handling/logger.d.ts +0 -5
  270. package/common/src/error-handling/retrySolanaError.d.ts +0 -1
  271. package/common/src/error-handling/types.d.ts +0 -10
  272. package/common/src/externalABIs/BUSD.d.ts +0 -38
  273. package/common/src/externalABIs/DAI.d.ts +0 -45
  274. package/common/src/externalABIs/SanctionsList.d.ts +0 -35
  275. package/common/src/externalABIs/USDC.d.ts +0 -28
  276. package/common/src/externalABIs/USDR.d.ts +0 -28
  277. package/common/src/externalABIs/USDR3CRV.d.ts +0 -49
  278. package/common/src/externalABIs/USDT.d.ts +0 -41
  279. package/common/src/externalABIs/WETH.d.ts +0 -38
  280. package/common/src/externalABIs/amToken.d.ts +0 -28
  281. package/common/src/externalABIs/index.d.ts +0 -219
  282. package/common/src/externalABIs/swapAbi.d.ts +0 -77
  283. package/common/src/functions/auto-deposit-back-helpers/get-gas-token-records.d.ts +0 -9
  284. package/common/src/functions/auto-deposit-back-helpers/get-tokens-to-deposit-back.d.ts +0 -3
  285. package/common/src/functions/auto-deposit-back-helpers/index.d.ts +0 -4
  286. package/common/src/functions/auto-deposit-back-helpers/select-gas-token.d.ts +0 -13
  287. package/common/src/functions/auto-deposit-back-helpers/update-hinkal.d.ts +0 -2
  288. package/common/src/functions/connectors.types.d.ts +0 -22
  289. package/common/src/functions/index.d.ts +0 -12
  290. package/common/src/functions/pre-transaction/addressTableLookup.d.ts +0 -4
  291. package/common/src/functions/pre-transaction/buildCommitmentValidationData.d.ts +0 -14
  292. package/common/src/functions/pre-transaction/calculateSolanaNullifierCount.d.ts +0 -2
  293. package/common/src/functions/pre-transaction/constructAdminData.d.ts +0 -3
  294. package/common/src/functions/pre-transaction/convert-okx-instructions.d.ts +0 -11
  295. package/common/src/functions/pre-transaction/ensureAmountChanges.d.ts +0 -2
  296. package/common/src/functions/pre-transaction/getExternalSwapAddress.d.ts +0 -2
  297. package/common/src/functions/pre-transaction/getFeeStructure.d.ts +0 -5
  298. package/common/src/functions/pre-transaction/getSolanaCalldataHash.d.ts +0 -4
  299. package/common/src/functions/pre-transaction/getVolatileTransferAmount.d.ts +0 -9
  300. package/common/src/functions/pre-transaction/index.d.ts +0 -19
  301. package/common/src/functions/pre-transaction/interaction-to-action.d.ts +0 -2
  302. package/common/src/functions/pre-transaction/merge-with-fee-structure-emporium.d.ts +0 -3
  303. package/common/src/functions/pre-transaction/merge-with-fee-structure.d.ts +0 -2
  304. package/common/src/functions/pre-transaction/outputUtxoProcessing.d.ts +0 -5
  305. package/common/src/functions/pre-transaction/process-gas-estimates.d.ts +0 -5
  306. package/common/src/functions/pre-transaction/recipientUtxoProcessing.d.ts +0 -3
  307. package/common/src/functions/pre-transaction/sendInitNullifiersTransaction.d.ts +0 -11
  308. package/common/src/functions/pre-transaction/sendV0Transaction.d.ts +0 -18
  309. package/common/src/functions/pre-transaction/solana-public-signals.d.ts +0 -21
  310. package/common/src/functions/pre-transaction/solana.d.ts +0 -14
  311. package/common/src/functions/pre-transaction/solanaTransfer.utils.d.ts +0 -6
  312. package/common/src/functions/pre-transaction/store-instructions.d.ts +0 -4
  313. package/common/src/functions/pre-transaction/store-proof.d.ts +0 -7
  314. package/common/src/functions/pre-transaction/waitForDepositedUtxosInMerkleTree.d.ts +0 -3
  315. package/common/src/functions/private-wallet/emporium.helpers.d.ts +0 -47
  316. package/common/src/functions/private-wallet/emporium.swap.helpers.d.ts +0 -4
  317. package/common/src/functions/private-wallet/index.d.ts +0 -3
  318. package/common/src/functions/private-wallet/opProducer.d.ts +0 -5
  319. package/common/src/functions/snarkjs/common.snarkjs.d.ts +0 -32
  320. package/common/src/functions/snarkjs/constant.d.ts +0 -149
  321. package/common/src/functions/snarkjs/constructGeneralZkProof.d.ts +0 -13
  322. package/common/src/functions/snarkjs/constructSolanaZkProof.d.ts +0 -13
  323. package/common/src/functions/snarkjs/fetchMerkleTreeSiblings.d.ts +0 -11
  324. package/common/src/functions/snarkjs/fetchOnChainRootHashes.d.ts +0 -3
  325. package/common/src/functions/snarkjs/generateCircomData.d.ts +0 -5
  326. package/common/src/functions/snarkjs/generateMainAndCommitmentZkProof.d.ts +0 -11
  327. package/common/src/functions/snarkjs/generateZkProof.d.ts +0 -5
  328. package/common/src/functions/snarkjs/generateZkProofEnclave.d.ts +0 -5
  329. package/common/src/functions/snarkjs/generateZkProofSelf.d.ts +0 -5
  330. package/common/src/functions/snarkjs/getMerkleTreeSiblingsAndRootHashes.d.ts +0 -15
  331. package/common/src/functions/snarkjs/getOriginalSender.d.ts +0 -1
  332. package/common/src/functions/snarkjs/getZKFiles.d.ts +0 -3
  333. package/common/src/functions/snarkjs/index.d.ts +0 -8
  334. package/common/src/functions/snarkjs/signedMessageHash.d.ts +0 -31
  335. package/common/src/functions/snarkjs/verifyCommitmentValidationData.d.ts +0 -4
  336. package/common/src/functions/utils/abi.utils.d.ts +0 -3
  337. package/common/src/functions/utils/addresses.d.ts +0 -11
  338. package/common/src/functions/utils/aggregateTokenAmounts.d.ts +0 -2
  339. package/common/src/functions/utils/amounts.utils.d.ts +0 -25
  340. package/common/src/functions/utils/arraysMatch.d.ts +0 -1
  341. package/common/src/functions/utils/auth.utils.d.ts +0 -5
  342. package/common/src/functions/utils/bigint-math.utils.cjs +0 -1
  343. package/common/src/functions/utils/bigint-math.utils.d.ts +0 -2
  344. package/common/src/functions/utils/bigint-math.utils.mjs +0 -18
  345. package/common/src/functions/utils/bit.operations.d.ts +0 -3
  346. package/common/src/functions/utils/buildClaimableDepositPlan.d.ts +0 -16
  347. package/common/src/functions/utils/bytes32.utils.d.ts +0 -2
  348. package/common/src/functions/utils/cacheDevice.utils.d.ts +0 -3
  349. package/common/src/functions/utils/cacheFunctions.d.ts +0 -16
  350. package/common/src/functions/utils/caseInsensitive.utils.d.ts +0 -3
  351. package/common/src/functions/utils/convertEmporiumOpToCallInfo.d.ts +0 -2
  352. package/common/src/functions/utils/convertIntegrationProviderToExternalActionId.d.ts +0 -3
  353. package/common/src/functions/utils/create-provider.d.ts +0 -4
  354. package/common/src/functions/utils/customEnclaveFunctionsRegister.d.ts +0 -18
  355. package/common/src/functions/utils/deposit-claimable.utils.d.ts +0 -6
  356. package/common/src/functions/utils/dispatchBalanceRefreshes.d.ts +0 -4
  357. package/common/src/functions/utils/enclave-recipient-info-storage.d.ts +0 -2
  358. package/common/src/functions/utils/enclave-signature-storage.d.ts +0 -1
  359. package/common/src/functions/utils/enclave-utxo-storage.d.ts +0 -7
  360. package/common/src/functions/utils/enclaveHandshakeService.d.ts +0 -10
  361. package/common/src/functions/utils/encodeTokenWithId.d.ts +0 -2
  362. package/common/src/functions/utils/encryptInputForEnclave.d.ts +0 -8
  363. package/common/src/functions/utils/enum.utils.d.ts +0 -9
  364. package/common/src/functions/utils/erc20tokenFunctions.d.ts +0 -20
  365. package/common/src/functions/utils/evmNetworkFunctions.d.ts +0 -4
  366. package/common/src/functions/utils/external-action.utils.d.ts +0 -3
  367. package/common/src/functions/utils/fees.utils.d.ts +0 -6
  368. package/common/src/functions/utils/formatter.d.ts +0 -1
  369. package/common/src/functions/utils/get-signature-header.d.ts +0 -5
  370. package/common/src/functions/utils/getBlockExplorerUrl.d.ts +0 -1
  371. package/common/src/functions/utils/getContractAddress.d.ts +0 -2
  372. package/common/src/functions/utils/getDataFromTransaction.d.ts +0 -33
  373. package/common/src/functions/utils/getRecipientInfoFromUserKeys.d.ts +0 -4
  374. package/common/src/functions/utils/getSignerFromContract.d.ts +0 -3
  375. package/common/src/functions/utils/getUtxosFromReceipt.utils.d.ts +0 -6
  376. package/common/src/functions/utils/getUtxosFromReceiptSolana.d.ts +0 -7
  377. package/common/src/functions/utils/getWalletGroupKey.utils.d.ts +0 -1
  378. package/common/src/functions/utils/inLogicMetadata.d.ts +0 -2
  379. package/common/src/functions/utils/index.d.ts +0 -76
  380. package/common/src/functions/utils/involves-permit2-op.d.ts +0 -7
  381. package/common/src/functions/utils/ipfs.d.ts +0 -8
  382. package/common/src/functions/utils/is-valid-url.d.ts +0 -1
  383. package/common/src/functions/utils/lifi.utils.d.ts +0 -4
  384. package/common/src/functions/utils/map.utils.d.ts +0 -1
  385. package/common/src/functions/utils/memoize.utils.d.ts +0 -1
  386. package/common/src/functions/utils/merkleTree.utils.d.ts +0 -2
  387. package/common/src/functions/utils/mnemonics.d.ts +0 -1
  388. package/common/src/functions/utils/mutexes.utils.d.ts +0 -2
  389. package/common/src/functions/utils/nearIntents.utils.d.ts +0 -11
  390. package/common/src/functions/utils/networks.utils.d.ts +0 -1
  391. package/common/src/functions/utils/nftTokenFunctions.d.ts +0 -2
  392. package/common/src/functions/utils/nickname.utils.d.ts +0 -1
  393. package/common/src/functions/utils/pay-routing.utils.d.ts +0 -4
  394. package/common/src/functions/utils/postToOffscreen.d.ts +0 -2
  395. package/common/src/functions/utils/prepareHinkal.d.ts +0 -11
  396. package/common/src/functions/utils/process.utils.d.ts +0 -14
  397. package/common/src/functions/utils/proxyAvatar.utils.d.ts +0 -2
  398. package/common/src/functions/utils/publicBalance.utils.d.ts +0 -7
  399. package/common/src/functions/utils/reloadPage.d.ts +0 -1
  400. package/common/src/functions/utils/requireEnv.d.ts +0 -1
  401. package/common/src/functions/utils/resolve-sync.utils.d.ts +0 -6
  402. package/common/src/functions/utils/rpc-int-encode.d.ts +0 -1
  403. package/common/src/functions/utils/serialize-utxos.utils.d.ts +0 -3
  404. package/common/src/functions/utils/serialize.utils.d.ts +0 -10
  405. package/common/src/functions/utils/solana-memo.d.ts +0 -3
  406. package/common/src/functions/utils/solanaMint.utils.d.ts +0 -10
  407. package/common/src/functions/utils/solanaSendPreflight.utils.d.ts +0 -6
  408. package/common/src/functions/utils/string.utils.d.ts +0 -16
  409. package/common/src/functions/utils/time.utils.d.ts +0 -20
  410. package/common/src/functions/utils/token-check.utils.d.ts +0 -4
  411. package/common/src/functions/utils/transfer-claimable.utils.d.ts +0 -9
  412. package/common/src/functions/utils/trimFieldValues.d.ts +0 -4
  413. package/common/src/functions/utils/tron.utils.d.ts +0 -44
  414. package/common/src/functions/utils/tronSimulation.utils.d.ts +0 -1
  415. package/common/src/functions/utils/tx-confirmation.utils.d.ts +0 -10
  416. package/common/src/functions/utils/upToDateState.d.ts +0 -2
  417. package/common/src/functions/utils/userAgent.d.ts +0 -2
  418. package/common/src/functions/utils/validateUsername.d.ts +0 -5
  419. package/common/src/functions/utils/walletBalances.utils.d.ts +0 -2
  420. package/common/src/functions/web3/EIP-712.d.ts +0 -23
  421. package/common/src/functions/web3/connectors.utils.d.ts +0 -8
  422. package/common/src/functions/web3/crypto.d.ts +0 -1
  423. package/common/src/functions/web3/etherFunctions.d.ts +0 -20
  424. package/common/src/functions/web3/events/getInputUtxoAndBalance.d.ts +0 -38
  425. package/common/src/functions/web3/events/getInputUtxosEnclave.d.ts +0 -9
  426. package/common/src/functions/web3/events/getShieldedBalance.d.ts +0 -18
  427. package/common/src/functions/web3/events/getTransactionLogEvents.d.ts +0 -13
  428. package/common/src/functions/web3/events/index.d.ts +0 -3
  429. package/common/src/functions/web3/fetchSolanaMerkleTreeRootHash.d.ts +0 -3
  430. package/common/src/functions/web3/functionCalls/approveToken.d.ts +0 -4
  431. package/common/src/functions/web3/functionCalls/approveTokensToHinkal.d.ts +0 -4
  432. package/common/src/functions/web3/functionCalls/constructBatchCall.d.ts +0 -7
  433. package/common/src/functions/web3/functionCalls/estimateGasRelayer.d.ts +0 -4
  434. package/common/src/functions/web3/functionCalls/getRootHash.d.ts +0 -2
  435. package/common/src/functions/web3/functionCalls/recoverTransactionFromError.d.ts +0 -2
  436. package/common/src/functions/web3/functionCalls/relayFunctions.d.ts +0 -3
  437. package/common/src/functions/web3/functionCalls/transactCallDirect.d.ts +0 -6
  438. package/common/src/functions/web3/functionCalls/transactCallDirectTron.d.ts +0 -12
  439. package/common/src/functions/web3/functionCalls/transactCallRelayer.d.ts +0 -37
  440. package/common/src/functions/web3/functionCalls/waitForErc20Approvals.d.ts +0 -11
  441. package/common/src/functions/web3/getContractMetadata.d.ts +0 -5
  442. package/common/src/functions/web3/getPublicAddressBalance.d.ts +0 -2
  443. package/common/src/functions/web3/getSolanaPriorityFee.d.ts +0 -3
  444. package/common/src/functions/web3/getTokenHolder.d.ts +0 -1
  445. package/common/src/functions/web3/index.d.ts +0 -14
  446. package/common/src/functions/web3/lifiAPI.d.ts +0 -6
  447. package/common/src/functions/web3/odosAPI.d.ts +0 -5
  448. package/common/src/functions/web3/okxAPI.d.ts +0 -8
  449. package/common/src/functions/web3/oneInchAPI.d.ts +0 -5
  450. package/common/src/functions/web3/runContractFunction.d.ts +0 -16
  451. package/common/src/functions/web3/signAndSendSerializedTransaction.d.ts +0 -2
  452. package/common/src/functions/web3/uniswapAPI.d.ts +0 -16
  453. package/common/src/index.d.ts +0 -9
  454. package/common/src/mutexes/chainBalanceRwLock.d.ts +0 -18
  455. package/common/src/mutexes/index.d.ts +0 -2
  456. package/common/src/mutexes/mutex.d.ts +0 -2
  457. package/common/src/providers/EthersProviderAdapter.d.ts +0 -36
  458. package/common/src/providers/SolanaProviderAdapter.d.ts +0 -52
  459. package/common/src/providers/TronProviderAdapter.d.ts +0 -39
  460. package/common/src/providers/WagmiProviderAdapter.d.ts +0 -48
  461. package/common/src/providers/exportProviers.d.ts +0 -3
  462. package/common/src/types/API.types.d.ts +0 -25
  463. package/common/src/types/ICacheDevice.d.ts +0 -5
  464. package/common/src/types/IMultiThreadedUtxoUtils.d.ts +0 -8
  465. package/common/src/types/RewardUserEnums.d.ts +0 -11
  466. package/common/src/types/TransactionSimulator.types.d.ts +0 -16
  467. package/common/src/types/WeeklyAnalytics.types.d.ts +0 -37
  468. package/common/src/types/activities.types.d.ts +0 -77
  469. package/common/src/types/admin.types.d.ts +0 -42
  470. package/common/src/types/all-points.types.d.ts +0 -7
  471. package/common/src/types/approvals.types.d.ts +0 -41
  472. package/common/src/types/balances.types.d.ts +0 -39
  473. package/common/src/types/big-intable.types.d.ts +0 -3
  474. package/common/src/types/bridging-tx.types.d.ts +0 -17
  475. package/common/src/types/brotherhood-user.types.d.ts +0 -11
  476. package/common/src/types/cache.types.d.ts +0 -60
  477. package/common/src/types/chains.types.d.ts +0 -11
  478. package/common/src/types/circom-data.types.d.ts +0 -107
  479. package/common/src/types/coingecko.types.d.ts +0 -220
  480. package/common/src/types/commitments.types.d.ts +0 -32
  481. package/common/src/types/confirmation-request.types.d.ts +0 -10
  482. package/common/src/types/connector.types.d.ts +0 -5
  483. package/common/src/types/contacts.types.d.ts +0 -7
  484. package/common/src/types/crypto.types.d.ts +0 -8
  485. package/common/src/types/dashboard-account.d.ts +0 -101
  486. package/common/src/types/dashboard-payout.types.d.ts +0 -29
  487. package/common/src/types/dashboard-transaction.types.d.ts +0 -22
  488. package/common/src/types/eip5792.types.d.ts +0 -33
  489. package/common/src/types/ethereum-network.types.d.ts +0 -62
  490. package/common/src/types/events.types.d.ts +0 -5
  491. package/common/src/types/external-action.types.d.ts +0 -17
  492. package/common/src/types/fee.types.d.ts +0 -13
  493. package/common/src/types/generatePoints.d.ts +0 -14
  494. package/common/src/types/hinkal.types.d.ts +0 -99
  495. package/common/src/types/http.types.d.ts +0 -8
  496. package/common/src/types/index.d.ts +0 -60
  497. package/common/src/types/message.types.d.ts +0 -5
  498. package/common/src/types/near-intents.types.d.ts +0 -60
  499. package/common/src/types/new-rewards.type.d.ts +0 -152
  500. package/common/src/types/offscreen.types.d.ts +0 -9
  501. package/common/src/types/okx.types.d.ts +0 -57
  502. package/common/src/types/onramp.types.d.ts +0 -58
  503. package/common/src/types/pay-activities.types.d.ts +0 -32
  504. package/common/src/types/pay-routing.types.d.ts +0 -9
  505. package/common/src/types/presaleReferral.types.d.ts +0 -4
  506. package/common/src/types/proxy.types.d.ts +0 -19
  507. package/common/src/types/referral.types.d.ts +0 -12
  508. package/common/src/types/remote-proof.types.d.ts +0 -15
  509. package/common/src/types/rewards.types.d.ts +0 -34
  510. package/common/src/types/schedule.types.d.ts +0 -7
  511. package/common/src/types/scheduled-transactions.types.d.ts +0 -54
  512. package/common/src/types/session.types.d.ts +0 -13
  513. package/common/src/types/signature.types.d.ts +0 -10
  514. package/common/src/types/slippage.types.d.ts +0 -3
  515. package/common/src/types/snark.types.d.ts +0 -40
  516. package/common/src/types/solana.types.d.ts +0 -87
  517. package/common/src/types/tenderly.api.types.d.ts +0 -196
  518. package/common/src/types/token-prices.types.d.ts +0 -18
  519. package/common/src/types/token-with-id.types.d.ts +0 -4
  520. package/common/src/types/token.types.d.ts +0 -88
  521. package/common/src/types/transaction.types.d.ts +0 -160
  522. package/common/src/types/transactions.types.d.ts +0 -79
  523. package/common/src/types/tron.types.d.ts +0 -15
  524. package/common/src/types/wc.types.d.ts +0 -78
  525. package/common/src/types/with-id.types.d.ts +0 -3
  526. package/common/src/webworker/WorkerWrapper.d.ts +0 -9
  527. package/common/src/webworker/performTaskWithWorker.d.ts +0 -5
  528. package/common/src/webworker/snarkjsWorker/snarkjsWorker.types.d.ts +0 -14
  529. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLauncher.d.ts +0 -1
  530. package/common/src/webworker/snarkjsWorker/snarkjsWorkerLogic.d.ts +0 -2
  531. package/common/src/webworker/snarkjsWorker/snarkjsWorkerNode.d.ts +0 -1
  532. package/common/src/webworker/utxoWorker/utxoWorker.types.d.ts +0 -31
  533. package/common/src/webworker/utxoWorker/utxoWorkerLauncher.d.ts +0 -1
  534. package/common/src/webworker/utxoWorker/utxoWorkerLogic.d.ts +0 -5
  535. package/common/src/webworker/utxoWorker/utxoWorkerNode.d.ts +0 -1
  536. package/common/src/webworker/viteWorkerURL.constant.d.ts +0 -10
  537. package/common/src/webworker/viteWorkerURL.constant.fallback.d.ts +0 -4
  538. package/common/src/webworker/worker.registry.d.ts +0 -10
  539. package/common/src/webworker/worker.types.d.ts +0 -33
  540. package/common/src/webworker/workerErrorHandler.d.ts +0 -1
  541. package/common/src/webworker/workerFactory.d.ts +0 -11
  542. package/common/src/webworker/workerProxy.d.ts +0 -39
  543. package/common/src/webworker/zkProofWorker/zkProofWorker.types.d.ts +0 -26
  544. package/common/src/webworker/zkProofWorker/zkProofWorkerLauncher.d.ts +0 -1
  545. package/common/src/webworker/zkProofWorker/zkProofWorkerLogic.d.ts +0 -4
  546. package/common/src/webworker/zkProofWorker/zkProofWorkerNode.d.ts +0 -1
package/README.md CHANGED
@@ -22,13 +22,13 @@ With Hinkal SDK, developers can:
22
22
  Using npm:
23
23
 
24
24
  ```sh
25
- npm install @hinkal/sdk
25
+ npm install @hinkal/common
26
26
  ```
27
27
 
28
28
  Or, yarn:
29
29
 
30
30
  ```sh
31
- yarn add @hinkal/sdk
31
+ yarn add @hinkal/common
32
32
  ```
33
33
 
34
34
  ## Usage
@@ -43,10 +43,16 @@ Initializing the SDK creates a `Hinkal` object that encapsulates:
43
43
  - Actions the user can perform, such as shielding (depositing), transfers, and swapping
44
44
  - Cryptographic keys for privacy-preserving operations
45
45
 
46
+ Each provider exposes three prepare helpers:
47
+
48
+ - `prepare*Hinkal` — signs the Hinkal login message and initializes user keys (deterministic signers)
49
+ - `prepare*HinkalWithEnclaveSignIn` — signs in through the secure enclave and stabilizes identity for non-deterministic signers (smart contract wallets, some hardware wallets)
50
+ - `prepare*HinkalFromSignature` — initializes user keys from a previously stored signature
51
+
46
52
  **ethers.js:**
47
53
 
48
54
  ```typescript
49
- import { prepareEthersHinkal } from '@hinkal/sdk/providers/prepareEthersHinkal';
55
+ import { prepareEthersHinkal } from '@hinkal/common/providers/prepareEthersHinkal';
50
56
  // signer: ethers.Signer
51
57
  const hinkal = await prepareEthersHinkal(signer, hinkalConfig);
52
58
  ```
@@ -54,12 +60,31 @@ const hinkal = await prepareEthersHinkal(signer, hinkalConfig);
54
60
  **wagmi:**
55
61
 
56
62
  ```typescript
57
- import { prepareWagmiHinkal } from '@hinkal/sdk/providers/prepareWagmiHinkal';
63
+ import { prepareWagmiHinkal } from '@hinkal/common/providers/prepareWagmiHinkal';
58
64
  // connector: wagmi.Connector
59
65
  // wagmiConfig: wagmi.Config
60
66
  const hinkal = await prepareWagmiHinkal(connector, wagmiConfig, hinkalConfig);
61
67
  ```
62
68
 
69
+ **Solana:**
70
+
71
+ ```typescript
72
+ import { prepareSolanaHinkal } from '@hinkal/common/providers/prepareSolanaHinkal';
73
+ // connector: SolanaWallet
74
+ // ethereumAddress: optional linked EVM address
75
+ const hinkal = await prepareSolanaHinkal(connector, ethereumAddress, hinkalConfig);
76
+ ```
77
+
78
+ **Tron:**
79
+
80
+ ```typescript
81
+ import { prepareTronHinkal } from '@hinkal/common/providers/prepareTronHinkal';
82
+ // connector: TronWeb
83
+ const hinkal = await prepareTronHinkal(connector, hinkalConfig);
84
+ ```
85
+
86
+ The same `WithEnclaveSignIn` and `FromSignature` variants are available for each provider (for example, `prepareWagmiHinkalWithEnclaveSignIn`, `prepareSolanaHinkalFromSignature`).
87
+
63
88
  The `hinkalConfig` is defined as follows:
64
89
 
65
90
  ```typescript
@@ -77,7 +102,7 @@ type HinkalConfig = {
77
102
  cacheFilePath?: string;
78
103
 
79
104
  /**
80
- * Indicator controlling wether the proof should be constructed remotely in secure enclave. Defaults to true.
105
+ * Indicator controlling whether the proof should be constructed remotely in secure enclave. Defaults to true.
81
106
  */
82
107
  generateProofRemotely?: boolean;
83
108
 
@@ -97,7 +122,9 @@ Most wallets return the same signature every time for the same message. Some do
97
122
 
98
123
  When that happens, a returning user appears as a new account. Funds deposited in an earlier session remain tied to the original identity and are not accessible from the new one.
99
124
 
100
- Use `storeAndGetInitialSignature` to keep identity stable across sessions. It stores the user's first login signature server-side and returns that same signature on every later login. The user still signs each session to prove wallet ownership, but the SDK always initializes with the original signature.
125
+ **Recommended approach:** use `prepare*HinkalWithEnclaveSignIn` instead of `prepare*Hinkal`. It signs the login message, stores the first signature server-side through the secure enclave, and always initializes with the original identity on later sessions. Solana Ledger wallets are handled automatically.
126
+
127
+ **Manual approach:** if you manage identity yourself, call `storeAndGetInitialSignature` and then either `initUserKeysWithSignature` or `prepare*HinkalFromSignature`:
101
128
 
102
129
  ```typescript
103
130
  function storeAndGetInitialSignature(
@@ -113,16 +140,17 @@ Parameters:
113
140
  - `isSolanaLedger` — set to `true` for a Solana Ledger wallet. Defaults to `false`
114
141
  - `txMessageForSolanaLedger` — base64-encoded transaction message used for Solana Ledger authentication. Required when `isSolanaLedger` is `true`
115
142
 
116
- Typical flow:
143
+ Typical flow with a stored signature:
117
144
 
118
145
  ```typescript
119
- const authSignature = await hinkal.signHinkalMessage();
120
146
  const initialSignature = await hinkal.storeAndGetInitialSignature(authSignature);
121
147
  hinkal.initUserKeysWithSignature(initialSignature);
122
148
  ```
123
149
 
124
150
  Call this once per session, after wallet connection and before fetching balances or submitting transactions.
125
151
 
152
+ You do not need enclave sign-in if your wallet produces deterministic signatures for the same login message on every session — in that case, `prepare*Hinkal` is sufficient. It is also not needed if you persist the signature yourself via `prepare*HinkalFromSignature`, or if you use seed-phrase-based login through `initUserKeysFromSeedPhrases`.
153
+
126
154
  **Security**
127
155
 
128
156
  The stored signature is protected at every stage. Before leaving the client, the signature is encrypted with hybrid encryption. The payload is encrypted with a symmetric key, and that key is encrypted with the enclave's public key.
@@ -133,52 +161,37 @@ At rest, only the encrypted signature and encrypted key are stored in the databa
133
161
 
134
162
  Requests that fail this check are rejected. The first signature stored for a given address is never replaced. Later logins only use a fresh signature to authenticate retrieval of the original.
135
163
 
136
- You should use this function in any wallet-connected application where users may reconnect across sessions, especially when supporting smart contract wallets. It is not necessary if your wallet produces deterministic signatures for the same login message on every session — in that case, calling `initUserKeys` or `initUserKeysWithSignature` with the fresh signature is sufficient. It is also not needed if you persist the signature yourself, or if you use seed-phrase-based login through `initUserKeysFromSeedPhrases`.
137
-
138
- **Solana Ledger wallets**
139
-
140
- For standard EVM and Solana wallets, authentication uses a plain message signature. Call `signHinkalMessage` and pass the result to `storeAndGetInitialSignature` without extra parameters.
164
+ ### Shielded balance
141
165
 
142
- Solana Ledger wallets cannot reliably sign arbitrary UTF-8 messages. For those wallets, Hinkal uses a deterministic empty Solana transaction instead. The transaction uses a fixed blockhash and block height, so signing it always returns the same result.
166
+ Shielded balances are encrypted token holdings stored within the Hinkal protocol. Unlike regular blockchain balances that are publicly visible, shielded balances are hidden from external observers.
143
167
 
144
- Use `signSolanaLedgerMessage` to get both the signature and the transaction message, then pass them to `storeAndGetInitialSignature`:
168
+ After initializing the Hinkal object and calling `initUserKeys` (or a prepare helper), fetch balances for a specific chain:
145
169
 
146
170
  ```typescript
147
- const isSolanaLedger = hinkal.getProviderAdapter().isSolanaLedger?.() ?? false;
148
- let authSignature: string;
149
- let txMessageForSolanaLedger: string | undefined;
150
-
151
- if (isSolanaLedger) {
152
- const ledgerAuth = await hinkal.signSolanaLedgerMessage();
153
- authSignature = ledgerAuth.signature;
154
- txMessageForSolanaLedger = ledgerAuth.txMessageForSolanaLedger;
155
- } else {
156
- authSignature = await hinkal.signHinkalMessage();
157
- }
158
-
159
- const initialSignature = await hinkal.storeAndGetInitialSignature(
160
- authSignature,
161
- isSolanaLedger,
162
- txMessageForSolanaLedger,
163
- );
164
-
165
- hinkal.initUserKeysWithSignature(initialSignature);
171
+ function getTotalBalance(
172
+ chainId: number,
173
+ resetCacheBefore?: boolean,
174
+ updateTokensListBefore?: boolean,
175
+ ): Promise<TokenBalance[]>;
166
176
  ```
167
177
 
168
- On return visits, the user must sign the same deterministic transaction again to authenticate. The enclave verifies the fresh signature against `txMessageForSolanaLedger`, not against a plain login message.
178
+ `TokenBalance` contains `chainId`, `erc20Address`, `balance`, and an optional `timestamp`.
169
179
 
170
- If your application caches the transaction message locally between sessions, pass the cached value as `txMessageForSolanaLedger` so the enclave can verify the correct payload.
180
+ For reactive UI updates, subscribe to balance changes with USD values:
171
181
 
172
- ### Shielded balance
182
+ ```typescript
183
+ // Current state keyed by chainId
184
+ hinkal.privateBalancesWithUSD;
173
185
 
174
- Shielded balances are encrypted token holdings stored within the Hinkal protocol. Unlike regular blockchain balances that are publicly visible, shielded balances are hidden from external observers, providing privacy for your assets. After initializing the Hinkal object, you can access and calculate your shielded balances:
186
+ // Subscribe to updates; returns unsubscribe function
187
+ const unsubscribe = hinkal.onPrivateBalancesWithUSDChange((state) => {
188
+ // state: Record<chainId, TokenBalanceWithUsd[]>
189
+ });
175
190
 
176
- ```typescript
177
- const balances: Promise<Map<string, TokenBalance>> = await hinkal.getBalances();
191
+ // Trigger a refresh after a transaction
192
+ hinkal.refreshBalance({ chainIdToUpdate: chainId, updateType: PrivateBalanceUpdateType.Fresh });
178
193
  ```
179
194
 
180
- This returns a map from token address to balance for all tokens held by the user, including ERC20 and ERC721 tokens.
181
-
182
195
  ### Shielding: depositing funds to the shielded balance
183
196
 
184
197
  Shielding is the process of moving your tokens from a public blockchain address into a private, encrypted balance. Once shielded, your tokens are no longer visible on-chain to external observers. This provides privacy for your holdings and subsequent transactions.
@@ -187,31 +200,30 @@ A user can deposit funds to their shielded address using:
187
200
 
188
201
  ```typescript
189
202
  function deposit(
190
- erc20Tokens: ERC20Token[],
203
+ chainId: number,
204
+ erc20Addresses: string[],
191
205
  amountChanges: bigint[],
192
206
  preEstimateGas?: boolean,
193
207
  returnTxData?: boolean,
194
- ): Promise<ethers.providers.TransactionResponse>;
208
+ ): Promise<
209
+ | ethers.TransactionResponse
210
+ | ethers.TransactionRequest
211
+ | string
212
+ | TronWebTypes.Transaction<TronWebTypes.TriggerSmartContract>
213
+ >;
195
214
  ```
196
215
 
197
216
  where:
198
217
 
199
- - `erc20Tokens` is an array of tokens to deposit
200
- - `amountChanges` represents the corresponding token amounts for the deposit
201
- - `preEstimateGas` If true (default), the gas needed for the operation will be estimated before executing the deposit. This can help avoid failed transactions due to "out of gas" error.
202
- - `returnTxData` If true, returns unsigned transaction data without executing. Defaults to false.
218
+ - `chainId` target chain
219
+ - `erc20Addresses` token contract addresses to deposit
220
+ - `amountChanges` corresponding deposit amounts in the token's smallest unit
221
+ - `preEstimateGas` if true (default), gas is estimated before executing the deposit
222
+ - `returnTxData` — if true, returns unsigned transaction data without executing. Defaults to false
203
223
 
204
- The `ERC20Token` type is defined as follows:
224
+ On Solana, use `depositSolana(chainId, erc20Address, amount)`.
205
225
 
206
- ```typescript
207
- type ERC20Token = {
208
- chainId: number;
209
- erc20TokenAddress: string;
210
- name: string;
211
- symbol: string;
212
- decimals: number;
213
- };
214
- ```
226
+ To shield funds for another user's private address, use `depositForOther` (EVM/Tron) or `depositSolanaForOther` (Solana) with their `recipientInfo` string from `getRecipientInfo()`.
215
227
 
216
228
  ### Private Send to Public Address: withdrawing funds from the shielded balance
217
229
 
@@ -221,18 +233,22 @@ A user can withdraw funds from their shielded address to a public address using:
221
233
 
222
234
  ```typescript
223
235
  function withdraw(
224
- erc20Tokens: ERC20Token[],
236
+ chainId: number,
237
+ erc20Addresses: string[],
225
238
  deltaAmounts: bigint[],
226
239
  recipientAddress: string,
227
240
  isRelayerOff: boolean,
228
- ): Promise<string>;
241
+ feeToken?: string,
242
+ feeStructureOverride?: FeeStructure,
243
+ ): Promise<ethers.TransactionResponse | string>;
229
244
  ```
230
245
 
231
246
  where:
232
247
 
233
- - `recipientAddress` is the public address that will receive the withdrawn funds
234
- - `isRelayerOff` determines whether to use a relayer for the transaction (when `false`, a relayer handles gas fees; when `true`, the user pays gas directly)
235
- - `string` type represents the transaction response from the relayer service.
248
+ - `recipientAddress` public address that receives the withdrawn funds
249
+ - `isRelayerOff` when `false`, a relayer handles gas fees; when `true`, the user pays gas directly
250
+ - `feeToken` optional token address used to pay protocol fees
251
+ - `feeStructureOverride` — optional custom fee structure
236
252
 
237
253
  ### Private Send to Private Address: transfering funds from shielded balance
238
254
 
@@ -241,17 +257,24 @@ Private Send to Private Address enables fully confidential transfers between shi
241
257
  A user can transfer tokens from their shielded balance to another shielded address using:
242
258
 
243
259
  ```typescript
244
- function transfer(erc20Tokens: ERC20Token[], deltaAmounts: bigint[], privateRecipientAddress: string): Promise<string>;
260
+ function transfer(
261
+ chainId: number,
262
+ erc20Addresses: string[],
263
+ amountChanges: bigint[],
264
+ recipientAddress: string,
265
+ feeToken?: string,
266
+ feeStructureOverride?: FeeStructure,
267
+ ): Promise<string>;
245
268
  ```
246
269
 
247
270
  where:
248
271
 
249
- - `privateRecipientAddress` is the recipient's private address, formatted as a comma-separated string with five components:
250
- - `randomization` - a random value for privacy
251
- - `stealthAddress` - the recipient's stealth address (hex format starting with `0x`)
252
- - `encryptionKey` - the recipient's encryption key (hex format starting with `0x`, 66 characters)
253
- - `H0` - the first hash component of elliptic curve point for stealth address derivation
254
- - `H1` - the second hash component of elliptic curve point for stealth address derivation
272
+ - `recipientAddress` recipient's private address string from `getRecipientInfo()`. Pass it as-is; do not reformat. It is a comma-separated string with five components:
273
+ - `stealthAddress` recipient's stealth address (hex, `0x` prefix, 64–66 characters)
274
+ - `H0[0]` first coordinate of the H0 elliptic-curve point
275
+ - `H0[1]` second coordinate of the H0 elliptic-curve point
276
+ - `H1[1]` second coordinate of the H1 elliptic-curve point
277
+ - `encryptionKey` recipient's encryption public key (hex, `0x` prefix, 66 characters)
255
278
 
256
279
  ### Private Send from Public to Public addresses
257
280
 
@@ -261,45 +284,24 @@ A user can perform a private transfer between public addresses using:
261
284
 
262
285
  ```typescript
263
286
  function depositAndWithdraw(
264
- erc20Token: ERC20Token,
265
- recipientAmounts: bigint[],
266
- recipientAddresses: string[],
267
- txCompletionTime?: number,
268
- preEstimateGas?: boolean,
269
- ): Promise<string>;
270
- ```
271
-
272
- where:
273
-
274
- - `erc20Token` is the token to transfer (only single token transfers are supported for this method)
275
- - `recipientAmounts` is an array of amounts to send to each recipient (in the token's smallest unit)
276
- - `recipientAddresses` is an array of public addresses that will receive the funds
277
- - `txCompletionTime` (optional) is a Unix timestamp in seconds by which all scheduled withdrawals must complete
278
- - `preEstimateGas` If true (default), the gas needed for the operation will be estimated before executing the deposit. This can help avoid failed transactions due to "out of gas" error.
279
-
280
- ### Private Send from Public to Public addresses (extended)
281
-
282
- Private Send from Public to Public addresses (extended) follows the same flow as `depositAndWithdraw`. Tokens are shielded from the sender's public address, then withdrawn to one or more recipient public addresses on a relayer schedule. In addition to the deposit transaction hash, it returns a `scheduleId` that you can use to check the status of each scheduled withdrawal.
283
-
284
- A user can perform an extended private transfer between public addresses using:
285
-
286
- ```typescript
287
- function depositAndWithdrawExtended(
288
- erc20Token: ERC20Token,
287
+ chainId: number,
288
+ erc20Address: string,
289
289
  recipientAmounts: bigint[],
290
290
  recipientAddresses: string[],
291
291
  txCompletionTime?: number,
292
+ feeStructureOverride?: FeeStructure,
292
293
  preEstimateGas?: boolean,
293
294
  ): Promise<DepositAndSendExtendedResult>;
294
295
  ```
295
296
 
296
297
  where:
297
298
 
298
- - `erc20Token` is the token to transfer (only single token transfers are supported for this method)
299
- - `recipientAmounts` is an array of amounts to send to each recipient (in the token's smallest unit)
300
- - `recipientAddresses` is an array of public addresses that will receive the funds
301
- - `txCompletionTime` (optional) is a Unix timestamp in seconds by which all scheduled withdrawals must complete
302
- - `preEstimateGas` If true (default), the gas needed for the operation will be estimated before executing the deposit. This can help avoid failed transactions due to "out of gas" error.
299
+ - `erc20Address` token contract address (single-token transfers only)
300
+ - `recipientAmounts` amounts to send to each recipient in the token's smallest unit
301
+ - `recipientAddresses` public addresses that receive the funds
302
+ - `txCompletionTime` optional Unix timestamp in seconds by which all scheduled withdrawals must complete
303
+ - `feeStructureOverride` optional custom fee structure
304
+ - `preEstimateGas` — if true (default), gas is estimated before executing the deposit
303
305
 
304
306
  The function returns:
305
307
 
@@ -310,14 +312,14 @@ type DepositAndSendExtendedResult = {
310
312
  };
311
313
  ```
312
314
 
313
- where:
315
+ - `depositTxHash` — on-chain hash of the deposit transaction
316
+ - `scheduleId` — relayer schedule identifier used to fetch withdrawal status
314
317
 
315
- - `depositTxHash` is the on-chain hash of the deposit transaction
316
- - `scheduleId` is the relayer schedule identifier used to fetch withdrawal status
318
+ For cross-chain private sends, use `depositAndBridge(chainId, erc20Address, recipientBridges, ...)` with `BridgeRecipient` entries that include bridge quotes and destination addresses.
317
319
 
318
320
  ### Checking scheduled send status
319
321
 
320
- After calling `depositAndWithdrawExtended`, a user can fetch the current status of the scheduled withdrawals using the returned `scheduleId`:
322
+ After `depositAndWithdraw` or `depositAndBridge`, fetch scheduled withdrawal status using the returned `scheduleId`:
321
323
 
322
324
  ```typescript
323
325
  function checkSendTransactionStatus(scheduleId: string): Promise<ScheduledTransactionByIdResponse>;
@@ -325,7 +327,7 @@ function checkSendTransactionStatus(scheduleId: string): Promise<ScheduledTransa
325
327
 
326
328
  where:
327
329
 
328
- - `scheduleId` is the schedule identifier returned from an extended deposit-and-send call
330
+ - `scheduleId` schedule identifier returned from `depositAndWithdraw` or `depositAndBridge`
329
331
 
330
332
  The function returns:
331
333
 
@@ -369,47 +371,70 @@ A user can swap tokens directly from their shielded balance using:
369
371
 
370
372
  ```typescript
371
373
  function swap(
372
- erc20Tokens: ERC20Token[],
374
+ chainId: number,
375
+ erc20Addresses: string[],
373
376
  deltaAmounts: bigint[],
374
377
  externalActionId: ExternalActionId,
375
378
  swapData: string,
379
+ feeToken?: string,
380
+ feeStructureOverride?: FeeStructure,
376
381
  ): Promise<string>;
377
382
  ```
378
383
 
379
384
  where:
380
385
 
381
- - `externalActionId` identifies the external swap protocol to use. Possible values include:
382
- - `ExternalActionId.Uniswap` - for Uniswap swaps
383
- - `ExternalActionId.OneInch` - for 1Inch swaps
384
- - `ExternalActionId.Odos` - for Odos swaps
385
- - `swapData` contains the encoded swap parameters specific to the chosen protocol
386
+ - `externalActionId` swap protocol to use (`ExternalActionId.Uniswap`, `ExternalActionId.OneInch`, `ExternalActionId.Odos`, etc.)
387
+ - `swapData` encoded swap parameters for the chosen protocol
388
+ - `feeToken` — optional fee-payment token address
389
+ - `feeStructureOverride` optional custom fee structure
386
390
 
387
- **Getting swap calldata:**
391
+ **Getting swap quotes and calldata:**
388
392
 
389
- To obtain the swap calldata using the Hinkal SDK, you can use the built-in swap data generation utilities.
393
+ Fetch quotes from all supported aggregators for a chain in one call.
390
394
 
391
- To get swap data for 1Inch, you can use the `getOneInchPrice` function. This function fetches a quote from the 1Inch aggregator and returns both the expected output amount and the encoded swap data that can be passed to the `swap` function:
395
+ **EVM chains:**
392
396
 
393
- **1Inch:**
397
+ ```typescript
398
+ function getEvmSwapPrices(
399
+ chainId: number,
400
+ inSwapAmount: string,
401
+ inSwapTokenAddress: string,
402
+ outSwapTokenAddress: string,
403
+ ): Promise<EvmSwapPrices>;
404
+ ```
405
+
406
+ ```typescript
407
+ type EvmSwapPrices = {
408
+ uniswap: { tokenPrice: bigint; poolFee: string } | null;
409
+ odos: { outSwapAmountValue: bigint; odosDataValue: string } | null;
410
+ oneInch: { outSwapAmountValue: bigint; oneInchDataValue: string } | null;
411
+ };
412
+ ```
413
+
414
+ Pass the swap calldata from the chosen quote to `swap` as `swapData`, with the matching `externalActionId`:
415
+
416
+ - **Uniswap** — `uniswap.poolFee` with `ExternalActionId.Uniswap` (`uniswap.tokenPrice` is the quoted output amount)
417
+ - **Odos** — `odos.odosDataValue` with `ExternalActionId.Odos`
418
+ - **1Inch** — `oneInch.oneInchDataValue` with `ExternalActionId.OneInch`
419
+
420
+ **Solana:**
394
421
 
395
422
  ```typescript
396
- function getOneInchPrice(
423
+ function getSolanaSwapPrices(
397
424
  chainId: number,
398
- inSwapToken: ERC20Token,
399
- outSwapToken: ERC20Token,
400
425
  inSwapAmount: string,
401
- slippagePercentage?: number,
402
- ): Promise<{
403
- outSwapAmountValue: bigint;
404
- oneInchDataValue: string;
405
- }>;
426
+ inSwapTokenAddress: string,
427
+ outSwapTokenAddress: string,
428
+ ): Promise<SolanaSwapPrices>;
406
429
  ```
407
430
 
408
- Similar functions are available for other supported swap protocols:
431
+ ```typescript
432
+ type SolanaSwapPrices = {
433
+ okx: { outSwapAmountValue: bigint; okxDataValue: string } | null;
434
+ };
435
+ ```
409
436
 
410
- - **Uniswap:** `getUniswapPrice`
411
- - **Odos:** `getOdosPrice`
412
- - **LiFi:** `getLifiPrice`
437
+ Pass `okx.okxDataValue` to `swap` as `swapData` with `ExternalActionId.Okx`.
413
438
 
414
439
  ### Interacting with smart contracts privately
415
440
 
@@ -418,44 +443,48 @@ The SDK lets you interact with any smart contract on the blockchain while keepin
418
443
  ```typescript
419
444
  function actionPrivateWallet(
420
445
  chainId: number,
421
- erc20Tokens: ERC20Token[],
446
+ erc20Addresses: string[],
422
447
  deltaAmounts: bigint[],
423
448
  onChainCreation: boolean[],
424
449
  ops: string[],
450
+ feeToken?: string,
451
+ feeStructureOverride?: FeeStructure,
425
452
  ): Promise<string>;
426
453
  ```
427
454
 
428
455
  Parameters:
429
456
 
430
- - `chainId` - the blockchain network identifier
431
- - `onChainCreation` - array of booleans indicating the direction of token changes: `true` for positive changes (tokens received), `false` for negative changes (tokens spent)
432
- - `ops` - array of encoded user operations to execute (see User operations below)
457
+ - `chainId` blockchain network identifier
458
+ - `erc20Addresses` token contract addresses involved in the action
459
+ - `deltaAmounts` token amount changes
460
+ - `onChainCreation` — `true` for tokens received, `false` for tokens spent
461
+ - `ops` — encoded user operations (see below)
462
+ - `feeToken` — optional fee-payment token address
463
+ - `feeStructureOverride` — optional custom fee structure
433
464
 
434
- User operations (`ops`) are encoded instructions that tell the Emporium contract what actions to perform. Each operation specifies a target contract, the function to call, and any necessary parameters. For example, to stake ETH with Lido, you would create an operation that calls Lido's `submit` function with the appropriate value.
435
-
436
- To generate user operations, a user will need the `emporiumOp` function.
465
+ User operations (`ops`) tell the Emporium contract what to execute. Generate them with `emporiumOp`:
437
466
 
438
467
  ```typescript
439
468
  function emporiumOp(
440
- contract: ethers.Contract | string;
441
- func?: string;
442
- args?: any[];
443
- callDataString?: string;
444
- invokeWallet?: boolean;
445
- value?: bigint;
446
- ): Promise<string>;
469
+ contract: ethers.Contract | string,
470
+ func?: string,
471
+ args?: unknown[],
472
+ callDataString?: string,
473
+ invokeWallet?: boolean,
474
+ value?: bigint,
475
+ ): string;
447
476
  ```
448
477
 
449
- The function accepts the following arguments:
478
+ Arguments:
450
479
 
451
- 1. `contract` _(required)_ - target address or contract instance (with address). The contract instance will be used to properly encode the call function, if any, in the custom operation.
452
- 2. `func` _(optional)_ - the name of the function to be called on the target address.
453
- 3. `args` _(optional)_ - arguments of the function to be called on the target address.
454
- 4. `callDataString` _(optional)_ - pre-encoded calldata string. If provided, `func` and `args` should not be used.
455
- 5. `invokeWallet` _(optional)_ - boolean flag that determines the type of interaction (see the stateless/stateful interactions below).
456
- 6. `value` _(optional)_ - the value field to the user operation call.
480
+ 1. `contract` _(required)_ target address or contract instance
481
+ 2. `func` _(optional)_ function name to call
482
+ 3. `args` _(optional)_ function arguments
483
+ 4. `callDataString` _(optional)_ pre-encoded calldata; do not combine with `func` and `args`
484
+ 5. `invokeWallet` _(optional)_ execute from a persistent wallet address (stateful interactions)
485
+ 6. `value` _(optional)_ ETH/value sent with the call
457
486
 
458
- When the Emporium contract executes a user operation, it receives the data in this format:
487
+ When the Emporium contract executes a user operation, it receives:
459
488
 
460
489
  ```solidity
461
490
  (address endpoint, bool invokeWallet, uint256 value, bytes data)
@@ -475,9 +504,9 @@ For example, consider exchanging USDC for ETH using a DEX. To perform a swap, th
475
504
 
476
505
  ```typescript
477
506
  const operations = [
478
- emporiumOp({ contract: usdcContractInstance, func: 'approve', args: [swapRouterAddress, amountIn] }),
479
- emporiumOp({ contract: swapRouterContractInstance, func: 'exactInputSingle', args: [swapSingleParams] }),
480
- emporiumOp({ contract: wethContractInstance, func: 'withdraw', args: [amountOut] }),
507
+ hinkal.emporiumOp(usdcContractInstance, 'approve', [swapRouterAddress, amountIn]),
508
+ hinkal.emporiumOp(swapRouterContractInstance, 'exactInputSingle', [swapSingleParams]),
509
+ hinkal.emporiumOp(wethContractInstance, 'withdraw', [amountOut]),
481
510
  ];
482
511
  ```
483
512
 
@@ -493,13 +522,8 @@ Consider a scenario where you have already staked Curve LP tokens and want to cl
493
522
 
494
523
  ```typescript
495
524
  const operations = [
496
- emporiumOp({ contract: lpTokenInstance, func: 'approve', args: [gaugeAddressInstance, amount], invokeWallet: true }),
497
- emporiumOp({
498
- contract: gaugeAddressInstance,
499
- func: 'deposit',
500
- args: [amount, invokeWalletAddress],
501
- invokeWallet: true,
502
- }),
525
+ hinkal.emporiumOp(lpTokenInstance, 'approve', [gaugeAddressInstance, amount], undefined, true),
526
+ hinkal.emporiumOp(gaugeAddressInstance, 'deposit', [amount, invokeWalletAddress], undefined, true),
503
527
  ];
504
528
  ```
505
529
 
@@ -1 +1 @@
1
- require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../constants/vite.constants.cjs`),t=require(`./BabyJubRN.cjs`);let n=require(`circomlibjs-hinkal-fork`);var r=new class{babyjub=void 0;async init(){this.babyjub||=e.isReactNative?new t.BabyJubRN:await(0,n.buildBabyjub)()}getJub(){return this.babyjub}},i=()=>r.getJub();exports.babyJubInstance=i,exports.jubHolder=r;
1
+ require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../constants/vite.constants.cjs`);let t=require(`circomlibjs-hinkal-fork`);var n=new class{babyjub=void 0;async init(){this.babyjub||=e.isReactNative?(0,t.buildBabyJubRN)():await(0,t.buildBabyjub)()}getJub(){return this.babyjub}},r=()=>n.getJub();exports.babyJubInstance=r,exports.jubHolder=n;
@@ -1,10 +1,9 @@
1
1
  import { isReactNative as e } from "../constants/vite.constants.mjs";
2
- import { BabyJubRN as t } from "./BabyJubRN.mjs";
3
- import { buildBabyjub as n } from "circomlibjs-hinkal-fork";
2
+ import { buildBabyJubRN as t, buildBabyjub as n } from "circomlibjs-hinkal-fork";
4
3
  var r = new class {
5
4
  babyjub = void 0;
6
5
  async init() {
7
- this.babyjub ||= e ? new t() : await n();
6
+ this.babyjub ||= e ? t() : await n();
8
7
  }
9
8
  getJub() {
10
9
  return this.babyjub;
@@ -1 +1 @@
1
- require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../constants/vite.constants.cjs`),t=require(`./EddsaRN.cjs`);let n=require(`circomlibjs-hinkal-fork`);var r=new class{eddsa=void 0;async init(){this.eddsa||=e.isReactNative?await t.buildEddsaRN():await(0,n.buildEddsa)()}getEddsa(){return this.eddsa}},i=()=>r.getEddsa();exports.eddsaHolder=r,exports.eddsaInstance=i;
1
+ require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../constants/vite.constants.cjs`);let t=require(`circomlibjs-hinkal-fork`);var n=new class{eddsa=void 0;async init(){this.eddsa||=e.isReactNative?await(0,t.buildEddsaRN)():await(0,t.buildEddsa)()}getEddsa(){return this.eddsa}},r=()=>n.getEddsa();exports.eddsaHolder=n,exports.eddsaInstance=r;
@@ -1,10 +1,9 @@
1
1
  import { isReactNative as e } from "../constants/vite.constants.mjs";
2
- import { buildEddsaRN as t } from "./EddsaRN.mjs";
3
- import { buildEddsa as n } from "circomlibjs-hinkal-fork";
2
+ import { buildEddsa as t, buildEddsaRN as n } from "circomlibjs-hinkal-fork";
4
3
  var r = new class {
5
4
  eddsa = void 0;
6
5
  async init() {
7
- this.eddsa ||= e ? await t() : await n();
6
+ this.eddsa ||= e ? await n() : await t();
8
7
  }
9
8
  getEddsa() {
10
9
  return this.eddsa;
@@ -1 +1 @@
1
- const e=require(`../../../_virtual/_rolldown/runtime.cjs`),t=require(`../constants/vite.constants.cjs`),n=require(`../functions/utils/amounts.utils.cjs`);let r=require(`ethers`),i=require(`poseidon-lite`);i=e.__toESM(i);let a=require(`circomlibjs-hinkal-fork`);var o=()=>{let e=e=>{let t=i[`poseidon${e.length}`];if(!t)throw Error(`Poseidon: arity ${e.length} not supported (1..16)`);return t(e.map(e=>BigInt(e)))};return e.F={toString:e=>BigInt(e).toString()},e},s=new class{poseidon=void 0;async init(){this.poseidon||=t.isReactNative?o():await(0,a.buildPoseidon)()}getPoseidon(){return this.poseidon}};function c(...e){let t=s.getPoseidon();return n.toBigInt(t.F.toString(t(e)))}var l=(...e)=>{let t=s.getPoseidon();return r.ethers.toBeHex(t.F.toString(t([...e])))};exports.poseidonFunction=c,exports.poseidonHash=l,exports.poseidonHolder=s;
1
+ require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../constants/vite.constants.cjs`),t=require(`../functions/utils/amounts.utils.cjs`);let n=require(`ethers`),r=require(`circomlibjs-hinkal-fork`);var i=new class{poseidon=void 0;async init(){this.poseidon||=e.isReactNative?(0,r.buildPoseidonRN)():await(0,r.buildPoseidon)()}getPoseidon(){return this.poseidon}};function a(...e){let n=i.getPoseidon();return t.toBigInt(n.F.toString(n(e)))}var o=(...e)=>{let t=i.getPoseidon();return n.ethers.toBeHex(t.F.toString(t([...e])))};exports.poseidonFunction=a,exports.poseidonHash=o,exports.poseidonHolder=i;
@@ -1,32 +1,23 @@
1
1
  import { isReactNative as e } from "../constants/vite.constants.mjs";
2
2
  import { toBigInt as t } from "../functions/utils/amounts.utils.mjs";
3
3
  import { ethers as n } from "ethers";
4
- import * as r from "poseidon-lite";
5
- import { buildPoseidon as i } from "circomlibjs-hinkal-fork";
6
- //#region libs/shared/common/src/crypto/poseidon.ts
7
- var a = () => {
8
- let e = (e) => {
9
- let t = r[`poseidon${e.length}`];
10
- if (!t) throw Error(`Poseidon: arity ${e.length} not supported (1..16)`);
11
- return t(e.map((e) => BigInt(e)));
12
- };
13
- return e.F = { toString: (e) => BigInt(e).toString() }, e;
14
- }, o = new class {
4
+ import { buildPoseidon as r, buildPoseidonRN as i } from "circomlibjs-hinkal-fork";
5
+ var a = new class {
15
6
  poseidon = void 0;
16
7
  async init() {
17
- this.poseidon ||= e ? a() : await i();
8
+ this.poseidon ||= e ? i() : await r();
18
9
  }
19
10
  getPoseidon() {
20
11
  return this.poseidon;
21
12
  }
22
13
  }();
23
- function s(...e) {
24
- let n = o.getPoseidon();
14
+ function o(...e) {
15
+ let n = a.getPoseidon();
25
16
  return t(n.F.toString(n(e)));
26
17
  }
27
- var c = (...e) => {
28
- let t = o.getPoseidon();
18
+ var s = (...e) => {
19
+ let t = a.getPoseidon();
29
20
  return n.toBeHex(t.F.toString(t([...e])));
30
21
  };
31
22
  //#endregion
32
- export { s as poseidonFunction, c as poseidonHash, o as poseidonHolder };
23
+ export { o as poseidonFunction, s as poseidonHash, a as poseidonHolder };