@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,101 @@
1
+ import type { PublicClient, WalletClient } from "viem";
2
+ import type { Encryptor } from "../fhe-vesting/encryption.js";
3
+ import { type SepoliaEncryptorLogger } from "./sepolia-encryptor.js";
4
+ /**
5
+ * Configuration for {@link createSepoliaEncryptorWeb}. Minimal by design:
6
+ * the browser path doesn't expose worker pool sizing or storage knobs (the
7
+ * Web Worker is single-threaded by default, and `RelayerWeb` already
8
+ * defaults to `IndexedDBStorage` for FHE artifact caching).
9
+ */
10
+ export interface CreateSepoliaEncryptorWebOpts {
11
+ /** Viem `PublicClient` — used only to resolve the chain id for the
12
+ * encryptor's `getChainId` callback. The encryptor itself never reads
13
+ * from the chain; encrypted handles + proofs are produced locally and
14
+ * the relayer is queried over HTTP. */
15
+ publicClient: PublicClient;
16
+ /** Viem `WalletClient` — kept on the options object for symmetry with
17
+ * the Node helper, even though `RelayerWeb` doesn't need it. Consumers
18
+ * compose the encryptor with the same client they pass to the SDK's
19
+ * vesting / disperse / airdrop factories. */
20
+ walletClient: WalletClient;
21
+ /**
22
+ * Override the Zama relayer URL. Defaults to Zama's public Sepolia
23
+ * testnet relayer (`https://relayer.testnet.zama.org/v2`) baked into
24
+ * `@zama-fhe/sdk`'s `SepoliaConfig`. Set this only for private relayer
25
+ * forks (rare; Zama-internal).
26
+ */
27
+ relayerUrl?: string;
28
+ /**
29
+ * Override the chain id this encryptor binds to. Defaults to
30
+ * {@link SEPOLIA_CHAIN_ID}. Pass {@link MAINNET_CHAIN_ID} for the
31
+ * mainnet relayer once Zama enables it; pre-mainnet this stays Sepolia.
32
+ */
33
+ chainId?: number;
34
+ /**
35
+ * Optional logger for tracing worker lifecycle and request timing. Same
36
+ * shape as the Node helper. Mirrored here for surface parity — when a
37
+ * consumer migrates a server-side script to a browser app, the logger
38
+ * config moves over unchanged.
39
+ *
40
+ * Any missing methods are filled with no-op stubs before reaching the
41
+ * underlying Zama relayer (see {@link createSepoliaEncryptor} for the
42
+ * background on why).
43
+ */
44
+ logger?: SepoliaEncryptorLogger;
45
+ }
46
+ /**
47
+ * Returned by {@link createSepoliaEncryptorWeb}. Same structural
48
+ * {@link Encryptor} contract as the Node version, plus the underlying
49
+ * `RelayerWeb` for callers that need `userDecrypt` / `publicDecrypt`
50
+ * (which the structural `Encryptor` interface doesn't surface) or
51
+ * explicit `terminate()` on page unload.
52
+ */
53
+ export interface SepoliaEncryptorWeb extends Encryptor {
54
+ /**
55
+ * The underlying `RelayerWeb`. Typed `unknown` to avoid leaking the
56
+ * optional `@zama-fhe/sdk` peer dep into the SDK's public types. Cast
57
+ * to `import("@zama-fhe/sdk").RelayerWeb` at the use site.
58
+ */
59
+ readonly instance: unknown;
60
+ /** Chain id this encryptor is bound to (`11155111` for Sepolia). */
61
+ readonly chainId: number;
62
+ /**
63
+ * Tear down the Web Worker. The browser path doesn't require this —
64
+ * the worker is GC'd when the page unloads — but long-lived SPAs that
65
+ * swap encryptors (chain switch, user logout) should call it to free
66
+ * the WASM heap explicitly.
67
+ */
68
+ terminate(): void;
69
+ }
70
+ /**
71
+ * Construct an SDK-shaped {@link Encryptor} backed by Zama's `RelayerWeb`
72
+ * against the public Sepolia (or mainnet) relayer. The browser parity peer
73
+ * of {@link createSepoliaEncryptor} — same Encryptor contract, no
74
+ * `node:worker_threads` / `node:module` in the import graph, so bundlers
75
+ * (Next, Vite, etc.) follow only browser-safe paths.
76
+ *
77
+ * @example
78
+ * ```ts
79
+ * import { createSepoliaEncryptorWeb } from "@tokenops/sdk/fhe";
80
+ * import { createConfidentialVestingManagerClient } from "@tokenops/sdk/fhe-vesting";
81
+ *
82
+ * const encryptor = await createSepoliaEncryptorWeb({ publicClient, walletClient });
83
+ * const mgr = createConfidentialVestingManagerClient({
84
+ * publicClient, walletClient, address: manager, encryptor,
85
+ * });
86
+ * await mgr.createVesting({ params, amount: 1_000_000n });
87
+ * ```
88
+ *
89
+ * @remarks
90
+ * This is the **Sepolia / mainnet** path. For local Anvil
91
+ * (`pnpm fhevm:up`), use `createMockEncryptor` instead. Mock and real
92
+ * relayer ciphertexts are not interchangeable.
93
+ *
94
+ * @remarks
95
+ * Unlike the Node helper, `RelayerWeb` owns a `Worker` (not
96
+ * `worker_threads`); it does not keep the event loop alive. Calling
97
+ * `terminate()` is optional in browsers — the worker is GC'd when the
98
+ * page unloads. Call it explicitly on chain-switch or user-logout in
99
+ * long-lived SPAs.
100
+ */
101
+ export declare function createSepoliaEncryptorWeb(opts: CreateSepoliaEncryptorWebOpts): Promise<SepoliaEncryptorWeb>;
@@ -0,0 +1,132 @@
1
+ import type { Encryptor } from "../fhe-vesting/encryption.js";
2
+ /** Sepolia testnet chain id (`11155111`). Re-exported as a typed literal so
3
+ * consumers indexing `DEPLOYED_ADDRESSES` against this constant get the
4
+ * narrow return type, not `Address | undefined`. */
5
+ export declare const SEPOLIA_CHAIN_ID: 11155111;
6
+ /** Mainnet chain id (`1`). Same use as {@link SEPOLIA_CHAIN_ID}. */
7
+ export declare const MAINNET_CHAIN_ID: 1;
8
+ /** Subset of `@zama-fhe/sdk/node`'s `GenericLogger` we accept. Mirrored
9
+ * structurally so consumers don't need to import the optional peer dep just
10
+ * to type-narrow a logger arg. */
11
+ export interface SepoliaEncryptorLogger {
12
+ debug?: (...args: unknown[]) => void;
13
+ info?: (...args: unknown[]) => void;
14
+ warn?: (...args: unknown[]) => void;
15
+ error?: (...args: unknown[]) => void;
16
+ }
17
+ /** Subset of `@zama-fhe/sdk/node`'s `GenericStorage` we accept. Mirrored
18
+ * structurally for the same reason as {@link SepoliaEncryptorLogger}. The
19
+ * RelayerNode caches FHE public-key + params here across sessions; default is
20
+ * an in-process memory map. Pass a redis-backed implementation for
21
+ * cross-restart persistence in long-lived Node servers. */
22
+ export interface SepoliaEncryptorStorage {
23
+ get<T = unknown>(key: string): Promise<T | null>;
24
+ set<T = unknown>(key: string, value: T): Promise<void>;
25
+ delete(key: string): Promise<void>;
26
+ }
27
+ /**
28
+ * Configuration for {@link createSepoliaEncryptor}. All fields are optional;
29
+ * defaults match the Zama public Sepolia relayer.
30
+ */
31
+ export interface CreateSepoliaEncryptorOptions {
32
+ /**
33
+ * Override the Zama relayer URL. Defaults to Zama's public Sepolia
34
+ * testnet relayer (`https://relayer.testnet.zama.org/v2`) baked into
35
+ * `@zama-fhe/sdk/node`'s `SepoliaConfig`. Set this only when running
36
+ * against a private relayer fork (rare; usually only Zama internal).
37
+ */
38
+ relayerUrl?: string;
39
+ /**
40
+ * Override the chain id this encryptor binds to. Defaults to
41
+ * {@link SEPOLIA_CHAIN_ID}. Pass {@link MAINNET_CHAIN_ID} for the
42
+ * mainnet relayer once Zama enables it; pre-mainnet this stays Sepolia.
43
+ */
44
+ chainId?: number;
45
+ /**
46
+ * Worker pool size. Defaults to `min(os.availableParallelism(), 4)` inside
47
+ * `@zama-fhe/sdk`. Each worker loads ~50–100 MB of WASM — decrease to 1–2
48
+ * on memory-constrained hosts, increase to match CPU cores for
49
+ * high-throughput batch encryption.
50
+ */
51
+ poolSize?: number;
52
+ /**
53
+ * Optional logger for tracing worker lifecycle and request timing. Useful
54
+ * during onboarding to see when the relayer round-trips happen; remove for
55
+ * production to avoid noisy logs.
56
+ */
57
+ logger?: SepoliaEncryptorLogger;
58
+ /**
59
+ * Persistent storage for FHE public key + params cache. Defaults to an
60
+ * in-process memory map (lost on restart). Pass a redis-backed
61
+ * `GenericStorage` for cross-restart persistence in long-lived servers —
62
+ * the public params are several MB; re-fetching on every restart adds
63
+ * seconds of cold start.
64
+ */
65
+ fheArtifactStorage?: SepoliaEncryptorStorage;
66
+ /**
67
+ * Cache TTL in seconds for FHE public material. Default: 86400 (24h).
68
+ * Set to 0 to revalidate on every operation (rare; only useful for tests
69
+ * that want to exercise the fetch path).
70
+ */
71
+ fheArtifactCacheTTL?: number;
72
+ }
73
+ /**
74
+ * Returned by {@link createSepoliaEncryptor}. Carries the underlying
75
+ * `RelayerNode` so consumers who need user-decrypt or worker lifecycle
76
+ * control can reach it, plus the chain id this encryptor is bound to.
77
+ */
78
+ export interface SepoliaEncryptor extends Encryptor {
79
+ /**
80
+ * The underlying `RelayerNode`. Use this for `userDecrypt` /
81
+ * `publicDecrypt` flows the SDK's structural {@link Encryptor} interface
82
+ * doesn't surface. Typed `unknown` to avoid importing the optional
83
+ * `@zama-fhe/sdk` peer dep into the SDK's public types.
84
+ */
85
+ readonly instance: unknown;
86
+ /** Chain id this encryptor is bound to (`11155111` for Sepolia). */
87
+ readonly chainId: number;
88
+ /**
89
+ * Tear down the underlying worker thread pool. **Must be called** before
90
+ * `process.exit()` (or at the end of any Node script) — RelayerNode owns
91
+ * `node:worker_threads` that keep the event loop alive. Forgetting to call
92
+ * `terminate()` is the #1 reason Sepolia scripts hang after `main()`
93
+ * resolves.
94
+ */
95
+ terminate(): void;
96
+ }
97
+ /**
98
+ * Construct an SDK-shaped {@link Encryptor} backed by Zama's `RelayerNode`
99
+ * against the public Sepolia (or mainnet) relayer. One call replaces the
100
+ * hand-rolled `new RelayerNode({ transports: { 11155111: SepoliaConfig }, getChainId: async () => 11155111 })`
101
+ * boilerplate every Sepolia consumer used to copy from
102
+ * `node_modules/@zama-fhe/sdk/dist/esm/node/index.d.ts`.
103
+ *
104
+ * @example
105
+ * ```ts
106
+ * import { createSepoliaEncryptor } from "@tokenops/sdk/fhe";
107
+ * import { createConfidentialVestingManagerClient } from "@tokenops/sdk/fhe-vesting";
108
+ *
109
+ * const encryptor = await createSepoliaEncryptor();
110
+ * try {
111
+ * const mgr = createConfidentialVestingManagerClient({
112
+ * publicClient, walletClient, address: manager, encryptor,
113
+ * });
114
+ * await mgr.createVesting({ params, amount: 1_000_000n });
115
+ * } finally {
116
+ * encryptor.terminate(); // RelayerNode owns worker_threads — always tear down.
117
+ * }
118
+ * ```
119
+ *
120
+ * @remarks
121
+ * This is the **Sepolia / mainnet** path. For local Anvil
122
+ * (`pnpm fhevm:up`), use {@link createMockEncryptor} instead. The mock and
123
+ * the real relayer do not share a bytestream — handles are not portable
124
+ * across them.
125
+ *
126
+ * @remarks
127
+ * The returned encryptor owns a `node:worker_threads` pool. Always wrap the
128
+ * create + use cycle in a `try / finally { encryptor.terminate(); }` so the
129
+ * pool tears down even on errors. Without `terminate()` the Node process
130
+ * hangs after `main()` resolves.
131
+ */
132
+ export declare function createSepoliaEncryptor(options?: CreateSepoliaEncryptorOptions): Promise<SepoliaEncryptor>;
@@ -0,0 +1,62 @@
1
+ import type { Hex } from "viem";
2
+ /**
3
+ * A single `externalEuint64` ciphertext: the on-chain handle plus the KMS
4
+ * input proof that authorises it. Produced by `encryptUint64` and consumed
5
+ * by every `@tokenops/sdk` write method that takes an encrypted amount.
6
+ *
7
+ * The handle and proof are bound to the `(contractAddress, userAddress)`
8
+ * pair passed at encryption time and cannot be replayed against a different
9
+ * contract or sender. Field names match the on-chain calldata layout
10
+ * (`bytes32 handle, bytes inputProof`) so the value spreads directly into
11
+ * contract calls.
12
+ *
13
+ * The current SDK only produces uint64 ciphertexts. If a future version
14
+ * adds encryption helpers for other widths (e.g. `encryptUint128`), this
15
+ * type may be specialised; existing uint64 usage will keep type-checking.
16
+ */
17
+ export interface EncryptedInput {
18
+ handle: Hex;
19
+ inputProof: Hex;
20
+ }
21
+ /**
22
+ * N `externalEuint64` ciphertexts sharing a single KMS input proof. One
23
+ * proof per batch is cheaper than N independent proofs and is the shape the
24
+ * encryptor returns from a batched `encrypt({ values: [...] })` call.
25
+ *
26
+ * `handles[i]` corresponds to the i-th plaintext value passed in.
27
+ */
28
+ export interface EncryptedInputs {
29
+ handles: Hex[];
30
+ inputProof: Hex;
31
+ }
32
+ /**
33
+ * Return shape for SDK methods that perform an on-chain encrypted-view tx —
34
+ * the contract emits `FHE.allow(handle, msg.sender)` and the SDK extracts
35
+ * `handle` from the receipt's ACL `Allowed` event.
36
+ *
37
+ * Pass `handle` to the Zama relayer's `userDecrypt` to obtain the plaintext.
38
+ * `hash` is the tx that committed the persistent ACL grant — surface it if
39
+ * your UI needs to show the receipt.
40
+ */
41
+ export interface EncryptedViewResult {
42
+ handle: Hex;
43
+ hash: Hex;
44
+ }
45
+ /**
46
+ * @deprecated Use {@link EncryptedInput}. Earlier versions of
47
+ * `@tokenops/sdk/fhe` exported this name with field `proof`, which did not
48
+ * match the rest of the SDK or the on-chain calldata layout (the contracts
49
+ * accept `bytes inputProof`). This alias points at the corrected shape and
50
+ * will be removed in the next major.
51
+ */
52
+ export type EncryptedInput64 = EncryptedInput;
53
+ /**
54
+ * @deprecated Use `Hex` from `viem` directly. This alias added no narrowing
55
+ * beyond `Hex` and will be removed in the next major.
56
+ */
57
+ export type EncryptedHandle = Hex;
58
+ /**
59
+ * @deprecated Use `Hex` from `viem` directly. This alias added no narrowing
60
+ * beyond `Hex` and will be removed in the next major.
61
+ */
62
+ export type ExternalInputProof = Hex;