@tokenops/sdk 1.0.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 (371) hide show
  1. package/CHANGELOG.md +207 -0
  2. package/CONTRIBUTING.md +113 -0
  3. package/LICENSE +32 -0
  4. package/README.md +677 -0
  5. package/SECURITY.md +59 -0
  6. package/dist/chunk-52TC6BF7.js +2755 -0
  7. package/dist/chunk-56UI7LUR.cjs +516 -0
  8. package/dist/chunk-5SA2HF2W.cjs +1635 -0
  9. package/dist/chunk-5SGMJADP.cjs +139 -0
  10. package/dist/chunk-62DF53UQ.cjs +749 -0
  11. package/dist/chunk-66IHPTOK.cjs +20 -0
  12. package/dist/chunk-6ECAHP5O.cjs +1496 -0
  13. package/dist/chunk-72YGZEQE.js +742 -0
  14. package/dist/chunk-7VELUOMI.js +35 -0
  15. package/dist/chunk-BE2AIZ3K.js +23 -0
  16. package/dist/chunk-CMRETRZO.js +46 -0
  17. package/dist/chunk-COPFW5Z4.js +82 -0
  18. package/dist/chunk-CQIPRNS7.cjs +25 -0
  19. package/dist/chunk-ECT3NL2L.js +124 -0
  20. package/dist/chunk-FWHYQZ5E.cjs +37 -0
  21. package/dist/chunk-FYQ2UW4T.js +37 -0
  22. package/dist/chunk-HGXNRR25.js +105 -0
  23. package/dist/chunk-HTOMTEA3.cjs +3406 -0
  24. package/dist/chunk-ITQ7WKVC.cjs +101 -0
  25. package/dist/chunk-IVE3QEGD.js +478 -0
  26. package/dist/chunk-JFLEEXKP.js +325 -0
  27. package/dist/chunk-JFR5J4FL.cjs +128 -0
  28. package/dist/chunk-K6MFFDBJ.cjs +109 -0
  29. package/dist/chunk-KWFFIJYX.js +11 -0
  30. package/dist/chunk-NS44KBV5.cjs +89 -0
  31. package/dist/chunk-OLDGMKW2.cjs +93 -0
  32. package/dist/chunk-Q2GP5UDC.js +29 -0
  33. package/dist/chunk-Q7ARQSUH.cjs +42 -0
  34. package/dist/chunk-QCA7O2Q5.cjs +49 -0
  35. package/dist/chunk-QIHZVLIK.js +3388 -0
  36. package/dist/chunk-SUOG3BQS.cjs +2772 -0
  37. package/dist/chunk-T5LVV3KY.cjs +44 -0
  38. package/dist/chunk-UOG4PJL5.js +1488 -0
  39. package/dist/chunk-VDXVNZCO.cjs +329 -0
  40. package/dist/chunk-VJKZWYYJ.cjs +32 -0
  41. package/dist/chunk-WRCUDSUJ.js +96 -0
  42. package/dist/chunk-XSNLAS5M.js +135 -0
  43. package/dist/chunk-XXXDQSHE.js +1628 -0
  44. package/dist/chunk-ZHFLRKFY.js +41 -0
  45. package/dist/chunk-ZXCOJY2Z.js +87 -0
  46. package/dist/core/addresses.d.ts +59 -0
  47. package/dist/core/brands.d.ts +87 -0
  48. package/dist/core/chains.d.ts +102 -0
  49. package/dist/core/errors.d.ts +687 -0
  50. package/dist/core/index.d.ts +7 -0
  51. package/dist/core/normalise.d.ts +27 -0
  52. package/dist/core/preflight.d.ts +25 -0
  53. package/dist/core/revert-mapper.d.ts +74 -0
  54. package/dist/core/telemetry.d.ts +50 -0
  55. package/dist/core/types.d.ts +10 -0
  56. package/dist/core/version.d.ts +15 -0
  57. package/dist/core/zama-error-mapper.d.ts +27 -0
  58. package/dist/fhe/acl.d.ts +73 -0
  59. package/dist/fhe/erc7984-abi.d.ts +53 -0
  60. package/dist/fhe/index.cjs +599 -0
  61. package/dist/fhe/index.d.cts +11 -0
  62. package/dist/fhe/index.d.ts +11 -0
  63. package/dist/fhe/index.js +394 -0
  64. package/dist/fhe/mock-encryptor.d.ts +90 -0
  65. package/dist/fhe/mock-erc7984.d.ts +134 -0
  66. package/dist/fhe/operators.d.ts +190 -0
  67. package/dist/fhe/react/index.cjs +102 -0
  68. package/dist/fhe/react/index.d.cts +10 -0
  69. package/dist/fhe/react/index.d.ts +10 -0
  70. package/dist/fhe/react/index.js +85 -0
  71. package/dist/fhe/react/use-decrypted-handle.d.ts +102 -0
  72. package/dist/fhe/scale-ratio.d.ts +168 -0
  73. package/dist/fhe/sepolia-encryptor-web.d.ts +101 -0
  74. package/dist/fhe/sepolia-encryptor.d.ts +132 -0
  75. package/dist/fhe/types.d.ts +62 -0
  76. package/dist/fhe-airdrop/abis/cloneable.d.ts +781 -0
  77. package/dist/fhe-airdrop/abis/factory.d.ts +714 -0
  78. package/dist/fhe-airdrop/abis/index.d.ts +2 -0
  79. package/dist/fhe-airdrop/advanced/factory-advanced.d.ts +53 -0
  80. package/dist/fhe-airdrop/advanced/index.cjs +21 -0
  81. package/dist/fhe-airdrop/advanced/index.d.cts +13 -0
  82. package/dist/fhe-airdrop/advanced/index.d.ts +13 -0
  83. package/dist/fhe-airdrop/advanced/index.js +8 -0
  84. package/dist/fhe-airdrop/advanced/react/index.cjs +61 -0
  85. package/dist/fhe-airdrop/advanced/react/index.d.cts +5 -0
  86. package/dist/fhe-airdrop/advanced/react/index.d.ts +5 -0
  87. package/dist/fhe-airdrop/advanced/react/index.js +59 -0
  88. package/dist/fhe-airdrop/advanced/react/usePredictAirdropAddress.d.ts +49 -0
  89. package/dist/fhe-airdrop/airdrop.d.ts +308 -0
  90. package/dist/fhe-airdrop/encryption.d.ts +109 -0
  91. package/dist/fhe-airdrop/errors.d.ts +60 -0
  92. package/dist/fhe-airdrop/factory.d.ts +281 -0
  93. package/dist/fhe-airdrop/index.cjs +227 -0
  94. package/dist/fhe-airdrop/index.d.cts +10 -0
  95. package/dist/fhe-airdrop/index.d.ts +10 -0
  96. package/dist/fhe-airdrop/index.js +10 -0
  97. package/dist/fhe-airdrop/react/_shared.d.ts +107 -0
  98. package/dist/fhe-airdrop/react/index.cjs +638 -0
  99. package/dist/fhe-airdrop/react/index.d.cts +90 -0
  100. package/dist/fhe-airdrop/react/index.d.ts +90 -0
  101. package/dist/fhe-airdrop/react/index.js +430 -0
  102. package/dist/fhe-airdrop/react/useAccessClaimAmount.d.ts +31 -0
  103. package/dist/fhe-airdrop/react/useAirdropCanExtendClaimWindow.d.ts +7 -0
  104. package/dist/fhe-airdrop/react/useAirdropClaim.d.ts +25 -0
  105. package/dist/fhe-airdrop/react/useAirdropClaimTypehash.d.ts +10 -0
  106. package/dist/fhe-airdrop/react/useAirdropClaimedSignatures.d.ts +16 -0
  107. package/dist/fhe-airdrop/react/useAirdropDeploymentBlockNumber.d.ts +6 -0
  108. package/dist/fhe-airdrop/react/useAirdropDomainSeparator.d.ts +8 -0
  109. package/dist/fhe-airdrop/react/useAirdropEndTime.d.ts +10 -0
  110. package/dist/fhe-airdrop/react/useAirdropFactoryCustomFee.d.ts +17 -0
  111. package/dist/fhe-airdrop/react/useAirdropFactoryDefaultGasFee.d.ts +10 -0
  112. package/dist/fhe-airdrop/react/useAirdropFactoryDisableCustomFee.d.ts +15 -0
  113. package/dist/fhe-airdrop/react/useAirdropFactoryFeeCollector.d.ts +11 -0
  114. package/dist/fhe-airdrop/react/useAirdropFactoryInitCodeHash.d.ts +17 -0
  115. package/dist/fhe-airdrop/react/useAirdropFactorySetCustomFee.d.ts +17 -0
  116. package/dist/fhe-airdrop/react/useAirdropFactorySetDefaultGasFee.d.ts +16 -0
  117. package/dist/fhe-airdrop/react/useAirdropFactorySetFeeCollector.d.ts +15 -0
  118. package/dist/fhe-airdrop/react/useAirdropGasFee.d.ts +11 -0
  119. package/dist/fhe-airdrop/react/useAirdropGrantRole.d.ts +16 -0
  120. package/dist/fhe-airdrop/react/useAirdropHasClaimEnded.d.ts +7 -0
  121. package/dist/fhe-airdrop/react/useAirdropHasClaimStarted.d.ts +7 -0
  122. package/dist/fhe-airdrop/react/useAirdropHasRole.d.ts +14 -0
  123. package/dist/fhe-airdrop/react/useAirdropIsClaimWindowActive.d.ts +9 -0
  124. package/dist/fhe-airdrop/react/useAirdropIsPaused.d.ts +8 -0
  125. package/dist/fhe-airdrop/react/useAirdropIsSignatureClaimed.d.ts +22 -0
  126. package/dist/fhe-airdrop/react/useAirdropIsSignatureValid.d.ts +50 -0
  127. package/dist/fhe-airdrop/react/useAirdropRevokeRole.d.ts +15 -0
  128. package/dist/fhe-airdrop/react/useAirdropStartTime.d.ts +10 -0
  129. package/dist/fhe-airdrop/react/useAirdropToken.d.ts +11 -0
  130. package/dist/fhe-airdrop/react/useAirdropWithdrawGasFee.d.ts +15 -0
  131. package/dist/fhe-airdrop/react/useAirdropWithdrawOtherConfidentialToken.d.ts +14 -0
  132. package/dist/fhe-airdrop/react/useAirdropWithdrawOtherToken.d.ts +14 -0
  133. package/dist/fhe-airdrop/react/useClaim.d.ts +29 -0
  134. package/dist/fhe-airdrop/react/useConfidentialAirdropFactoryImplementation.d.ts +11 -0
  135. package/dist/fhe-airdrop/react/useCreateAndFundConfidentialAirdrop.d.ts +33 -0
  136. package/dist/fhe-airdrop/react/useCreateAndFundConfidentialAirdropAndGetAddress.d.ts +40 -0
  137. package/dist/fhe-airdrop/react/useCreateConfidentialAirdrop.d.ts +29 -0
  138. package/dist/fhe-airdrop/react/useCreateConfidentialAirdropAndGetAddress.d.ts +31 -0
  139. package/dist/fhe-airdrop/react/useDisableCustomFee.d.ts +14 -0
  140. package/dist/fhe-airdrop/react/useExtendClaimWindow.d.ts +16 -0
  141. package/dist/fhe-airdrop/react/useFactoryCustomFee.d.ts +17 -0
  142. package/dist/fhe-airdrop/react/useFactoryDefaultGasFee.d.ts +10 -0
  143. package/dist/fhe-airdrop/react/useFactoryFeeCollector.d.ts +11 -0
  144. package/dist/fhe-airdrop/react/useFactoryInitCodeHash.d.ts +17 -0
  145. package/dist/fhe-airdrop/react/useFundConfidentialAirdrop.d.ts +25 -0
  146. package/dist/fhe-airdrop/react/useGetClaimAmount.d.ts +30 -0
  147. package/dist/fhe-airdrop/react/useSetCustomFee.d.ts +16 -0
  148. package/dist/fhe-airdrop/react/useSetDefaultGasFee.d.ts +15 -0
  149. package/dist/fhe-airdrop/react/useSetFeeCollector.d.ts +14 -0
  150. package/dist/fhe-airdrop/react/useSetPaused.d.ts +14 -0
  151. package/dist/fhe-airdrop/react/useSignClaimAuthorization.d.ts +31 -0
  152. package/dist/fhe-airdrop/react/useWithdraw.d.ts +12 -0
  153. package/dist/fhe-airdrop/react/useWithdrawOtherConfidentialToken.d.ts +13 -0
  154. package/dist/fhe-airdrop/react/useWithdrawOtherToken.d.ts +13 -0
  155. package/dist/fhe-airdrop/types.d.ts +21 -0
  156. package/dist/fhe-disperse/abis/index.d.ts +2 -0
  157. package/dist/fhe-disperse/abis/singleton.d.ts +1297 -0
  158. package/dist/fhe-disperse/abis/wallet.d.ts +111 -0
  159. package/dist/fhe-disperse/encryption.d.ts +77 -0
  160. package/dist/fhe-disperse/errors.d.ts +39 -0
  161. package/dist/fhe-disperse/index.cjs +248 -0
  162. package/dist/fhe-disperse/index.d.cts +14 -0
  163. package/dist/fhe-disperse/index.d.ts +14 -0
  164. package/dist/fhe-disperse/index.js +11 -0
  165. package/dist/fhe-disperse/react/_shared.d.ts +104 -0
  166. package/dist/fhe-disperse/react/index.cjs +752 -0
  167. package/dist/fhe-disperse/react/index.d.cts +82 -0
  168. package/dist/fhe-disperse/react/index.d.ts +82 -0
  169. package/dist/fhe-disperse/react/index.js +522 -0
  170. package/dist/fhe-disperse/react/useAccessEncryptedFeeReserve.d.ts +35 -0
  171. package/dist/fhe-disperse/react/useApproveTokenOnWallets.d.ts +25 -0
  172. package/dist/fhe-disperse/react/useBatchDiscloseHandlesToParty.d.ts +16 -0
  173. package/dist/fhe-disperse/react/useCalculateFee.d.ts +26 -0
  174. package/dist/fhe-disperse/react/useDeploymentBlockNumber.d.ts +11 -0
  175. package/dist/fhe-disperse/react/useDisableCustomFee.d.ts +20 -0
  176. package/dist/fhe-disperse/react/useDiscloseHandleToParty.d.ts +20 -0
  177. package/dist/fhe-disperse/react/useDisperse.d.ts +28 -0
  178. package/dist/fhe-disperse/react/useGetBatchLimits.d.ts +12 -0
  179. package/dist/fhe-disperse/react/useGetFeeConfig.d.ts +15 -0
  180. package/dist/fhe-disperse/react/useGetFees.d.ts +19 -0
  181. package/dist/fhe-disperse/react/useGetWallets.d.ts +19 -0
  182. package/dist/fhe-disperse/react/useGrantRole.d.ts +24 -0
  183. package/dist/fhe-disperse/react/useHasApprovedSubwallets.d.ts +25 -0
  184. package/dist/fhe-disperse/react/useHasRole.d.ts +22 -0
  185. package/dist/fhe-disperse/react/useIsPaused.d.ts +11 -0
  186. package/dist/fhe-disperse/react/useIsRegistered.d.ts +15 -0
  187. package/dist/fhe-disperse/react/usePause.d.ts +18 -0
  188. package/dist/fhe-disperse/react/usePredictWallets.d.ts +19 -0
  189. package/dist/fhe-disperse/react/usePreflightDisperse.d.ts +37 -0
  190. package/dist/fhe-disperse/react/useRecoverERC20FromWallets.d.ts +21 -0
  191. package/dist/fhe-disperse/react/useRecoverFromWallets.d.ts +21 -0
  192. package/dist/fhe-disperse/react/useRegister.d.ts +40 -0
  193. package/dist/fhe-disperse/react/useRescueConfidentialTokens.d.ts +21 -0
  194. package/dist/fhe-disperse/react/useRescueERC20.d.ts +21 -0
  195. package/dist/fhe-disperse/react/useRevokeRole.d.ts +24 -0
  196. package/dist/fhe-disperse/react/useRevokeTokenOnWallets.d.ts +24 -0
  197. package/dist/fhe-disperse/react/useSetCustomFee.d.ts +24 -0
  198. package/dist/fhe-disperse/react/useSetFeeConfig.d.ts +23 -0
  199. package/dist/fhe-disperse/react/useSetMaxBatchSizeDirect.d.ts +20 -0
  200. package/dist/fhe-disperse/react/useSetMaxBatchSizeHolding.d.ts +20 -0
  201. package/dist/fhe-disperse/react/useSetMaxBatchSizeTokenFee.d.ts +20 -0
  202. package/dist/fhe-disperse/react/useSingletonBatchDiscloseHandlesToParty.d.ts +13 -0
  203. package/dist/fhe-disperse/react/useSingletonBatchLimits.d.ts +12 -0
  204. package/dist/fhe-disperse/react/useSingletonCalculateFee.d.ts +26 -0
  205. package/dist/fhe-disperse/react/useSingletonDeploymentBlockNumber.d.ts +11 -0
  206. package/dist/fhe-disperse/react/useSingletonDisableCustomFee.d.ts +21 -0
  207. package/dist/fhe-disperse/react/useSingletonDiscloseHandleToParty.d.ts +17 -0
  208. package/dist/fhe-disperse/react/useSingletonFees.d.ts +19 -0
  209. package/dist/fhe-disperse/react/useSingletonGrantRole.d.ts +26 -0
  210. package/dist/fhe-disperse/react/useSingletonHasApprovedSubwallets.d.ts +25 -0
  211. package/dist/fhe-disperse/react/useSingletonHasRole.d.ts +23 -0
  212. package/dist/fhe-disperse/react/useSingletonIsPaused.d.ts +11 -0
  213. package/dist/fhe-disperse/react/useSingletonIsRegistered.d.ts +15 -0
  214. package/dist/fhe-disperse/react/useSingletonPause.d.ts +19 -0
  215. package/dist/fhe-disperse/react/useSingletonPredictWallets.d.ts +19 -0
  216. package/dist/fhe-disperse/react/useSingletonRevokeRole.d.ts +26 -0
  217. package/dist/fhe-disperse/react/useSingletonSetCustomFee.d.ts +25 -0
  218. package/dist/fhe-disperse/react/useSingletonUnpause.d.ts +18 -0
  219. package/dist/fhe-disperse/react/useSingletonWalletImplementation.d.ts +12 -0
  220. package/dist/fhe-disperse/react/useSingletonWallets.d.ts +19 -0
  221. package/dist/fhe-disperse/react/useSingletonWithdrawGasFee.d.ts +21 -0
  222. package/dist/fhe-disperse/react/useSingletonWithdrawTokenFee.d.ts +50 -0
  223. package/dist/fhe-disperse/react/useUnpause.d.ts +17 -0
  224. package/dist/fhe-disperse/react/useWalletImplementation.d.ts +12 -0
  225. package/dist/fhe-disperse/react/useWithdrawGasFee.d.ts +26 -0
  226. package/dist/fhe-disperse/react/useWithdrawTokenFee.d.ts +70 -0
  227. package/dist/fhe-disperse/singleton.d.ts +442 -0
  228. package/dist/fhe-disperse/subtotals.d.ts +14 -0
  229. package/dist/fhe-disperse/types.d.ts +332 -0
  230. package/dist/fhe-disperse/validate.d.ts +78 -0
  231. package/dist/fhe-vesting/abis/factory.d.ts +676 -0
  232. package/dist/fhe-vesting/abis/index.d.ts +3 -0
  233. package/dist/fhe-vesting/abis/manager.d.ts +1797 -0
  234. package/dist/fhe-vesting/advanced/factory-advanced.d.ts +52 -0
  235. package/dist/fhe-vesting/advanced/index.cjs +21 -0
  236. package/dist/fhe-vesting/advanced/index.d.cts +12 -0
  237. package/dist/fhe-vesting/advanced/index.d.ts +12 -0
  238. package/dist/fhe-vesting/advanced/index.js +8 -0
  239. package/dist/fhe-vesting/advanced/react/index.cjs +75 -0
  240. package/dist/fhe-vesting/advanced/react/index.d.cts +5 -0
  241. package/dist/fhe-vesting/advanced/react/index.d.ts +5 -0
  242. package/dist/fhe-vesting/advanced/react/index.js +73 -0
  243. package/dist/fhe-vesting/advanced/react/usePredictManagerAddress.d.ts +41 -0
  244. package/dist/fhe-vesting/encryption.d.ts +104 -0
  245. package/dist/fhe-vesting/errors.d.ts +183 -0
  246. package/dist/fhe-vesting/factory.d.ts +207 -0
  247. package/dist/fhe-vesting/index.cjs +269 -0
  248. package/dist/fhe-vesting/index.d.cts +9 -0
  249. package/dist/fhe-vesting/index.d.ts +9 -0
  250. package/dist/fhe-vesting/index.js +12 -0
  251. package/dist/fhe-vesting/manager.d.ts +808 -0
  252. package/dist/fhe-vesting/react/_shared.d.ts +122 -0
  253. package/dist/fhe-vesting/react/index.cjs +1054 -0
  254. package/dist/fhe-vesting/react/index.d.cts +123 -0
  255. package/dist/fhe-vesting/react/index.d.ts +123 -0
  256. package/dist/fhe-vesting/react/index.js +771 -0
  257. package/dist/fhe-vesting/react/useAcceptVestingTransfer.d.ts +12 -0
  258. package/dist/fhe-vesting/react/useAccessClaimableAmount.d.ts +14 -0
  259. package/dist/fhe-vesting/react/useAccessSettledAmount.d.ts +15 -0
  260. package/dist/fhe-vesting/react/useAccessTotalAllocation.d.ts +14 -0
  261. package/dist/fhe-vesting/react/useAccessVestedAmount.d.ts +26 -0
  262. package/dist/fhe-vesting/react/useAdminBatchDiscloseToParty.d.ts +16 -0
  263. package/dist/fhe-vesting/react/useAdminClaim.d.ts +9 -0
  264. package/dist/fhe-vesting/react/useAdminDiscloseToParty.d.ts +8 -0
  265. package/dist/fhe-vesting/react/useAdminGetClaimableAmount.d.ts +13 -0
  266. package/dist/fhe-vesting/react/useAdminGetSettledAmount.d.ts +13 -0
  267. package/dist/fhe-vesting/react/useAdminGetTokenBalance.d.ts +13 -0
  268. package/dist/fhe-vesting/react/useAdminGetTotalAllocation.d.ts +13 -0
  269. package/dist/fhe-vesting/react/useAdminGetVestedAmount.d.ts +15 -0
  270. package/dist/fhe-vesting/react/useAdminPartialClaim.d.ts +8 -0
  271. package/dist/fhe-vesting/react/useAllRecipients.d.ts +8 -0
  272. package/dist/fhe-vesting/react/useAllRecipientsLength.d.ts +6 -0
  273. package/dist/fhe-vesting/react/useAllRecipientsSliced.d.ts +13 -0
  274. package/dist/fhe-vesting/react/useBatchCreateVesting.d.ts +24 -0
  275. package/dist/fhe-vesting/react/useBatchDiscloseHandlesToParty.d.ts +13 -0
  276. package/dist/fhe-vesting/react/useBatchDiscloseToParty.d.ts +18 -0
  277. package/dist/fhe-vesting/react/useBatchRevokeVesting.d.ts +12 -0
  278. package/dist/fhe-vesting/react/useCancelVestingTransfer.d.ts +12 -0
  279. package/dist/fhe-vesting/react/useClaim.d.ts +19 -0
  280. package/dist/fhe-vesting/react/useConfidentialVestingFactoryImplementation.d.ts +11 -0
  281. package/dist/fhe-vesting/react/useCreateManager.d.ts +32 -0
  282. package/dist/fhe-vesting/react/useCreateManagerAndGetAddress.d.ts +31 -0
  283. package/dist/fhe-vesting/react/useCreateVesting.d.ts +38 -0
  284. package/dist/fhe-vesting/react/useDirectVestingTransfer.d.ts +13 -0
  285. package/dist/fhe-vesting/react/useDisableCustomFee.d.ts +14 -0
  286. package/dist/fhe-vesting/react/useDiscloseHandleToParty.d.ts +14 -0
  287. package/dist/fhe-vesting/react/useDiscloseToParty.d.ts +14 -0
  288. package/dist/fhe-vesting/react/useFactoryCustomFee.d.ts +17 -0
  289. package/dist/fhe-vesting/react/useFactoryDefaultFeeType.d.ts +11 -0
  290. package/dist/fhe-vesting/react/useFactoryDefaultGasFee.d.ts +10 -0
  291. package/dist/fhe-vesting/react/useFactoryDefaultTokenFee.d.ts +10 -0
  292. package/dist/fhe-vesting/react/useFactoryFeeCollector.d.ts +10 -0
  293. package/dist/fhe-vesting/react/useFactoryInitCodeHash.d.ts +18 -0
  294. package/dist/fhe-vesting/react/useGetClaimableAmount.d.ts +13 -0
  295. package/dist/fhe-vesting/react/useGetSettledAmount.d.ts +14 -0
  296. package/dist/fhe-vesting/react/useGetTotalAllocation.d.ts +13 -0
  297. package/dist/fhe-vesting/react/useGetVestedAmount.d.ts +25 -0
  298. package/dist/fhe-vesting/react/useGrantRole.d.ts +15 -0
  299. package/dist/fhe-vesting/react/useHasRole.d.ts +14 -0
  300. package/dist/fhe-vesting/react/useInitiateVestingTransfer.d.ts +12 -0
  301. package/dist/fhe-vesting/react/useIsRecipient.d.ts +10 -0
  302. package/dist/fhe-vesting/react/useManagerBatchDiscloseHandlesToParty.d.ts +15 -0
  303. package/dist/fhe-vesting/react/useManagerDeploymentBlockNumber.d.ts +7 -0
  304. package/dist/fhe-vesting/react/useManagerDiscloseHandleToParty.d.ts +16 -0
  305. package/dist/fhe-vesting/react/useManagerFactoryCustomFee.d.ts +17 -0
  306. package/dist/fhe-vesting/react/useManagerFactoryDefaultGasFee.d.ts +10 -0
  307. package/dist/fhe-vesting/react/useManagerFactoryDisableCustomFee.d.ts +15 -0
  308. package/dist/fhe-vesting/react/useManagerFactoryFeeCollector.d.ts +10 -0
  309. package/dist/fhe-vesting/react/useManagerFactoryInitCodeHash.d.ts +18 -0
  310. package/dist/fhe-vesting/react/useManagerFactorySetCustomFee.d.ts +19 -0
  311. package/dist/fhe-vesting/react/useManagerFactorySetDefaultGasFee.d.ts +13 -0
  312. package/dist/fhe-vesting/react/useManagerFactorySetFeeCollector.d.ts +14 -0
  313. package/dist/fhe-vesting/react/useManagerFee.d.ts +7 -0
  314. package/dist/fhe-vesting/react/useManagerFeeInfo.d.ts +18 -0
  315. package/dist/fhe-vesting/react/useManagerFeeType.d.ts +7 -0
  316. package/dist/fhe-vesting/react/useManagerGrantRole.d.ts +17 -0
  317. package/dist/fhe-vesting/react/useManagerHasRole.d.ts +15 -0
  318. package/dist/fhe-vesting/react/useManagerIsPausable.d.ts +6 -0
  319. package/dist/fhe-vesting/react/useManagerIsSplitEnabled.d.ts +6 -0
  320. package/dist/fhe-vesting/react/useManagerMaxBatchSize.d.ts +6 -0
  321. package/dist/fhe-vesting/react/useManagerMaxRevokeBatchSize.d.ts +6 -0
  322. package/dist/fhe-vesting/react/useManagerPause.d.ts +13 -0
  323. package/dist/fhe-vesting/react/useManagerPaused.d.ts +6 -0
  324. package/dist/fhe-vesting/react/useManagerRevokeRole.d.ts +17 -0
  325. package/dist/fhe-vesting/react/useManagerToken.d.ts +11 -0
  326. package/dist/fhe-vesting/react/useManagerUnpause.d.ts +12 -0
  327. package/dist/fhe-vesting/react/useManagerWithdrawGasFee.d.ts +14 -0
  328. package/dist/fhe-vesting/react/useManagerWithdrawOtherConfidentialToken.d.ts +14 -0
  329. package/dist/fhe-vesting/react/useManagerWithdrawOtherToken.d.ts +14 -0
  330. package/dist/fhe-vesting/react/useManagerWithdrawTokenFee.d.ts +11 -0
  331. package/dist/fhe-vesting/react/usePartialClaim.d.ts +15 -0
  332. package/dist/fhe-vesting/react/usePause.d.ts +12 -0
  333. package/dist/fhe-vesting/react/usePendingVestingTransfer.d.ts +20 -0
  334. package/dist/fhe-vesting/react/useRecipientVestings.d.ts +11 -0
  335. package/dist/fhe-vesting/react/useRecipientVestingsLength.d.ts +10 -0
  336. package/dist/fhe-vesting/react/useRecipientVestingsSliced.d.ts +12 -0
  337. package/dist/fhe-vesting/react/useRenounceRole.d.ts +16 -0
  338. package/dist/fhe-vesting/react/useResetGasFee.d.ts +10 -0
  339. package/dist/fhe-vesting/react/useResetTokenFee.d.ts +10 -0
  340. package/dist/fhe-vesting/react/useRevokeRole.d.ts +15 -0
  341. package/dist/fhe-vesting/react/useRevokeVesting.d.ts +15 -0
  342. package/dist/fhe-vesting/react/useRoleConstants.d.ts +19 -0
  343. package/dist/fhe-vesting/react/useSetCustomFee.d.ts +18 -0
  344. package/dist/fhe-vesting/react/useSetDefaultFeeType.d.ts +14 -0
  345. package/dist/fhe-vesting/react/useSetDefaultGasFee.d.ts +12 -0
  346. package/dist/fhe-vesting/react/useSetDefaultTokenFee.d.ts +13 -0
  347. package/dist/fhe-vesting/react/useSetFeeCollector.d.ts +13 -0
  348. package/dist/fhe-vesting/react/useSetMaxBatchSize.d.ts +12 -0
  349. package/dist/fhe-vesting/react/useSetMaxRevokeBatchSize.d.ts +12 -0
  350. package/dist/fhe-vesting/react/useSplitVesting.d.ts +28 -0
  351. package/dist/fhe-vesting/react/useTransferFeeCollectorRole.d.ts +12 -0
  352. package/dist/fhe-vesting/react/useUnpause.d.ts +11 -0
  353. package/dist/fhe-vesting/react/useVestingClaim.d.ts +19 -0
  354. package/dist/fhe-vesting/react/useVestingInfo.d.ts +25 -0
  355. package/dist/fhe-vesting/react/useWithdrawAdmin.d.ts +17 -0
  356. package/dist/fhe-vesting/react/useWithdrawGasFee.d.ts +13 -0
  357. package/dist/fhe-vesting/react/useWithdrawOtherConfidentialToken.d.ts +13 -0
  358. package/dist/fhe-vesting/react/useWithdrawOtherToken.d.ts +13 -0
  359. package/dist/fhe-vesting/react/useWithdrawTokenFee.d.ts +18 -0
  360. package/dist/fhe-vesting/types.d.ts +72 -0
  361. package/dist/index.cjs +237 -0
  362. package/dist/index.d.cts +3 -0
  363. package/dist/index.d.ts +3 -0
  364. package/dist/index.js +14 -0
  365. package/dist/telemetry/console.d.ts +29 -0
  366. package/dist/telemetry/index.cjs +113 -0
  367. package/dist/telemetry/index.d.cts +3 -0
  368. package/dist/telemetry/index.d.ts +3 -0
  369. package/dist/telemetry/index.js +102 -0
  370. package/dist/telemetry/tokenops.d.ts +15 -0
  371. package/package.json +316 -0
@@ -0,0 +1,325 @@
1
+ import { TokenOpsSdkError, ContractRevertError, InvalidArgumentError, InvalidSignatureError, FheHandleNotAllowedError, TransferFailedError, FeatureDisabledError, BatchTooLargeError, InsufficientBalanceError, InsufficientFeeError, ReentrancyError, AlreadyInitializedError, AccessDeniedError, PausedError, UnknownWriteFailureError, WalletRejectedError, WalletChainMismatchError, InsufficientGasFundsError, NetworkError } from './chunk-IVE3QEGD.js';
2
+ import { decodeErrorResult, BaseError, ContractFunctionRevertedError, UserRejectedRequestError, TransactionRejectedRpcError, ChainMismatchError, InsufficientFundsError, HttpRequestError, TimeoutError } from 'viem';
3
+
4
+ // src/core/version.ts
5
+ var SDK_VERSION = "1.0.0";
6
+ function mapContractRevert(error, args) {
7
+ if (error instanceof TokenOpsSdkError) return error;
8
+ const ctx = {
9
+ method: args.method,
10
+ contractAddress: args.contractAddress,
11
+ productContext: args.productContext
12
+ };
13
+ const reverted = findRevertedError(error);
14
+ if (!reverted) {
15
+ return classifyNonRevert(error, args);
16
+ }
17
+ let revertName = reverted.data?.errorName;
18
+ let revertArgs = reverted.data?.args;
19
+ let revertSelector;
20
+ const rawRevertData = reverted.raw;
21
+ const revertReason = reverted.reason;
22
+ if (revertName === void 0 && rawRevertData !== void 0 && rawRevertData.length >= 10) {
23
+ revertSelector = rawRevertData.slice(0, 10);
24
+ try {
25
+ const decoded = decodeErrorResult({ abi: args.abi, data: rawRevertData });
26
+ revertName = decoded.errorName;
27
+ revertArgs = decoded.args;
28
+ } catch {
29
+ }
30
+ } else if (revertSelector === void 0 && rawRevertData !== void 0) {
31
+ revertSelector = rawRevertData.slice(0, 10);
32
+ }
33
+ if (revertName !== void 0) {
34
+ const fromProduct = args.productMapper?.(revertName, revertArgs, ctx);
35
+ if (fromProduct) return attachCause(fromProduct, error);
36
+ const fromDefault = defaultRevertNameMapper(revertName, revertArgs, ctx, args.account);
37
+ if (fromDefault) return attachCause(fromDefault, error);
38
+ }
39
+ return new ContractRevertError({
40
+ method: args.method,
41
+ contractAddress: args.contractAddress,
42
+ revertName,
43
+ revertSelector,
44
+ revertArgs,
45
+ revertReason,
46
+ rawRevertData,
47
+ cause: error
48
+ });
49
+ }
50
+ function attachCause(err, cause) {
51
+ if (err.cause === void 0) {
52
+ Object.defineProperty(err, "cause", {
53
+ value: cause,
54
+ writable: true,
55
+ configurable: true,
56
+ enumerable: false
57
+ });
58
+ }
59
+ return err;
60
+ }
61
+ function defaultRevertNameMapper(name, errArgs, ctx, account) {
62
+ switch (name) {
63
+ // OpenZeppelin / cross-product structural errors.
64
+ case "EnforcedPause":
65
+ case "PausableUpgradeable__Paused":
66
+ case "ClaimsPaused":
67
+ return new PausedError(ctx);
68
+ case "AccessControlUnauthorizedAccount": {
69
+ const acct = errArgs?.[0] ?? account;
70
+ const role = errArgs?.[1];
71
+ return new AccessDeniedError({ ...ctx, account: acct, role });
72
+ }
73
+ case "AccessControlBadConfirmation":
74
+ return new InvalidArgumentError({
75
+ method: ctx.method,
76
+ argument: "callerConfirmation",
77
+ reason: "must equal msg.sender for renounceRole"
78
+ });
79
+ case "InvalidInitialization":
80
+ case "Initializable_InvalidInitialization":
81
+ return new AlreadyInitializedError(ctx);
82
+ case "ReentrancyGuardReentrantCall":
83
+ case "ReentrancyGuardTransient":
84
+ return new ReentrancyError(ctx);
85
+ // Cross-product custom errors with stable, unambiguous meaning.
86
+ case "InsufficientFee":
87
+ case "InsufficientGasFee":
88
+ return new InsufficientFeeError({ ...ctx, feeKind: "gas" });
89
+ case "InsufficientAmount": {
90
+ const provided = errArgs?.[0];
91
+ const required = errArgs?.[1];
92
+ return new InsufficientFeeError({ ...ctx, feeKind: "gas", required, provided });
93
+ }
94
+ case "ZeroBalance":
95
+ case "InsufficientBalance":
96
+ return new InsufficientBalanceError({ ...ctx, balanceKind: "eth" });
97
+ case "BatchTooLarge": {
98
+ const requested = Number(errArgs?.[0] ?? 0);
99
+ const max = errArgs?.[1] ?? 0n;
100
+ return new BatchTooLargeError({ ...ctx, requested, max });
101
+ }
102
+ case "SplitDisabled":
103
+ return new FeatureDisabledError({ ...ctx, feature: "split" });
104
+ case "PausableDisabled":
105
+ return new FeatureDisabledError({ ...ctx, feature: "pause" });
106
+ case "ExtensionNotAllowed":
107
+ return new FeatureDisabledError({ ...ctx, feature: "extendClaimWindow" });
108
+ case "TransferFailed":
109
+ return new TransferFailedError({ ...ctx, asset: "eth" });
110
+ case "HandleNotAllowed":
111
+ return new FheHandleNotAllowedError({ ...ctx, account });
112
+ case "SenderNotAllowedToUseHandle": {
113
+ const handle = errArgs?.[0];
114
+ const sender = errArgs?.[1] ?? account;
115
+ return new FheHandleNotAllowedError({ ...ctx, handle, account: sender });
116
+ }
117
+ case "SenderNotAllowed": {
118
+ const sender = errArgs?.[0] ?? account;
119
+ return new FheHandleNotAllowedError({ ...ctx, account: sender });
120
+ }
121
+ case "InvalidSignature":
122
+ return new InvalidSignatureError(ctx);
123
+ // Range / arg-validation reverts the SDK should already have caught in
124
+ // preflight or input validation. If they slip through, surface them as
125
+ // structural `InvalidArgumentError` so consumers see `TOKENOPS_INVALID_ARGUMENT`
126
+ // rather than a generic contract-revert message.
127
+ case "InvalidAddress":
128
+ case "InvalidAdmin":
129
+ case "InvalidFeeCollector":
130
+ case "InvalidRecipient":
131
+ case "InvalidToken":
132
+ case "InvalidParty":
133
+ case "InvalidStartTime":
134
+ case "EndTimeInPast":
135
+ case "InvalidDuration":
136
+ case "InvalidTimestamps":
137
+ case "InvalidBps":
138
+ case "InvalidFeeBps":
139
+ case "TokenFeeTooHigh":
140
+ case "CliffExceedsDuration":
141
+ case "TimelockOverflow":
142
+ case "InvalidTransferDuration":
143
+ case "InvalidSplitDenominator":
144
+ case "InvalidMaxBatchSize":
145
+ case "InvalidWalletIndex":
146
+ case "CannotTransferToSelf":
147
+ case "CannotTransferToZero":
148
+ case "SameToken":
149
+ case "UnexpectedETH":
150
+ case "EmptyBatch":
151
+ case "EmptyRecipients":
152
+ case "ZeroAddressRecipient":
153
+ case "ArrayLengthMismatch":
154
+ case "VestingIdsNotStrictlyAsc":
155
+ case "CustomFeeNotSet":
156
+ return new InvalidArgumentError({
157
+ method: ctx.method,
158
+ argument: invalidArgumentLabelFor(name),
159
+ reason: `the contract reverted with \`${name}\`. If you did not pass an invalid value, this may be an SDK bug \u2014 please file an issue.`
160
+ });
161
+ default:
162
+ return void 0;
163
+ }
164
+ }
165
+ function invalidArgumentLabelFor(revertName) {
166
+ switch (revertName) {
167
+ case "InvalidAddress":
168
+ return "address";
169
+ case "InvalidAdmin":
170
+ return "admin";
171
+ case "InvalidFeeCollector":
172
+ return "feeCollector";
173
+ case "InvalidRecipient":
174
+ case "ZeroAddressRecipient":
175
+ return "recipient";
176
+ case "InvalidToken":
177
+ case "SameToken":
178
+ return "token";
179
+ case "InvalidParty":
180
+ return "party";
181
+ case "InvalidStartTime":
182
+ return "startTime";
183
+ case "EndTimeInPast":
184
+ return "endTime";
185
+ case "InvalidDuration":
186
+ case "InvalidTransferDuration":
187
+ return "duration";
188
+ case "InvalidTimestamps":
189
+ return "timestamps";
190
+ case "InvalidBps":
191
+ case "InvalidFeeBps":
192
+ case "TokenFeeTooHigh":
193
+ return "feeBps";
194
+ case "CliffExceedsDuration":
195
+ return "cliff";
196
+ case "TimelockOverflow":
197
+ return "timelock";
198
+ case "InvalidSplitDenominator":
199
+ return "splitDenominator";
200
+ case "InvalidMaxBatchSize":
201
+ return "maxBatchSize";
202
+ case "InvalidWalletIndex":
203
+ return "walletIndex";
204
+ case "CannotTransferToSelf":
205
+ case "CannotTransferToZero":
206
+ return "to";
207
+ case "UnexpectedETH":
208
+ return "msg.value";
209
+ case "EmptyBatch":
210
+ case "EmptyRecipients":
211
+ return "recipients";
212
+ case "ArrayLengthMismatch":
213
+ return "arguments";
214
+ case "VestingIdsNotStrictlyAsc":
215
+ return "vestingIds";
216
+ case "CustomFeeNotSet":
217
+ return "user";
218
+ default:
219
+ return "input";
220
+ }
221
+ }
222
+ function isContractRevert(error) {
223
+ if (!(error instanceof BaseError)) return false;
224
+ const frame = error.walk((e) => e instanceof ContractFunctionRevertedError);
225
+ return frame instanceof ContractFunctionRevertedError;
226
+ }
227
+ function classifyNonRevert(error, args) {
228
+ if (!(error instanceof BaseError)) {
229
+ return new UnknownWriteFailureError({
230
+ method: args.method,
231
+ contractAddress: args.contractAddress,
232
+ cause: error
233
+ });
234
+ }
235
+ const walk = (predicate) => {
236
+ const frame = error.walk((f) => predicate(f));
237
+ return predicate(frame) ? frame : void 0;
238
+ };
239
+ if (walk((e) => e instanceof UserRejectedRequestError) || walk((e) => e instanceof TransactionRejectedRpcError)) {
240
+ return new WalletRejectedError({
241
+ method: args.method,
242
+ contractAddress: args.contractAddress,
243
+ cause: error
244
+ });
245
+ }
246
+ if (walk((e) => e instanceof ChainMismatchError)) {
247
+ return new WalletChainMismatchError({
248
+ method: args.method,
249
+ contractAddress: args.contractAddress,
250
+ cause: error
251
+ });
252
+ }
253
+ if (walk((e) => e instanceof InsufficientFundsError)) {
254
+ return new InsufficientGasFundsError({
255
+ method: args.method,
256
+ contractAddress: args.contractAddress,
257
+ cause: error
258
+ });
259
+ }
260
+ const httpFrame = walk((e) => e instanceof HttpRequestError);
261
+ if (httpFrame) {
262
+ return new NetworkError({
263
+ method: args.method,
264
+ contractAddress: args.contractAddress,
265
+ statusCode: httpFrame.status,
266
+ cause: error
267
+ });
268
+ }
269
+ if (walk((e) => e instanceof TimeoutError)) {
270
+ return new NetworkError({
271
+ method: args.method,
272
+ contractAddress: args.contractAddress,
273
+ cause: error
274
+ });
275
+ }
276
+ return new UnknownWriteFailureError({
277
+ method: args.method,
278
+ contractAddress: args.contractAddress,
279
+ cause: error
280
+ });
281
+ }
282
+ function findRevertedError(err) {
283
+ if (!(err instanceof BaseError)) {
284
+ if (err instanceof Error) {
285
+ const hex = coerceRevertHex(err.data);
286
+ if (hex) return { raw: hex };
287
+ }
288
+ return void 0;
289
+ }
290
+ const frame = err.walk((f) => f instanceof ContractFunctionRevertedError);
291
+ if (frame instanceof ContractFunctionRevertedError) {
292
+ const data = frame.data ? {
293
+ errorName: frame.data.errorName,
294
+ args: frame.data.args
295
+ } : void 0;
296
+ return {
297
+ data,
298
+ raw: frame.raw,
299
+ reason: frame.reason
300
+ };
301
+ }
302
+ let cursor = err;
303
+ const seen = /* @__PURE__ */ new Set();
304
+ while (cursor && !seen.has(cursor)) {
305
+ seen.add(cursor);
306
+ const hex = coerceRevertHex(cursor.data);
307
+ if (hex) return { raw: hex };
308
+ cursor = cursor.cause;
309
+ }
310
+ return void 0;
311
+ }
312
+ function coerceRevertHex(value) {
313
+ if (typeof value === "string" && value.startsWith("0x") && value.length >= 10) {
314
+ return value;
315
+ }
316
+ if (value !== null && typeof value === "object" && "data" in value) {
317
+ const nested = value.data;
318
+ if (typeof nested === "string" && nested.startsWith("0x") && nested.length >= 10) {
319
+ return nested;
320
+ }
321
+ }
322
+ return void 0;
323
+ }
324
+
325
+ export { SDK_VERSION, isContractRevert, mapContractRevert };
@@ -0,0 +1,128 @@
1
+ 'use strict';
2
+
3
+ var chunkSUOG3BQS_cjs = require('./chunk-SUOG3BQS.cjs');
4
+ var chunk62DF53UQ_cjs = require('./chunk-62DF53UQ.cjs');
5
+ var chunkOLDGMKW2_cjs = require('./chunk-OLDGMKW2.cjs');
6
+ var chunk56UI7LUR_cjs = require('./chunk-56UI7LUR.cjs');
7
+ var react = require('react');
8
+ var wagmi = require('wagmi');
9
+
10
+ var FHE_VESTING_KEY = "tokenops-sdk";
11
+ var FHE_VESTING_NAMESPACE = "fhe-vesting";
12
+ function useHookFiredEvent(hookName, telemetry, hasWallet, chainId) {
13
+ const firedRef = react.useRef(false);
14
+ react.useEffect(() => {
15
+ if (firedRef.current || !telemetry) return;
16
+ firedRef.current = true;
17
+ telemetry.event("fhe-vesting.react.hook.fired", {
18
+ hookName,
19
+ surface: "react",
20
+ hasWallet,
21
+ chainId: chainId ?? null
22
+ });
23
+ }, []);
24
+ }
25
+ function tryResolveFactoryAddress(override, chainId) {
26
+ if (override) return override;
27
+ if (chainId === void 0) return void 0;
28
+ return chunkOLDGMKW2_cjs.getFheVestingFactoryAddress(chainId);
29
+ }
30
+ function useMemoFactoryClient(opts = {}) {
31
+ const publicClient = wagmi.usePublicClient({ chainId: opts.chainId });
32
+ const { data: walletClient } = wagmi.useWalletClient({ chainId: opts.chainId });
33
+ const chainId = opts.chainId ?? publicClient?.chain?.id;
34
+ const resolvedAddress = tryResolveFactoryAddress(opts.address, chainId);
35
+ const resolutionError = computeFactoryResolutionError(opts.address, chainId);
36
+ const telemetry = opts.telemetry;
37
+ useHookFiredEvent("manager-factory", telemetry, !!walletClient, chainId);
38
+ const client = react.useMemo(() => {
39
+ if (!publicClient) return void 0;
40
+ if (!resolvedAddress) return void 0;
41
+ return chunk62DF53UQ_cjs.createConfidentialVestingFactoryClient({
42
+ publicClient,
43
+ ...walletClient ? { walletClient } : {},
44
+ address: resolvedAddress,
45
+ ...chainId !== void 0 ? { chainId } : {},
46
+ ...telemetry ? { telemetry } : {}
47
+ });
48
+ }, [publicClient, walletClient, resolvedAddress, chainId, telemetry]);
49
+ return {
50
+ client,
51
+ resolutionError,
52
+ publicClient,
53
+ walletClient: walletClient ?? void 0,
54
+ chainId,
55
+ resolvedAddress
56
+ };
57
+ }
58
+ function computeFactoryResolutionError(override, chainId) {
59
+ if (override) return void 0;
60
+ if (chainId === void 0) {
61
+ return new chunk56UI7LUR_cjs.DeploymentAddressUnavailableError({
62
+ reason: "chain-id-missing",
63
+ product: "fheVesting",
64
+ contract: "confidentialVestingFactory",
65
+ clientLabel: "ConfidentialVestingFactoryClient"
66
+ });
67
+ }
68
+ const resolved = chunkOLDGMKW2_cjs.getFheVestingFactoryAddress(chainId);
69
+ if (!resolved) {
70
+ return new chunk56UI7LUR_cjs.DeploymentAddressUnavailableError({
71
+ reason: "registry-not-deployed",
72
+ product: "fheVesting",
73
+ contract: "confidentialVestingFactory",
74
+ chainId,
75
+ clientLabel: "ConfidentialVestingFactoryClient"
76
+ });
77
+ }
78
+ return void 0;
79
+ }
80
+ function useMemoManagerClient(opts) {
81
+ const publicClient = wagmi.usePublicClient({ chainId: opts.chainId });
82
+ const { data: walletClient } = wagmi.useWalletClient({ chainId: opts.chainId });
83
+ const chainId = opts.chainId ?? publicClient?.chain?.id;
84
+ useHookFiredEvent("manager", opts.telemetry, !!walletClient, chainId);
85
+ const encryptorSourceRef = react.useRef(opts.encryptor);
86
+ encryptorSourceRef.current = opts.encryptor;
87
+ const telemetry = opts.telemetry;
88
+ const client = react.useMemo(() => {
89
+ if (!publicClient) return void 0;
90
+ if (!opts.address) return void 0;
91
+ return chunkSUOG3BQS_cjs.createConfidentialVestingManagerClient({
92
+ publicClient,
93
+ ...walletClient ? { walletClient } : {},
94
+ address: opts.address,
95
+ // Lazy — invoked per-encryption inside the headless client. Picks up
96
+ // whichever EncryptorSource the consumer last passed in.
97
+ encryptor: () => chunkSUOG3BQS_cjs.resolveEncryptor(encryptorSourceRef.current),
98
+ ...opts.aclAddress ? { aclAddress: opts.aclAddress } : {},
99
+ ...telemetry ? { telemetry } : {}
100
+ });
101
+ }, [publicClient, walletClient, opts.address, opts.aclAddress, telemetry]);
102
+ return { client, publicClient, walletClient: walletClient ?? void 0, chainId };
103
+ }
104
+ function buildQueryKey(method, chainId, address, ...args) {
105
+ return [
106
+ FHE_VESTING_KEY,
107
+ FHE_VESTING_NAMESPACE,
108
+ method,
109
+ chainId ?? null,
110
+ address ? address.toLowerCase() : null,
111
+ ...args.map(normalizeKeyArg)
112
+ ];
113
+ }
114
+ function normalizeKeyArg(value) {
115
+ if (typeof value === "bigint") return value.toString();
116
+ if (Array.isArray(value)) return value.map(normalizeKeyArg);
117
+ if (value && typeof value === "object") {
118
+ return Object.fromEntries(
119
+ Object.entries(value).map(([k, v]) => [k, normalizeKeyArg(v)])
120
+ );
121
+ }
122
+ if (typeof value === "string" && value.startsWith("0x")) return value.toLowerCase();
123
+ return value;
124
+ }
125
+
126
+ exports.buildQueryKey = buildQueryKey;
127
+ exports.useMemoFactoryClient = useMemoFactoryClient;
128
+ exports.useMemoManagerClient = useMemoManagerClient;
@@ -0,0 +1,109 @@
1
+ 'use strict';
2
+
3
+ var chunk5SA2HF2W_cjs = require('./chunk-5SA2HF2W.cjs');
4
+ var chunk6ECAHP5O_cjs = require('./chunk-6ECAHP5O.cjs');
5
+ var chunkOLDGMKW2_cjs = require('./chunk-OLDGMKW2.cjs');
6
+ var chunk56UI7LUR_cjs = require('./chunk-56UI7LUR.cjs');
7
+ var react = require('react');
8
+ var wagmi = require('wagmi');
9
+
10
+ var FHE_AIRDROP_KEY = "tokenops-sdk";
11
+ var FHE_AIRDROP_NAMESPACE = "fhe-airdrop";
12
+ function tryResolveFactoryAddress(override, chainId) {
13
+ if (override) return override;
14
+ if (chainId === void 0) return void 0;
15
+ return chunkOLDGMKW2_cjs.getFheAirdropFactoryAddress(chainId);
16
+ }
17
+ function useMemoFactoryClient(opts = {}) {
18
+ const publicClient = wagmi.usePublicClient({ chainId: opts.chainId });
19
+ const { data: walletClient } = wagmi.useWalletClient({ chainId: opts.chainId });
20
+ const chainId = opts.chainId ?? publicClient?.chain?.id;
21
+ const resolvedAddress = tryResolveFactoryAddress(opts.address, chainId);
22
+ const resolutionError = computeFactoryResolutionError(opts.address, chainId);
23
+ const encryptorSourceRef = react.useRef(opts.encryptor);
24
+ encryptorSourceRef.current = opts.encryptor;
25
+ const client = react.useMemo(() => {
26
+ if (!publicClient) return void 0;
27
+ if (!resolvedAddress) return void 0;
28
+ return chunk6ECAHP5O_cjs.createConfidentialAirdropFactoryClient({
29
+ publicClient,
30
+ ...walletClient ? { walletClient } : {},
31
+ address: resolvedAddress,
32
+ ...chainId !== void 0 ? { chainId } : {},
33
+ // Lazy — invoked per-encryption inside the headless client. Picks up
34
+ // whichever EncryptorSource the consumer last passed in.
35
+ encryptor: () => chunk6ECAHP5O_cjs.resolveEncryptor(encryptorSourceRef.current)
36
+ });
37
+ }, [publicClient, walletClient, resolvedAddress, chainId]);
38
+ return {
39
+ client,
40
+ resolutionError,
41
+ publicClient,
42
+ walletClient: walletClient ?? void 0,
43
+ chainId,
44
+ resolvedAddress
45
+ };
46
+ }
47
+ function computeFactoryResolutionError(override, chainId) {
48
+ if (override) return void 0;
49
+ if (chainId === void 0) {
50
+ return new chunk56UI7LUR_cjs.DeploymentAddressUnavailableError({
51
+ reason: "chain-id-missing",
52
+ product: "fheAirdrop",
53
+ contract: "confidentialAirdropFactory",
54
+ clientLabel: "ConfidentialAirdropFactoryClient"
55
+ });
56
+ }
57
+ const resolved = chunkOLDGMKW2_cjs.getFheAirdropFactoryAddress(chainId);
58
+ if (!resolved) {
59
+ return new chunk56UI7LUR_cjs.DeploymentAddressUnavailableError({
60
+ reason: "registry-not-deployed",
61
+ product: "fheAirdrop",
62
+ contract: "confidentialAirdropFactory",
63
+ chainId,
64
+ clientLabel: "ConfidentialAirdropFactoryClient"
65
+ });
66
+ }
67
+ return void 0;
68
+ }
69
+ function useMemoAirdropClient(opts) {
70
+ const publicClient = wagmi.usePublicClient({ chainId: opts.chainId });
71
+ const { data: walletClient } = wagmi.useWalletClient({ chainId: opts.chainId });
72
+ const chainId = opts.chainId ?? publicClient?.chain?.id;
73
+ const client = react.useMemo(() => {
74
+ if (!publicClient) return void 0;
75
+ if (!opts.address) return void 0;
76
+ return chunk5SA2HF2W_cjs.createConfidentialAirdropClient({
77
+ publicClient,
78
+ ...walletClient ? { walletClient } : {},
79
+ address: opts.address,
80
+ ...opts.aclAddress ? { aclAddress: opts.aclAddress } : {}
81
+ });
82
+ }, [publicClient, walletClient, opts.address, opts.aclAddress]);
83
+ return { client, publicClient, walletClient: walletClient ?? void 0, chainId };
84
+ }
85
+ function buildQueryKey(method, chainId, address, ...args) {
86
+ return [
87
+ FHE_AIRDROP_KEY,
88
+ FHE_AIRDROP_NAMESPACE,
89
+ method,
90
+ chainId ?? null,
91
+ address ? address.toLowerCase() : null,
92
+ ...args.map(normalizeKeyArg)
93
+ ];
94
+ }
95
+ function normalizeKeyArg(value) {
96
+ if (typeof value === "bigint") return value.toString();
97
+ if (Array.isArray(value)) return value.map(normalizeKeyArg);
98
+ if (value && typeof value === "object") {
99
+ return Object.fromEntries(
100
+ Object.entries(value).map(([k, v]) => [k, normalizeKeyArg(v)])
101
+ );
102
+ }
103
+ if (typeof value === "string" && value.startsWith("0x")) return value.toLowerCase();
104
+ return value;
105
+ }
106
+
107
+ exports.buildQueryKey = buildQueryKey;
108
+ exports.useMemoAirdropClient = useMemoAirdropClient;
109
+ exports.useMemoFactoryClient = useMemoFactoryClient;
@@ -0,0 +1,11 @@
1
+ // src/core/brands.ts
2
+ var asEncryptedHandle = (h) => h;
3
+ var asExternalInputProof = (h) => h;
4
+ var asTxHash = (h) => h;
5
+ var asVestingId = (h) => h;
6
+ var asAirdropId = (h) => h;
7
+ var asDisperseId = (h) => h;
8
+ var asRole = (h) => h;
9
+ var asSignature = (h) => h;
10
+
11
+ export { asAirdropId, asDisperseId, asEncryptedHandle, asExternalInputProof, asRole, asSignature, asTxHash, asVestingId };
@@ -0,0 +1,89 @@
1
+ 'use strict';
2
+
3
+ var chunk56UI7LUR_cjs = require('./chunk-56UI7LUR.cjs');
4
+
5
+ // src/core/zama-error-mapper.ts
6
+ function mapZamaError(error, args) {
7
+ if (error instanceof chunk56UI7LUR_cjs.TokenOpsSdkError) return error;
8
+ const zama = readZamaError(error);
9
+ if (zama?.code) {
10
+ switch (zama.code) {
11
+ case "SIGNING_REJECTED":
12
+ return new chunk56UI7LUR_cjs.UserRejectedSignatureError({ ...args, cause: error });
13
+ case "SIGNING_FAILED":
14
+ return new chunk56UI7LUR_cjs.SigningFailedError({ ...args, cause: error });
15
+ case "RELAYER_REQUEST_FAILED":
16
+ return new chunk56UI7LUR_cjs.RelayerUnreachableError({
17
+ ...args,
18
+ statusCode: zama.statusCode,
19
+ cause: error
20
+ });
21
+ case "ENCRYPTION_FAILED":
22
+ return new chunk56UI7LUR_cjs.EncryptionFailedError({ ...args, cause: error });
23
+ case "DECRYPTION_FAILED":
24
+ return new chunk56UI7LUR_cjs.DecryptionFailedError({ ...args, cause: error });
25
+ case "CONFIGURATION":
26
+ return new chunk56UI7LUR_cjs.InvalidArgumentError({
27
+ method: args.method,
28
+ argument: "config",
29
+ reason: "Zama SDK configuration is invalid (chain id, type, or signer state).",
30
+ cause: error
31
+ });
32
+ }
33
+ }
34
+ const message = readMessage(error);
35
+ if (message) {
36
+ if (USER_REJECTION_PATTERNS.some((pat) => pat.test(message))) {
37
+ return new chunk56UI7LUR_cjs.UserRejectedSignatureError({ ...args, cause: error });
38
+ }
39
+ if (USER_DECRYPT_NOT_ALLOWED_PATTERNS.some((pat) => pat.test(message))) {
40
+ return new chunk56UI7LUR_cjs.UserDecryptNotAllowedError({ method: args.method, cause: error });
41
+ }
42
+ if (INVALID_INPUT_PATTERNS.some((pat) => pat.test(message))) {
43
+ return new chunk56UI7LUR_cjs.InvalidArgumentError({
44
+ method: args.method,
45
+ argument: "input",
46
+ reason: "encrypted input value rejected by FHE SDK \u2014 see `error.cause` for details",
47
+ cause: error
48
+ });
49
+ }
50
+ }
51
+ return args.operation === "encrypt" ? new chunk56UI7LUR_cjs.EncryptionFailedError({ ...args, cause: error }) : new chunk56UI7LUR_cjs.DecryptionFailedError({ ...args, cause: error });
52
+ }
53
+ function readZamaError(err) {
54
+ if (typeof err !== "object" || err === null) return void 0;
55
+ const e = err;
56
+ const code = typeof e.code === "string" ? e.code : void 0;
57
+ const statusCode = typeof e.statusCode === "number" ? e.statusCode : void 0;
58
+ const message = typeof e.message === "string" ? e.message : void 0;
59
+ if (code === void 0 && statusCode === void 0) return void 0;
60
+ return { code, statusCode, message };
61
+ }
62
+ function readMessage(err) {
63
+ if (err instanceof Error) return err.message;
64
+ if (typeof err === "object" && err !== null && typeof err.message === "string") {
65
+ return err.message;
66
+ }
67
+ return void 0;
68
+ }
69
+ var USER_REJECTION_PATTERNS = [
70
+ /user rejected/i,
71
+ /user denied/i,
72
+ /4001/
73
+ // EIP-1193 error code
74
+ ];
75
+ var USER_DECRYPT_NOT_ALLOWED_PATTERNS = [
76
+ /not authorized to user decrypt/i,
77
+ /not authorized to decrypt/i,
78
+ /is not allowed for public decryption/i
79
+ ];
80
+ var INVALID_INPUT_PATTERNS = [
81
+ /invalid unsigned integer value/i,
82
+ /exceeds the maximum allowed value/i,
83
+ /invalid address value/i,
84
+ /chainId exceeds maximum/i,
85
+ /packing more than .* in a single input/i,
86
+ /fhevm assertion failed/i
87
+ ];
88
+
89
+ exports.mapZamaError = mapZamaError;