@fhevm/sdk 0.0.1 → 1.0.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2049) hide show
  1. package/README.md +59 -0
  2. package/_cjs/core/_version.js +6 -0
  3. package/_cjs/core/_version.js.map +1 -0
  4. package/_cjs/core/actions/base/canReadPublicValue.js +13 -0
  5. package/_cjs/core/actions/base/canReadPublicValue.js.map +1 -0
  6. package/_cjs/core/actions/base/canReadPublicValues.js +13 -0
  7. package/_cjs/core/actions/base/canReadPublicValues.js.map +1 -0
  8. package/_cjs/core/actions/base/createVerifiedInputProofFromRawBytes.js +10 -0
  9. package/_cjs/core/actions/base/createVerifiedInputProofFromRawBytes.js.map +1 -0
  10. package/_cjs/core/actions/base/fetchKmsSignedcryptedShares.js +19 -0
  11. package/_cjs/core/actions/base/fetchKmsSignedcryptedShares.js.map +1 -0
  12. package/_cjs/core/actions/base/fetchVerifiedInputProof.js +11 -0
  13. package/_cjs/core/actions/base/fetchVerifiedInputProof.js.map +1 -0
  14. package/_cjs/core/actions/base/index.js +30 -0
  15. package/_cjs/core/actions/base/index.js.map +1 -0
  16. package/_cjs/core/actions/base/readCoprocessorSignersContext.js +10 -0
  17. package/_cjs/core/actions/base/readCoprocessorSignersContext.js.map +1 -0
  18. package/_cjs/core/actions/base/readKmsSignersContext.js +10 -0
  19. package/_cjs/core/actions/base/readKmsSignersContext.js.map +1 -0
  20. package/_cjs/core/actions/base/readPublicValue.js +13 -0
  21. package/_cjs/core/actions/base/readPublicValue.js.map +1 -0
  22. package/_cjs/core/actions/base/readPublicValues.js +13 -0
  23. package/_cjs/core/actions/base/readPublicValues.js.map +1 -0
  24. package/_cjs/core/actions/base/readPublicValuesWithSignatures.js +21 -0
  25. package/_cjs/core/actions/base/readPublicValuesWithSignatures.js.map +1 -0
  26. package/_cjs/core/actions/base/signDecryptionPermit.js +11 -0
  27. package/_cjs/core/actions/base/signDecryptionPermit.js.map +1 -0
  28. package/_cjs/core/actions/base/verifyHandlesCoprocessorSignatures.js +31 -0
  29. package/_cjs/core/actions/base/verifyHandlesCoprocessorSignatures.js.map +1 -0
  30. package/_cjs/core/actions/base/verifyInputProof.js +24 -0
  31. package/_cjs/core/actions/base/verifyInputProof.js.map +1 -0
  32. package/_cjs/core/actions/base/verifyZkProofCoprocessorSignatures.js +17 -0
  33. package/_cjs/core/actions/base/verifyZkProofCoprocessorSignatures.js.map +1 -0
  34. package/_cjs/core/actions/chain/createCoprocessorEip712Domain.js +11 -0
  35. package/_cjs/core/actions/chain/createCoprocessorEip712Domain.js.map +1 -0
  36. package/_cjs/core/actions/chain/createKmsDelegatedUserDecryptEip712.js +17 -0
  37. package/_cjs/core/actions/chain/createKmsDelegatedUserDecryptEip712.js.map +1 -0
  38. package/_cjs/core/actions/chain/createKmsEip712Domain.js +11 -0
  39. package/_cjs/core/actions/chain/createKmsEip712Domain.js.map +1 -0
  40. package/_cjs/core/actions/chain/createKmsUserDecryptEip712.js +16 -0
  41. package/_cjs/core/actions/chain/createKmsUserDecryptEip712.js.map +1 -0
  42. package/_cjs/core/actions/chain/fetchFheEncryptionKeyBytes.js +8 -0
  43. package/_cjs/core/actions/chain/fetchFheEncryptionKeyBytes.js.map +1 -0
  44. package/_cjs/core/actions/chain/index.js +28 -0
  45. package/_cjs/core/actions/chain/index.js.map +1 -0
  46. package/_cjs/core/actions/chain/parseSignedDecryptionPermit.js +10 -0
  47. package/_cjs/core/actions/chain/parseSignedDecryptionPermit.js.map +1 -0
  48. package/_cjs/core/actions/chain/parseTransportKeypair.js +9 -0
  49. package/_cjs/core/actions/chain/parseTransportKeypair.js.map +1 -0
  50. package/_cjs/core/actions/chain/serializeSignedDecryptionPermit.js +8 -0
  51. package/_cjs/core/actions/chain/serializeSignedDecryptionPermit.js.map +1 -0
  52. package/_cjs/core/actions/chain/serializeTransportKeypair.js +8 -0
  53. package/_cjs/core/actions/chain/serializeTransportKeypair.js.map +1 -0
  54. package/_cjs/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js +8 -0
  55. package/_cjs/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js.map +1 -0
  56. package/_cjs/core/actions/chain/verifyKmsUserDecryptEip712.js +8 -0
  57. package/_cjs/core/actions/chain/verifyKmsUserDecryptEip712.js.map +1 -0
  58. package/_cjs/core/actions/decrypt/canDecryptValue.js +20 -0
  59. package/_cjs/core/actions/decrypt/canDecryptValue.js.map +1 -0
  60. package/_cjs/core/actions/decrypt/canDecryptValues.js +23 -0
  61. package/_cjs/core/actions/decrypt/canDecryptValues.js.map +1 -0
  62. package/_cjs/core/actions/decrypt/canDecryptValuesFromPairs.js +19 -0
  63. package/_cjs/core/actions/decrypt/canDecryptValuesFromPairs.js.map +1 -0
  64. package/_cjs/core/actions/decrypt/decryptKmsSignedcryptedShares.js +11 -0
  65. package/_cjs/core/actions/decrypt/decryptKmsSignedcryptedShares.js.map +1 -0
  66. package/_cjs/core/actions/decrypt/decryptValue.js +20 -0
  67. package/_cjs/core/actions/decrypt/decryptValue.js.map +1 -0
  68. package/_cjs/core/actions/decrypt/decryptValues.js +19 -0
  69. package/_cjs/core/actions/decrypt/decryptValues.js.map +1 -0
  70. package/_cjs/core/actions/decrypt/decryptValuesFromPairs.js +18 -0
  71. package/_cjs/core/actions/decrypt/decryptValuesFromPairs.js.map +1 -0
  72. package/_cjs/core/actions/decrypt/generateTransportKeypair.js +8 -0
  73. package/_cjs/core/actions/decrypt/generateTransportKeypair.js.map +1 -0
  74. package/_cjs/core/actions/decrypt/index.js +20 -0
  75. package/_cjs/core/actions/decrypt/index.js.map +1 -0
  76. package/_cjs/core/actions/encrypt/encryptValue.js +24 -0
  77. package/_cjs/core/actions/encrypt/encryptValue.js.map +1 -0
  78. package/_cjs/core/actions/encrypt/encryptValues.js +23 -0
  79. package/_cjs/core/actions/encrypt/encryptValues.js.map +1 -0
  80. package/_cjs/core/actions/encrypt/generateZkProof.js +17 -0
  81. package/_cjs/core/actions/encrypt/generateZkProof.js.map +1 -0
  82. package/_cjs/core/actions/encrypt/index.js +10 -0
  83. package/_cjs/core/actions/encrypt/index.js.map +1 -0
  84. package/_cjs/core/actions/host/getUserDecryptionDelegationExpirationDate.js +21 -0
  85. package/_cjs/core/actions/host/getUserDecryptionDelegationExpirationDate.js.map +1 -0
  86. package/_cjs/core/actions/host/index.js +18 -0
  87. package/_cjs/core/actions/host/index.js.map +1 -0
  88. package/_cjs/core/actions/host/isAllowedForDecryption.js +20 -0
  89. package/_cjs/core/actions/host/isAllowedForDecryption.js.map +1 -0
  90. package/_cjs/core/actions/host/persistAllowed.js +20 -0
  91. package/_cjs/core/actions/host/persistAllowed.js.map +1 -0
  92. package/_cjs/core/actions/host/readFhevmExecutorContractData.js +46 -0
  93. package/_cjs/core/actions/host/readFhevmExecutorContractData.js.map +1 -0
  94. package/_cjs/core/actions/host/readInputVerifierContractData.js +41 -0
  95. package/_cjs/core/actions/host/readInputVerifierContractData.js.map +1 -0
  96. package/_cjs/core/actions/host/readKmsVerifierContractData.js +41 -0
  97. package/_cjs/core/actions/host/readKmsVerifierContractData.js.map +1 -0
  98. package/_cjs/core/actions/host/resolveChainId.js +23 -0
  99. package/_cjs/core/actions/host/resolveChainId.js.map +1 -0
  100. package/_cjs/core/actions/host/resolveFhevmConfig.js +85 -0
  101. package/_cjs/core/actions/host/resolveFhevmConfig.js.map +1 -0
  102. package/_cjs/core/base/address.js +182 -0
  103. package/_cjs/core/base/address.js.map +1 -0
  104. package/_cjs/core/base/auth.js +32 -0
  105. package/_cjs/core/base/auth.js.map +1 -0
  106. package/_cjs/core/base/boolean.js +33 -0
  107. package/_cjs/core/base/boolean.js.map +1 -0
  108. package/_cjs/core/base/bytes.js +1016 -0
  109. package/_cjs/core/base/bytes.js.map +1 -0
  110. package/_cjs/core/base/cachedFetch.js +78 -0
  111. package/_cjs/core/base/cachedFetch.js.map +1 -0
  112. package/_cjs/core/base/errors/AddressError.js +15 -0
  113. package/_cjs/core/base/errors/AddressError.js.map +1 -0
  114. package/_cjs/core/base/errors/ChecksummedAddressError.js +17 -0
  115. package/_cjs/core/base/errors/ChecksummedAddressError.js.map +1 -0
  116. package/_cjs/core/base/errors/ErrorBase.js +70 -0
  117. package/_cjs/core/base/errors/ErrorBase.js.map +1 -0
  118. package/_cjs/core/base/errors/FetchError.js +33 -0
  119. package/_cjs/core/base/errors/FetchError.js.map +1 -0
  120. package/_cjs/core/base/errors/FheTypeError.js +45 -0
  121. package/_cjs/core/base/errors/FheTypeError.js.map +1 -0
  122. package/_cjs/core/base/errors/InternalError.js +21 -0
  123. package/_cjs/core/base/errors/InternalError.js.map +1 -0
  124. package/_cjs/core/base/errors/InvalidPropertyError.js +72 -0
  125. package/_cjs/core/base/errors/InvalidPropertyError.js.map +1 -0
  126. package/_cjs/core/base/errors/InvalidTypeError.js +31 -0
  127. package/_cjs/core/base/errors/InvalidTypeError.js.map +1 -0
  128. package/_cjs/core/base/errors/utils.js +40 -0
  129. package/_cjs/core/base/errors/utils.js.map +1 -0
  130. package/_cjs/core/base/fetch.js +98 -0
  131. package/_cjs/core/base/fetch.js.map +1 -0
  132. package/_cjs/core/base/index.js +7 -0
  133. package/_cjs/core/base/index.js.map +1 -0
  134. package/_cjs/core/base/isomorphicWorker.js +209 -0
  135. package/_cjs/core/base/isomorphicWorker.js.map +1 -0
  136. package/_cjs/core/base/object.js +30 -0
  137. package/_cjs/core/base/object.js.map +1 -0
  138. package/_cjs/core/base/promise.js +14 -0
  139. package/_cjs/core/base/promise.js.map +1 -0
  140. package/_cjs/core/base/record.js +81 -0
  141. package/_cjs/core/base/record.js.map +1 -0
  142. package/_cjs/core/base/string.js +133 -0
  143. package/_cjs/core/base/string.js.map +1 -0
  144. package/_cjs/core/base/timeout.js +19 -0
  145. package/_cjs/core/base/timeout.js.map +1 -0
  146. package/_cjs/core/base/trustedValue.js +50 -0
  147. package/_cjs/core/base/trustedValue.js.map +1 -0
  148. package/_cjs/core/base/typedValue.js +184 -0
  149. package/_cjs/core/base/typedValue.js.map +1 -0
  150. package/_cjs/core/base/uid.js +19 -0
  151. package/_cjs/core/base/uid.js.map +1 -0
  152. package/_cjs/core/base/uint.js +414 -0
  153. package/_cjs/core/base/uint.js.map +1 -0
  154. package/_cjs/core/base/wasm.js +91 -0
  155. package/_cjs/core/base/wasm.js.map +1 -0
  156. package/_cjs/core/chains/definitions/localTestnet.js +33 -0
  157. package/_cjs/core/chains/definitions/localTestnet.js.map +1 -0
  158. package/_cjs/core/chains/definitions/mainnet.js +33 -0
  159. package/_cjs/core/chains/definitions/mainnet.js.map +1 -0
  160. package/_cjs/core/chains/definitions/sepolia.js +33 -0
  161. package/_cjs/core/chains/definitions/sepolia.js.map +1 -0
  162. package/_cjs/core/chains/index.js +10 -0
  163. package/_cjs/core/chains/index.js.map +1 -0
  164. package/_cjs/core/chains/utils.js +8 -0
  165. package/_cjs/core/chains/utils.js.map +1 -0
  166. package/_cjs/core/clients/decorators/base.js +34 -0
  167. package/_cjs/core/clients/decorators/base.js.map +1 -0
  168. package/_cjs/core/clients/decorators/decrypt.js +30 -0
  169. package/_cjs/core/clients/decorators/decrypt.js.map +1 -0
  170. package/_cjs/core/clients/decorators/encrypt-p.js +13 -0
  171. package/_cjs/core/clients/decorators/encrypt-p.js.map +1 -0
  172. package/_cjs/core/clients/decorators/encrypt.js +23 -0
  173. package/_cjs/core/clients/decorators/encrypt.js.map +1 -0
  174. package/_cjs/core/coprocessor/InputProof-p.js +236 -0
  175. package/_cjs/core/coprocessor/InputProof-p.js.map +1 -0
  176. package/_cjs/core/coprocessor/ZkProof-p.js +241 -0
  177. package/_cjs/core/coprocessor/ZkProof-p.js.map +1 -0
  178. package/_cjs/core/coprocessor/ZkProofBuilder-p.js +192 -0
  179. package/_cjs/core/coprocessor/ZkProofBuilder-p.js.map +1 -0
  180. package/_cjs/core/coprocessor/assertIsCoprocessorEip712Domain.js +19 -0
  181. package/_cjs/core/coprocessor/assertIsCoprocessorEip712Domain.js.map +1 -0
  182. package/_cjs/core/coprocessor/coprocessorEip712Types.js +17 -0
  183. package/_cjs/core/coprocessor/coprocessorEip712Types.js.map +1 -0
  184. package/_cjs/core/coprocessor/createCoprocessorEip712.js +41 -0
  185. package/_cjs/core/coprocessor/createCoprocessorEip712.js.map +1 -0
  186. package/_cjs/core/coprocessor/createCoprocessorEip712Domain.js +18 -0
  187. package/_cjs/core/coprocessor/createCoprocessorEip712Domain.js.map +1 -0
  188. package/_cjs/core/coprocessor/encrypt.js +20 -0
  189. package/_cjs/core/coprocessor/encrypt.js.map +1 -0
  190. package/_cjs/core/coprocessor/fetchVerifiedInputProof.js +41 -0
  191. package/_cjs/core/coprocessor/fetchVerifiedInputProof.js.map +1 -0
  192. package/_cjs/core/coprocessor/verifyHandlesCoprocessorSignatures.js +33 -0
  193. package/_cjs/core/coprocessor/verifyHandlesCoprocessorSignatures.js.map +1 -0
  194. package/_cjs/core/coprocessor/verifyInputProof.js +24 -0
  195. package/_cjs/core/coprocessor/verifyInputProof.js.map +1 -0
  196. package/_cjs/core/errors/AclError.js +48 -0
  197. package/_cjs/core/errors/AclError.js.map +1 -0
  198. package/_cjs/core/errors/ContractErrorBase.js +34 -0
  199. package/_cjs/core/errors/ContractErrorBase.js.map +1 -0
  200. package/_cjs/core/errors/EncryptionError.js +14 -0
  201. package/_cjs/core/errors/EncryptionError.js.map +1 -0
  202. package/_cjs/core/errors/FhevmConfigError.js +14 -0
  203. package/_cjs/core/errors/FhevmConfigError.js.map +1 -0
  204. package/_cjs/core/errors/FhevmErrorBase.js +66 -0
  205. package/_cjs/core/errors/FhevmErrorBase.js.map +1 -0
  206. package/_cjs/core/errors/FhevmHandleError.js +15 -0
  207. package/_cjs/core/errors/FhevmHandleError.js.map +1 -0
  208. package/_cjs/core/errors/InputProofError.js +25 -0
  209. package/_cjs/core/errors/InputProofError.js.map +1 -0
  210. package/_cjs/core/errors/RelayerAbortError.js +16 -0
  211. package/_cjs/core/errors/RelayerAbortError.js.map +1 -0
  212. package/_cjs/core/errors/RelayerErrorBase.js +85 -0
  213. package/_cjs/core/errors/RelayerErrorBase.js.map +1 -0
  214. package/_cjs/core/errors/RelayerFetchError.js +19 -0
  215. package/_cjs/core/errors/RelayerFetchError.js.map +1 -0
  216. package/_cjs/core/errors/RelayerFetchErrorBase.js +74 -0
  217. package/_cjs/core/errors/RelayerFetchErrorBase.js.map +1 -0
  218. package/_cjs/core/errors/RelayerMaxRetryError.js +17 -0
  219. package/_cjs/core/errors/RelayerMaxRetryError.js.map +1 -0
  220. package/_cjs/core/errors/RelayerRequestErrorBase.js +48 -0
  221. package/_cjs/core/errors/RelayerRequestErrorBase.js.map +1 -0
  222. package/_cjs/core/errors/RelayerRequestInternalError.js +45 -0
  223. package/_cjs/core/errors/RelayerRequestInternalError.js.map +1 -0
  224. package/_cjs/core/errors/RelayerResponseApiError.js +36 -0
  225. package/_cjs/core/errors/RelayerResponseApiError.js.map +1 -0
  226. package/_cjs/core/errors/RelayerResponseErrorBase.js +33 -0
  227. package/_cjs/core/errors/RelayerResponseErrorBase.js.map +1 -0
  228. package/_cjs/core/errors/RelayerResponseInputProofRejectedError.js +15 -0
  229. package/_cjs/core/errors/RelayerResponseInputProofRejectedError.js.map +1 -0
  230. package/_cjs/core/errors/RelayerResponseInvalidBodyError.js +36 -0
  231. package/_cjs/core/errors/RelayerResponseInvalidBodyError.js.map +1 -0
  232. package/_cjs/core/errors/RelayerResponseStatusError.js +17 -0
  233. package/_cjs/core/errors/RelayerResponseStatusError.js.map +1 -0
  234. package/_cjs/core/errors/RelayerStateError.js +33 -0
  235. package/_cjs/core/errors/RelayerStateError.js.map +1 -0
  236. package/_cjs/core/errors/RelayerTimeoutError.js +16 -0
  237. package/_cjs/core/errors/RelayerTimeoutError.js.map +1 -0
  238. package/_cjs/core/errors/SignersError.js +35 -0
  239. package/_cjs/core/errors/SignersError.js.map +1 -0
  240. package/_cjs/core/errors/TfheError.js +14 -0
  241. package/_cjs/core/errors/TfheError.js.map +1 -0
  242. package/_cjs/core/errors/ZkProofError.js +15 -0
  243. package/_cjs/core/errors/ZkProofError.js.map +1 -0
  244. package/_cjs/core/handle/ClearValue.js +185 -0
  245. package/_cjs/core/handle/ClearValue.js.map +1 -0
  246. package/_cjs/core/handle/EncryptedValue.js +32 -0
  247. package/_cjs/core/handle/EncryptedValue.js.map +1 -0
  248. package/_cjs/core/handle/FheType.js +298 -0
  249. package/_cjs/core/handle/FheType.js.map +1 -0
  250. package/_cjs/core/handle/FhevmHandle.js +352 -0
  251. package/_cjs/core/handle/FhevmHandle.js.map +1 -0
  252. package/_cjs/core/host-contracts/CoprocessorSignersContext-p.js +119 -0
  253. package/_cjs/core/host-contracts/CoprocessorSignersContext-p.js.map +1 -0
  254. package/_cjs/core/host-contracts/FhevmExecutorContractData-p.js +96 -0
  255. package/_cjs/core/host-contracts/FhevmExecutorContractData-p.js.map +1 -0
  256. package/_cjs/core/host-contracts/HostContractVersion-p.js +86 -0
  257. package/_cjs/core/host-contracts/HostContractVersion-p.js.map +1 -0
  258. package/_cjs/core/host-contracts/InputVerifierContractData-p.js +95 -0
  259. package/_cjs/core/host-contracts/InputVerifierContractData-p.js.map +1 -0
  260. package/_cjs/core/host-contracts/KmsSignersContext-p.js +165 -0
  261. package/_cjs/core/host-contracts/KmsSignersContext-p.js.map +1 -0
  262. package/_cjs/core/host-contracts/KmsVerifierContractData-p.js +77 -0
  263. package/_cjs/core/host-contracts/KmsVerifierContractData-p.js.map +1 -0
  264. package/_cjs/core/host-contracts/abi-fragments/fragments.js +336 -0
  265. package/_cjs/core/host-contracts/abi-fragments/fragments.js.map +1 -0
  266. package/_cjs/core/host-contracts/canDecryptValuesFromPairs.js +47 -0
  267. package/_cjs/core/host-contracts/canDecryptValuesFromPairs.js.map +1 -0
  268. package/_cjs/core/host-contracts/checkAllowedForDecryption.js +17 -0
  269. package/_cjs/core/host-contracts/checkAllowedForDecryption.js.map +1 -0
  270. package/_cjs/core/host-contracts/checkPersistAllowed.js +75 -0
  271. package/_cjs/core/host-contracts/checkPersistAllowed.js.map +1 -0
  272. package/_cjs/core/host-contracts/decryptionResultTypehash-p.js +26 -0
  273. package/_cjs/core/host-contracts/decryptionResultTypehash-p.js.map +1 -0
  274. package/_cjs/core/host-contracts/eip712Domain-p.js +43 -0
  275. package/_cjs/core/host-contracts/eip712Domain-p.js.map +1 -0
  276. package/_cjs/core/host-contracts/eip712InputVerificationTypehash-p.js +26 -0
  277. package/_cjs/core/host-contracts/eip712InputVerificationTypehash-p.js.map +1 -0
  278. package/_cjs/core/host-contracts/getAclAddress-p.js +26 -0
  279. package/_cjs/core/host-contracts/getAclAddress-p.js.map +1 -0
  280. package/_cjs/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js +72 -0
  281. package/_cjs/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js.map +1 -0
  282. package/_cjs/core/host-contracts/getCoprocessorSigners-p.js +26 -0
  283. package/_cjs/core/host-contracts/getCoprocessorSigners-p.js.map +1 -0
  284. package/_cjs/core/host-contracts/getCurrentKmsContextId-p.js +40 -0
  285. package/_cjs/core/host-contracts/getCurrentKmsContextId-p.js.map +1 -0
  286. package/_cjs/core/host-contracts/getFhevmExecutorAddress-p.js +26 -0
  287. package/_cjs/core/host-contracts/getFhevmExecutorAddress-p.js.map +1 -0
  288. package/_cjs/core/host-contracts/getHandleVersion-p.js +21 -0
  289. package/_cjs/core/host-contracts/getHandleVersion-p.js.map +1 -0
  290. package/_cjs/core/host-contracts/getHcuLimitAddress-p.js +26 -0
  291. package/_cjs/core/host-contracts/getHcuLimitAddress-p.js.map +1 -0
  292. package/_cjs/core/host-contracts/getInputVerifierAddress-p.js +26 -0
  293. package/_cjs/core/host-contracts/getInputVerifierAddress-p.js.map +1 -0
  294. package/_cjs/core/host-contracts/getKmsContextSignersAndThreshold-p.js +78 -0
  295. package/_cjs/core/host-contracts/getKmsContextSignersAndThreshold-p.js.map +1 -0
  296. package/_cjs/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js +57 -0
  297. package/_cjs/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js.map +1 -0
  298. package/_cjs/core/host-contracts/getSignersForKmsContext-p.js +54 -0
  299. package/_cjs/core/host-contracts/getSignersForKmsContext-p.js.map +1 -0
  300. package/_cjs/core/host-contracts/isAllowedForDecryption.js +30 -0
  301. package/_cjs/core/host-contracts/isAllowedForDecryption.js.map +1 -0
  302. package/_cjs/core/host-contracts/isUserDecryptable.js +54 -0
  303. package/_cjs/core/host-contracts/isUserDecryptable.js.map +1 -0
  304. package/_cjs/core/host-contracts/persistAllowed.js +31 -0
  305. package/_cjs/core/host-contracts/persistAllowed.js.map +1 -0
  306. package/_cjs/core/host-contracts/readCoprocessorSignersContext-p.js +15 -0
  307. package/_cjs/core/host-contracts/readCoprocessorSignersContext-p.js.map +1 -0
  308. package/_cjs/core/host-contracts/readKmsSignersContext-p.js +103 -0
  309. package/_cjs/core/host-contracts/readKmsSignersContext-p.js.map +1 -0
  310. package/_cjs/core/key/FheEncryptionKeyCache-p.js +221 -0
  311. package/_cjs/core/key/FheEncryptionKeyCache-p.js.map +1 -0
  312. package/_cjs/core/key/FheEncryptionKeyWasm-p.js +66 -0
  313. package/_cjs/core/key/FheEncryptionKeyWasm-p.js.map +1 -0
  314. package/_cjs/core/key/deserializeFheEncryptionKey.js +18 -0
  315. package/_cjs/core/key/deserializeFheEncryptionKey.js.map +1 -0
  316. package/_cjs/core/key/fetchFheEncryptionKey.js +30 -0
  317. package/_cjs/core/key/fetchFheEncryptionKey.js.map +1 -0
  318. package/_cjs/core/key/fetchFheEncryptionKeyBytes.js +39 -0
  319. package/_cjs/core/key/fetchFheEncryptionKeyBytes.js.map +1 -0
  320. package/_cjs/core/key/fetchFheEncryptionKeyBytesWithSource.js +53 -0
  321. package/_cjs/core/key/fetchFheEncryptionKeyBytesWithSource.js.map +1 -0
  322. package/_cjs/core/key/serializeFheEncryptionKey.js +22 -0
  323. package/_cjs/core/key/serializeFheEncryptionKey.js.map +1 -0
  324. package/_cjs/core/kms/KmsSigncryptedShares-p.js +94 -0
  325. package/_cjs/core/kms/KmsSigncryptedShares-p.js.map +1 -0
  326. package/_cjs/core/kms/PublicDecryptionProof-p.js +95 -0
  327. package/_cjs/core/kms/PublicDecryptionProof-p.js.map +1 -0
  328. package/_cjs/core/kms/PublicDecryptionProof.js +8 -0
  329. package/_cjs/core/kms/PublicDecryptionProof.js.map +1 -0
  330. package/_cjs/core/kms/SignedDecryptionPermit-p.js +230 -0
  331. package/_cjs/core/kms/SignedDecryptionPermit-p.js.map +1 -0
  332. package/_cjs/core/kms/TransportKeypair-p.js +153 -0
  333. package/_cjs/core/kms/TransportKeypair-p.js.map +1 -0
  334. package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712.js +72 -0
  335. package/_cjs/core/kms/createKmsDelegatedUserDecryptEip712.js.map +1 -0
  336. package/_cjs/core/kms/createKmsEip712Domain.js +33 -0
  337. package/_cjs/core/kms/createKmsEip712Domain.js.map +1 -0
  338. package/_cjs/core/kms/createKmsPublicDecryptEip712.js +39 -0
  339. package/_cjs/core/kms/createKmsPublicDecryptEip712.js.map +1 -0
  340. package/_cjs/core/kms/createKmsUserDecryptEip712.js +91 -0
  341. package/_cjs/core/kms/createKmsUserDecryptEip712.js.map +1 -0
  342. package/_cjs/core/kms/decryptKmsSignedcryptedShares-p.js +14 -0
  343. package/_cjs/core/kms/decryptKmsSignedcryptedShares-p.js.map +1 -0
  344. package/_cjs/core/kms/decryptValuesFromPairs.js +14 -0
  345. package/_cjs/core/kms/decryptValuesFromPairs.js.map +1 -0
  346. package/_cjs/core/kms/fetchKmsSignedcryptedShares-p.js +89 -0
  347. package/_cjs/core/kms/fetchKmsSignedcryptedShares-p.js.map +1 -0
  348. package/_cjs/core/kms/index.js +3 -0
  349. package/_cjs/core/kms/index.js.map +1 -0
  350. package/_cjs/core/kms/kmsDelegatedUserDecryptEip712Types.js +25 -0
  351. package/_cjs/core/kms/kmsDelegatedUserDecryptEip712Types.js.map +1 -0
  352. package/_cjs/core/kms/kmsExtraData.js +33 -0
  353. package/_cjs/core/kms/kmsExtraData.js.map +1 -0
  354. package/_cjs/core/kms/kmsPublicDecryptEip712Types.js +22 -0
  355. package/_cjs/core/kms/kmsPublicDecryptEip712Types.js.map +1 -0
  356. package/_cjs/core/kms/kmsUserDecryptEip712Types.js +24 -0
  357. package/_cjs/core/kms/kmsUserDecryptEip712Types.js.map +1 -0
  358. package/_cjs/core/kms/publicDecrypt.js +55 -0
  359. package/_cjs/core/kms/publicDecrypt.js.map +1 -0
  360. package/_cjs/core/kms/utils.js +34 -0
  361. package/_cjs/core/kms/utils.js.map +1 -0
  362. package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js +34 -0
  363. package/_cjs/core/kms/verifyKmsPublicDecryptEip712-p.js.map +1 -0
  364. package/_cjs/core/modules/decrypt/mock.js +69 -0
  365. package/_cjs/core/modules/decrypt/mock.js.map +1 -0
  366. package/_cjs/core/modules/decrypt/module/api-p.js +197 -0
  367. package/_cjs/core/modules/decrypt/module/api-p.js.map +1 -0
  368. package/_cjs/core/modules/decrypt/module/index.js +43 -0
  369. package/_cjs/core/modules/decrypt/module/index.js.map +1 -0
  370. package/_cjs/core/modules/decrypt/module/init-p.js +124 -0
  371. package/_cjs/core/modules/decrypt/module/init-p.js.map +1 -0
  372. package/_cjs/core/modules/decrypt/types.js +3 -0
  373. package/_cjs/core/modules/decrypt/types.js.map +1 -0
  374. package/_cjs/core/modules/encrypt/mock.js +50 -0
  375. package/_cjs/core/modules/encrypt/mock.js.map +1 -0
  376. package/_cjs/core/modules/encrypt/module/api-p.js +263 -0
  377. package/_cjs/core/modules/encrypt/module/api-p.js.map +1 -0
  378. package/_cjs/core/modules/encrypt/module/index.js +22 -0
  379. package/_cjs/core/modules/encrypt/module/index.js.map +1 -0
  380. package/_cjs/core/modules/encrypt/module/init-p.js +175 -0
  381. package/_cjs/core/modules/encrypt/module/init-p.js.map +1 -0
  382. package/_cjs/core/modules/encrypt/types.js +3 -0
  383. package/_cjs/core/modules/encrypt/types.js.map +1 -0
  384. package/_cjs/core/modules/ethereum/createTrustedClient.js +9 -0
  385. package/_cjs/core/modules/ethereum/createTrustedClient.js.map +1 -0
  386. package/_cjs/core/modules/ethereum/types.js +3 -0
  387. package/_cjs/core/modules/ethereum/types.js.map +1 -0
  388. package/_cjs/core/modules/relayer/mock.js +29 -0
  389. package/_cjs/core/modules/relayer/mock.js.map +1 -0
  390. package/_cjs/core/modules/relayer/module/RelayerAsyncRequest.js +1231 -0
  391. package/_cjs/core/modules/relayer/module/RelayerAsyncRequest.js.map +1 -0
  392. package/_cjs/core/modules/relayer/module/fetchCoprocessorSignatures.js +30 -0
  393. package/_cjs/core/modules/relayer/module/fetchCoprocessorSignatures.js.map +1 -0
  394. package/_cjs/core/modules/relayer/module/fetchDelegatedUserDecrypt.js +47 -0
  395. package/_cjs/core/modules/relayer/module/fetchDelegatedUserDecrypt.js.map +1 -0
  396. package/_cjs/core/modules/relayer/module/fetchFheEncryptionKeyBytes.js +19 -0
  397. package/_cjs/core/modules/relayer/module/fetchFheEncryptionKeyBytes.js.map +1 -0
  398. package/_cjs/core/modules/relayer/module/fetchFheEncryptionKeySource.js +124 -0
  399. package/_cjs/core/modules/relayer/module/fetchFheEncryptionKeySource.js.map +1 -0
  400. package/_cjs/core/modules/relayer/module/fetchPublicDecrypt.js +27 -0
  401. package/_cjs/core/modules/relayer/module/fetchPublicDecrypt.js.map +1 -0
  402. package/_cjs/core/modules/relayer/module/fetchUserDecrypt.js +48 -0
  403. package/_cjs/core/modules/relayer/module/fetchUserDecrypt.js.map +1 -0
  404. package/_cjs/core/modules/relayer/module/guards/RelayerInputProofSucceeded.js +39 -0
  405. package/_cjs/core/modules/relayer/module/guards/RelayerInputProofSucceeded.js.map +1 -0
  406. package/_cjs/core/modules/relayer/module/guards/RelayerPublicDecryptSucceeded.js +21 -0
  407. package/_cjs/core/modules/relayer/module/guards/RelayerPublicDecryptSucceeded.js.map +1 -0
  408. package/_cjs/core/modules/relayer/module/guards/RelayerResponseFailed.js +122 -0
  409. package/_cjs/core/modules/relayer/module/guards/RelayerResponseFailed.js.map +1 -0
  410. package/_cjs/core/modules/relayer/module/guards/RelayerResponseQueued.js +23 -0
  411. package/_cjs/core/modules/relayer/module/guards/RelayerResponseQueued.js.map +1 -0
  412. package/_cjs/core/modules/relayer/module/guards/RelayerUserDecryptSucceeded.js +27 -0
  413. package/_cjs/core/modules/relayer/module/guards/RelayerUserDecryptSucceeded.js.map +1 -0
  414. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js +39 -0
  415. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js.map +1 -0
  416. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError400WithDetails.js +56 -0
  417. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError400WithDetails.js.map +1 -0
  418. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError404.js +12 -0
  419. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError404.js.map +1 -0
  420. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError429.js +12 -0
  421. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError429.js.map +1 -0
  422. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError500.js +12 -0
  423. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError500.js.map +1 -0
  424. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js +17 -0
  425. package/_cjs/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js.map +1 -0
  426. package/_cjs/core/modules/relayer/module/index.js +23 -0
  427. package/_cjs/core/modules/relayer/module/index.js.map +1 -0
  428. package/_cjs/core/modules/relayer/module/relayerUrl.js +36 -0
  429. package/_cjs/core/modules/relayer/module/relayerUrl.js.map +1 -0
  430. package/_cjs/core/modules/relayer/module/utils.js +22 -0
  431. package/_cjs/core/modules/relayer/module/utils.js.map +1 -0
  432. package/_cjs/core/modules/relayer/types.js +3 -0
  433. package/_cjs/core/modules/relayer/types.js.map +1 -0
  434. package/_cjs/core/runtime/CoreFhevm-p.js +221 -0
  435. package/_cjs/core/runtime/CoreFhevm-p.js.map +1 -0
  436. package/_cjs/core/runtime/CoreFhevmRuntime-p.js +156 -0
  437. package/_cjs/core/runtime/CoreFhevmRuntime-p.js.map +1 -0
  438. package/_cjs/core/runtime/FhevmRuntime.js +9 -0
  439. package/_cjs/core/runtime/FhevmRuntime.js.map +1 -0
  440. package/_cjs/core/runtime/initFhevmDecryptRuntime-p.js +11 -0
  441. package/_cjs/core/runtime/initFhevmDecryptRuntime-p.js.map +1 -0
  442. package/_cjs/core/runtime/initFhevmEncryptRuntime-p.js +11 -0
  443. package/_cjs/core/runtime/initFhevmEncryptRuntime-p.js.map +1 -0
  444. package/_cjs/core/runtime/initFhevmRuntime-p.js +12 -0
  445. package/_cjs/core/runtime/initFhevmRuntime-p.js.map +1 -0
  446. package/_cjs/core/types/auth.js +3 -0
  447. package/_cjs/core/types/auth.js.map +1 -0
  448. package/_cjs/core/types/configs.js +3 -0
  449. package/_cjs/core/types/configs.js.map +1 -0
  450. package/_cjs/core/types/coprocessor.js +3 -0
  451. package/_cjs/core/types/coprocessor.js.map +1 -0
  452. package/_cjs/core/types/coprocessorSignersContext.js +3 -0
  453. package/_cjs/core/types/coprocessorSignersContext.js.map +1 -0
  454. package/_cjs/core/types/coreFhevmClient.js +3 -0
  455. package/_cjs/core/types/coreFhevmClient.js.map +1 -0
  456. package/_cjs/core/types/coreFhevmRuntime.js +3 -0
  457. package/_cjs/core/types/coreFhevmRuntime.js.map +1 -0
  458. package/_cjs/core/types/encryptedTypes-p.js +3 -0
  459. package/_cjs/core/types/encryptedTypes-p.js.map +1 -0
  460. package/_cjs/core/types/encryptedTypes.js +3 -0
  461. package/_cjs/core/types/encryptedTypes.js.map +1 -0
  462. package/_cjs/core/types/fheEncryptionKey.js +3 -0
  463. package/_cjs/core/types/fheEncryptionKey.js.map +1 -0
  464. package/_cjs/core/types/fheType.js +3 -0
  465. package/_cjs/core/types/fheType.js.map +1 -0
  466. package/_cjs/core/types/fhevmChain.js +3 -0
  467. package/_cjs/core/types/fhevmChain.js.map +1 -0
  468. package/_cjs/core/types/fhevmClient.js +3 -0
  469. package/_cjs/core/types/fhevmClient.js.map +1 -0
  470. package/_cjs/core/types/fhevmDecryptionKey.js +3 -0
  471. package/_cjs/core/types/fhevmDecryptionKey.js.map +1 -0
  472. package/_cjs/core/types/fhevmUser.js +3 -0
  473. package/_cjs/core/types/fhevmUser.js.map +1 -0
  474. package/_cjs/core/types/hostContract.js +3 -0
  475. package/_cjs/core/types/hostContract.js.map +1 -0
  476. package/_cjs/core/types/index.js +3 -0
  477. package/_cjs/core/types/index.js.map +1 -0
  478. package/_cjs/core/types/inputProof.js +3 -0
  479. package/_cjs/core/types/inputProof.js.map +1 -0
  480. package/_cjs/core/types/kms-p.js +3 -0
  481. package/_cjs/core/types/kms-p.js.map +1 -0
  482. package/_cjs/core/types/kms.js +3 -0
  483. package/_cjs/core/types/kms.js.map +1 -0
  484. package/_cjs/core/types/kmsSignersContext.js +3 -0
  485. package/_cjs/core/types/kmsSignersContext.js.map +1 -0
  486. package/_cjs/core/types/logger.js +3 -0
  487. package/_cjs/core/types/logger.js.map +1 -0
  488. package/_cjs/core/types/other-p.js +3 -0
  489. package/_cjs/core/types/other-p.js.map +1 -0
  490. package/_cjs/core/types/primitives.js +3 -0
  491. package/_cjs/core/types/primitives.js.map +1 -0
  492. package/_cjs/core/types/publicDecryptionProof-p.js +3 -0
  493. package/_cjs/core/types/publicDecryptionProof-p.js.map +1 -0
  494. package/_cjs/core/types/record-p.js +3 -0
  495. package/_cjs/core/types/record-p.js.map +1 -0
  496. package/_cjs/core/types/relayer-p.js +3 -0
  497. package/_cjs/core/types/relayer-p.js.map +1 -0
  498. package/_cjs/core/types/relayer.js +3 -0
  499. package/_cjs/core/types/relayer.js.map +1 -0
  500. package/_cjs/core/types/signedDecryptionPermit.js +3 -0
  501. package/_cjs/core/types/signedDecryptionPermit.js.map +1 -0
  502. package/_cjs/core/types/tkms-p.js +3 -0
  503. package/_cjs/core/types/tkms-p.js.map +1 -0
  504. package/_cjs/core/types/utils.js +3 -0
  505. package/_cjs/core/types/utils.js.map +1 -0
  506. package/_cjs/core/types/zkProof-p.js +3 -0
  507. package/_cjs/core/types/zkProof-p.js.map +1 -0
  508. package/_cjs/core/types/zkProofBuilder.js +3 -0
  509. package/_cjs/core/types/zkProofBuilder.js.map +1 -0
  510. package/_cjs/core/utils-p/decrypt/assertPermitMatchesKeypair.js +14 -0
  511. package/_cjs/core/utils-p/decrypt/assertPermitMatchesKeypair.js.map +1 -0
  512. package/_cjs/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.js +32 -0
  513. package/_cjs/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.js.map +1 -0
  514. package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712.js +32 -0
  515. package/_cjs/core/utils-p/decrypt/verifyKmsUserDecryptEip712.js.map +1 -0
  516. package/_cjs/core/utils-p/decrypt/verifyTkmsPublicKey.js +13 -0
  517. package/_cjs/core/utils-p/decrypt/verifyTkmsPublicKey.js.map +1 -0
  518. package/_cjs/core/utils-p/runtime/recoverSigners.js +23 -0
  519. package/_cjs/core/utils-p/runtime/recoverSigners.js.map +1 -0
  520. package/_cjs/ethers/clients/createFhevmBaseClient.js +16 -0
  521. package/_cjs/ethers/clients/createFhevmBaseClient.js.map +1 -0
  522. package/_cjs/ethers/clients/createFhevmClient.js +11 -0
  523. package/_cjs/ethers/clients/createFhevmClient.js.map +1 -0
  524. package/_cjs/ethers/clients/createFhevmDecryptClient.js +10 -0
  525. package/_cjs/ethers/clients/createFhevmDecryptClient.js.map +1 -0
  526. package/_cjs/ethers/clients/createFhevmEncryptClient.js +10 -0
  527. package/_cjs/ethers/clients/createFhevmEncryptClient.js.map +1 -0
  528. package/_cjs/ethers/decorators/decrypt.js +9 -0
  529. package/_cjs/ethers/decorators/decrypt.js.map +1 -0
  530. package/_cjs/ethers/decorators/encrypt.js +9 -0
  531. package/_cjs/ethers/decorators/encrypt.js.map +1 -0
  532. package/_cjs/ethers/index.js +20 -0
  533. package/_cjs/ethers/index.js.map +1 -0
  534. package/_cjs/ethers/internal/ethereum.js +80 -0
  535. package/_cjs/ethers/internal/ethereum.js.map +1 -0
  536. package/_cjs/ethers/internal/ethers-p.js +52 -0
  537. package/_cjs/ethers/internal/ethers-p.js.map +1 -0
  538. package/_cjs/ethers/internal/utils.js +26 -0
  539. package/_cjs/ethers/internal/utils.js.map +1 -0
  540. package/_cjs/ethers/runtime/initFhevmDecryptRuntime.js +9 -0
  541. package/_cjs/ethers/runtime/initFhevmDecryptRuntime.js.map +1 -0
  542. package/_cjs/ethers/runtime/initFhevmEncryptRuntime.js +9 -0
  543. package/_cjs/ethers/runtime/initFhevmEncryptRuntime.js.map +1 -0
  544. package/_cjs/ethers/runtime/initFhevmRuntime.js +9 -0
  545. package/_cjs/ethers/runtime/initFhevmRuntime.js.map +1 -0
  546. package/_cjs/package.json +1 -0
  547. package/_cjs/viem/clients/createFhevmBaseClient.js +16 -0
  548. package/_cjs/viem/clients/createFhevmBaseClient.js.map +1 -0
  549. package/_cjs/viem/clients/createFhevmClient.js +11 -0
  550. package/_cjs/viem/clients/createFhevmClient.js.map +1 -0
  551. package/_cjs/viem/clients/createFhevmDecryptClient.js +10 -0
  552. package/_cjs/viem/clients/createFhevmDecryptClient.js.map +1 -0
  553. package/_cjs/viem/clients/createFhevmEncryptClient.js +10 -0
  554. package/_cjs/viem/clients/createFhevmEncryptClient.js.map +1 -0
  555. package/_cjs/viem/decorators/decrypt.js +9 -0
  556. package/_cjs/viem/decorators/decrypt.js.map +1 -0
  557. package/_cjs/viem/decorators/encrypt.js +9 -0
  558. package/_cjs/viem/decorators/encrypt.js.map +1 -0
  559. package/_cjs/viem/index.js +20 -0
  560. package/_cjs/viem/index.js.map +1 -0
  561. package/_cjs/viem/internal/ethereum.js +68 -0
  562. package/_cjs/viem/internal/ethereum.js.map +1 -0
  563. package/_cjs/viem/internal/viem-p.js +52 -0
  564. package/_cjs/viem/internal/viem-p.js.map +1 -0
  565. package/_cjs/viem/runtime/initFhevmDecryptRuntime.js +9 -0
  566. package/_cjs/viem/runtime/initFhevmDecryptRuntime.js.map +1 -0
  567. package/_cjs/viem/runtime/initFhevmEncryptRuntime.js +9 -0
  568. package/_cjs/viem/runtime/initFhevmEncryptRuntime.js.map +1 -0
  569. package/_cjs/viem/runtime/initFhevmRuntime.js +9 -0
  570. package/_cjs/viem/runtime/initFhevmRuntime.js.map +1 -0
  571. package/_cjs/wasm/tfhe/compile-worker.js +8 -0
  572. package/_cjs/wasm/tfhe/startWorkers.v1.5.3.js +426 -0
  573. package/_cjs/wasm/tfhe/tfhe-worker.v1.5.3.inline.js +7 -0
  574. package/_cjs/wasm/tfhe/tfhe-worker.v1.5.3.mjs +745 -0
  575. package/_cjs/wasm/tfhe/tfhe.v1.5.3.d.ts +10793 -0
  576. package/_cjs/wasm/tfhe/tfhe.v1.5.3.js +28645 -0
  577. package/_cjs/wasm/tfhe/tfhe_bg.v1.5.3.wasm +0 -0
  578. package/_cjs/wasm/tfhe/tfhe_bg.v1.5.3.wasm.base64.d.ts +1 -0
  579. package/_cjs/wasm/tfhe/tfhe_bg.v1.5.3.wasm.base64.js +1 -0
  580. package/_cjs/wasm/tkms/kms_lib.v0.13.10.d.ts +586 -0
  581. package/_cjs/wasm/tkms/kms_lib.v0.13.10.js +2117 -0
  582. package/_cjs/wasm/tkms/kms_lib_bg.v0.13.10.wasm +0 -0
  583. package/_cjs/wasm/tkms/kms_lib_bg.v0.13.10.wasm.base64.d.ts +1 -0
  584. package/_cjs/wasm/tkms/kms_lib_bg.v0.13.10.wasm.base64.js +3 -0
  585. package/_cjs/wasm/wasmBaseUrl.d.ts +7 -0
  586. package/_cjs/wasm/wasmBaseUrl.js +14 -0
  587. package/_esm/core/_version.js +4 -0
  588. package/_esm/core/_version.js.map +1 -0
  589. package/_esm/core/actions/base/canReadPublicValue.js +11 -0
  590. package/_esm/core/actions/base/canReadPublicValue.js.map +1 -0
  591. package/_esm/core/actions/base/canReadPublicValues.js +11 -0
  592. package/_esm/core/actions/base/canReadPublicValues.js.map +1 -0
  593. package/_esm/core/actions/base/createVerifiedInputProofFromRawBytes.js +7 -0
  594. package/_esm/core/actions/base/createVerifiedInputProofFromRawBytes.js.map +1 -0
  595. package/_esm/core/actions/base/fetchKmsSignedcryptedShares.js +17 -0
  596. package/_esm/core/actions/base/fetchKmsSignedcryptedShares.js.map +1 -0
  597. package/_esm/core/actions/base/fetchVerifiedInputProof.js +8 -0
  598. package/_esm/core/actions/base/fetchVerifiedInputProof.js.map +1 -0
  599. package/_esm/core/actions/base/index.js +14 -0
  600. package/_esm/core/actions/base/index.js.map +1 -0
  601. package/_esm/core/actions/base/readCoprocessorSignersContext.js +9 -0
  602. package/_esm/core/actions/base/readCoprocessorSignersContext.js.map +1 -0
  603. package/_esm/core/actions/base/readKmsSignersContext.js +9 -0
  604. package/_esm/core/actions/base/readKmsSignersContext.js.map +1 -0
  605. package/_esm/core/actions/base/readPublicValue.js +11 -0
  606. package/_esm/core/actions/base/readPublicValue.js.map +1 -0
  607. package/_esm/core/actions/base/readPublicValues.js +11 -0
  608. package/_esm/core/actions/base/readPublicValues.js.map +1 -0
  609. package/_esm/core/actions/base/readPublicValuesWithSignatures.js +19 -0
  610. package/_esm/core/actions/base/readPublicValuesWithSignatures.js.map +1 -0
  611. package/_esm/core/actions/base/signDecryptionPermit.js +11 -0
  612. package/_esm/core/actions/base/signDecryptionPermit.js.map +1 -0
  613. package/_esm/core/actions/base/verifyHandlesCoprocessorSignatures.js +35 -0
  614. package/_esm/core/actions/base/verifyHandlesCoprocessorSignatures.js.map +1 -0
  615. package/_esm/core/actions/base/verifyInputProof.js +22 -0
  616. package/_esm/core/actions/base/verifyInputProof.js.map +1 -0
  617. package/_esm/core/actions/base/verifyZkProofCoprocessorSignatures.js +14 -0
  618. package/_esm/core/actions/base/verifyZkProofCoprocessorSignatures.js.map +1 -0
  619. package/_esm/core/actions/chain/createCoprocessorEip712Domain.js +8 -0
  620. package/_esm/core/actions/chain/createCoprocessorEip712Domain.js.map +1 -0
  621. package/_esm/core/actions/chain/createKmsDelegatedUserDecryptEip712.js +15 -0
  622. package/_esm/core/actions/chain/createKmsDelegatedUserDecryptEip712.js.map +1 -0
  623. package/_esm/core/actions/chain/createKmsEip712Domain.js +8 -0
  624. package/_esm/core/actions/chain/createKmsEip712Domain.js.map +1 -0
  625. package/_esm/core/actions/chain/createKmsUserDecryptEip712.js +14 -0
  626. package/_esm/core/actions/chain/createKmsUserDecryptEip712.js.map +1 -0
  627. package/_esm/core/actions/chain/fetchFheEncryptionKeyBytes.js +6 -0
  628. package/_esm/core/actions/chain/fetchFheEncryptionKeyBytes.js.map +1 -0
  629. package/_esm/core/actions/chain/index.js +13 -0
  630. package/_esm/core/actions/chain/index.js.map +1 -0
  631. package/_esm/core/actions/chain/parseSignedDecryptionPermit.js +15 -0
  632. package/_esm/core/actions/chain/parseSignedDecryptionPermit.js.map +1 -0
  633. package/_esm/core/actions/chain/parseTransportKeypair.js +7 -0
  634. package/_esm/core/actions/chain/parseTransportKeypair.js.map +1 -0
  635. package/_esm/core/actions/chain/serializeSignedDecryptionPermit.js +11 -0
  636. package/_esm/core/actions/chain/serializeSignedDecryptionPermit.js.map +1 -0
  637. package/_esm/core/actions/chain/serializeTransportKeypair.js +6 -0
  638. package/_esm/core/actions/chain/serializeTransportKeypair.js.map +1 -0
  639. package/_esm/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js +5 -0
  640. package/_esm/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.js.map +1 -0
  641. package/_esm/core/actions/chain/verifyKmsUserDecryptEip712.js +5 -0
  642. package/_esm/core/actions/chain/verifyKmsUserDecryptEip712.js.map +1 -0
  643. package/_esm/core/actions/decrypt/canDecryptValue.js +18 -0
  644. package/_esm/core/actions/decrypt/canDecryptValue.js.map +1 -0
  645. package/_esm/core/actions/decrypt/canDecryptValues.js +20 -0
  646. package/_esm/core/actions/decrypt/canDecryptValues.js.map +1 -0
  647. package/_esm/core/actions/decrypt/canDecryptValuesFromPairs.js +16 -0
  648. package/_esm/core/actions/decrypt/canDecryptValuesFromPairs.js.map +1 -0
  649. package/_esm/core/actions/decrypt/decryptKmsSignedcryptedShares.js +9 -0
  650. package/_esm/core/actions/decrypt/decryptKmsSignedcryptedShares.js.map +1 -0
  651. package/_esm/core/actions/decrypt/decryptValue.js +18 -0
  652. package/_esm/core/actions/decrypt/decryptValue.js.map +1 -0
  653. package/_esm/core/actions/decrypt/decryptValues.js +16 -0
  654. package/_esm/core/actions/decrypt/decryptValues.js.map +1 -0
  655. package/_esm/core/actions/decrypt/decryptValuesFromPairs.js +15 -0
  656. package/_esm/core/actions/decrypt/decryptValuesFromPairs.js.map +1 -0
  657. package/_esm/core/actions/decrypt/generateTransportKeypair.js +6 -0
  658. package/_esm/core/actions/decrypt/generateTransportKeypair.js.map +1 -0
  659. package/_esm/core/actions/decrypt/index.js +9 -0
  660. package/_esm/core/actions/decrypt/index.js.map +1 -0
  661. package/_esm/core/actions/encrypt/encryptValue.js +24 -0
  662. package/_esm/core/actions/encrypt/encryptValue.js.map +1 -0
  663. package/_esm/core/actions/encrypt/encryptValues.js +22 -0
  664. package/_esm/core/actions/encrypt/encryptValues.js.map +1 -0
  665. package/_esm/core/actions/encrypt/generateZkProof.js +15 -0
  666. package/_esm/core/actions/encrypt/generateZkProof.js.map +1 -0
  667. package/_esm/core/actions/encrypt/index.js +4 -0
  668. package/_esm/core/actions/encrypt/index.js.map +1 -0
  669. package/_esm/core/actions/host/getUserDecryptionDelegationExpirationDate.js +18 -0
  670. package/_esm/core/actions/host/getUserDecryptionDelegationExpirationDate.js.map +1 -0
  671. package/_esm/core/actions/host/index.js +8 -0
  672. package/_esm/core/actions/host/index.js.map +1 -0
  673. package/_esm/core/actions/host/isAllowedForDecryption.js +18 -0
  674. package/_esm/core/actions/host/isAllowedForDecryption.js.map +1 -0
  675. package/_esm/core/actions/host/persistAllowed.js +17 -0
  676. package/_esm/core/actions/host/persistAllowed.js.map +1 -0
  677. package/_esm/core/actions/host/readFhevmExecutorContractData.js +53 -0
  678. package/_esm/core/actions/host/readFhevmExecutorContractData.js.map +1 -0
  679. package/_esm/core/actions/host/readInputVerifierContractData.js +49 -0
  680. package/_esm/core/actions/host/readInputVerifierContractData.js.map +1 -0
  681. package/_esm/core/actions/host/readKmsVerifierContractData.js +49 -0
  682. package/_esm/core/actions/host/readKmsVerifierContractData.js.map +1 -0
  683. package/_esm/core/actions/host/resolveChainId.js +24 -0
  684. package/_esm/core/actions/host/resolveChainId.js.map +1 -0
  685. package/_esm/core/actions/host/resolveFhevmConfig.js +89 -0
  686. package/_esm/core/actions/host/resolveFhevmConfig.js.map +1 -0
  687. package/_esm/core/base/address.js +210 -0
  688. package/_esm/core/base/address.js.map +1 -0
  689. package/_esm/core/base/auth.js +36 -0
  690. package/_esm/core/base/auth.js.map +1 -0
  691. package/_esm/core/base/boolean.js +62 -0
  692. package/_esm/core/base/boolean.js.map +1 -0
  693. package/_esm/core/base/bytes.js +1445 -0
  694. package/_esm/core/base/bytes.js.map +1 -0
  695. package/_esm/core/base/cachedFetch.js +88 -0
  696. package/_esm/core/base/cachedFetch.js.map +1 -0
  697. package/_esm/core/base/errors/AddressError.js +11 -0
  698. package/_esm/core/base/errors/AddressError.js.map +1 -0
  699. package/_esm/core/base/errors/ChecksummedAddressError.js +13 -0
  700. package/_esm/core/base/errors/ChecksummedAddressError.js.map +1 -0
  701. package/_esm/core/base/errors/ErrorBase.js +68 -0
  702. package/_esm/core/base/errors/ErrorBase.js.map +1 -0
  703. package/_esm/core/base/errors/FetchError.js +30 -0
  704. package/_esm/core/base/errors/FetchError.js.map +1 -0
  705. package/_esm/core/base/errors/FheTypeError.js +44 -0
  706. package/_esm/core/base/errors/FheTypeError.js.map +1 -0
  707. package/_esm/core/base/errors/InternalError.js +18 -0
  708. package/_esm/core/base/errors/InternalError.js.map +1 -0
  709. package/_esm/core/base/errors/InvalidPropertyError.js +183 -0
  710. package/_esm/core/base/errors/InvalidPropertyError.js.map +1 -0
  711. package/_esm/core/base/errors/InvalidTypeError.js +57 -0
  712. package/_esm/core/base/errors/InvalidTypeError.js.map +1 -0
  713. package/_esm/core/base/errors/utils.js +36 -0
  714. package/_esm/core/base/errors/utils.js.map +1 -0
  715. package/_esm/core/base/fetch.js +210 -0
  716. package/_esm/core/base/fetch.js.map +1 -0
  717. package/_esm/core/base/index.js +2 -0
  718. package/_esm/core/base/index.js.map +1 -0
  719. package/_esm/core/base/isomorphicWorker.js +235 -0
  720. package/_esm/core/base/isomorphicWorker.js.map +1 -0
  721. package/_esm/core/base/object.js +36 -0
  722. package/_esm/core/base/object.js.map +1 -0
  723. package/_esm/core/base/promise.js +31 -0
  724. package/_esm/core/base/promise.js.map +1 -0
  725. package/_esm/core/base/record.js +149 -0
  726. package/_esm/core/base/record.js.map +1 -0
  727. package/_esm/core/base/string.js +163 -0
  728. package/_esm/core/base/string.js.map +1 -0
  729. package/_esm/core/base/timeout.js +26 -0
  730. package/_esm/core/base/timeout.js.map +1 -0
  731. package/_esm/core/base/trustedValue.js +83 -0
  732. package/_esm/core/base/trustedValue.js.map +1 -0
  733. package/_esm/core/base/typedValue.js +236 -0
  734. package/_esm/core/base/typedValue.js.map +1 -0
  735. package/_esm/core/base/uid.js +17 -0
  736. package/_esm/core/base/uid.js.map +1 -0
  737. package/_esm/core/base/uint.js +402 -0
  738. package/_esm/core/base/uint.js.map +1 -0
  739. package/_esm/core/base/wasm.js +84 -0
  740. package/_esm/core/base/wasm.js.map +1 -0
  741. package/_esm/core/chains/definitions/localTestnet.js +30 -0
  742. package/_esm/core/chains/definitions/localTestnet.js.map +1 -0
  743. package/_esm/core/chains/definitions/mainnet.js +30 -0
  744. package/_esm/core/chains/definitions/mainnet.js.map +1 -0
  745. package/_esm/core/chains/definitions/sepolia.js +30 -0
  746. package/_esm/core/chains/definitions/sepolia.js.map +1 -0
  747. package/_esm/core/chains/index.js +4 -0
  748. package/_esm/core/chains/index.js.map +1 -0
  749. package/_esm/core/chains/utils.js +5 -0
  750. package/_esm/core/chains/utils.js.map +1 -0
  751. package/_esm/core/clients/decorators/base.js +36 -0
  752. package/_esm/core/clients/decorators/base.js.map +1 -0
  753. package/_esm/core/clients/decorators/decrypt.js +32 -0
  754. package/_esm/core/clients/decorators/decrypt.js.map +1 -0
  755. package/_esm/core/clients/decorators/encrypt-p.js +12 -0
  756. package/_esm/core/clients/decorators/encrypt-p.js.map +1 -0
  757. package/_esm/core/clients/decorators/encrypt.js +22 -0
  758. package/_esm/core/clients/decorators/encrypt.js.map +1 -0
  759. package/_esm/core/coprocessor/InputProof-p.js +268 -0
  760. package/_esm/core/coprocessor/InputProof-p.js.map +1 -0
  761. package/_esm/core/coprocessor/ZkProof-p.js +343 -0
  762. package/_esm/core/coprocessor/ZkProof-p.js.map +1 -0
  763. package/_esm/core/coprocessor/ZkProofBuilder-p.js +208 -0
  764. package/_esm/core/coprocessor/ZkProofBuilder-p.js.map +1 -0
  765. package/_esm/core/coprocessor/assertIsCoprocessorEip712Domain.js +16 -0
  766. package/_esm/core/coprocessor/assertIsCoprocessorEip712Domain.js.map +1 -0
  767. package/_esm/core/coprocessor/coprocessorEip712Types.js +34 -0
  768. package/_esm/core/coprocessor/coprocessorEip712Types.js.map +1 -0
  769. package/_esm/core/coprocessor/createCoprocessorEip712.js +41 -0
  770. package/_esm/core/coprocessor/createCoprocessorEip712.js.map +1 -0
  771. package/_esm/core/coprocessor/createCoprocessorEip712Domain.js +15 -0
  772. package/_esm/core/coprocessor/createCoprocessorEip712Domain.js.map +1 -0
  773. package/_esm/core/coprocessor/encrypt.js +18 -0
  774. package/_esm/core/coprocessor/encrypt.js.map +1 -0
  775. package/_esm/core/coprocessor/fetchVerifiedInputProof.js +47 -0
  776. package/_esm/core/coprocessor/fetchVerifiedInputProof.js.map +1 -0
  777. package/_esm/core/coprocessor/verifyHandlesCoprocessorSignatures.js +37 -0
  778. package/_esm/core/coprocessor/verifyHandlesCoprocessorSignatures.js.map +1 -0
  779. package/_esm/core/coprocessor/verifyInputProof.js +22 -0
  780. package/_esm/core/coprocessor/verifyInputProof.js.map +1 -0
  781. package/_esm/core/errors/AclError.js +43 -0
  782. package/_esm/core/errors/AclError.js.map +1 -0
  783. package/_esm/core/errors/ContractErrorBase.js +30 -0
  784. package/_esm/core/errors/ContractErrorBase.js.map +1 -0
  785. package/_esm/core/errors/EncryptionError.js +10 -0
  786. package/_esm/core/errors/EncryptionError.js.map +1 -0
  787. package/_esm/core/errors/FhevmConfigError.js +10 -0
  788. package/_esm/core/errors/FhevmConfigError.js.map +1 -0
  789. package/_esm/core/errors/FhevmErrorBase.js +62 -0
  790. package/_esm/core/errors/FhevmErrorBase.js.map +1 -0
  791. package/_esm/core/errors/FhevmHandleError.js +11 -0
  792. package/_esm/core/errors/FhevmHandleError.js.map +1 -0
  793. package/_esm/core/errors/InputProofError.js +20 -0
  794. package/_esm/core/errors/InputProofError.js.map +1 -0
  795. package/_esm/core/errors/RelayerAbortError.js +15 -0
  796. package/_esm/core/errors/RelayerAbortError.js.map +1 -0
  797. package/_esm/core/errors/RelayerErrorBase.js +83 -0
  798. package/_esm/core/errors/RelayerErrorBase.js.map +1 -0
  799. package/_esm/core/errors/RelayerFetchError.js +18 -0
  800. package/_esm/core/errors/RelayerFetchError.js.map +1 -0
  801. package/_esm/core/errors/RelayerFetchErrorBase.js +71 -0
  802. package/_esm/core/errors/RelayerFetchErrorBase.js.map +1 -0
  803. package/_esm/core/errors/RelayerMaxRetryError.js +16 -0
  804. package/_esm/core/errors/RelayerMaxRetryError.js.map +1 -0
  805. package/_esm/core/errors/RelayerRequestErrorBase.js +44 -0
  806. package/_esm/core/errors/RelayerRequestErrorBase.js.map +1 -0
  807. package/_esm/core/errors/RelayerRequestInternalError.js +44 -0
  808. package/_esm/core/errors/RelayerRequestInternalError.js.map +1 -0
  809. package/_esm/core/errors/RelayerResponseApiError.js +35 -0
  810. package/_esm/core/errors/RelayerResponseApiError.js.map +1 -0
  811. package/_esm/core/errors/RelayerResponseErrorBase.js +29 -0
  812. package/_esm/core/errors/RelayerResponseErrorBase.js.map +1 -0
  813. package/_esm/core/errors/RelayerResponseInputProofRejectedError.js +14 -0
  814. package/_esm/core/errors/RelayerResponseInputProofRejectedError.js.map +1 -0
  815. package/_esm/core/errors/RelayerResponseInvalidBodyError.js +35 -0
  816. package/_esm/core/errors/RelayerResponseInvalidBodyError.js.map +1 -0
  817. package/_esm/core/errors/RelayerResponseStatusError.js +16 -0
  818. package/_esm/core/errors/RelayerResponseStatusError.js.map +1 -0
  819. package/_esm/core/errors/RelayerStateError.js +32 -0
  820. package/_esm/core/errors/RelayerStateError.js.map +1 -0
  821. package/_esm/core/errors/RelayerTimeoutError.js +15 -0
  822. package/_esm/core/errors/RelayerTimeoutError.js.map +1 -0
  823. package/_esm/core/errors/SignersError.js +29 -0
  824. package/_esm/core/errors/SignersError.js.map +1 -0
  825. package/_esm/core/errors/TfheError.js +10 -0
  826. package/_esm/core/errors/TfheError.js.map +1 -0
  827. package/_esm/core/errors/ZkProofError.js +11 -0
  828. package/_esm/core/errors/ZkProofError.js.map +1 -0
  829. package/_esm/core/handle/ClearValue.js +272 -0
  830. package/_esm/core/handle/ClearValue.js.map +1 -0
  831. package/_esm/core/handle/EncryptedValue.js +26 -0
  832. package/_esm/core/handle/EncryptedValue.js.map +1 -0
  833. package/_esm/core/handle/FheType.js +430 -0
  834. package/_esm/core/handle/FheType.js.map +1 -0
  835. package/_esm/core/handle/FhevmHandle.js +545 -0
  836. package/_esm/core/handle/FhevmHandle.js.map +1 -0
  837. package/_esm/core/host-contracts/CoprocessorSignersContext-p.js +125 -0
  838. package/_esm/core/host-contracts/CoprocessorSignersContext-p.js.map +1 -0
  839. package/_esm/core/host-contracts/FhevmExecutorContractData-p.js +102 -0
  840. package/_esm/core/host-contracts/FhevmExecutorContractData-p.js.map +1 -0
  841. package/_esm/core/host-contracts/HostContractVersion-p.js +113 -0
  842. package/_esm/core/host-contracts/HostContractVersion-p.js.map +1 -0
  843. package/_esm/core/host-contracts/InputVerifierContractData-p.js +102 -0
  844. package/_esm/core/host-contracts/InputVerifierContractData-p.js.map +1 -0
  845. package/_esm/core/host-contracts/KmsSignersContext-p.js +177 -0
  846. package/_esm/core/host-contracts/KmsSignersContext-p.js.map +1 -0
  847. package/_esm/core/host-contracts/KmsVerifierContractData-p.js +84 -0
  848. package/_esm/core/host-contracts/KmsVerifierContractData-p.js.map +1 -0
  849. package/_esm/core/host-contracts/abi-fragments/fragments.js +393 -0
  850. package/_esm/core/host-contracts/abi-fragments/fragments.js.map +1 -0
  851. package/_esm/core/host-contracts/canDecryptValuesFromPairs.js +45 -0
  852. package/_esm/core/host-contracts/canDecryptValuesFromPairs.js.map +1 -0
  853. package/_esm/core/host-contracts/checkAllowedForDecryption.js +15 -0
  854. package/_esm/core/host-contracts/checkAllowedForDecryption.js.map +1 -0
  855. package/_esm/core/host-contracts/checkPersistAllowed.js +83 -0
  856. package/_esm/core/host-contracts/checkPersistAllowed.js.map +1 -0
  857. package/_esm/core/host-contracts/decryptionResultTypehash-p.js +29 -0
  858. package/_esm/core/host-contracts/decryptionResultTypehash-p.js.map +1 -0
  859. package/_esm/core/host-contracts/eip712Domain-p.js +46 -0
  860. package/_esm/core/host-contracts/eip712Domain-p.js.map +1 -0
  861. package/_esm/core/host-contracts/eip712InputVerificationTypehash-p.js +29 -0
  862. package/_esm/core/host-contracts/eip712InputVerificationTypehash-p.js.map +1 -0
  863. package/_esm/core/host-contracts/getAclAddress-p.js +29 -0
  864. package/_esm/core/host-contracts/getAclAddress-p.js.map +1 -0
  865. package/_esm/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js +92 -0
  866. package/_esm/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.js.map +1 -0
  867. package/_esm/core/host-contracts/getCoprocessorSigners-p.js +29 -0
  868. package/_esm/core/host-contracts/getCoprocessorSigners-p.js.map +1 -0
  869. package/_esm/core/host-contracts/getCurrentKmsContextId-p.js +50 -0
  870. package/_esm/core/host-contracts/getCurrentKmsContextId-p.js.map +1 -0
  871. package/_esm/core/host-contracts/getFhevmExecutorAddress-p.js +29 -0
  872. package/_esm/core/host-contracts/getFhevmExecutorAddress-p.js.map +1 -0
  873. package/_esm/core/host-contracts/getHandleVersion-p.js +24 -0
  874. package/_esm/core/host-contracts/getHandleVersion-p.js.map +1 -0
  875. package/_esm/core/host-contracts/getHcuLimitAddress-p.js +29 -0
  876. package/_esm/core/host-contracts/getHcuLimitAddress-p.js.map +1 -0
  877. package/_esm/core/host-contracts/getInputVerifierAddress-p.js +29 -0
  878. package/_esm/core/host-contracts/getInputVerifierAddress-p.js.map +1 -0
  879. package/_esm/core/host-contracts/getKmsContextSignersAndThreshold-p.js +108 -0
  880. package/_esm/core/host-contracts/getKmsContextSignersAndThreshold-p.js.map +1 -0
  881. package/_esm/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js +73 -0
  882. package/_esm/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.js.map +1 -0
  883. package/_esm/core/host-contracts/getSignersForKmsContext-p.js +64 -0
  884. package/_esm/core/host-contracts/getSignersForKmsContext-p.js.map +1 -0
  885. package/_esm/core/host-contracts/isAllowedForDecryption.js +29 -0
  886. package/_esm/core/host-contracts/isAllowedForDecryption.js.map +1 -0
  887. package/_esm/core/host-contracts/isUserDecryptable.js +56 -0
  888. package/_esm/core/host-contracts/isUserDecryptable.js.map +1 -0
  889. package/_esm/core/host-contracts/persistAllowed.js +30 -0
  890. package/_esm/core/host-contracts/persistAllowed.js.map +1 -0
  891. package/_esm/core/host-contracts/readCoprocessorSignersContext-p.js +14 -0
  892. package/_esm/core/host-contracts/readCoprocessorSignersContext-p.js.map +1 -0
  893. package/_esm/core/host-contracts/readKmsSignersContext-p.js +116 -0
  894. package/_esm/core/host-contracts/readKmsSignersContext-p.js.map +1 -0
  895. package/_esm/core/key/FheEncryptionKeyCache-p.js +278 -0
  896. package/_esm/core/key/FheEncryptionKeyCache-p.js.map +1 -0
  897. package/_esm/core/key/FheEncryptionKeyWasm-p.js +73 -0
  898. package/_esm/core/key/FheEncryptionKeyWasm-p.js.map +1 -0
  899. package/_esm/core/key/deserializeFheEncryptionKey.js +16 -0
  900. package/_esm/core/key/deserializeFheEncryptionKey.js.map +1 -0
  901. package/_esm/core/key/fetchFheEncryptionKey.js +29 -0
  902. package/_esm/core/key/fetchFheEncryptionKey.js.map +1 -0
  903. package/_esm/core/key/fetchFheEncryptionKeyBytes.js +46 -0
  904. package/_esm/core/key/fetchFheEncryptionKeyBytes.js.map +1 -0
  905. package/_esm/core/key/fetchFheEncryptionKeyBytesWithSource.js +57 -0
  906. package/_esm/core/key/fetchFheEncryptionKeyBytesWithSource.js.map +1 -0
  907. package/_esm/core/key/serializeFheEncryptionKey.js +21 -0
  908. package/_esm/core/key/serializeFheEncryptionKey.js.map +1 -0
  909. package/_esm/core/kms/KmsSigncryptedShares-p.js +141 -0
  910. package/_esm/core/kms/KmsSigncryptedShares-p.js.map +1 -0
  911. package/_esm/core/kms/PublicDecryptionProof-p.js +122 -0
  912. package/_esm/core/kms/PublicDecryptionProof-p.js.map +1 -0
  913. package/_esm/core/kms/PublicDecryptionProof.js +8 -0
  914. package/_esm/core/kms/PublicDecryptionProof.js.map +1 -0
  915. package/_esm/core/kms/SignedDecryptionPermit-p.js +286 -0
  916. package/_esm/core/kms/SignedDecryptionPermit-p.js.map +1 -0
  917. package/_esm/core/kms/TransportKeypair-p.js +211 -0
  918. package/_esm/core/kms/TransportKeypair-p.js.map +1 -0
  919. package/_esm/core/kms/createKmsDelegatedUserDecryptEip712.js +73 -0
  920. package/_esm/core/kms/createKmsDelegatedUserDecryptEip712.js.map +1 -0
  921. package/_esm/core/kms/createKmsEip712Domain.js +40 -0
  922. package/_esm/core/kms/createKmsEip712Domain.js.map +1 -0
  923. package/_esm/core/kms/createKmsPublicDecryptEip712.js +39 -0
  924. package/_esm/core/kms/createKmsPublicDecryptEip712.js.map +1 -0
  925. package/_esm/core/kms/createKmsUserDecryptEip712.js +100 -0
  926. package/_esm/core/kms/createKmsUserDecryptEip712.js.map +1 -0
  927. package/_esm/core/kms/decryptKmsSignedcryptedShares-p.js +14 -0
  928. package/_esm/core/kms/decryptKmsSignedcryptedShares-p.js.map +1 -0
  929. package/_esm/core/kms/decryptValuesFromPairs.js +14 -0
  930. package/_esm/core/kms/decryptValuesFromPairs.js.map +1 -0
  931. package/_esm/core/kms/fetchKmsSignedcryptedShares-p.js +124 -0
  932. package/_esm/core/kms/fetchKmsSignedcryptedShares-p.js.map +1 -0
  933. package/_esm/core/kms/index.js +2 -0
  934. package/_esm/core/kms/index.js.map +1 -0
  935. package/_esm/core/kms/kmsDelegatedUserDecryptEip712Types.js +28 -0
  936. package/_esm/core/kms/kmsDelegatedUserDecryptEip712Types.js.map +1 -0
  937. package/_esm/core/kms/kmsExtraData.js +35 -0
  938. package/_esm/core/kms/kmsExtraData.js.map +1 -0
  939. package/_esm/core/kms/kmsPublicDecryptEip712Types.js +25 -0
  940. package/_esm/core/kms/kmsPublicDecryptEip712Types.js.map +1 -0
  941. package/_esm/core/kms/kmsUserDecryptEip712Types.js +27 -0
  942. package/_esm/core/kms/kmsUserDecryptEip712Types.js.map +1 -0
  943. package/_esm/core/kms/publicDecrypt.js +65 -0
  944. package/_esm/core/kms/publicDecrypt.js.map +1 -0
  945. package/_esm/core/kms/utils.js +38 -0
  946. package/_esm/core/kms/utils.js.map +1 -0
  947. package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js +46 -0
  948. package/_esm/core/kms/verifyKmsPublicDecryptEip712-p.js.map +1 -0
  949. package/_esm/core/modules/decrypt/mock.js +82 -0
  950. package/_esm/core/modules/decrypt/mock.js.map +1 -0
  951. package/_esm/core/modules/decrypt/module/api-p.js +228 -0
  952. package/_esm/core/modules/decrypt/module/api-p.js.map +1 -0
  953. package/_esm/core/modules/decrypt/module/index.js +44 -0
  954. package/_esm/core/modules/decrypt/module/index.js.map +1 -0
  955. package/_esm/core/modules/decrypt/module/init-p.js +115 -0
  956. package/_esm/core/modules/decrypt/module/init-p.js.map +1 -0
  957. package/_esm/core/modules/decrypt/types.js +2 -0
  958. package/_esm/core/modules/decrypt/types.js.map +1 -0
  959. package/_esm/core/modules/encrypt/mock.js +63 -0
  960. package/_esm/core/modules/encrypt/mock.js.map +1 -0
  961. package/_esm/core/modules/encrypt/module/api-p.js +288 -0
  962. package/_esm/core/modules/encrypt/module/api-p.js.map +1 -0
  963. package/_esm/core/modules/encrypt/module/index.js +21 -0
  964. package/_esm/core/modules/encrypt/module/index.js.map +1 -0
  965. package/_esm/core/modules/encrypt/module/init-p.js +179 -0
  966. package/_esm/core/modules/encrypt/module/init-p.js.map +1 -0
  967. package/_esm/core/modules/encrypt/types.js +2 -0
  968. package/_esm/core/modules/encrypt/types.js.map +1 -0
  969. package/_esm/core/modules/ethereum/createTrustedClient.js +6 -0
  970. package/_esm/core/modules/ethereum/createTrustedClient.js.map +1 -0
  971. package/_esm/core/modules/ethereum/types.js +2 -0
  972. package/_esm/core/modules/ethereum/types.js.map +1 -0
  973. package/_esm/core/modules/relayer/mock.js +28 -0
  974. package/_esm/core/modules/relayer/mock.js.map +1 -0
  975. package/_esm/core/modules/relayer/module/RelayerAsyncRequest.js +1576 -0
  976. package/_esm/core/modules/relayer/module/RelayerAsyncRequest.js.map +1 -0
  977. package/_esm/core/modules/relayer/module/fetchCoprocessorSignatures.js +30 -0
  978. package/_esm/core/modules/relayer/module/fetchCoprocessorSignatures.js.map +1 -0
  979. package/_esm/core/modules/relayer/module/fetchDelegatedUserDecrypt.js +48 -0
  980. package/_esm/core/modules/relayer/module/fetchDelegatedUserDecrypt.js.map +1 -0
  981. package/_esm/core/modules/relayer/module/fetchFheEncryptionKeyBytes.js +21 -0
  982. package/_esm/core/modules/relayer/module/fetchFheEncryptionKeyBytes.js.map +1 -0
  983. package/_esm/core/modules/relayer/module/fetchFheEncryptionKeySource.js +137 -0
  984. package/_esm/core/modules/relayer/module/fetchFheEncryptionKeySource.js.map +1 -0
  985. package/_esm/core/modules/relayer/module/fetchPublicDecrypt.js +28 -0
  986. package/_esm/core/modules/relayer/module/fetchPublicDecrypt.js.map +1 -0
  987. package/_esm/core/modules/relayer/module/fetchUserDecrypt.js +49 -0
  988. package/_esm/core/modules/relayer/module/fetchUserDecrypt.js.map +1 -0
  989. package/_esm/core/modules/relayer/module/guards/RelayerInputProofSucceeded.js +74 -0
  990. package/_esm/core/modules/relayer/module/guards/RelayerInputProofSucceeded.js.map +1 -0
  991. package/_esm/core/modules/relayer/module/guards/RelayerPublicDecryptSucceeded.js +42 -0
  992. package/_esm/core/modules/relayer/module/guards/RelayerPublicDecryptSucceeded.js.map +1 -0
  993. package/_esm/core/modules/relayer/module/guards/RelayerResponseFailed.js +162 -0
  994. package/_esm/core/modules/relayer/module/guards/RelayerResponseFailed.js.map +1 -0
  995. package/_esm/core/modules/relayer/module/guards/RelayerResponseQueued.js +38 -0
  996. package/_esm/core/modules/relayer/module/guards/RelayerResponseQueued.js.map +1 -0
  997. package/_esm/core/modules/relayer/module/guards/RelayerUserDecryptSucceeded.js +52 -0
  998. package/_esm/core/modules/relayer/module/guards/RelayerUserDecryptSucceeded.js.map +1 -0
  999. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js +45 -0
  1000. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.js.map +1 -0
  1001. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError400WithDetails.js +65 -0
  1002. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError400WithDetails.js.map +1 -0
  1003. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError404.js +18 -0
  1004. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError404.js.map +1 -0
  1005. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError429.js +18 -0
  1006. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError429.js.map +1 -0
  1007. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError500.js +18 -0
  1008. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError500.js.map +1 -0
  1009. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js +23 -0
  1010. package/_esm/core/modules/relayer/module/guards/api-errors/RelayerApiError503.js.map +1 -0
  1011. package/_esm/core/modules/relayer/module/index.js +22 -0
  1012. package/_esm/core/modules/relayer/module/index.js.map +1 -0
  1013. package/_esm/core/modules/relayer/module/relayerUrl.js +33 -0
  1014. package/_esm/core/modules/relayer/module/relayerUrl.js.map +1 -0
  1015. package/_esm/core/modules/relayer/module/utils.js +19 -0
  1016. package/_esm/core/modules/relayer/module/utils.js.map +1 -0
  1017. package/_esm/core/modules/relayer/types.js +2 -0
  1018. package/_esm/core/modules/relayer/types.js.map +1 -0
  1019. package/_esm/core/runtime/CoreFhevm-p.js +248 -0
  1020. package/_esm/core/runtime/CoreFhevm-p.js.map +1 -0
  1021. package/_esm/core/runtime/CoreFhevmRuntime-p.js +190 -0
  1022. package/_esm/core/runtime/CoreFhevmRuntime-p.js.map +1 -0
  1023. package/_esm/core/runtime/FhevmRuntime.js +2 -0
  1024. package/_esm/core/runtime/FhevmRuntime.js.map +1 -0
  1025. package/_esm/core/runtime/initFhevmDecryptRuntime-p.js +8 -0
  1026. package/_esm/core/runtime/initFhevmDecryptRuntime-p.js.map +1 -0
  1027. package/_esm/core/runtime/initFhevmEncryptRuntime-p.js +8 -0
  1028. package/_esm/core/runtime/initFhevmEncryptRuntime-p.js.map +1 -0
  1029. package/_esm/core/runtime/initFhevmRuntime-p.js +9 -0
  1030. package/_esm/core/runtime/initFhevmRuntime-p.js.map +1 -0
  1031. package/_esm/core/types/auth.js +2 -0
  1032. package/_esm/core/types/auth.js.map +1 -0
  1033. package/_esm/core/types/configs.js +2 -0
  1034. package/_esm/core/types/configs.js.map +1 -0
  1035. package/_esm/core/types/coprocessor.js +2 -0
  1036. package/_esm/core/types/coprocessor.js.map +1 -0
  1037. package/_esm/core/types/coprocessorSignersContext.js +2 -0
  1038. package/_esm/core/types/coprocessorSignersContext.js.map +1 -0
  1039. package/_esm/core/types/coreFhevmClient.js +2 -0
  1040. package/_esm/core/types/coreFhevmClient.js.map +1 -0
  1041. package/_esm/core/types/coreFhevmRuntime.js +2 -0
  1042. package/_esm/core/types/coreFhevmRuntime.js.map +1 -0
  1043. package/_esm/core/types/encryptedTypes-p.js +2 -0
  1044. package/_esm/core/types/encryptedTypes-p.js.map +1 -0
  1045. package/_esm/core/types/encryptedTypes.js +2 -0
  1046. package/_esm/core/types/encryptedTypes.js.map +1 -0
  1047. package/_esm/core/types/fheEncryptionKey.js +2 -0
  1048. package/_esm/core/types/fheEncryptionKey.js.map +1 -0
  1049. package/_esm/core/types/fheType.js +2 -0
  1050. package/_esm/core/types/fheType.js.map +1 -0
  1051. package/_esm/core/types/fhevmChain.js +2 -0
  1052. package/_esm/core/types/fhevmChain.js.map +1 -0
  1053. package/_esm/core/types/fhevmClient.js +2 -0
  1054. package/_esm/core/types/fhevmClient.js.map +1 -0
  1055. package/_esm/core/types/fhevmDecryptionKey.js +2 -0
  1056. package/_esm/core/types/fhevmDecryptionKey.js.map +1 -0
  1057. package/_esm/core/types/fhevmUser.js +2 -0
  1058. package/_esm/core/types/fhevmUser.js.map +1 -0
  1059. package/_esm/core/types/hostContract.js +2 -0
  1060. package/_esm/core/types/hostContract.js.map +1 -0
  1061. package/_esm/core/types/index.js +2 -0
  1062. package/_esm/core/types/index.js.map +1 -0
  1063. package/_esm/core/types/inputProof.js +2 -0
  1064. package/_esm/core/types/inputProof.js.map +1 -0
  1065. package/_esm/core/types/kms-p.js +2 -0
  1066. package/_esm/core/types/kms-p.js.map +1 -0
  1067. package/_esm/core/types/kms.js +2 -0
  1068. package/_esm/core/types/kms.js.map +1 -0
  1069. package/_esm/core/types/kmsSignersContext.js +2 -0
  1070. package/_esm/core/types/kmsSignersContext.js.map +1 -0
  1071. package/_esm/core/types/logger.js +2 -0
  1072. package/_esm/core/types/logger.js.map +1 -0
  1073. package/_esm/core/types/other-p.js +2 -0
  1074. package/_esm/core/types/other-p.js.map +1 -0
  1075. package/_esm/core/types/primitives.js +3 -0
  1076. package/_esm/core/types/primitives.js.map +1 -0
  1077. package/_esm/core/types/publicDecryptionProof-p.js +2 -0
  1078. package/_esm/core/types/publicDecryptionProof-p.js.map +1 -0
  1079. package/_esm/core/types/record-p.js +2 -0
  1080. package/_esm/core/types/record-p.js.map +1 -0
  1081. package/_esm/core/types/relayer-p.js +2 -0
  1082. package/_esm/core/types/relayer-p.js.map +1 -0
  1083. package/_esm/core/types/relayer.js +2 -0
  1084. package/_esm/core/types/relayer.js.map +1 -0
  1085. package/_esm/core/types/signedDecryptionPermit.js +2 -0
  1086. package/_esm/core/types/signedDecryptionPermit.js.map +1 -0
  1087. package/_esm/core/types/tkms-p.js +2 -0
  1088. package/_esm/core/types/tkms-p.js.map +1 -0
  1089. package/_esm/core/types/utils.js +2 -0
  1090. package/_esm/core/types/utils.js.map +1 -0
  1091. package/_esm/core/types/zkProof-p.js +2 -0
  1092. package/_esm/core/types/zkProof-p.js.map +1 -0
  1093. package/_esm/core/types/zkProofBuilder.js +2 -0
  1094. package/_esm/core/types/zkProofBuilder.js.map +1 -0
  1095. package/_esm/core/utils-p/decrypt/assertPermitMatchesKeypair.js +19 -0
  1096. package/_esm/core/utils-p/decrypt/assertPermitMatchesKeypair.js.map +1 -0
  1097. package/_esm/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.js +31 -0
  1098. package/_esm/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.js.map +1 -0
  1099. package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712.js +31 -0
  1100. package/_esm/core/utils-p/decrypt/verifyKmsUserDecryptEip712.js.map +1 -0
  1101. package/_esm/core/utils-p/decrypt/verifyTkmsPublicKey.js +16 -0
  1102. package/_esm/core/utils-p/decrypt/verifyTkmsPublicKey.js.map +1 -0
  1103. package/_esm/core/utils-p/runtime/recoverSigners.js +21 -0
  1104. package/_esm/core/utils-p/runtime/recoverSigners.js.map +1 -0
  1105. package/_esm/ethers/clients/createFhevmBaseClient.js +14 -0
  1106. package/_esm/ethers/clients/createFhevmBaseClient.js.map +1 -0
  1107. package/_esm/ethers/clients/createFhevmClient.js +9 -0
  1108. package/_esm/ethers/clients/createFhevmClient.js.map +1 -0
  1109. package/_esm/ethers/clients/createFhevmDecryptClient.js +8 -0
  1110. package/_esm/ethers/clients/createFhevmDecryptClient.js.map +1 -0
  1111. package/_esm/ethers/clients/createFhevmEncryptClient.js +9 -0
  1112. package/_esm/ethers/clients/createFhevmEncryptClient.js.map +1 -0
  1113. package/_esm/ethers/decorators/decrypt.js +7 -0
  1114. package/_esm/ethers/decorators/decrypt.js.map +1 -0
  1115. package/_esm/ethers/decorators/encrypt.js +7 -0
  1116. package/_esm/ethers/decorators/encrypt.js.map +1 -0
  1117. package/_esm/ethers/index.js +9 -0
  1118. package/_esm/ethers/index.js.map +1 -0
  1119. package/_esm/ethers/internal/ethereum.js +112 -0
  1120. package/_esm/ethers/internal/ethereum.js.map +1 -0
  1121. package/_esm/ethers/internal/ethers-p.js +79 -0
  1122. package/_esm/ethers/internal/ethers-p.js.map +1 -0
  1123. package/_esm/ethers/internal/utils.js +27 -0
  1124. package/_esm/ethers/internal/utils.js.map +1 -0
  1125. package/_esm/ethers/runtime/initFhevmDecryptRuntime.js +7 -0
  1126. package/_esm/ethers/runtime/initFhevmDecryptRuntime.js.map +1 -0
  1127. package/_esm/ethers/runtime/initFhevmEncryptRuntime.js +7 -0
  1128. package/_esm/ethers/runtime/initFhevmEncryptRuntime.js.map +1 -0
  1129. package/_esm/ethers/runtime/initFhevmRuntime.js +7 -0
  1130. package/_esm/ethers/runtime/initFhevmRuntime.js.map +1 -0
  1131. package/_esm/package.json +1 -0
  1132. package/_esm/viem/clients/createFhevmBaseClient.js +14 -0
  1133. package/_esm/viem/clients/createFhevmBaseClient.js.map +1 -0
  1134. package/_esm/viem/clients/createFhevmClient.js +9 -0
  1135. package/_esm/viem/clients/createFhevmClient.js.map +1 -0
  1136. package/_esm/viem/clients/createFhevmDecryptClient.js +8 -0
  1137. package/_esm/viem/clients/createFhevmDecryptClient.js.map +1 -0
  1138. package/_esm/viem/clients/createFhevmEncryptClient.js +9 -0
  1139. package/_esm/viem/clients/createFhevmEncryptClient.js.map +1 -0
  1140. package/_esm/viem/decorators/decrypt.js +7 -0
  1141. package/_esm/viem/decorators/decrypt.js.map +1 -0
  1142. package/_esm/viem/decorators/encrypt.js +7 -0
  1143. package/_esm/viem/decorators/encrypt.js.map +1 -0
  1144. package/_esm/viem/index.js +9 -0
  1145. package/_esm/viem/index.js.map +1 -0
  1146. package/_esm/viem/internal/ethereum.js +99 -0
  1147. package/_esm/viem/internal/ethereum.js.map +1 -0
  1148. package/_esm/viem/internal/viem-p.js +79 -0
  1149. package/_esm/viem/internal/viem-p.js.map +1 -0
  1150. package/_esm/viem/runtime/initFhevmDecryptRuntime.js +7 -0
  1151. package/_esm/viem/runtime/initFhevmDecryptRuntime.js.map +1 -0
  1152. package/_esm/viem/runtime/initFhevmEncryptRuntime.js +7 -0
  1153. package/_esm/viem/runtime/initFhevmEncryptRuntime.js.map +1 -0
  1154. package/_esm/viem/runtime/initFhevmRuntime.js +7 -0
  1155. package/_esm/viem/runtime/initFhevmRuntime.js.map +1 -0
  1156. package/_esm/wasm/tfhe/compile-worker.js +8 -0
  1157. package/_esm/wasm/tfhe/startWorkers.v1.5.3.js +426 -0
  1158. package/_esm/wasm/tfhe/tfhe-worker.v1.5.3.inline.js +7 -0
  1159. package/_esm/wasm/tfhe/tfhe-worker.v1.5.3.mjs +745 -0
  1160. package/_esm/wasm/tfhe/tfhe.v1.5.3.d.ts +10793 -0
  1161. package/_esm/wasm/tfhe/tfhe.v1.5.3.js +28645 -0
  1162. package/_esm/wasm/tfhe/tfhe_bg.v1.5.3.wasm +0 -0
  1163. package/_esm/wasm/tfhe/tfhe_bg.v1.5.3.wasm.base64.d.ts +1 -0
  1164. package/_esm/wasm/tfhe/tfhe_bg.v1.5.3.wasm.base64.js +1 -0
  1165. package/_esm/wasm/tkms/kms_lib.v0.13.10.d.ts +586 -0
  1166. package/_esm/wasm/tkms/kms_lib.v0.13.10.js +2117 -0
  1167. package/_esm/wasm/tkms/kms_lib_bg.v0.13.10.wasm +0 -0
  1168. package/_esm/wasm/tkms/kms_lib_bg.v0.13.10.wasm.base64.d.ts +1 -0
  1169. package/_esm/wasm/tkms/kms_lib_bg.v0.13.10.wasm.base64.js +3 -0
  1170. package/_esm/wasm/wasmBaseUrl.d.ts +7 -0
  1171. package/_esm/wasm/wasmBaseUrl.js +14 -0
  1172. package/_types/core/_version.d.ts +3 -0
  1173. package/_types/core/_version.d.ts.map +1 -0
  1174. package/_types/core/actions/base/canReadPublicValue.d.ts +9 -0
  1175. package/_types/core/actions/base/canReadPublicValue.d.ts.map +1 -0
  1176. package/_types/core/actions/base/canReadPublicValues.d.ts +9 -0
  1177. package/_types/core/actions/base/canReadPublicValues.d.ts.map +1 -0
  1178. package/_types/core/actions/base/createVerifiedInputProofFromRawBytes.d.ts +14 -0
  1179. package/_types/core/actions/base/createVerifiedInputProofFromRawBytes.d.ts.map +1 -0
  1180. package/_types/core/actions/base/fetchKmsSignedcryptedShares.d.ts +41 -0
  1181. package/_types/core/actions/base/fetchKmsSignedcryptedShares.d.ts.map +1 -0
  1182. package/_types/core/actions/base/fetchVerifiedInputProof.d.ts +14 -0
  1183. package/_types/core/actions/base/fetchVerifiedInputProof.d.ts.map +1 -0
  1184. package/_types/core/actions/base/index.d.ts +15 -0
  1185. package/_types/core/actions/base/index.d.ts.map +1 -0
  1186. package/_types/core/actions/base/readCoprocessorSignersContext.d.ts +6 -0
  1187. package/_types/core/actions/base/readCoprocessorSignersContext.d.ts.map +1 -0
  1188. package/_types/core/actions/base/readKmsSignersContext.d.ts +6 -0
  1189. package/_types/core/actions/base/readKmsSignersContext.d.ts.map +1 -0
  1190. package/_types/core/actions/base/readPublicValue.d.ts +12 -0
  1191. package/_types/core/actions/base/readPublicValue.d.ts.map +1 -0
  1192. package/_types/core/actions/base/readPublicValues.d.ts +12 -0
  1193. package/_types/core/actions/base/readPublicValues.d.ts.map +1 -0
  1194. package/_types/core/actions/base/readPublicValuesWithSignatures.d.ts +21 -0
  1195. package/_types/core/actions/base/readPublicValuesWithSignatures.d.ts.map +1 -0
  1196. package/_types/core/actions/base/signDecryptionPermit.d.ts +9 -0
  1197. package/_types/core/actions/base/signDecryptionPermit.d.ts.map +1 -0
  1198. package/_types/core/actions/base/verifyHandlesCoprocessorSignatures.d.ts +14 -0
  1199. package/_types/core/actions/base/verifyHandlesCoprocessorSignatures.d.ts.map +1 -0
  1200. package/_types/core/actions/base/verifyInputProof.d.ts +14 -0
  1201. package/_types/core/actions/base/verifyInputProof.d.ts.map +1 -0
  1202. package/_types/core/actions/base/verifyZkProofCoprocessorSignatures.d.ts +11 -0
  1203. package/_types/core/actions/base/verifyZkProofCoprocessorSignatures.d.ts.map +1 -0
  1204. package/_types/core/actions/chain/createCoprocessorEip712Domain.d.ts +7 -0
  1205. package/_types/core/actions/chain/createCoprocessorEip712Domain.d.ts.map +1 -0
  1206. package/_types/core/actions/chain/createKmsDelegatedUserDecryptEip712.d.ts +15 -0
  1207. package/_types/core/actions/chain/createKmsDelegatedUserDecryptEip712.d.ts.map +1 -0
  1208. package/_types/core/actions/chain/createKmsEip712Domain.d.ts +7 -0
  1209. package/_types/core/actions/chain/createKmsEip712Domain.d.ts.map +1 -0
  1210. package/_types/core/actions/chain/createKmsUserDecryptEip712.d.ts +14 -0
  1211. package/_types/core/actions/chain/createKmsUserDecryptEip712.d.ts.map +1 -0
  1212. package/_types/core/actions/chain/fetchFheEncryptionKeyBytes.d.ts +12 -0
  1213. package/_types/core/actions/chain/fetchFheEncryptionKeyBytes.d.ts.map +1 -0
  1214. package/_types/core/actions/chain/index.d.ts +13 -0
  1215. package/_types/core/actions/chain/index.d.ts.map +1 -0
  1216. package/_types/core/actions/chain/parseSignedDecryptionPermit.d.ts +21 -0
  1217. package/_types/core/actions/chain/parseSignedDecryptionPermit.d.ts.map +1 -0
  1218. package/_types/core/actions/chain/parseTransportKeypair.d.ts +11 -0
  1219. package/_types/core/actions/chain/parseTransportKeypair.d.ts.map +1 -0
  1220. package/_types/core/actions/chain/serializeSignedDecryptionPermit.d.ts +21 -0
  1221. package/_types/core/actions/chain/serializeSignedDecryptionPermit.d.ts.map +1 -0
  1222. package/_types/core/actions/chain/serializeTransportKeypair.d.ts +14 -0
  1223. package/_types/core/actions/chain/serializeTransportKeypair.d.ts.map +1 -0
  1224. package/_types/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.d.ts +7 -0
  1225. package/_types/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.d.ts.map +1 -0
  1226. package/_types/core/actions/chain/verifyKmsUserDecryptEip712.d.ts +7 -0
  1227. package/_types/core/actions/chain/verifyKmsUserDecryptEip712.d.ts.map +1 -0
  1228. package/_types/core/actions/decrypt/canDecryptValue.d.ts +66 -0
  1229. package/_types/core/actions/decrypt/canDecryptValue.d.ts.map +1 -0
  1230. package/_types/core/actions/decrypt/canDecryptValues.d.ts +27 -0
  1231. package/_types/core/actions/decrypt/canDecryptValues.d.ts.map +1 -0
  1232. package/_types/core/actions/decrypt/canDecryptValuesFromPairs.d.ts +29 -0
  1233. package/_types/core/actions/decrypt/canDecryptValuesFromPairs.d.ts.map +1 -0
  1234. package/_types/core/actions/decrypt/decryptKmsSignedcryptedShares.d.ts +13 -0
  1235. package/_types/core/actions/decrypt/decryptKmsSignedcryptedShares.d.ts.map +1 -0
  1236. package/_types/core/actions/decrypt/decryptValue.d.ts +26 -0
  1237. package/_types/core/actions/decrypt/decryptValue.d.ts.map +1 -0
  1238. package/_types/core/actions/decrypt/decryptValues.d.ts +26 -0
  1239. package/_types/core/actions/decrypt/decryptValues.d.ts.map +1 -0
  1240. package/_types/core/actions/decrypt/decryptValuesFromPairs.d.ts +28 -0
  1241. package/_types/core/actions/decrypt/decryptValuesFromPairs.d.ts.map +1 -0
  1242. package/_types/core/actions/decrypt/generateTransportKeypair.d.ts +7 -0
  1243. package/_types/core/actions/decrypt/generateTransportKeypair.d.ts.map +1 -0
  1244. package/_types/core/actions/decrypt/index.d.ts +11 -0
  1245. package/_types/core/actions/decrypt/index.d.ts.map +1 -0
  1246. package/_types/core/actions/encrypt/encryptValue.d.ts +18 -0
  1247. package/_types/core/actions/encrypt/encryptValue.d.ts.map +1 -0
  1248. package/_types/core/actions/encrypt/encryptValues.d.ts +18 -0
  1249. package/_types/core/actions/encrypt/encryptValues.d.ts.map +1 -0
  1250. package/_types/core/actions/encrypt/generateZkProof.d.ts +13 -0
  1251. package/_types/core/actions/encrypt/generateZkProof.d.ts.map +1 -0
  1252. package/_types/core/actions/encrypt/index.d.ts +6 -0
  1253. package/_types/core/actions/encrypt/index.d.ts.map +1 -0
  1254. package/_types/core/actions/host/getUserDecryptionDelegationExpirationDate.d.ts +8 -0
  1255. package/_types/core/actions/host/getUserDecryptionDelegationExpirationDate.d.ts.map +1 -0
  1256. package/_types/core/actions/host/index.d.ts +8 -0
  1257. package/_types/core/actions/host/index.d.ts.map +1 -0
  1258. package/_types/core/actions/host/isAllowedForDecryption.d.ts +11 -0
  1259. package/_types/core/actions/host/isAllowedForDecryption.d.ts.map +1 -0
  1260. package/_types/core/actions/host/persistAllowed.d.ts +12 -0
  1261. package/_types/core/actions/host/persistAllowed.d.ts.map +1 -0
  1262. package/_types/core/actions/host/readFhevmExecutorContractData.d.ts +9 -0
  1263. package/_types/core/actions/host/readFhevmExecutorContractData.d.ts.map +1 -0
  1264. package/_types/core/actions/host/readInputVerifierContractData.d.ts +9 -0
  1265. package/_types/core/actions/host/readInputVerifierContractData.d.ts.map +1 -0
  1266. package/_types/core/actions/host/readKmsVerifierContractData.d.ts +9 -0
  1267. package/_types/core/actions/host/readKmsVerifierContractData.d.ts.map +1 -0
  1268. package/_types/core/actions/host/resolveChainId.d.ts +9 -0
  1269. package/_types/core/actions/host/resolveChainId.d.ts.map +1 -0
  1270. package/_types/core/actions/host/resolveFhevmConfig.d.ts +38 -0
  1271. package/_types/core/actions/host/resolveFhevmConfig.d.ts.map +1 -0
  1272. package/_types/core/base/address.d.ts +52 -0
  1273. package/_types/core/base/address.d.ts.map +1 -0
  1274. package/_types/core/base/auth.d.ts +10 -0
  1275. package/_types/core/base/auth.d.ts.map +1 -0
  1276. package/_types/core/base/boolean.d.ts +45 -0
  1277. package/_types/core/base/boolean.d.ts.map +1 -0
  1278. package/_types/core/base/bytes.d.ts +822 -0
  1279. package/_types/core/base/bytes.d.ts.map +1 -0
  1280. package/_types/core/base/cachedFetch.d.ts +75 -0
  1281. package/_types/core/base/cachedFetch.d.ts.map +1 -0
  1282. package/_types/core/base/errors/AddressError.d.ts +12 -0
  1283. package/_types/core/base/errors/AddressError.d.ts.map +1 -0
  1284. package/_types/core/base/errors/ChecksummedAddressError.d.ts +12 -0
  1285. package/_types/core/base/errors/ChecksummedAddressError.d.ts.map +1 -0
  1286. package/_types/core/base/errors/ErrorBase.d.ts +23 -0
  1287. package/_types/core/base/errors/ErrorBase.d.ts.map +1 -0
  1288. package/_types/core/base/errors/FetchError.d.ts +14 -0
  1289. package/_types/core/base/errors/FetchError.d.ts.map +1 -0
  1290. package/_types/core/base/errors/FheTypeError.d.ts +14 -0
  1291. package/_types/core/base/errors/FheTypeError.d.ts.map +1 -0
  1292. package/_types/core/base/errors/InternalError.d.ts +12 -0
  1293. package/_types/core/base/errors/InternalError.d.ts.map +1 -0
  1294. package/_types/core/base/errors/InvalidPropertyError.d.ts +116 -0
  1295. package/_types/core/base/errors/InvalidPropertyError.d.ts.map +1 -0
  1296. package/_types/core/base/errors/InvalidTypeError.d.ts +44 -0
  1297. package/_types/core/base/errors/InvalidTypeError.d.ts.map +1 -0
  1298. package/_types/core/base/errors/utils.d.ts +4 -0
  1299. package/_types/core/base/errors/utils.d.ts.map +1 -0
  1300. package/_types/core/base/fetch.d.ts +70 -0
  1301. package/_types/core/base/fetch.d.ts.map +1 -0
  1302. package/_types/core/base/index.d.ts +2 -0
  1303. package/_types/core/base/index.d.ts.map +1 -0
  1304. package/_types/core/base/isomorphicWorker.d.ts +50 -0
  1305. package/_types/core/base/isomorphicWorker.d.ts.map +1 -0
  1306. package/_types/core/base/object.d.ts +15 -0
  1307. package/_types/core/base/object.d.ts.map +1 -0
  1308. package/_types/core/base/promise.d.ts +22 -0
  1309. package/_types/core/base/promise.d.ts.map +1 -0
  1310. package/_types/core/base/record.d.ts +88 -0
  1311. package/_types/core/base/record.d.ts.map +1 -0
  1312. package/_types/core/base/string.d.ts +75 -0
  1313. package/_types/core/base/string.d.ts.map +1 -0
  1314. package/_types/core/base/timeout.d.ts +7 -0
  1315. package/_types/core/base/timeout.d.ts.map +1 -0
  1316. package/_types/core/base/trustedValue.d.ts +54 -0
  1317. package/_types/core/base/trustedValue.d.ts.map +1 -0
  1318. package/_types/core/base/typedValue.d.ts +104 -0
  1319. package/_types/core/base/typedValue.d.ts.map +1 -0
  1320. package/_types/core/base/uid.d.ts +2 -0
  1321. package/_types/core/base/uid.d.ts.map +1 -0
  1322. package/_types/core/base/uint.d.ts +128 -0
  1323. package/_types/core/base/uint.d.ts.map +1 -0
  1324. package/_types/core/base/wasm.d.ts +16 -0
  1325. package/_types/core/base/wasm.d.ts.map +1 -0
  1326. package/_types/core/chains/definitions/localTestnet.d.ts +29 -0
  1327. package/_types/core/chains/definitions/localTestnet.d.ts.map +1 -0
  1328. package/_types/core/chains/definitions/mainnet.d.ts +29 -0
  1329. package/_types/core/chains/definitions/mainnet.d.ts.map +1 -0
  1330. package/_types/core/chains/definitions/sepolia.d.ts +3 -0
  1331. package/_types/core/chains/definitions/sepolia.d.ts.map +1 -0
  1332. package/_types/core/chains/index.d.ts +5 -0
  1333. package/_types/core/chains/index.d.ts.map +1 -0
  1334. package/_types/core/chains/utils.d.ts +3 -0
  1335. package/_types/core/chains/utils.d.ts.map +1 -0
  1336. package/_types/core/clients/decorators/base.d.ts +117 -0
  1337. package/_types/core/clients/decorators/base.d.ts.map +1 -0
  1338. package/_types/core/clients/decorators/decrypt.d.ts +25 -0
  1339. package/_types/core/clients/decorators/decrypt.d.ts.map +1 -0
  1340. package/_types/core/clients/decorators/encrypt-p.d.ts +5 -0
  1341. package/_types/core/clients/decorators/encrypt-p.d.ts.map +1 -0
  1342. package/_types/core/clients/decorators/encrypt.d.ts +12 -0
  1343. package/_types/core/clients/decorators/encrypt.d.ts.map +1 -0
  1344. package/_types/core/coprocessor/InputProof-p.d.ts +55 -0
  1345. package/_types/core/coprocessor/InputProof-p.d.ts.map +1 -0
  1346. package/_types/core/coprocessor/ZkProof-p.d.ts +39 -0
  1347. package/_types/core/coprocessor/ZkProof-p.d.ts.map +1 -0
  1348. package/_types/core/coprocessor/ZkProofBuilder-p.d.ts +20 -0
  1349. package/_types/core/coprocessor/ZkProofBuilder-p.d.ts.map +1 -0
  1350. package/_types/core/coprocessor/assertIsCoprocessorEip712Domain.d.ts +4 -0
  1351. package/_types/core/coprocessor/assertIsCoprocessorEip712Domain.d.ts.map +1 -0
  1352. package/_types/core/coprocessor/coprocessorEip712Types.d.ts +4 -0
  1353. package/_types/core/coprocessor/coprocessorEip712Types.d.ts.map +1 -0
  1354. package/_types/core/coprocessor/createCoprocessorEip712.d.ts +13 -0
  1355. package/_types/core/coprocessor/createCoprocessorEip712.d.ts.map +1 -0
  1356. package/_types/core/coprocessor/createCoprocessorEip712Domain.d.ts +6 -0
  1357. package/_types/core/coprocessor/createCoprocessorEip712Domain.d.ts.map +1 -0
  1358. package/_types/core/coprocessor/encrypt.d.ts +26 -0
  1359. package/_types/core/coprocessor/encrypt.d.ts.map +1 -0
  1360. package/_types/core/coprocessor/fetchVerifiedInputProof.d.ts +23 -0
  1361. package/_types/core/coprocessor/fetchVerifiedInputProof.d.ts.map +1 -0
  1362. package/_types/core/coprocessor/verifyHandlesCoprocessorSignatures.d.ts +23 -0
  1363. package/_types/core/coprocessor/verifyHandlesCoprocessorSignatures.d.ts.map +1 -0
  1364. package/_types/core/coprocessor/verifyInputProof.d.ts +23 -0
  1365. package/_types/core/coprocessor/verifyInputProof.d.ts.map +1 -0
  1366. package/_types/core/errors/AclError.d.ts +28 -0
  1367. package/_types/core/errors/AclError.d.ts.map +1 -0
  1368. package/_types/core/errors/ContractErrorBase.d.ts +18 -0
  1369. package/_types/core/errors/ContractErrorBase.d.ts.map +1 -0
  1370. package/_types/core/errors/EncryptionError.d.ts +11 -0
  1371. package/_types/core/errors/EncryptionError.d.ts.map +1 -0
  1372. package/_types/core/errors/FhevmConfigError.d.ts +11 -0
  1373. package/_types/core/errors/FhevmConfigError.d.ts.map +1 -0
  1374. package/_types/core/errors/FhevmErrorBase.d.ts +21 -0
  1375. package/_types/core/errors/FhevmErrorBase.d.ts.map +1 -0
  1376. package/_types/core/errors/FhevmHandleError.d.ts +13 -0
  1377. package/_types/core/errors/FhevmHandleError.d.ts.map +1 -0
  1378. package/_types/core/errors/InputProofError.d.ts +20 -0
  1379. package/_types/core/errors/InputProofError.d.ts.map +1 -0
  1380. package/_types/core/errors/RelayerAbortError.d.ts +14 -0
  1381. package/_types/core/errors/RelayerAbortError.d.ts.map +1 -0
  1382. package/_types/core/errors/RelayerErrorBase.d.ts +23 -0
  1383. package/_types/core/errors/RelayerErrorBase.d.ts.map +1 -0
  1384. package/_types/core/errors/RelayerFetchError.d.ts +17 -0
  1385. package/_types/core/errors/RelayerFetchError.d.ts.map +1 -0
  1386. package/_types/core/errors/RelayerFetchErrorBase.d.ts +29 -0
  1387. package/_types/core/errors/RelayerFetchErrorBase.d.ts.map +1 -0
  1388. package/_types/core/errors/RelayerMaxRetryError.d.ts +14 -0
  1389. package/_types/core/errors/RelayerMaxRetryError.d.ts.map +1 -0
  1390. package/_types/core/errors/RelayerRequestErrorBase.d.ts +20 -0
  1391. package/_types/core/errors/RelayerRequestErrorBase.d.ts.map +1 -0
  1392. package/_types/core/errors/RelayerRequestInternalError.d.ts +20 -0
  1393. package/_types/core/errors/RelayerRequestInternalError.d.ts.map +1 -0
  1394. package/_types/core/errors/RelayerResponseApiError.d.ts +19 -0
  1395. package/_types/core/errors/RelayerResponseApiError.d.ts.map +1 -0
  1396. package/_types/core/errors/RelayerResponseErrorBase.d.ts +15 -0
  1397. package/_types/core/errors/RelayerResponseErrorBase.d.ts.map +1 -0
  1398. package/_types/core/errors/RelayerResponseInputProofRejectedError.d.ts +14 -0
  1399. package/_types/core/errors/RelayerResponseInputProofRejectedError.d.ts.map +1 -0
  1400. package/_types/core/errors/RelayerResponseInvalidBodyError.d.ts +20 -0
  1401. package/_types/core/errors/RelayerResponseInvalidBodyError.d.ts.map +1 -0
  1402. package/_types/core/errors/RelayerResponseStatusError.d.ts +17 -0
  1403. package/_types/core/errors/RelayerResponseStatusError.d.ts.map +1 -0
  1404. package/_types/core/errors/RelayerStateError.d.ts +20 -0
  1405. package/_types/core/errors/RelayerStateError.d.ts.map +1 -0
  1406. package/_types/core/errors/RelayerTimeoutError.d.ts +16 -0
  1407. package/_types/core/errors/RelayerTimeoutError.d.ts.map +1 -0
  1408. package/_types/core/errors/SignersError.d.ts +33 -0
  1409. package/_types/core/errors/SignersError.d.ts.map +1 -0
  1410. package/_types/core/errors/TfheError.d.ts +13 -0
  1411. package/_types/core/errors/TfheError.d.ts.map +1 -0
  1412. package/_types/core/errors/ZkProofError.d.ts +11 -0
  1413. package/_types/core/errors/ZkProofError.d.ts.map +1 -0
  1414. package/_types/core/handle/ClearValue.d.ts +88 -0
  1415. package/_types/core/handle/ClearValue.d.ts.map +1 -0
  1416. package/_types/core/handle/EncryptedValue.d.ts +6 -0
  1417. package/_types/core/handle/EncryptedValue.d.ts.map +1 -0
  1418. package/_types/core/handle/FheType.d.ts +164 -0
  1419. package/_types/core/handle/FheType.d.ts.map +1 -0
  1420. package/_types/core/handle/FhevmHandle.d.ts +118 -0
  1421. package/_types/core/handle/FhevmHandle.d.ts.map +1 -0
  1422. package/_types/core/host-contracts/CoprocessorSignersContext-p.d.ts +20 -0
  1423. package/_types/core/host-contracts/CoprocessorSignersContext-p.d.ts.map +1 -0
  1424. package/_types/core/host-contracts/FhevmExecutorContractData-p.d.ts +18 -0
  1425. package/_types/core/host-contracts/FhevmExecutorContractData-p.d.ts.map +1 -0
  1426. package/_types/core/host-contracts/HostContractVersion-p.d.ts +47 -0
  1427. package/_types/core/host-contracts/HostContractVersion-p.d.ts.map +1 -0
  1428. package/_types/core/host-contracts/InputVerifierContractData-p.d.ts +17 -0
  1429. package/_types/core/host-contracts/InputVerifierContractData-p.d.ts.map +1 -0
  1430. package/_types/core/host-contracts/KmsSignersContext-p.d.ts +39 -0
  1431. package/_types/core/host-contracts/KmsSignersContext-p.d.ts.map +1 -0
  1432. package/_types/core/host-contracts/KmsVerifierContractData-p.d.ts +17 -0
  1433. package/_types/core/host-contracts/KmsVerifierContractData-p.d.ts.map +1 -0
  1434. package/_types/core/host-contracts/abi-fragments/fragments.d.ts +78 -0
  1435. package/_types/core/host-contracts/abi-fragments/fragments.d.ts.map +1 -0
  1436. package/_types/core/host-contracts/canDecryptValuesFromPairs.d.ts +38 -0
  1437. package/_types/core/host-contracts/canDecryptValuesFromPairs.d.ts.map +1 -0
  1438. package/_types/core/host-contracts/checkAllowedForDecryption.d.ts +19 -0
  1439. package/_types/core/host-contracts/checkAllowedForDecryption.d.ts.map +1 -0
  1440. package/_types/core/host-contracts/checkPersistAllowed.d.ts +21 -0
  1441. package/_types/core/host-contracts/checkPersistAllowed.d.ts.map +1 -0
  1442. package/_types/core/host-contracts/decryptionResultTypehash-p.d.ts +18 -0
  1443. package/_types/core/host-contracts/decryptionResultTypehash-p.d.ts.map +1 -0
  1444. package/_types/core/host-contracts/eip712Domain-p.d.ts +23 -0
  1445. package/_types/core/host-contracts/eip712Domain-p.d.ts.map +1 -0
  1446. package/_types/core/host-contracts/eip712InputVerificationTypehash-p.d.ts +18 -0
  1447. package/_types/core/host-contracts/eip712InputVerificationTypehash-p.d.ts.map +1 -0
  1448. package/_types/core/host-contracts/getAclAddress-p.d.ts +18 -0
  1449. package/_types/core/host-contracts/getAclAddress-p.d.ts.map +1 -0
  1450. package/_types/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.d.ts +28 -0
  1451. package/_types/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.d.ts.map +1 -0
  1452. package/_types/core/host-contracts/getCoprocessorSigners-p.d.ts +18 -0
  1453. package/_types/core/host-contracts/getCoprocessorSigners-p.d.ts.map +1 -0
  1454. package/_types/core/host-contracts/getCurrentKmsContextId-p.d.ts +25 -0
  1455. package/_types/core/host-contracts/getCurrentKmsContextId-p.d.ts.map +1 -0
  1456. package/_types/core/host-contracts/getFhevmExecutorAddress-p.d.ts +18 -0
  1457. package/_types/core/host-contracts/getFhevmExecutorAddress-p.d.ts.map +1 -0
  1458. package/_types/core/host-contracts/getHandleVersion-p.d.ts +18 -0
  1459. package/_types/core/host-contracts/getHandleVersion-p.d.ts.map +1 -0
  1460. package/_types/core/host-contracts/getHcuLimitAddress-p.d.ts +18 -0
  1461. package/_types/core/host-contracts/getHcuLimitAddress-p.d.ts.map +1 -0
  1462. package/_types/core/host-contracts/getInputVerifierAddress-p.d.ts +18 -0
  1463. package/_types/core/host-contracts/getInputVerifierAddress-p.d.ts.map +1 -0
  1464. package/_types/core/host-contracts/getKmsContextSignersAndThreshold-p.d.ts +38 -0
  1465. package/_types/core/host-contracts/getKmsContextSignersAndThreshold-p.d.ts.map +1 -0
  1466. package/_types/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.d.ts +34 -0
  1467. package/_types/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.d.ts.map +1 -0
  1468. package/_types/core/host-contracts/getSignersForKmsContext-p.d.ts +27 -0
  1469. package/_types/core/host-contracts/getSignersForKmsContext-p.d.ts.map +1 -0
  1470. package/_types/core/host-contracts/isAllowedForDecryption.d.ts +18 -0
  1471. package/_types/core/host-contracts/isAllowedForDecryption.d.ts.map +1 -0
  1472. package/_types/core/host-contracts/isUserDecryptable.d.ts +29 -0
  1473. package/_types/core/host-contracts/isUserDecryptable.d.ts.map +1 -0
  1474. package/_types/core/host-contracts/persistAllowed.d.ts +18 -0
  1475. package/_types/core/host-contracts/persistAllowed.d.ts.map +1 -0
  1476. package/_types/core/host-contracts/readCoprocessorSignersContext-p.d.ts +17 -0
  1477. package/_types/core/host-contracts/readCoprocessorSignersContext-p.d.ts.map +1 -0
  1478. package/_types/core/host-contracts/readKmsSignersContext-p.d.ts +62 -0
  1479. package/_types/core/host-contracts/readKmsSignersContext-p.d.ts.map +1 -0
  1480. package/_types/core/key/FheEncryptionKeyCache-p.d.ts +93 -0
  1481. package/_types/core/key/FheEncryptionKeyCache-p.d.ts.map +1 -0
  1482. package/_types/core/key/FheEncryptionKeyWasm-p.d.ts +13 -0
  1483. package/_types/core/key/FheEncryptionKeyWasm-p.d.ts.map +1 -0
  1484. package/_types/core/key/deserializeFheEncryptionKey.d.ts +6 -0
  1485. package/_types/core/key/deserializeFheEncryptionKey.d.ts.map +1 -0
  1486. package/_types/core/key/fetchFheEncryptionKey.d.ts +12 -0
  1487. package/_types/core/key/fetchFheEncryptionKey.d.ts.map +1 -0
  1488. package/_types/core/key/fetchFheEncryptionKeyBytes.d.ts +12 -0
  1489. package/_types/core/key/fetchFheEncryptionKeyBytes.d.ts.map +1 -0
  1490. package/_types/core/key/fetchFheEncryptionKeyBytesWithSource.d.ts +4 -0
  1491. package/_types/core/key/fetchFheEncryptionKeyBytesWithSource.d.ts.map +1 -0
  1492. package/_types/core/key/serializeFheEncryptionKey.d.ts +6 -0
  1493. package/_types/core/key/serializeFheEncryptionKey.d.ts.map +1 -0
  1494. package/_types/core/kms/KmsSigncryptedShares-p.d.ts +39 -0
  1495. package/_types/core/kms/KmsSigncryptedShares-p.d.ts.map +1 -0
  1496. package/_types/core/kms/PublicDecryptionProof-p.d.ts +42 -0
  1497. package/_types/core/kms/PublicDecryptionProof-p.d.ts.map +1 -0
  1498. package/_types/core/kms/PublicDecryptionProof.d.ts +3 -0
  1499. package/_types/core/kms/PublicDecryptionProof.d.ts.map +1 -0
  1500. package/_types/core/kms/SignedDecryptionPermit-p.d.ts +78 -0
  1501. package/_types/core/kms/SignedDecryptionPermit-p.d.ts.map +1 -0
  1502. package/_types/core/kms/TransportKeypair-p.d.ts +54 -0
  1503. package/_types/core/kms/TransportKeypair-p.d.ts.map +1 -0
  1504. package/_types/core/kms/createKmsDelegatedUserDecryptEip712.d.ts +15 -0
  1505. package/_types/core/kms/createKmsDelegatedUserDecryptEip712.d.ts.map +1 -0
  1506. package/_types/core/kms/createKmsEip712Domain.d.ts +17 -0
  1507. package/_types/core/kms/createKmsEip712Domain.d.ts.map +1 -0
  1508. package/_types/core/kms/createKmsPublicDecryptEip712.d.ts +11 -0
  1509. package/_types/core/kms/createKmsPublicDecryptEip712.d.ts.map +1 -0
  1510. package/_types/core/kms/createKmsUserDecryptEip712.d.ts +26 -0
  1511. package/_types/core/kms/createKmsUserDecryptEip712.d.ts.map +1 -0
  1512. package/_types/core/kms/decryptKmsSignedcryptedShares-p.d.ts +15 -0
  1513. package/_types/core/kms/decryptKmsSignedcryptedShares-p.d.ts.map +1 -0
  1514. package/_types/core/kms/decryptValuesFromPairs.d.ts +36 -0
  1515. package/_types/core/kms/decryptValuesFromPairs.d.ts.map +1 -0
  1516. package/_types/core/kms/fetchKmsSignedcryptedShares-p.d.ts +34 -0
  1517. package/_types/core/kms/fetchKmsSignedcryptedShares-p.d.ts.map +1 -0
  1518. package/_types/core/kms/index.d.ts +2 -0
  1519. package/_types/core/kms/index.d.ts.map +1 -0
  1520. package/_types/core/kms/kmsDelegatedUserDecryptEip712Types.d.ts +3 -0
  1521. package/_types/core/kms/kmsDelegatedUserDecryptEip712Types.d.ts.map +1 -0
  1522. package/_types/core/kms/kmsExtraData.d.ts +18 -0
  1523. package/_types/core/kms/kmsExtraData.d.ts.map +1 -0
  1524. package/_types/core/kms/kmsPublicDecryptEip712Types.d.ts +3 -0
  1525. package/_types/core/kms/kmsPublicDecryptEip712Types.d.ts.map +1 -0
  1526. package/_types/core/kms/kmsUserDecryptEip712Types.d.ts +3 -0
  1527. package/_types/core/kms/kmsUserDecryptEip712Types.d.ts.map +1 -0
  1528. package/_types/core/kms/publicDecrypt.d.ts +22 -0
  1529. package/_types/core/kms/publicDecrypt.d.ts.map +1 -0
  1530. package/_types/core/kms/utils.d.ts +16 -0
  1531. package/_types/core/kms/utils.d.ts.map +1 -0
  1532. package/_types/core/kms/verifyKmsPublicDecryptEip712-p.d.ts +18 -0
  1533. package/_types/core/kms/verifyKmsPublicDecryptEip712-p.d.ts.map +1 -0
  1534. package/_types/core/modules/decrypt/mock.d.ts +11 -0
  1535. package/_types/core/modules/decrypt/mock.d.ts.map +1 -0
  1536. package/_types/core/modules/decrypt/module/api-p.d.ts +9 -0
  1537. package/_types/core/modules/decrypt/module/api-p.d.ts.map +1 -0
  1538. package/_types/core/modules/decrypt/module/index.d.ts +4 -0
  1539. package/_types/core/modules/decrypt/module/index.d.ts.map +1 -0
  1540. package/_types/core/modules/decrypt/module/init-p.d.ts +5 -0
  1541. package/_types/core/modules/decrypt/module/init-p.d.ts.map +1 -0
  1542. package/_types/core/modules/decrypt/types.d.ts +96 -0
  1543. package/_types/core/modules/decrypt/types.d.ts.map +1 -0
  1544. package/_types/core/modules/encrypt/mock.d.ts +10 -0
  1545. package/_types/core/modules/encrypt/mock.d.ts.map +1 -0
  1546. package/_types/core/modules/encrypt/module/api-p.d.ts +13 -0
  1547. package/_types/core/modules/encrypt/module/api-p.d.ts.map +1 -0
  1548. package/_types/core/modules/encrypt/module/index.d.ts +3 -0
  1549. package/_types/core/modules/encrypt/module/index.d.ts.map +1 -0
  1550. package/_types/core/modules/encrypt/module/init-p.d.ts +8 -0
  1551. package/_types/core/modules/encrypt/module/init-p.d.ts.map +1 -0
  1552. package/_types/core/modules/encrypt/types.d.ts +105 -0
  1553. package/_types/core/modules/encrypt/types.d.ts.map +1 -0
  1554. package/_types/core/modules/ethereum/createTrustedClient.d.ts +3 -0
  1555. package/_types/core/modules/ethereum/createTrustedClient.d.ts.map +1 -0
  1556. package/_types/core/modules/ethereum/types.d.ts +89 -0
  1557. package/_types/core/modules/ethereum/types.d.ts.map +1 -0
  1558. package/_types/core/modules/relayer/mock.d.ts +3 -0
  1559. package/_types/core/modules/relayer/mock.d.ts.map +1 -0
  1560. package/_types/core/modules/relayer/module/RelayerAsyncRequest.d.ts +190 -0
  1561. package/_types/core/modules/relayer/module/RelayerAsyncRequest.d.ts.map +1 -0
  1562. package/_types/core/modules/relayer/module/fetchCoprocessorSignatures.d.ts +3 -0
  1563. package/_types/core/modules/relayer/module/fetchCoprocessorSignatures.d.ts.map +1 -0
  1564. package/_types/core/modules/relayer/module/fetchDelegatedUserDecrypt.d.ts +3 -0
  1565. package/_types/core/modules/relayer/module/fetchDelegatedUserDecrypt.d.ts.map +1 -0
  1566. package/_types/core/modules/relayer/module/fetchFheEncryptionKeyBytes.d.ts +3 -0
  1567. package/_types/core/modules/relayer/module/fetchFheEncryptionKeyBytes.d.ts.map +1 -0
  1568. package/_types/core/modules/relayer/module/fetchFheEncryptionKeySource.d.ts +3 -0
  1569. package/_types/core/modules/relayer/module/fetchFheEncryptionKeySource.d.ts.map +1 -0
  1570. package/_types/core/modules/relayer/module/fetchPublicDecrypt.d.ts +3 -0
  1571. package/_types/core/modules/relayer/module/fetchPublicDecrypt.d.ts.map +1 -0
  1572. package/_types/core/modules/relayer/module/fetchUserDecrypt.d.ts +3 -0
  1573. package/_types/core/modules/relayer/module/fetchUserDecrypt.d.ts.map +1 -0
  1574. package/_types/core/modules/relayer/module/guards/RelayerInputProofSucceeded.d.ts +22 -0
  1575. package/_types/core/modules/relayer/module/guards/RelayerInputProofSucceeded.d.ts.map +1 -0
  1576. package/_types/core/modules/relayer/module/guards/RelayerPublicDecryptSucceeded.d.ts +18 -0
  1577. package/_types/core/modules/relayer/module/guards/RelayerPublicDecryptSucceeded.d.ts.map +1 -0
  1578. package/_types/core/modules/relayer/module/guards/RelayerResponseFailed.d.ts +55 -0
  1579. package/_types/core/modules/relayer/module/guards/RelayerResponseFailed.d.ts.map +1 -0
  1580. package/_types/core/modules/relayer/module/guards/RelayerResponseQueued.d.ts +24 -0
  1581. package/_types/core/modules/relayer/module/guards/RelayerResponseQueued.d.ts.map +1 -0
  1582. package/_types/core/modules/relayer/module/guards/RelayerUserDecryptSucceeded.d.ts +20 -0
  1583. package/_types/core/modules/relayer/module/guards/RelayerUserDecryptSucceeded.d.ts.map +1 -0
  1584. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.d.ts +15 -0
  1585. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.d.ts.map +1 -0
  1586. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError400WithDetails.d.ts +18 -0
  1587. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError400WithDetails.d.ts.map +1 -0
  1588. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError404.d.ts +13 -0
  1589. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError404.d.ts.map +1 -0
  1590. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError429.d.ts +13 -0
  1591. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError429.d.ts.map +1 -0
  1592. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError500.d.ts +13 -0
  1593. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError500.d.ts.map +1 -0
  1594. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError503.d.ts +13 -0
  1595. package/_types/core/modules/relayer/module/guards/api-errors/RelayerApiError503.d.ts.map +1 -0
  1596. package/_types/core/modules/relayer/module/index.d.ts +3 -0
  1597. package/_types/core/modules/relayer/module/index.d.ts.map +1 -0
  1598. package/_types/core/modules/relayer/module/relayerUrl.d.ts +6 -0
  1599. package/_types/core/modules/relayer/module/relayerUrl.d.ts.map +1 -0
  1600. package/_types/core/modules/relayer/module/utils.d.ts +3 -0
  1601. package/_types/core/modules/relayer/module/utils.d.ts.map +1 -0
  1602. package/_types/core/modules/relayer/types.d.ts +96 -0
  1603. package/_types/core/modules/relayer/types.d.ts.map +1 -0
  1604. package/_types/core/runtime/CoreFhevm-p.d.ts +46 -0
  1605. package/_types/core/runtime/CoreFhevm-p.d.ts.map +1 -0
  1606. package/_types/core/runtime/CoreFhevmRuntime-p.d.ts +25 -0
  1607. package/_types/core/runtime/CoreFhevmRuntime-p.d.ts.map +1 -0
  1608. package/_types/core/runtime/FhevmRuntime.d.ts +3 -0
  1609. package/_types/core/runtime/FhevmRuntime.d.ts.map +1 -0
  1610. package/_types/core/runtime/initFhevmDecryptRuntime-p.d.ts +3 -0
  1611. package/_types/core/runtime/initFhevmDecryptRuntime-p.d.ts.map +1 -0
  1612. package/_types/core/runtime/initFhevmEncryptRuntime-p.d.ts +3 -0
  1613. package/_types/core/runtime/initFhevmEncryptRuntime-p.d.ts.map +1 -0
  1614. package/_types/core/runtime/initFhevmRuntime-p.d.ts +3 -0
  1615. package/_types/core/runtime/initFhevmRuntime-p.d.ts.map +1 -0
  1616. package/_types/core/types/auth.d.ts +41 -0
  1617. package/_types/core/types/auth.d.ts.map +1 -0
  1618. package/_types/core/types/configs.d.ts +21 -0
  1619. package/_types/core/types/configs.d.ts.map +1 -0
  1620. package/_types/core/types/coprocessor.d.ts +71 -0
  1621. package/_types/core/types/coprocessor.d.ts.map +1 -0
  1622. package/_types/core/types/coprocessorSignersContext.d.ts +14 -0
  1623. package/_types/core/types/coprocessorSignersContext.d.ts.map +1 -0
  1624. package/_types/core/types/coreFhevmClient.d.ts +33 -0
  1625. package/_types/core/types/coreFhevmClient.d.ts.map +1 -0
  1626. package/_types/core/types/coreFhevmRuntime.d.ts +36 -0
  1627. package/_types/core/types/coreFhevmRuntime.d.ts.map +1 -0
  1628. package/_types/core/types/encryptedTypes-p.d.ts +104 -0
  1629. package/_types/core/types/encryptedTypes-p.d.ts.map +1 -0
  1630. package/_types/core/types/encryptedTypes.d.ts +35 -0
  1631. package/_types/core/types/encryptedTypes.d.ts.map +1 -0
  1632. package/_types/core/types/fheEncryptionKey.d.ts +77 -0
  1633. package/_types/core/types/fheEncryptionKey.d.ts.map +1 -0
  1634. package/_types/core/types/fheType.d.ts +99 -0
  1635. package/_types/core/types/fheType.d.ts.map +1 -0
  1636. package/_types/core/types/fhevmChain.d.ts +75 -0
  1637. package/_types/core/types/fhevmChain.d.ts.map +1 -0
  1638. package/_types/core/types/fhevmClient.d.ts +11 -0
  1639. package/_types/core/types/fhevmClient.d.ts.map +1 -0
  1640. package/_types/core/types/fhevmDecryptionKey.d.ts +4 -0
  1641. package/_types/core/types/fhevmDecryptionKey.d.ts.map +1 -0
  1642. package/_types/core/types/fhevmUser.d.ts +7 -0
  1643. package/_types/core/types/fhevmUser.d.ts.map +1 -0
  1644. package/_types/core/types/hostContract.d.ts +22 -0
  1645. package/_types/core/types/hostContract.d.ts.map +1 -0
  1646. package/_types/core/types/index.d.ts +3 -0
  1647. package/_types/core/types/index.d.ts.map +1 -0
  1648. package/_types/core/types/inputProof.d.ts +74 -0
  1649. package/_types/core/types/inputProof.d.ts.map +1 -0
  1650. package/_types/core/types/kms-p.d.ts +17 -0
  1651. package/_types/core/types/kms-p.d.ts.map +1 -0
  1652. package/_types/core/types/kms.d.ts +179 -0
  1653. package/_types/core/types/kms.d.ts.map +1 -0
  1654. package/_types/core/types/kmsSignersContext.d.ts +48 -0
  1655. package/_types/core/types/kmsSignersContext.d.ts.map +1 -0
  1656. package/_types/core/types/logger.d.ts +5 -0
  1657. package/_types/core/types/logger.d.ts.map +1 -0
  1658. package/_types/core/types/other-p.d.ts +11 -0
  1659. package/_types/core/types/other-p.d.ts.map +1 -0
  1660. package/_types/core/types/primitives.d.ts +527 -0
  1661. package/_types/core/types/primitives.d.ts.map +1 -0
  1662. package/_types/core/types/publicDecryptionProof-p.d.ts +27 -0
  1663. package/_types/core/types/publicDecryptionProof-p.d.ts.map +1 -0
  1664. package/_types/core/types/record-p.d.ts +18 -0
  1665. package/_types/core/types/record-p.d.ts.map +1 -0
  1666. package/_types/core/types/relayer-p.d.ts +285 -0
  1667. package/_types/core/types/relayer-p.d.ts.map +1 -0
  1668. package/_types/core/types/relayer.d.ts +106 -0
  1669. package/_types/core/types/relayer.d.ts.map +1 -0
  1670. package/_types/core/types/signedDecryptionPermit.d.ts +46 -0
  1671. package/_types/core/types/signedDecryptionPermit.d.ts.map +1 -0
  1672. package/_types/core/types/tkms-p.d.ts +5 -0
  1673. package/_types/core/types/tkms-p.d.ts.map +1 -0
  1674. package/_types/core/types/utils.d.ts +34 -0
  1675. package/_types/core/types/utils.d.ts.map +1 -0
  1676. package/_types/core/types/zkProof-p.d.ts +21 -0
  1677. package/_types/core/types/zkProof-p.d.ts.map +1 -0
  1678. package/_types/core/types/zkProofBuilder.d.ts +23 -0
  1679. package/_types/core/types/zkProofBuilder.d.ts.map +1 -0
  1680. package/_types/core/utils-p/decrypt/assertPermitMatchesKeypair.d.ts +12 -0
  1681. package/_types/core/utils-p/decrypt/assertPermitMatchesKeypair.d.ts.map +1 -0
  1682. package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.d.ts +14 -0
  1683. package/_types/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.d.ts.map +1 -0
  1684. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712.d.ts +14 -0
  1685. package/_types/core/utils-p/decrypt/verifyKmsUserDecryptEip712.d.ts.map +1 -0
  1686. package/_types/core/utils-p/decrypt/verifyTkmsPublicKey.d.ts +16 -0
  1687. package/_types/core/utils-p/decrypt/verifyTkmsPublicKey.d.ts.map +1 -0
  1688. package/_types/core/utils-p/runtime/recoverSigners.d.ts +23 -0
  1689. package/_types/core/utils-p/runtime/recoverSigners.d.ts.map +1 -0
  1690. package/_types/ethers/clients/createFhevmBaseClient.d.ts +11 -0
  1691. package/_types/ethers/clients/createFhevmBaseClient.d.ts.map +1 -0
  1692. package/_types/ethers/clients/createFhevmClient.d.ts +11 -0
  1693. package/_types/ethers/clients/createFhevmClient.d.ts.map +1 -0
  1694. package/_types/ethers/clients/createFhevmDecryptClient.d.ts +11 -0
  1695. package/_types/ethers/clients/createFhevmDecryptClient.d.ts.map +1 -0
  1696. package/_types/ethers/clients/createFhevmEncryptClient.d.ts +11 -0
  1697. package/_types/ethers/clients/createFhevmEncryptClient.d.ts.map +1 -0
  1698. package/_types/ethers/decorators/decrypt.d.ts +6 -0
  1699. package/_types/ethers/decorators/decrypt.d.ts.map +1 -0
  1700. package/_types/ethers/decorators/encrypt.d.ts +6 -0
  1701. package/_types/ethers/decorators/encrypt.d.ts.map +1 -0
  1702. package/_types/ethers/index.d.ts +9 -0
  1703. package/_types/ethers/index.d.ts.map +1 -0
  1704. package/_types/ethers/internal/ethereum.d.ts +11 -0
  1705. package/_types/ethers/internal/ethereum.d.ts.map +1 -0
  1706. package/_types/ethers/internal/ethers-p.d.ts +39 -0
  1707. package/_types/ethers/internal/ethers-p.d.ts.map +1 -0
  1708. package/_types/ethers/internal/utils.d.ts +10 -0
  1709. package/_types/ethers/internal/utils.d.ts.map +1 -0
  1710. package/_types/ethers/runtime/initFhevmDecryptRuntime.d.ts +2 -0
  1711. package/_types/ethers/runtime/initFhevmDecryptRuntime.d.ts.map +1 -0
  1712. package/_types/ethers/runtime/initFhevmEncryptRuntime.d.ts +2 -0
  1713. package/_types/ethers/runtime/initFhevmEncryptRuntime.d.ts.map +1 -0
  1714. package/_types/ethers/runtime/initFhevmRuntime.d.ts +2 -0
  1715. package/_types/ethers/runtime/initFhevmRuntime.d.ts.map +1 -0
  1716. package/_types/viem/clients/createFhevmBaseClient.d.ts +11 -0
  1717. package/_types/viem/clients/createFhevmBaseClient.d.ts.map +1 -0
  1718. package/_types/viem/clients/createFhevmClient.d.ts +11 -0
  1719. package/_types/viem/clients/createFhevmClient.d.ts.map +1 -0
  1720. package/_types/viem/clients/createFhevmDecryptClient.d.ts +11 -0
  1721. package/_types/viem/clients/createFhevmDecryptClient.d.ts.map +1 -0
  1722. package/_types/viem/clients/createFhevmEncryptClient.d.ts +11 -0
  1723. package/_types/viem/clients/createFhevmEncryptClient.d.ts.map +1 -0
  1724. package/_types/viem/decorators/decrypt.d.ts +6 -0
  1725. package/_types/viem/decorators/decrypt.d.ts.map +1 -0
  1726. package/_types/viem/decorators/encrypt.d.ts +6 -0
  1727. package/_types/viem/decorators/encrypt.d.ts.map +1 -0
  1728. package/_types/viem/index.d.ts +9 -0
  1729. package/_types/viem/index.d.ts.map +1 -0
  1730. package/_types/viem/internal/ethereum.d.ts +11 -0
  1731. package/_types/viem/internal/ethereum.d.ts.map +1 -0
  1732. package/_types/viem/internal/viem-p.d.ts +39 -0
  1733. package/_types/viem/internal/viem-p.d.ts.map +1 -0
  1734. package/_types/viem/runtime/initFhevmDecryptRuntime.d.ts +2 -0
  1735. package/_types/viem/runtime/initFhevmDecryptRuntime.d.ts.map +1 -0
  1736. package/_types/viem/runtime/initFhevmEncryptRuntime.d.ts +2 -0
  1737. package/_types/viem/runtime/initFhevmEncryptRuntime.d.ts.map +1 -0
  1738. package/_types/viem/runtime/initFhevmRuntime.d.ts +2 -0
  1739. package/_types/viem/runtime/initFhevmRuntime.d.ts.map +1 -0
  1740. package/core/_version.ts +3 -0
  1741. package/core/actions/base/canReadPublicValue.ts +28 -0
  1742. package/core/actions/base/canReadPublicValues.ts +28 -0
  1743. package/core/actions/base/createVerifiedInputProofFromRawBytes.ts +24 -0
  1744. package/core/actions/base/fetchKmsSignedcryptedShares.ts +83 -0
  1745. package/core/actions/base/fetchVerifiedInputProof.ts +25 -0
  1746. package/core/actions/base/index.ts +69 -0
  1747. package/core/actions/base/package.json +6 -0
  1748. package/core/actions/base/readCoprocessorSignersContext.ts +21 -0
  1749. package/core/actions/base/readKmsSignersContext.ts +19 -0
  1750. package/core/actions/base/readPublicValue.ts +31 -0
  1751. package/core/actions/base/readPublicValues.ts +31 -0
  1752. package/core/actions/base/readPublicValuesWithSignatures.ts +53 -0
  1753. package/core/actions/base/signDecryptionPermit.ts +41 -0
  1754. package/core/actions/base/verifyHandlesCoprocessorSignatures.ts +60 -0
  1755. package/core/actions/base/verifyInputProof.ts +45 -0
  1756. package/core/actions/base/verifyZkProofCoprocessorSignatures.ts +32 -0
  1757. package/core/actions/chain/createCoprocessorEip712Domain.ts +16 -0
  1758. package/core/actions/chain/createKmsDelegatedUserDecryptEip712.ts +37 -0
  1759. package/core/actions/chain/createKmsEip712Domain.ts +16 -0
  1760. package/core/actions/chain/createKmsUserDecryptEip712.ts +35 -0
  1761. package/core/actions/chain/fetchFheEncryptionKeyBytes.ts +24 -0
  1762. package/core/actions/chain/index.ts +63 -0
  1763. package/core/actions/chain/package.json +6 -0
  1764. package/core/actions/chain/parseSignedDecryptionPermit.ts +35 -0
  1765. package/core/actions/chain/parseTransportKeypair.ts +24 -0
  1766. package/core/actions/chain/serializeSignedDecryptionPermit.ts +31 -0
  1767. package/core/actions/chain/serializeTransportKeypair.ts +28 -0
  1768. package/core/actions/chain/verifyKmsDelegatedUserDecryptEip712.ts +16 -0
  1769. package/core/actions/chain/verifyKmsUserDecryptEip712.ts +16 -0
  1770. package/core/actions/decrypt/canDecryptValue.ts +109 -0
  1771. package/core/actions/decrypt/canDecryptValues.ts +71 -0
  1772. package/core/actions/decrypt/canDecryptValuesFromPairs.ts +68 -0
  1773. package/core/actions/decrypt/decryptKmsSignedcryptedShares.ts +31 -0
  1774. package/core/actions/decrypt/decryptValue.ts +69 -0
  1775. package/core/actions/decrypt/decryptValues.ts +66 -0
  1776. package/core/actions/decrypt/decryptValuesFromPairs.ts +66 -0
  1777. package/core/actions/decrypt/generateTransportKeypair.ts +19 -0
  1778. package/core/actions/decrypt/index.ts +58 -0
  1779. package/core/actions/decrypt/package.json +6 -0
  1780. package/core/actions/encrypt/encryptValue.ts +52 -0
  1781. package/core/actions/encrypt/encryptValues.ts +51 -0
  1782. package/core/actions/encrypt/generateZkProof.ts +34 -0
  1783. package/core/actions/encrypt/index.ts +12 -0
  1784. package/core/actions/encrypt/package.json +6 -0
  1785. package/core/actions/host/getUserDecryptionDelegationExpirationDate.ts +32 -0
  1786. package/core/actions/host/index.ts +33 -0
  1787. package/core/actions/host/isAllowedForDecryption.ts +35 -0
  1788. package/core/actions/host/package.json +6 -0
  1789. package/core/actions/host/persistAllowed.ts +35 -0
  1790. package/core/actions/host/readFhevmExecutorContractData.ts +74 -0
  1791. package/core/actions/host/readInputVerifierContractData.ts +74 -0
  1792. package/core/actions/host/readKmsVerifierContractData.ts +75 -0
  1793. package/core/actions/host/resolveChainId.ts +42 -0
  1794. package/core/actions/host/resolveFhevmConfig.ts +191 -0
  1795. package/core/base/address.ts +303 -0
  1796. package/core/base/auth.ts +38 -0
  1797. package/core/base/boolean.ts +72 -0
  1798. package/core/base/bytes.ts +2060 -0
  1799. package/core/base/cachedFetch.ts +184 -0
  1800. package/core/base/errors/AddressError.ts +20 -0
  1801. package/core/base/errors/ChecksummedAddressError.ts +23 -0
  1802. package/core/base/errors/ErrorBase.ts +79 -0
  1803. package/core/base/errors/FetchError.ts +27 -0
  1804. package/core/base/errors/FheTypeError.ts +62 -0
  1805. package/core/base/errors/InternalError.ts +33 -0
  1806. package/core/base/errors/InvalidPropertyError.ts +232 -0
  1807. package/core/base/errors/InvalidTypeError.ts +87 -0
  1808. package/core/base/errors/utils.ts +41 -0
  1809. package/core/base/fetch.ts +284 -0
  1810. package/core/base/index.ts +1 -0
  1811. package/core/base/isomorphicWorker.ts +283 -0
  1812. package/core/base/object.ts +41 -0
  1813. package/core/base/promise.ts +31 -0
  1814. package/core/base/record.ts +201 -0
  1815. package/core/base/string.ts +214 -0
  1816. package/core/base/timeout.ts +32 -0
  1817. package/core/base/trustedValue.ts +110 -0
  1818. package/core/base/typedValue.ts +326 -0
  1819. package/core/base/uid.ts +17 -0
  1820. package/core/base/uint.ts +630 -0
  1821. package/core/base/wasm.ts +97 -0
  1822. package/core/chains/definitions/localTestnet.ts +30 -0
  1823. package/core/chains/definitions/mainnet.ts +30 -0
  1824. package/core/chains/definitions/sepolia.ts +32 -0
  1825. package/core/chains/index.ts +6 -0
  1826. package/core/chains/package.json +6 -0
  1827. package/core/chains/utils.ts +6 -0
  1828. package/core/clients/decorators/base.ts +203 -0
  1829. package/core/clients/decorators/decrypt.ts +85 -0
  1830. package/core/clients/decorators/encrypt-p.ts +18 -0
  1831. package/core/clients/decorators/encrypt.ts +47 -0
  1832. package/core/coprocessor/InputProof-p.ts +424 -0
  1833. package/core/coprocessor/ZkProof-p.ts +477 -0
  1834. package/core/coprocessor/ZkProofBuilder-p.ts +295 -0
  1835. package/core/coprocessor/assertIsCoprocessorEip712Domain.ts +23 -0
  1836. package/core/coprocessor/coprocessorEip712Types.ts +39 -0
  1837. package/core/coprocessor/createCoprocessorEip712.ts +69 -0
  1838. package/core/coprocessor/createCoprocessorEip712Domain.ts +25 -0
  1839. package/core/coprocessor/encrypt.ts +48 -0
  1840. package/core/coprocessor/fetchVerifiedInputProof.ts +84 -0
  1841. package/core/coprocessor/verifyHandlesCoprocessorSignatures.ts +66 -0
  1842. package/core/coprocessor/verifyInputProof.ts +50 -0
  1843. package/core/errors/AclError.ts +55 -0
  1844. package/core/errors/ContractErrorBase.ts +38 -0
  1845. package/core/errors/EncryptionError.ts +22 -0
  1846. package/core/errors/FhevmConfigError.ts +22 -0
  1847. package/core/errors/FhevmErrorBase.ts +53 -0
  1848. package/core/errors/FhevmHandleError.ts +20 -0
  1849. package/core/errors/InputProofError.ts +43 -0
  1850. package/core/errors/RelayerAbortError.ts +27 -0
  1851. package/core/errors/RelayerErrorBase.ts +81 -0
  1852. package/core/errors/RelayerFetchError.ts +35 -0
  1853. package/core/errors/RelayerFetchErrorBase.ts +90 -0
  1854. package/core/errors/RelayerMaxRetryError.ts +28 -0
  1855. package/core/errors/RelayerRequestErrorBase.ts +56 -0
  1856. package/core/errors/RelayerRequestInternalError.ts +52 -0
  1857. package/core/errors/RelayerResponseApiError.ts +43 -0
  1858. package/core/errors/RelayerResponseErrorBase.ts +35 -0
  1859. package/core/errors/RelayerResponseInputProofRejectedError.ts +28 -0
  1860. package/core/errors/RelayerResponseInvalidBodyError.ts +43 -0
  1861. package/core/errors/RelayerResponseStatusError.ts +33 -0
  1862. package/core/errors/RelayerStateError.ts +39 -0
  1863. package/core/errors/RelayerTimeoutError.ts +31 -0
  1864. package/core/errors/SignersError.ts +73 -0
  1865. package/core/errors/TfheError.ts +26 -0
  1866. package/core/errors/ZkProofError.ts +23 -0
  1867. package/core/handle/ClearValue.ts +341 -0
  1868. package/core/handle/EncryptedValue.ts +29 -0
  1869. package/core/handle/FheType.ts +545 -0
  1870. package/core/handle/FhevmHandle.ts +740 -0
  1871. package/core/host-contracts/CoprocessorSignersContext-p.ts +167 -0
  1872. package/core/host-contracts/FhevmExecutorContractData-p.ts +133 -0
  1873. package/core/host-contracts/HostContractVersion-p.ts +155 -0
  1874. package/core/host-contracts/InputVerifierContractData-p.ts +133 -0
  1875. package/core/host-contracts/KmsSignersContext-p.ts +238 -0
  1876. package/core/host-contracts/KmsVerifierContractData-p.ts +110 -0
  1877. package/core/host-contracts/abi-fragments/fragments.ts +460 -0
  1878. package/core/host-contracts/canDecryptValuesFromPairs.ts +94 -0
  1879. package/core/host-contracts/checkAllowedForDecryption.ts +36 -0
  1880. package/core/host-contracts/checkPersistAllowed.ts +115 -0
  1881. package/core/host-contracts/decryptionResultTypehash-p.ts +47 -0
  1882. package/core/host-contracts/eip712Domain-p.ts +75 -0
  1883. package/core/host-contracts/eip712InputVerificationTypehash-p.ts +47 -0
  1884. package/core/host-contracts/getAclAddress-p.ts +47 -0
  1885. package/core/host-contracts/getCoprocessorContextSignersAndThreshold-p.ts +136 -0
  1886. package/core/host-contracts/getCoprocessorSigners-p.ts +47 -0
  1887. package/core/host-contracts/getCurrentKmsContextId-p.ts +74 -0
  1888. package/core/host-contracts/getFhevmExecutorAddress-p.ts +47 -0
  1889. package/core/host-contracts/getHandleVersion-p.ts +43 -0
  1890. package/core/host-contracts/getHcuLimitAddress-p.ts +47 -0
  1891. package/core/host-contracts/getInputVerifierAddress-p.ts +47 -0
  1892. package/core/host-contracts/getKmsContextSignersAndThreshold-p.ts +149 -0
  1893. package/core/host-contracts/getKmsContextSignersAndThresholdFromExtraData-p.ts +110 -0
  1894. package/core/host-contracts/getSignersForKmsContext-p.ts +90 -0
  1895. package/core/host-contracts/isAllowedForDecryption.ts +65 -0
  1896. package/core/host-contracts/isUserDecryptable.ts +92 -0
  1897. package/core/host-contracts/persistAllowed.ts +68 -0
  1898. package/core/host-contracts/readCoprocessorSignersContext-p.ts +34 -0
  1899. package/core/host-contracts/readKmsSignersContext-p.ts +221 -0
  1900. package/core/key/FheEncryptionKeyCache-p.ts +326 -0
  1901. package/core/key/FheEncryptionKeyWasm-p.ts +97 -0
  1902. package/core/key/deserializeFheEncryptionKey.ts +24 -0
  1903. package/core/key/fetchFheEncryptionKey.ts +46 -0
  1904. package/core/key/fetchFheEncryptionKeyBytes.ts +69 -0
  1905. package/core/key/fetchFheEncryptionKeyBytesWithSource.ts +72 -0
  1906. package/core/key/serializeFheEncryptionKey.ts +36 -0
  1907. package/core/kms/KmsSigncryptedShares-p.ts +169 -0
  1908. package/core/kms/PublicDecryptionProof-p.ts +181 -0
  1909. package/core/kms/PublicDecryptionProof.ts +10 -0
  1910. package/core/kms/SignedDecryptionPermit-p.ts +453 -0
  1911. package/core/kms/TransportKeypair-p.ts +278 -0
  1912. package/core/kms/createKmsDelegatedUserDecryptEip712.ts +135 -0
  1913. package/core/kms/createKmsEip712Domain.ts +67 -0
  1914. package/core/kms/createKmsPublicDecryptEip712.ts +59 -0
  1915. package/core/kms/createKmsUserDecryptEip712.ts +172 -0
  1916. package/core/kms/decryptKmsSignedcryptedShares-p.ts +37 -0
  1917. package/core/kms/decryptValuesFromPairs.ts +57 -0
  1918. package/core/kms/fetchKmsSignedcryptedShares-p.ts +211 -0
  1919. package/core/kms/index.ts +1 -0
  1920. package/core/kms/kmsDelegatedUserDecryptEip712Types.ts +31 -0
  1921. package/core/kms/kmsExtraData.ts +51 -0
  1922. package/core/kms/kmsPublicDecryptEip712Types.ts +28 -0
  1923. package/core/kms/kmsUserDecryptEip712Types.ts +30 -0
  1924. package/core/kms/publicDecrypt.ts +109 -0
  1925. package/core/kms/utils.ts +60 -0
  1926. package/core/kms/verifyKmsPublicDecryptEip712-p.ts +75 -0
  1927. package/core/modules/decrypt/mock.ts +134 -0
  1928. package/core/modules/decrypt/module/api-p.ts +388 -0
  1929. package/core/modules/decrypt/module/index.ts +73 -0
  1930. package/core/modules/decrypt/module/init-p.ts +166 -0
  1931. package/core/modules/decrypt/types.ts +214 -0
  1932. package/core/modules/encrypt/mock.ts +111 -0
  1933. package/core/modules/encrypt/module/api-p.ts +433 -0
  1934. package/core/modules/encrypt/module/index.ts +47 -0
  1935. package/core/modules/encrypt/module/init-p.ts +249 -0
  1936. package/core/modules/encrypt/types.ts +225 -0
  1937. package/core/modules/ethereum/createTrustedClient.ts +9 -0
  1938. package/core/modules/ethereum/types.ts +153 -0
  1939. package/core/modules/relayer/mock.ts +47 -0
  1940. package/core/modules/relayer/module/RelayerAsyncRequest.ts +1771 -0
  1941. package/core/modules/relayer/module/fetchCoprocessorSignatures.ts +45 -0
  1942. package/core/modules/relayer/module/fetchDelegatedUserDecrypt.ts +67 -0
  1943. package/core/modules/relayer/module/fetchFheEncryptionKeyBytes.ts +34 -0
  1944. package/core/modules/relayer/module/fetchFheEncryptionKeySource.ts +166 -0
  1945. package/core/modules/relayer/module/fetchPublicDecrypt.ts +40 -0
  1946. package/core/modules/relayer/module/fetchUserDecrypt.ts +65 -0
  1947. package/core/modules/relayer/module/guards/RelayerInputProofSucceeded.ts +106 -0
  1948. package/core/modules/relayer/module/guards/RelayerPublicDecryptSucceeded.ts +59 -0
  1949. package/core/modules/relayer/module/guards/RelayerResponseFailed.ts +244 -0
  1950. package/core/modules/relayer/module/guards/RelayerResponseQueued.ts +51 -0
  1951. package/core/modules/relayer/module/guards/RelayerUserDecryptSucceeded.ts +77 -0
  1952. package/core/modules/relayer/module/guards/api-errors/RelayerApiError400NoDetails.ts +65 -0
  1953. package/core/modules/relayer/module/guards/api-errors/RelayerApiError400WithDetails.ts +87 -0
  1954. package/core/modules/relayer/module/guards/api-errors/RelayerApiError404.ts +25 -0
  1955. package/core/modules/relayer/module/guards/api-errors/RelayerApiError429.ts +25 -0
  1956. package/core/modules/relayer/module/guards/api-errors/RelayerApiError500.ts +25 -0
  1957. package/core/modules/relayer/module/guards/api-errors/RelayerApiError503.ts +30 -0
  1958. package/core/modules/relayer/module/index.ts +24 -0
  1959. package/core/modules/relayer/module/relayerUrl.ts +38 -0
  1960. package/core/modules/relayer/module/utils.ts +20 -0
  1961. package/core/modules/relayer/types.ts +183 -0
  1962. package/core/runtime/CoreFhevm-p.ts +409 -0
  1963. package/core/runtime/CoreFhevmRuntime-p.ts +266 -0
  1964. package/core/runtime/FhevmRuntime.ts +2 -0
  1965. package/core/runtime/initFhevmDecryptRuntime-p.ts +9 -0
  1966. package/core/runtime/initFhevmEncryptRuntime-p.ts +9 -0
  1967. package/core/runtime/initFhevmRuntime-p.ts +10 -0
  1968. package/core/types/auth.ts +44 -0
  1969. package/core/types/configs.ts +29 -0
  1970. package/core/types/coprocessor.ts +83 -0
  1971. package/core/types/coprocessorSignersContext.ts +15 -0
  1972. package/core/types/coreFhevmClient.ts +55 -0
  1973. package/core/types/coreFhevmRuntime.ts +44 -0
  1974. package/core/types/encryptedTypes-p.ts +226 -0
  1975. package/core/types/encryptedTypes.ts +41 -0
  1976. package/core/types/fheEncryptionKey.ts +106 -0
  1977. package/core/types/fheType.ts +137 -0
  1978. package/core/types/fhevmChain.ts +86 -0
  1979. package/core/types/fhevmClient.ts +30 -0
  1980. package/core/types/fhevmDecryptionKey.ts +8 -0
  1981. package/core/types/fhevmUser.ts +7 -0
  1982. package/core/types/hostContract.ts +27 -0
  1983. package/core/types/index.ts +2 -0
  1984. package/core/types/inputProof.ts +87 -0
  1985. package/core/types/kms-p.ts +18 -0
  1986. package/core/types/kms.ts +132 -0
  1987. package/core/types/kmsSignersContext.ts +48 -0
  1988. package/core/types/logger.ts +4 -0
  1989. package/core/types/other-p.ts +12 -0
  1990. package/core/types/primitives.ts +641 -0
  1991. package/core/types/publicDecryptionProof-p.ts +33 -0
  1992. package/core/types/record-p.ts +32 -0
  1993. package/core/types/relayer-p.ts +406 -0
  1994. package/core/types/relayer.ts +183 -0
  1995. package/core/types/signedDecryptionPermit.ts +50 -0
  1996. package/core/types/tkms-p.ts +5 -0
  1997. package/core/types/utils.ts +34 -0
  1998. package/core/types/zkProof-p.ts +29 -0
  1999. package/core/types/zkProofBuilder.ts +36 -0
  2000. package/core/utils-p/decrypt/assertPermitMatchesKeypair.ts +27 -0
  2001. package/core/utils-p/decrypt/verifyKmsDelegatedUserDecryptEip712.ts +47 -0
  2002. package/core/utils-p/decrypt/verifyKmsUserDecryptEip712.ts +47 -0
  2003. package/core/utils-p/decrypt/verifyTkmsPublicKey.ts +27 -0
  2004. package/core/utils-p/runtime/recoverSigners.ts +46 -0
  2005. package/ethers/clients/createFhevmBaseClient.ts +24 -0
  2006. package/ethers/clients/createFhevmClient.ts +20 -0
  2007. package/ethers/clients/createFhevmDecryptClient.ts +21 -0
  2008. package/ethers/clients/createFhevmEncryptClient.ts +24 -0
  2009. package/ethers/decorators/decrypt.ts +12 -0
  2010. package/ethers/decorators/encrypt.ts +12 -0
  2011. package/ethers/index.ts +10 -0
  2012. package/ethers/internal/ethereum.ts +165 -0
  2013. package/ethers/internal/ethers-p.ts +105 -0
  2014. package/ethers/internal/utils.ts +41 -0
  2015. package/ethers/package.json +6 -0
  2016. package/ethers/runtime/initFhevmDecryptRuntime.ts +8 -0
  2017. package/ethers/runtime/initFhevmEncryptRuntime.ts +8 -0
  2018. package/ethers/runtime/initFhevmRuntime.ts +8 -0
  2019. package/package.json +90 -2
  2020. package/tsconfig.json +9 -0
  2021. package/viem/clients/createFhevmBaseClient.ts +24 -0
  2022. package/viem/clients/createFhevmClient.ts +20 -0
  2023. package/viem/clients/createFhevmDecryptClient.ts +18 -0
  2024. package/viem/clients/createFhevmEncryptClient.ts +21 -0
  2025. package/viem/decorators/decrypt.ts +12 -0
  2026. package/viem/decorators/encrypt.ts +12 -0
  2027. package/viem/index.ts +10 -0
  2028. package/viem/internal/ethereum.ts +145 -0
  2029. package/viem/internal/viem-p.ts +105 -0
  2030. package/viem/package.json +6 -0
  2031. package/viem/runtime/initFhevmDecryptRuntime.ts +8 -0
  2032. package/viem/runtime/initFhevmEncryptRuntime.ts +8 -0
  2033. package/viem/runtime/initFhevmRuntime.ts +8 -0
  2034. package/wasm/tfhe/compile-worker.js +8 -0
  2035. package/wasm/tfhe/startWorkers.v1.5.3.js +426 -0
  2036. package/wasm/tfhe/tfhe-worker.v1.5.3.inline.js +7 -0
  2037. package/wasm/tfhe/tfhe-worker.v1.5.3.mjs +745 -0
  2038. package/wasm/tfhe/tfhe.v1.5.3.d.ts +10793 -0
  2039. package/wasm/tfhe/tfhe.v1.5.3.js +28645 -0
  2040. package/wasm/tfhe/tfhe_bg.v1.5.3.wasm +0 -0
  2041. package/wasm/tfhe/tfhe_bg.v1.5.3.wasm.base64.d.ts +1 -0
  2042. package/wasm/tfhe/tfhe_bg.v1.5.3.wasm.base64.js +1 -0
  2043. package/wasm/tkms/kms_lib.v0.13.10.d.ts +586 -0
  2044. package/wasm/tkms/kms_lib.v0.13.10.js +2117 -0
  2045. package/wasm/tkms/kms_lib_bg.v0.13.10.wasm +0 -0
  2046. package/wasm/tkms/kms_lib_bg.v0.13.10.wasm.base64.d.ts +1 -0
  2047. package/wasm/tkms/kms_lib_bg.v0.13.10.wasm.base64.js +3 -0
  2048. package/wasm/wasmBaseUrl.d.ts +7 -0
  2049. package/wasm/wasmBaseUrl.js +14 -0
@@ -0,0 +1,1771 @@
1
+ import type { Auth } from '../../../types/auth.js';
2
+ import type {
3
+ RelayerApiError,
4
+ RelayerAsyncRequestState,
5
+ RelayerFetchMethod,
6
+ RelayerGetResponseStatus,
7
+ RelayerPostResponseStatus,
8
+ RelayerResult200InputProofAccepted,
9
+ RelayerResult200InputProofRejected,
10
+ RelayerResult200PublicDecrypt,
11
+ RelayerResult200UserDecrypt,
12
+ RelayerTerminateReason,
13
+ } from '../../../types/relayer-p.js';
14
+ import type {
15
+ FetchDelegatedUserDecryptResult,
16
+ FetchInputProofResult,
17
+ FetchPublicDecryptResult,
18
+ FetchUserDecryptResult,
19
+ RelayerDelegatedUserDecryptOptions,
20
+ RelayerDelegatedUserDecryptProgressArgs,
21
+ RelayerFailureStatus,
22
+ RelayerInputProofOptions,
23
+ RelayerInputProofProgressArgs,
24
+ RelayerPostOperation,
25
+ RelayerProgressAbort,
26
+ RelayerProgressFailed,
27
+ RelayerProgressQueued,
28
+ RelayerProgressSucceeded,
29
+ RelayerProgressThrottled,
30
+ RelayerProgressTimeout,
31
+ RelayerPublicDecryptOptions,
32
+ RelayerPublicDecryptProgressArgs,
33
+ RelayerUserDecryptOptions,
34
+ RelayerUserDecryptProgressArgs,
35
+ } from '../../../types/relayer.js';
36
+ import { sdkName, version } from '../../../_version.js';
37
+ import { setAuth } from '../../../base/auth.js';
38
+ import { InvalidPropertyError } from '../../../base/errors/InvalidPropertyError.js';
39
+ import { assertNever } from '../../../base/errors/utils.js';
40
+ import { formatFetchErrorMetaMessages } from '../../../base/fetch.js';
41
+ import { isNonEmptyString, safeJSONstringify } from '../../../base/string.js';
42
+ import { isUint } from '../../../base/uint.js';
43
+ import { RelayerAbortError } from '../../../errors/RelayerAbortError.js';
44
+ import { RelayerFetchError } from '../../../errors/RelayerFetchError.js';
45
+ import { RelayerMaxRetryError } from '../../../errors/RelayerMaxRetryError.js';
46
+ import { RelayerRequestInternalError } from '../../../errors/RelayerRequestInternalError.js';
47
+ import { RelayerResponseApiError } from '../../../errors/RelayerResponseApiError.js';
48
+ import { RelayerResponseInputProofRejectedError } from '../../../errors/RelayerResponseInputProofRejectedError.js';
49
+ import { RelayerResponseInvalidBodyError } from '../../../errors/RelayerResponseInvalidBodyError.js';
50
+ import { RelayerResponseStatusError } from '../../../errors/RelayerResponseStatusError.js';
51
+ import { RelayerStateError } from '../../../errors/RelayerStateError.js';
52
+ import { RelayerTimeoutError } from '../../../errors/RelayerTimeoutError.js';
53
+ import { bytes32HexToInputHandle } from '../../../handle/FhevmHandle.js';
54
+ import { assertIsRelayerInputProofSucceeded } from './guards/RelayerInputProofSucceeded.js';
55
+ import { assertIsRelayerPublicDecryptSucceeded } from './guards/RelayerPublicDecryptSucceeded.js';
56
+ import {
57
+ assertIsRelayerResponseFailedWithError400,
58
+ assertIsRelayerResponseFailedWithError404,
59
+ assertIsRelayerResponseFailedWithError429,
60
+ assertIsRelayerResponseFailedWithError500,
61
+ assertIsRelayerResponseFailedWithError503,
62
+ } from './guards/RelayerResponseFailed.js';
63
+ import {
64
+ assertIsRelayerGetResponse202Queued,
65
+ assertIsRelayerPostResponse202Queued,
66
+ } from './guards/RelayerResponseQueued.js';
67
+ import { assertIsRelayerUserDecryptSucceeded } from './guards/RelayerUserDecryptSucceeded.js';
68
+
69
+ /*
70
+ Actions:
71
+ ========
72
+ Run
73
+ Cancel
74
+
75
+ Events:
76
+ =======
77
+ JobCompleted
78
+ SignalAbort
79
+
80
+ Reason:
81
+ =======
82
+ Canceled
83
+ Aborted
84
+
85
+ NOT_RUNNING ---JobCompleted---> Error! (impossible)
86
+ RUNNING ---JobCompleted---> TERMINATED(Reason=completed)
87
+ TERMINATED ---JobCompleted---> Error! (impossible)
88
+ CANCELED ---JobCompleted---> Error! (impossible)
89
+
90
+ NOT_RUNNING ---Cancel---> TERMINATED(Reason=canceled)
91
+ RUNNING ---Cancel---> TERMINATED(Reason=canceled)
92
+ TERMINATED ---Cancel---> Error!
93
+ CANCELED ---Cancel---> Error! or Nothing
94
+
95
+ NOT_RUNNING ---Run---> RUNNING
96
+ RUNNING ---Run---> Nothing
97
+ TERMINATED ---Run---> Error!
98
+ CANCELED ---Run---> Error!
99
+
100
+ NOT_RUNNING ---SignalAbort---> TERMINATED(Reason=aborted)
101
+ RUNNING ---SignalAbort---> TERMINATED(Reason=aborted)
102
+ TERMINATED ---SignalAbort---> Error! (impossible because when terminated the request does not listen to 'abort' anymore)
103
+ CANCELED ---SignalAbort---> Error! or Nothing
104
+ */
105
+
106
+ type RelayerAsyncRequestParams = {
107
+ relayerOperation: RelayerPostOperation;
108
+ url: string;
109
+ payload: Record<string, unknown>;
110
+ timeoutInSeconds?: number | undefined;
111
+ throwErrorIfNoRetryAfter?: boolean | undefined;
112
+ options?:
113
+ | RelayerInputProofOptions
114
+ | RelayerUserDecryptOptions
115
+ | RelayerDelegatedUserDecryptOptions
116
+ | RelayerPublicDecryptOptions
117
+ | undefined;
118
+ };
119
+
120
+ export class RelayerAsyncRequest {
121
+ private readonly _debug: boolean;
122
+ private _fetchMethod: 'GET' | 'POST' | undefined;
123
+ private _elapsed: number;
124
+ private _jobId: string | undefined;
125
+ private _jobIdTimestamp: number | undefined;
126
+ private readonly _state: RelayerAsyncRequestState;
127
+ private readonly _relayerOperation: RelayerPostOperation;
128
+ private _internalAbortController: AbortController | undefined;
129
+ private _internalAbortSignal: AbortSignal | undefined;
130
+ private _externalAbortSignal: AbortSignal | undefined;
131
+ private _terminateReason: RelayerTerminateReason | undefined;
132
+ private _terminateError: unknown;
133
+ private _retryCount: number;
134
+ private readonly _fetchRetries: number;
135
+ private readonly _fetchRetryDelayInMilliseconds: number;
136
+ private _totalSteps: number;
137
+ private _step: number;
138
+ private _retryAfterTimeoutID: ReturnType<typeof setTimeout> | undefined;
139
+ private readonly _url: string;
140
+ private readonly _payload: Record<string, unknown>;
141
+ private readonly _fhevmAuth: Auth | undefined;
142
+ private _retryAfterTimeoutPromiseFuncReject?: ((reason?: unknown) => void) | undefined;
143
+ private readonly _onProgress?:
144
+ | ((
145
+ args:
146
+ | RelayerInputProofProgressArgs
147
+ | RelayerUserDecryptProgressArgs
148
+ | RelayerDelegatedUserDecryptProgressArgs
149
+ | RelayerPublicDecryptProgressArgs,
150
+ ) => void)
151
+ | undefined;
152
+ private readonly _requestMaxDurationInMs: number;
153
+ private _requestStartTimestamp: number | undefined;
154
+ private _requestGlobalTimeoutID: ReturnType<typeof setTimeout> | undefined;
155
+ private readonly _throwErrorIfNoRetryAfter: boolean;
156
+
157
+ // Warning: the following condition should always stand!
158
+ // DEFAULT_RETRY_AFTER_MS >= MINIMUM_RETRY_AFTER_MS
159
+ private static readonly DEFAULT_RETRY_AFTER_MS = 2500;
160
+ private static readonly MINIMUM_RETRY_AFTER_MS = 1000;
161
+
162
+ private static readonly DEFAULT_GLOBAL_REQUEST_TIMEOUT_MS = 60 * 60 * 1000; // 1 hour
163
+ private static readonly MAX_GET_RETRY = 60 * 24; // number of default retries in 1 hour (24 retries/min)
164
+ private static readonly MAX_POST_RETRY = RelayerAsyncRequest.MAX_GET_RETRY;
165
+
166
+ // Can be lower than MINIMUM_RETRY_AFTER_MS
167
+ private static readonly FETCH_RETRY_AFTER_MS = 1000;
168
+ private static readonly FETCH_RETRY = 3;
169
+
170
+ constructor(params: RelayerAsyncRequestParams) {
171
+ if (
172
+ (params.relayerOperation as unknown) !== 'INPUT_PROOF' &&
173
+ (params.relayerOperation as unknown) !== 'PUBLIC_DECRYPT' &&
174
+ (params.relayerOperation as unknown) !== 'USER_DECRYPT' &&
175
+ (params.relayerOperation as unknown) !== 'DELEGATED_USER_DECRYPT'
176
+ ) {
177
+ throw new InvalidPropertyError(
178
+ {
179
+ subject: 'RelayerAsyncRequestParams',
180
+ property: 'relayerOperation',
181
+ expectedType: 'string',
182
+ value: params.relayerOperation,
183
+ expectedValue: 'INPUT_PROOF | PUBLIC_DECRYPT | USER_DECRYPT | DELEGATED_USER_DECRYPT',
184
+ },
185
+ {},
186
+ );
187
+ }
188
+
189
+ this._fetchRetries = params.options?.fetchRetries ?? RelayerAsyncRequest.FETCH_RETRY;
190
+ this._fetchRetryDelayInMilliseconds =
191
+ params.options?.fetchRetryDelayInMilliseconds ?? RelayerAsyncRequest.FETCH_RETRY_AFTER_MS;
192
+
193
+ this._step = 0;
194
+ this._totalSteps = 1;
195
+ this._elapsed = 0;
196
+ this._relayerOperation = params.relayerOperation;
197
+ this._internalAbortController = new AbortController();
198
+ this._internalAbortSignal = this._internalAbortController.signal;
199
+ this._internalAbortSignal.addEventListener('abort', this._handleInternalSignalAbort);
200
+ this._externalAbortSignal = params.options?.signal;
201
+ if (this._externalAbortSignal) {
202
+ this._externalAbortSignal.addEventListener('abort', this._handleExternalSignalAbort);
203
+ }
204
+
205
+ this._url = params.url;
206
+ this._payload = params.payload;
207
+ this._debug = params.options?.debug === true;
208
+ this._fhevmAuth = params.options?.auth;
209
+ this._onProgress = params.options?.onProgress as typeof this._onProgress;
210
+ this._state = {
211
+ aborted: false,
212
+ canceled: false,
213
+ failed: false,
214
+ fetching: false,
215
+ running: false,
216
+ succeeded: false,
217
+ terminated: false,
218
+ timeout: false,
219
+ };
220
+ this._retryCount = 0;
221
+ this._retryAfterTimeoutID = undefined;
222
+ this._requestGlobalTimeoutID = undefined;
223
+ this._terminateReason = undefined;
224
+ this._throwErrorIfNoRetryAfter = params.throwErrorIfNoRetryAfter ?? false;
225
+ this._requestMaxDurationInMs = params.options?.timeout ?? RelayerAsyncRequest.DEFAULT_GLOBAL_REQUEST_TIMEOUT_MS;
226
+
227
+ this._trace(
228
+ 'constructor()',
229
+ `{ fetchRetries: ${this._fetchRetries}, fetchRetryDelayInMilliseconds: ${this._fetchRetryDelayInMilliseconds} }`,
230
+ );
231
+ }
232
+
233
+ //////////////////////////////////////////////////////////////////////////////
234
+ // Public API: run
235
+ //////////////////////////////////////////////////////////////////////////////
236
+
237
+ /**
238
+ * Executes the async request and returns the result.
239
+ * @param params - Optional parameters.
240
+ * @param params.existingJobId - An existing job ID to resume polling instead of starting a new request.
241
+ * @returns The result of the operation (UserDecrypt, PublicDecrypt, or InputProof).
242
+ * @throws {RelayerStateError} If the request cannot run (already terminated, canceled, succeeded, failed, aborted, or running).
243
+ * @throws {RelayerTimeoutError} If the request times out.
244
+ * @throws {RelayerAbortError} If the request was aborted.
245
+ * @throws {RelayerFetchError} If a network error occurs or JSON parsing fails.
246
+ * @throws {RelayerMaxRetryError} If the maximum number of retries is exceeded.
247
+ * @throws {RelayerResponseApiError} If the relayer API returns an error response.
248
+ * @throws {RelayerResponseStatusError} If the response status is unexpected.
249
+ * @throws {RelayerResponseInvalidBodyError} If the response body does not match the expected schema.
250
+ * @throws {RelayerResponseInputProofRejectedError} If the input proof is rejected.
251
+ * @throws {RelayerRequestInternalError} If an internal error occurs.
252
+ */
253
+ public async run(params?: {
254
+ existingJobId: string;
255
+ }): Promise<FetchInputProofResult | FetchPublicDecryptResult | FetchUserDecryptResult> {
256
+ this._trace('run', `existingJobId=${params?.existingJobId}`);
257
+
258
+ if (this._state.terminated) {
259
+ throw new RelayerStateError({
260
+ message: `Relayer.run() failed. Request already terminated.`,
261
+ state: { ...this._state },
262
+ });
263
+ }
264
+
265
+ if (this._state.canceled) {
266
+ throw new RelayerStateError({
267
+ message: `Relayer.run() failed. Request already canceled.`,
268
+ state: { ...this._state },
269
+ });
270
+ }
271
+
272
+ if (this._state.succeeded) {
273
+ throw new RelayerStateError({
274
+ message: `Relayer.run() failed. Request already succeeded.`,
275
+ state: { ...this._state },
276
+ });
277
+ }
278
+
279
+ if (this._state.failed) {
280
+ throw new RelayerStateError({
281
+ message: `Relayer.run() failed. Request already failed.`,
282
+ state: { ...this._state },
283
+ });
284
+ }
285
+
286
+ if (this._state.aborted) {
287
+ throw new RelayerStateError({
288
+ message: `Relayer.run() failed. Request already aborted.`,
289
+ state: { ...this._state },
290
+ });
291
+ }
292
+
293
+ if (this._state.timeout) {
294
+ throw new RelayerStateError({
295
+ message: `Relayer.run() failed. Request already timeout.`,
296
+ state: { ...this._state },
297
+ });
298
+ }
299
+
300
+ if (this._externalAbortSignal?.aborted === true) {
301
+ throw new RelayerStateError({
302
+ message: `Relayer.run() failed. External AbortSignal already aborted (reason:${this._externalAbortSignal.reason}).`,
303
+ state: { ...this._state },
304
+ });
305
+ }
306
+
307
+ if (this._internalAbortSignal?.aborted === true) {
308
+ throw new RelayerStateError({
309
+ message: `Relayer.run() failed. Internal AbortSignal already aborted (reason:${this._internalAbortSignal.reason}).`,
310
+ state: { ...this._state },
311
+ });
312
+ }
313
+
314
+ if (this._state.running) {
315
+ throw new RelayerStateError({
316
+ message: `Relayer.run() failed. Request already running.`,
317
+ state: { ...this._state },
318
+ });
319
+ }
320
+ this._state.running = true;
321
+
322
+ this._requestStartTimestamp = Date.now();
323
+ this._setGlobalRequestTimeout(this._requestMaxDurationInMs);
324
+
325
+ try {
326
+ const json = await this._runPostLoop(params);
327
+
328
+ this._state.succeeded = true;
329
+
330
+ this._terminate('succeeded');
331
+
332
+ return json;
333
+ } catch (e) {
334
+ this._state.failed = true;
335
+
336
+ if ((e as { name: string }).name === 'AbortError') {
337
+ this._assert(this._state.aborted, 'this._state.aborted');
338
+ this._assert(this._state.terminated, 'this._state.terminated');
339
+ }
340
+
341
+ // Ignored if already terminated. For example, if abort has been previously called.
342
+ this._terminate('failed', e);
343
+
344
+ throw e;
345
+ }
346
+ }
347
+
348
+ //////////////////////////////////////////////////////////////////////////////
349
+ // Public API: cancel
350
+ //////////////////////////////////////////////////////////////////////////////
351
+
352
+ private _canContinue(): boolean {
353
+ return !(this._state.canceled || this._state.terminated || this._state.succeeded || this._state.aborted);
354
+ }
355
+
356
+ public cancel(): void {
357
+ if (!this._canContinue()) {
358
+ this._trace('cancel', '!this._canContinue()');
359
+ return;
360
+ }
361
+
362
+ this._state.canceled = true;
363
+ this._internalAbortController?.abort('cancel');
364
+
365
+ // Debug
366
+ this._assert(this._state.aborted, 'this._state.aborted');
367
+ this._assert(this._state.terminated, 'this._state.terminated');
368
+ }
369
+
370
+ //////////////////////////////////////////////////////////////////////////////
371
+ // Public API: getters
372
+ //////////////////////////////////////////////////////////////////////////////
373
+
374
+ public get state(): RelayerAsyncRequestState {
375
+ return { ...this._state };
376
+ }
377
+
378
+ public get canceled(): boolean {
379
+ return this._state.canceled;
380
+ }
381
+
382
+ public get terminated(): boolean {
383
+ return this._state.terminated;
384
+ }
385
+
386
+ public get terminateReason(): RelayerTerminateReason | undefined {
387
+ return this._terminateReason;
388
+ }
389
+
390
+ public get terminateError(): unknown {
391
+ return this._terminateError;
392
+ }
393
+
394
+ public get running(): boolean {
395
+ return this._state.running;
396
+ }
397
+
398
+ public get fetching(): boolean {
399
+ return this._state.fetching;
400
+ }
401
+
402
+ public get failed(): boolean {
403
+ return this._state.failed;
404
+ }
405
+
406
+ public get aborted(): boolean {
407
+ return this._state.aborted;
408
+ }
409
+
410
+ public get timeout(): boolean {
411
+ return this._state.timeout;
412
+ }
413
+
414
+ public get succeeded(): boolean {
415
+ return this._state.succeeded;
416
+ }
417
+
418
+ public get startTimeMs(): number | undefined {
419
+ return this._requestStartTimestamp;
420
+ }
421
+
422
+ public get elapsedTimeMs(): number | undefined {
423
+ if (this._requestStartTimestamp === undefined) {
424
+ return undefined;
425
+ }
426
+ return Date.now() - this._requestStartTimestamp;
427
+ }
428
+
429
+ public get retryCount(): number {
430
+ return this._retryCount;
431
+ }
432
+
433
+ //////////////////////////////////////////////////////////////////////////////
434
+ // Post Loop
435
+ //////////////////////////////////////////////////////////////////////////////
436
+
437
+ // POST : 202 | 400 | 401 | 429 | 500 | 503
438
+ private async _runPostLoop(params?: {
439
+ existingJobId: string;
440
+ }): Promise<FetchInputProofResult | FetchPublicDecryptResult | FetchUserDecryptResult> {
441
+ this._assert(this._fetchMethod === undefined, 'this._fetchMethod === undefined');
442
+ this._fetchMethod = 'POST';
443
+
444
+ // Until it is implemented. Silence linter.
445
+ this._totalSteps = 1;
446
+ this._step = 0;
447
+
448
+ // Continue an existing jobId
449
+ if (isNonEmptyString(params?.existingJobId)) {
450
+ // Debug: will throw an assert failed error if jobId has already been set
451
+ this._setJobIdOnce(params.existingJobId);
452
+ return await this._runGetLoop();
453
+ }
454
+
455
+ // No infinite loop!
456
+ let fetchAttempts = 0;
457
+ let i = 0;
458
+ while (i < RelayerAsyncRequest.MAX_POST_RETRY) {
459
+ ++i;
460
+
461
+ this._assertCanContinueAfterAwait();
462
+
463
+ // At this stage: `terminated` is guaranteed to be `false`.
464
+ // However, the `fetch` call can potentially throw an `AbortError`. In this case
465
+ // in the error catch the `terminated` flag will be `true`! But, that's ok because the
466
+ // next part of the function will never be executed (thrown error).
467
+ this._elapsed =
468
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
469
+ this._jobId !== undefined ? Date.now() - this._jobIdTimestamp! : 0;
470
+
471
+ // ===================== Begin Fetch Retry ===============================
472
+
473
+ // Increment fetch attempts counter before fetch (1-based count)
474
+ fetchAttempts++;
475
+
476
+ // Execute the native fetch
477
+ const response = await this._fetchWithRetry(() => this._fetchPost(), fetchAttempts);
478
+
479
+ // Failure: retry if no response
480
+ if (response === undefined) {
481
+ continue;
482
+ }
483
+
484
+ // Success: fetch attempts counter
485
+ fetchAttempts = 0;
486
+
487
+ // ======================= End Fetch Retry ===============================
488
+
489
+ // At this stage: `terminated` is guaranteed to be `false`.
490
+
491
+ const responseStatus: RelayerPostResponseStatus = response.status as RelayerPostResponseStatus;
492
+
493
+ switch (responseStatus) {
494
+ // RelayerResponseQueued
495
+ case 202: {
496
+ // response.json() errors:
497
+ // 1. if body is already read (call json() 2 times)
498
+ // - TypeError: Body is unusable: Body has already been read
499
+ // 2. if body is invalid JSON
500
+ // - SyntaxError: Unexpected end of JSON input
501
+ // - SyntaxError: Expected property name or '}' in JSON at position 1 (line 1 column 2) at JSON.parse (<anonymous>)
502
+ const bodyJson = await this._getResponseJson(response);
503
+
504
+ try {
505
+ assertIsRelayerPostResponse202Queued(bodyJson, 'body', {});
506
+ } catch (cause) {
507
+ this._throwResponseInvalidBodyError({
508
+ status: responseStatus,
509
+ cause: cause as InvalidPropertyError,
510
+ bodyJson: safeJSONstringify(bodyJson),
511
+ });
512
+ }
513
+
514
+ const retryAfterMs = this._getRetryAfterHeaderValueInMs(response);
515
+
516
+ // Debug: will throw an assert failed error if jobId has already been set
517
+ this._setJobIdOnce(bodyJson.result.jobId);
518
+
519
+ // Async onProgress callback
520
+ this._postAsyncOnProgressCallback({
521
+ type: 'queued',
522
+ url: this._url,
523
+ method: 'POST',
524
+ status: responseStatus,
525
+ requestId: bodyJson.requestId,
526
+ jobId: this.jobId,
527
+ operation: this._relayerOperation,
528
+ retryCount: this._retryCount,
529
+ retryAfterMs,
530
+ elapsed: this._elapsed,
531
+ step: this._step,
532
+ totalSteps: this._totalSteps,
533
+ } satisfies RelayerProgressQueued<RelayerPostOperation>);
534
+
535
+ await this._setRetryAfterTimeout(retryAfterMs);
536
+
537
+ const json = await this._runGetLoop();
538
+ return json;
539
+ }
540
+ // RelayerResponseFailed
541
+ // RelayerApiError400
542
+ // RelayerApiError400WithDetails
543
+ case 400: {
544
+ const bodyJson = await this._getResponseJson(response);
545
+
546
+ try {
547
+ assertIsRelayerResponseFailedWithError400(bodyJson, 'body', {});
548
+ } catch (cause) {
549
+ this._throwResponseInvalidBodyError({
550
+ status: responseStatus,
551
+ cause: cause as InvalidPropertyError,
552
+ bodyJson: safeJSONstringify(bodyJson),
553
+ });
554
+ }
555
+
556
+ this._throwRelayerResponseApiError({
557
+ status: responseStatus,
558
+ relayerApiError: bodyJson.error,
559
+ });
560
+ }
561
+ // RelayerResponseFailed
562
+ // RelayerApiError401
563
+ // falls through
564
+ case 401: {
565
+ this._throwUnauthorizedError(responseStatus);
566
+ }
567
+ // RelayerResponseFailed
568
+ // RelayerApiError429
569
+ // falls through
570
+ case 429: {
571
+ // Retry
572
+ // Rate Limit error (Cloudflare/Kong/Relayer), reason in message
573
+ // Protocol Overload error
574
+ const bodyJson = await this._getResponseJson(response);
575
+
576
+ try {
577
+ assertIsRelayerResponseFailedWithError429(bodyJson, 'body', {});
578
+ } catch (cause) {
579
+ this._throwResponseInvalidBodyError({
580
+ status: responseStatus,
581
+ cause: cause as InvalidPropertyError,
582
+ bodyJson: safeJSONstringify(bodyJson),
583
+ });
584
+ }
585
+
586
+ const retryAfterMs = this._getRetryAfterHeaderValueInMs(response);
587
+
588
+ // Async onProgress callback
589
+ this._postAsyncOnProgressCallback({
590
+ type: 'throttled',
591
+ operation: this._relayerOperation,
592
+ url: this._url,
593
+ method: 'POST',
594
+ status: responseStatus,
595
+ retryAfterMs,
596
+ retryCount: this._retryCount,
597
+ elapsed: this._elapsed,
598
+ relayerApiError: bodyJson.error,
599
+ step: this._step,
600
+ totalSteps: this._totalSteps,
601
+ } satisfies RelayerProgressThrottled<RelayerPostOperation>);
602
+
603
+ // Wait if needed (minimum 1s)
604
+ await this._setRetryAfterTimeout(retryAfterMs);
605
+
606
+ continue;
607
+ }
608
+ // RelayerResponseFailed
609
+ // RelayerApiError500
610
+ case 500: {
611
+ // Abort
612
+ // Relayer internal error
613
+ const bodyJson = await this._getResponseJson(response);
614
+
615
+ try {
616
+ assertIsRelayerResponseFailedWithError500(bodyJson, 'body', {});
617
+ } catch (cause) {
618
+ this._throwResponseInvalidBodyError({
619
+ status: responseStatus,
620
+ cause: cause as InvalidPropertyError,
621
+ bodyJson: safeJSONstringify(bodyJson),
622
+ });
623
+ }
624
+
625
+ this._throwRelayerResponseApiError({
626
+ status: responseStatus,
627
+ relayerApiError: bodyJson.error,
628
+ });
629
+ }
630
+ // RelayerResponseFailed
631
+ // RelayerApiError503
632
+ // falls through
633
+ case 503: {
634
+ // Abort
635
+ // Possible Reasons: Gateway has some internal error (unknown)
636
+ const bodyJson = await this._getResponseJson(response);
637
+
638
+ //////////////////////////////////////////////////////////////////////
639
+ //
640
+ // readiness_check_timedout : only on GET for decryption points
641
+ // Exponential retry for GET / readiness_check_timedout
642
+ // 1. first attempt failed
643
+ // 2. an array of intervals
644
+ //
645
+ //////////////////////////////////////////////////////////////////////
646
+
647
+ try {
648
+ assertIsRelayerResponseFailedWithError503(bodyJson, 'body', {});
649
+ } catch (cause) {
650
+ this._throwResponseInvalidBodyError({
651
+ status: responseStatus,
652
+ cause: cause as InvalidPropertyError,
653
+ bodyJson: safeJSONstringify(bodyJson),
654
+ });
655
+ }
656
+
657
+ this._throwRelayerResponseApiError({
658
+ status: responseStatus,
659
+ relayerApiError: bodyJson.error,
660
+ });
661
+ }
662
+ // falls through
663
+ default: {
664
+ // Use TS compiler + `never` to guarantee the switch integrity
665
+ const throwUnsupportedStatus = (unsupportedStatus: never): never => {
666
+ throw new RelayerResponseStatusError({
667
+ fetchMethod: 'POST',
668
+ status: unsupportedStatus,
669
+ url: this._url,
670
+ operation: this._relayerOperation,
671
+ elapsed: this._elapsed,
672
+ retryCount: this._retryCount,
673
+ state: { ...this._state },
674
+ });
675
+ };
676
+ throwUnsupportedStatus(responseStatus);
677
+ }
678
+ }
679
+ }
680
+ // Max retry error
681
+ this._throwMaxRetryError({ fetchMethod: 'POST' });
682
+ }
683
+
684
+ //////////////////////////////////////////////////////////////////////////////
685
+ // Get Loop
686
+ //////////////////////////////////////////////////////////////////////////////
687
+
688
+ // GET: 200 | 202 | 401 | 404 | 500 | 503
689
+ // GET is not rate-limited, therefore there is not 429 error
690
+ private async _runGetLoop(): Promise<FetchInputProofResult | FetchPublicDecryptResult | FetchUserDecryptResult> {
691
+ this._assert(this._fetchMethod === 'POST', "this._fetchMethod === 'POST'");
692
+ this._assert(this._jobId !== undefined, 'this._jobId !== undefined');
693
+ this._assert(this._jobIdTimestamp !== undefined, 'this._jobIdTimestamp !== undefined');
694
+ this._fetchMethod = 'GET';
695
+
696
+ let fetchAttempts = 0;
697
+ let i = 0;
698
+ while (i < RelayerAsyncRequest.MAX_GET_RETRY) {
699
+ ++i;
700
+
701
+ this._assertCanContinueAfterAwait();
702
+
703
+ this._elapsed = Date.now() - this._jobIdTimestamp;
704
+
705
+ // ===================== Begin Fetch Retry ===============================
706
+
707
+ // Increment fetch attempts counter before fetch (1-based count)
708
+ fetchAttempts++;
709
+
710
+ // Execute the native fetch
711
+ const response = await this._fetchWithRetry(() => this._fetchGet(), fetchAttempts);
712
+
713
+ // Failure: retry if no response
714
+ if (response === undefined) {
715
+ continue;
716
+ }
717
+
718
+ // Success: fetch attempts counter
719
+ fetchAttempts = 0;
720
+
721
+ // ======================= End Fetch Retry ===============================
722
+
723
+ // At this stage: `terminated` is guaranteed to be `false`.
724
+
725
+ const responseStatus: RelayerGetResponseStatus = response.status as RelayerGetResponseStatus;
726
+
727
+ switch (responseStatus) {
728
+ // RelayerGetResponseSucceeded
729
+ case 200: {
730
+ const bodyJson = await this._getResponseJson(response);
731
+
732
+ // Done
733
+ this._step = this._totalSteps;
734
+
735
+ try {
736
+ //
737
+ // INPUT_PROOF
738
+ //
739
+ if (this._relayerOperation === 'INPUT_PROOF') {
740
+ assertIsRelayerInputProofSucceeded(bodyJson, 'body', {});
741
+
742
+ const inputProofBodyResult: RelayerResult200InputProofAccepted | RelayerResult200InputProofRejected =
743
+ bodyJson.result;
744
+
745
+ // InputProof rejected
746
+ if (!inputProofBodyResult.accepted) {
747
+ const e = new RelayerResponseInputProofRejectedError({
748
+ url: this._url,
749
+ fetchMethod: 'GET',
750
+ jobId: this.jobId,
751
+ operation: this._relayerOperation,
752
+ retryCount: this._retryCount,
753
+ status: responseStatus,
754
+ state: { ...this._state },
755
+ elapsed: this._elapsed,
756
+ });
757
+ throw e;
758
+ }
759
+
760
+ // InputProof accepted
761
+ const inputProofAccepted: RelayerResult200InputProofAccepted = inputProofBodyResult;
762
+
763
+ const inputHandles = inputProofAccepted.handles.map(bytes32HexToInputHandle);
764
+
765
+ const returnValue: FetchInputProofResult = {
766
+ extraData: inputProofAccepted.extraData,
767
+ signatures: inputProofAccepted.signatures,
768
+ handles: Object.freeze(inputHandles),
769
+ };
770
+
771
+ // Async onProgress callback
772
+ this._postAsyncOnProgressCallback({
773
+ type: 'succeeded',
774
+ url: this._url,
775
+ method: 'GET',
776
+ status: responseStatus,
777
+ jobId: this.jobId,
778
+ requestId: bodyJson.requestId,
779
+ operation: this._relayerOperation,
780
+ retryCount: this._retryCount,
781
+ elapsed: this._elapsed,
782
+ result: returnValue,
783
+ step: this._step,
784
+ totalSteps: this._totalSteps,
785
+ } satisfies RelayerProgressSucceeded<'INPUT_PROOF'>);
786
+
787
+ return returnValue;
788
+ }
789
+ //
790
+ // PUBLIC_DECRYPT
791
+ //
792
+ else if (this._relayerOperation === 'PUBLIC_DECRYPT') {
793
+ assertIsRelayerPublicDecryptSucceeded(bodyJson, 'body', {});
794
+
795
+ const publicDecryptBodyResult: RelayerResult200PublicDecrypt = bodyJson.result;
796
+
797
+ // The final return value is exactly the body json result field
798
+ const returnValue: FetchPublicDecryptResult = publicDecryptBodyResult;
799
+
800
+ // Async onProgress callback
801
+ this._postAsyncOnProgressCallback({
802
+ type: 'succeeded',
803
+ url: this._url,
804
+ method: 'GET',
805
+ status: responseStatus,
806
+ jobId: this.jobId,
807
+ requestId: bodyJson.requestId,
808
+ operation: this._relayerOperation,
809
+ retryCount: this._retryCount,
810
+ elapsed: this._elapsed,
811
+ result: returnValue,
812
+ step: this._step,
813
+ totalSteps: this._totalSteps,
814
+ } satisfies RelayerProgressSucceeded<'PUBLIC_DECRYPT'>);
815
+
816
+ return returnValue;
817
+ }
818
+ //
819
+ // USER_DECRYPT
820
+ //
821
+ else if (this._relayerOperation === 'USER_DECRYPT') {
822
+ assertIsRelayerUserDecryptSucceeded(bodyJson, 'body', {});
823
+
824
+ const userDecryptBodyResult: RelayerResult200UserDecrypt = bodyJson.result;
825
+
826
+ // The final return value is exactly the body json result.result field (x2 result!)
827
+ const returnValue: FetchUserDecryptResult = userDecryptBodyResult.result;
828
+
829
+ // Async onProgress callback
830
+ this._postAsyncOnProgressCallback({
831
+ type: 'succeeded',
832
+ url: this._url,
833
+ method: 'GET',
834
+ status: responseStatus,
835
+ jobId: this.jobId,
836
+ requestId: bodyJson.requestId,
837
+ operation: this._relayerOperation,
838
+ retryCount: this._retryCount,
839
+ elapsed: this._elapsed,
840
+ result: returnValue,
841
+ step: this._step,
842
+ totalSteps: this._totalSteps,
843
+ } satisfies RelayerProgressSucceeded<'USER_DECRYPT'>);
844
+
845
+ return returnValue;
846
+ }
847
+ //
848
+ // DELEGATED_USER_DECRYPT
849
+ //
850
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
851
+ else if (this._relayerOperation === 'DELEGATED_USER_DECRYPT') {
852
+ // DELEGATED_USER_DECRYPT and USER_DECRYPT use the same body json
853
+ assertIsRelayerUserDecryptSucceeded(bodyJson, 'body', {});
854
+
855
+ const userDecryptBodyResult: RelayerResult200UserDecrypt = bodyJson.result;
856
+
857
+ // The final return value is exactly the body json result.result field (x2 result!)
858
+ const returnValue: FetchDelegatedUserDecryptResult = userDecryptBodyResult.result;
859
+
860
+ // Async onProgress callback
861
+ this._postAsyncOnProgressCallback({
862
+ type: 'succeeded',
863
+ url: this._url,
864
+ method: 'GET',
865
+ status: responseStatus,
866
+ jobId: this.jobId,
867
+ requestId: bodyJson.requestId,
868
+ operation: this._relayerOperation,
869
+ retryCount: this._retryCount,
870
+ elapsed: this._elapsed,
871
+ result: returnValue,
872
+ step: this._step,
873
+ totalSteps: this._totalSteps,
874
+ } satisfies RelayerProgressSucceeded<'DELEGATED_USER_DECRYPT'>);
875
+
876
+ return returnValue;
877
+ }
878
+
879
+ //
880
+ // Unknown operation, assert failed
881
+ //
882
+ else {
883
+ assertNever(this._relayerOperation, `Unknown operation: ${this._relayerOperation}`);
884
+ }
885
+ } catch (cause) {
886
+ // Special case for InputProof rejected
887
+ if (cause instanceof RelayerResponseInputProofRejectedError) {
888
+ throw cause;
889
+ }
890
+
891
+ this._throwResponseInvalidBodyError({
892
+ status: responseStatus,
893
+ cause: cause as InvalidPropertyError,
894
+ bodyJson: safeJSONstringify(bodyJson),
895
+ });
896
+ }
897
+
898
+ // unreachable code here
899
+ // break or return not accepted by TSC
900
+ // use 'falls through' comment to help eslint
901
+ }
902
+ // RelayerResponseQueued
903
+ // falls through
904
+ case 202: {
905
+ const bodyJson = await this._getResponseJson(response);
906
+
907
+ try {
908
+ assertIsRelayerGetResponse202Queued(bodyJson, 'body', {});
909
+ } catch (cause) {
910
+ this._throwResponseInvalidBodyError({
911
+ status: responseStatus,
912
+ cause: cause as InvalidPropertyError,
913
+ bodyJson: safeJSONstringify(bodyJson),
914
+ });
915
+ }
916
+
917
+ const retryAfterMs = this._getRetryAfterHeaderValueInMs(response);
918
+
919
+ // Async onProgress callback
920
+ this._postAsyncOnProgressCallback({
921
+ type: 'queued',
922
+ url: this._url,
923
+ method: 'GET',
924
+ status: responseStatus,
925
+ requestId: bodyJson.requestId,
926
+ operation: this._relayerOperation,
927
+ jobId: this.jobId,
928
+ retryAfterMs,
929
+ retryCount: this._retryCount,
930
+ elapsed: this._elapsed,
931
+ step: this._step,
932
+ totalSteps: this._totalSteps,
933
+ } satisfies RelayerProgressQueued<RelayerPostOperation>);
934
+
935
+ // Wait if needed (minimum 1s)
936
+ await this._setRetryAfterTimeout(retryAfterMs);
937
+ continue;
938
+ }
939
+ // falls through
940
+ case 400: {
941
+ // Abort
942
+ // Wrong jobId, incorrect format or unknown value etc.
943
+ const bodyJson = await this._getResponseJson(response);
944
+
945
+ try {
946
+ assertIsRelayerResponseFailedWithError400(bodyJson, 'body', {});
947
+ } catch (cause) {
948
+ this._throwResponseInvalidBodyError({
949
+ status: responseStatus,
950
+ cause: cause as InvalidPropertyError,
951
+ bodyJson: safeJSONstringify(bodyJson),
952
+ });
953
+ }
954
+
955
+ this._throwRelayerResponseApiError({
956
+ status: responseStatus,
957
+ relayerApiError: bodyJson.error,
958
+ });
959
+ }
960
+ // falls through
961
+ case 401: {
962
+ this._throwUnauthorizedError(responseStatus);
963
+ }
964
+ // falls through
965
+ case 404: {
966
+ // Abort
967
+ // Wrong jobId, incorrect format or unknown value etc.
968
+ const bodyJson = await this._getResponseJson(response);
969
+
970
+ try {
971
+ assertIsRelayerResponseFailedWithError404(bodyJson, 'body', {});
972
+ } catch (cause) {
973
+ this._throwResponseInvalidBodyError({
974
+ status: responseStatus,
975
+ cause: cause as InvalidPropertyError,
976
+ bodyJson: safeJSONstringify(bodyJson),
977
+ });
978
+ }
979
+
980
+ this._throwRelayerResponseApiError({
981
+ status: responseStatus,
982
+ relayerApiError: bodyJson.error,
983
+ });
984
+ }
985
+ // RelayerResponseFailed
986
+ // RelayerApiError500
987
+ // falls through
988
+ case 500: {
989
+ // Abort
990
+ // Relayer internal error
991
+ const bodyJson = await this._getResponseJson(response);
992
+
993
+ try {
994
+ assertIsRelayerResponseFailedWithError500(bodyJson, 'body', {});
995
+ } catch (cause) {
996
+ this._throwResponseInvalidBodyError({
997
+ status: responseStatus,
998
+ cause: cause as InvalidPropertyError,
999
+ bodyJson: safeJSONstringify(bodyJson),
1000
+ });
1001
+ }
1002
+
1003
+ this._throwRelayerResponseApiError({
1004
+ status: responseStatus,
1005
+ relayerApiError: bodyJson.error,
1006
+ });
1007
+ }
1008
+ // RelayerResponseFailed
1009
+ // RelayerApiError503
1010
+ // falls through
1011
+ case 503: {
1012
+ // Abort
1013
+ // Possible Reasons: Gateway has some internal error (unknown)
1014
+ const bodyJson = await this._getResponseJson(response);
1015
+
1016
+ try {
1017
+ assertIsRelayerResponseFailedWithError503(bodyJson, 'body', {});
1018
+ } catch (cause) {
1019
+ this._throwResponseInvalidBodyError({
1020
+ status: responseStatus,
1021
+ cause: cause as InvalidPropertyError,
1022
+ bodyJson: safeJSONstringify(bodyJson),
1023
+ });
1024
+ }
1025
+
1026
+ this._throwRelayerResponseApiError({
1027
+ status: responseStatus,
1028
+ relayerApiError: bodyJson.error,
1029
+ });
1030
+ }
1031
+ // falls through
1032
+ default: {
1033
+ // Use TS compiler + `never` to guarantee the switch integrity
1034
+ const throwUnsupportedStatus = (unsupportedStatus: never): never => {
1035
+ throw new RelayerResponseStatusError({
1036
+ fetchMethod: 'GET',
1037
+ status: unsupportedStatus,
1038
+ url: this._url,
1039
+ jobId: this.jobId,
1040
+ operation: this._relayerOperation,
1041
+ elapsed: this._elapsed,
1042
+ retryCount: this._retryCount,
1043
+ state: { ...this._state },
1044
+ });
1045
+ };
1046
+ throwUnsupportedStatus(responseStatus);
1047
+ }
1048
+ }
1049
+ }
1050
+ // Max retry error
1051
+ this._throwMaxRetryError({ fetchMethod: 'GET' });
1052
+ }
1053
+
1054
+ //////////////////////////////////////////////////////////////////////////////
1055
+
1056
+ /**
1057
+ * Parses the response body as JSON.
1058
+ * @throws {RelayerFetchError} If the body is not valid JSON (e.g., Cloudflare HTML error page).
1059
+ */
1060
+ private async _getResponseJson(response: Response): Promise<unknown> {
1061
+ try {
1062
+ // This situation usually happens when Cloudflare overrides the relayer's reply body.
1063
+ // and put a HTML page instead
1064
+ const bodyJson = (await response.json()) as unknown;
1065
+
1066
+ this._assertCanContinueAfterAwait();
1067
+
1068
+ return bodyJson;
1069
+ } catch (e) {
1070
+ console.log(e);
1071
+ this._throwFetchError({
1072
+ message: 'JSON parsing failed.',
1073
+ cause: e,
1074
+ });
1075
+ }
1076
+ }
1077
+
1078
+ //////////////////////////////////////////////////////////////////////////////
1079
+
1080
+ private _getRetryAfterHeaderValueInMs(response: Response): number {
1081
+ if (!response.headers.has('Retry-After')) {
1082
+ if (this._throwErrorIfNoRetryAfter) {
1083
+ throw new Error(`Missing 'Retry-After' header key`);
1084
+ }
1085
+ return RelayerAsyncRequest.DEFAULT_RETRY_AFTER_MS;
1086
+ }
1087
+
1088
+ try {
1089
+ const n = Number.parseInt(
1090
+ // can be null
1091
+ response.headers.get('Retry-After') as unknown as string,
1092
+ );
1093
+ if (isUint(n)) {
1094
+ const ms = n * 1000;
1095
+ return ms < RelayerAsyncRequest.MINIMUM_RETRY_AFTER_MS ? RelayerAsyncRequest.MINIMUM_RETRY_AFTER_MS : ms;
1096
+ }
1097
+ } catch {
1098
+ //
1099
+ }
1100
+
1101
+ if (this._throwErrorIfNoRetryAfter) {
1102
+ throw new Error(`Invalid 'Retry-After' header key`);
1103
+ }
1104
+
1105
+ return RelayerAsyncRequest.DEFAULT_RETRY_AFTER_MS;
1106
+ }
1107
+
1108
+ //////////////////////////////////////////////////////////////////////////////
1109
+ // JobId
1110
+ //////////////////////////////////////////////////////////////////////////////
1111
+
1112
+ /**
1113
+ * Sets the unique job identifier for this request.
1114
+ *
1115
+ * This function enforces a strict initialization constraint: the jobId must be
1116
+ * set exactly once during the entire lifecycle of the state machine instance.
1117
+ *
1118
+ * This immutability ensures that all subsequent operations, logging, and state
1119
+ * transitions are consistently associated with the correct external request.
1120
+ *
1121
+ * @param jobId - The unique identifier associated with the asynchronous job request.
1122
+ * @private
1123
+ * @throws {RelayerRequestInternalError} Thrown if jobId is undefined or if the jobId has already been set.
1124
+ */
1125
+ private _setJobIdOnce(jobId: string): void {
1126
+ this._assert((jobId as unknown) !== undefined, 'jobId !== undefined');
1127
+ this._assert(this._jobId === undefined, 'this._jobId === undefined');
1128
+
1129
+ this._jobId = jobId;
1130
+ this._jobIdTimestamp = Date.now();
1131
+ }
1132
+
1133
+ private get jobId(): string {
1134
+ this._assert(this._jobId !== undefined, 'this._jobId !== undefined');
1135
+ return this._jobId;
1136
+ }
1137
+
1138
+ //////////////////////////////////////////////////////////////////////////////
1139
+ // Fetch functions
1140
+ //////////////////////////////////////////////////////////////////////////////
1141
+
1142
+ /**
1143
+ * Wraps a fetch call with retry logic for transient network failures.
1144
+ *
1145
+ * @param fetchFn - The fetch function to call (either _fetchPost or _fetchGet)
1146
+ * @param attempts - Current attempt count (1-based, caller increments before calling)
1147
+ * @returns Response on success, or undefined to signal retry
1148
+ * @throws {Error} AbortError if the fetch was aborted
1149
+ * @throws {RelayerFetchError} If max retries exhausted
1150
+ */
1151
+ private async _fetchWithRetry(fetchFn: () => Promise<Response>, attempts: number): Promise<Response | undefined> {
1152
+ try {
1153
+ return await fetchFn();
1154
+ } catch (fetchError) {
1155
+ // AbortError indicates user/external cancellation - propagate immediately
1156
+ if ((fetchError as { name: string }).name === 'AbortError') {
1157
+ throw fetchError;
1158
+ }
1159
+
1160
+ // At this point: fetchError is guaranteed to be RelayerFetchError
1161
+
1162
+ // Max retries exhausted - propagate the network error
1163
+ if (attempts >= this._fetchRetries) {
1164
+ throw fetchError;
1165
+ }
1166
+
1167
+ // Wait before retry using state-machine-aware timeout
1168
+ // This allows cancellation to interrupt the delay
1169
+ // Skip incrementing _retryCount since fetch retries are separate from polling retries
1170
+ await this._setRetryAfterTimeout(this._fetchRetryDelayInMilliseconds, {
1171
+ skipIncrementRetryCount: true,
1172
+ });
1173
+
1174
+ return undefined;
1175
+ }
1176
+ }
1177
+
1178
+ /**
1179
+ * Performs a POST request to initiate a new job
1180
+ * @throws {RelayerFetchError} If the fetch fails (network error, etc.)
1181
+ */
1182
+ private async _fetchPost(): Promise<Response> {
1183
+ // Debug state-check guards:
1184
+ // - the fetchMethod is guaranteed to be 'POST'.
1185
+ // - the jobId is guaranteed to be undefined.
1186
+ // - `terminated` is guaranteed to be `false`
1187
+ // - `fetching` is guaranteed to be `false`
1188
+ this._assert(this._fetchMethod === 'POST', 'this._fetchMethod === "POST"');
1189
+ this._assert(this._jobId === undefined, 'this._jobId === undefined');
1190
+ this._assert(!this._state.terminated, '!this._state.terminated');
1191
+ this._assert(!this._state.fetching, '!this._state.fetching');
1192
+
1193
+ this._trace('_fetchPost', this._url);
1194
+
1195
+ // API key is required!
1196
+ const init = setAuth(
1197
+ {
1198
+ method: 'POST',
1199
+ headers: {
1200
+ 'Content-Type': 'application/json',
1201
+ 'ZAMA-SDK-VERSION': version,
1202
+ 'ZAMA-SDK-NAME': sdkName,
1203
+ },
1204
+ body: JSON.stringify(this._payload),
1205
+ ...(this._internalAbortSignal ? { signal: this._internalAbortSignal } : {}),
1206
+ } satisfies RequestInit,
1207
+ this._fhevmAuth, // -> the API key
1208
+ );
1209
+
1210
+ this._state.fetching = true;
1211
+
1212
+ let response;
1213
+ try {
1214
+ response = await fetch(this._url, init);
1215
+ } catch (cause) {
1216
+ this._state.fetching = false;
1217
+
1218
+ // Warning: `terminated` can be `true` here!
1219
+ // (ex: if `controller.abort()` has been called from the outside while still executing `fetch`)
1220
+
1221
+ this._trace('_fetchPost', formatFetchErrorMetaMessages(cause).join('. '));
1222
+
1223
+ // Keep the standard 'AbortError'
1224
+ if ((cause as { name: string }).name === 'AbortError') {
1225
+ throw cause;
1226
+ } else {
1227
+ this._throwFetchError({
1228
+ message: 'Fetch POST failed.',
1229
+ cause,
1230
+ });
1231
+ }
1232
+ }
1233
+
1234
+ this._state.fetching = false;
1235
+
1236
+ // Debug state-check guards:
1237
+ // - the jobId is guaranteed to be undefined.
1238
+ // - `terminated` is guaranteed to be `false`
1239
+ this._assert(!this._state.terminated, '!this._state.terminated');
1240
+
1241
+ // Debug
1242
+ this._assertCanContinueAfterAwait();
1243
+
1244
+ this._trace('_fetchPost', 'return response Ok');
1245
+
1246
+ return response;
1247
+ }
1248
+
1249
+ //////////////////////////////////////////////////////////////////////////////
1250
+
1251
+ /**
1252
+ * Performs a GET request to poll the job status.
1253
+ * @throws {RelayerFetchError} If the fetch fails (network error, etc.)
1254
+ */
1255
+ private async _fetchGet(): Promise<Response> {
1256
+ // Debug state-check guards:
1257
+ // - the fetchMethod is guaranteed to be 'GET'.
1258
+ // - the jobId is guaranteed to be set.
1259
+ // - `terminated` is guaranteed to be `false`
1260
+ // - `fetching` is guaranteed to be `false`
1261
+ this._assert(this._fetchMethod === 'GET', 'this._fetchMethod === "GET"');
1262
+ this._assert(this._jobId !== undefined, 'this._jobId !== undefined');
1263
+ this._assert(!this._state.terminated, '!this._state.terminated');
1264
+ this._assert(!this._state.fetching, '!this._state.fetching');
1265
+
1266
+ this._trace('_fetchGet', `jobId=${this.jobId}`);
1267
+
1268
+ // Do not include API key here!
1269
+ // API key is only required on POST (by design).
1270
+ // This is necessary for future caching on gateway.
1271
+ // It will be implemented in future releases on (relayer).
1272
+ // See relayer team.
1273
+ const init: RequestInit = {
1274
+ method: 'GET',
1275
+ headers: {
1276
+ 'ZAMA-SDK-VERSION': version,
1277
+ 'ZAMA-SDK-NAME': sdkName,
1278
+ },
1279
+ ...(this._internalAbortSignal ? { signal: this._internalAbortSignal } : {}),
1280
+ };
1281
+
1282
+ this._state.fetching = true;
1283
+
1284
+ let response;
1285
+ try {
1286
+ response = await fetch(`${this._url}/${this.jobId}`, init);
1287
+ } catch (cause) {
1288
+ this._state.fetching = false;
1289
+ // Warning: `terminated` can be `true` here!
1290
+ // (ex: if `controller.abort()` has been called from the outside while still executing `fetch`)
1291
+ this._trace('_fetchGet', `jobId=${this.jobId}, ${formatFetchErrorMetaMessages(cause).join('. ')}`);
1292
+
1293
+ // Keep the standard 'AbortError'
1294
+ if ((cause as { name: string }).name === 'AbortError') {
1295
+ throw cause;
1296
+ } else {
1297
+ this._throwFetchError({
1298
+ message: 'Fetch GET failed.',
1299
+ cause,
1300
+ });
1301
+ }
1302
+ }
1303
+
1304
+ this._state.fetching = false;
1305
+
1306
+ // Debug state-check guards:
1307
+ // - the jobId is guaranteed to be set.
1308
+ // - `terminated` is guaranteed to be `false`
1309
+ this._assert(!this._state.terminated, '!this._state.terminated');
1310
+
1311
+ // Debug
1312
+ this._assertCanContinueAfterAwait();
1313
+
1314
+ this._trace('_fetchGet', `jobId=${this.jobId}, return response Ok, status=${response.status}`);
1315
+ return response;
1316
+ }
1317
+
1318
+ //////////////////////////////////////////////////////////////////////////////
1319
+ // AbortSignal
1320
+ //////////////////////////////////////////////////////////////////////////////
1321
+
1322
+ // Warning: Use arrow function only!
1323
+ private readonly _handleExternalSignalAbort = (ev: Event): void => {
1324
+ const signal = ev.currentTarget as AbortSignal;
1325
+
1326
+ // TESTING: the following sequences must be extensively tested:
1327
+ // ============================================================
1328
+ //
1329
+ // Each steps could potentially be called synchronously one after the other
1330
+ // or asynchronously: step 2 is called from the next microtick
1331
+ //
1332
+ // 1. externalSignal.abort();
1333
+ // 2. request.cancel();
1334
+ //
1335
+ // 1. externalSignal.abort();
1336
+ // 2. externalSignal.abort();
1337
+ //
1338
+ // 1. request.cancel();
1339
+ // 2. externalSignal.abort();
1340
+
1341
+ // Debug state-check guards:
1342
+ this._assert(this instanceof RelayerAsyncRequest, `this instanceof RelayerAsyncRequest`);
1343
+ this._assert(signal === this._externalAbortSignal, 'signal === this._externalAbortSignal');
1344
+ this._assert(!this._state.terminated, `!this._state.terminated`);
1345
+ this._assert(!this._state.aborted, '!this._state.aborted');
1346
+ this._assert(!this._state.canceled, '!this._state.canceled');
1347
+
1348
+ this.cancel();
1349
+ };
1350
+
1351
+ // Warning: Use arrow function only!
1352
+ private readonly _handleInternalSignalAbort = (ev: Event): void => {
1353
+ const signal = ev.currentTarget as AbortSignal;
1354
+
1355
+ // Debug state-check guards:
1356
+ this._assert(this instanceof RelayerAsyncRequest, `this instanceof RelayerAsyncRequest`);
1357
+ this._assert(signal === this._internalAbortSignal, 'signal === this._internalAbortSignal');
1358
+ this._assert(!this._state.terminated, `!this._state.terminated`);
1359
+ this._assert(!this._state.aborted, '!this._state.aborted');
1360
+
1361
+ this._state.aborted = true;
1362
+
1363
+ if (signal.reason !== 'cancel') {
1364
+ this._assert(!this._state.canceled, '!this._state.canceled');
1365
+ }
1366
+
1367
+ this._postAsyncOnProgressCallback({
1368
+ type: 'abort',
1369
+ url: this._url,
1370
+ step: this._step,
1371
+ totalSteps: this._totalSteps,
1372
+ ...(this._fetchMethod !== undefined ? { method: this._fetchMethod } : {}),
1373
+ ...(this._jobId !== undefined ? { jobId: this._jobId } : {}),
1374
+ operation: this._relayerOperation,
1375
+ retryCount: this._retryCount,
1376
+ } satisfies RelayerProgressAbort<RelayerPostOperation>);
1377
+
1378
+ this._terminate(
1379
+ 'abort',
1380
+ new RelayerAbortError({
1381
+ operation: this._relayerOperation,
1382
+ jobId: this._jobId,
1383
+ url: this._url,
1384
+ }),
1385
+ );
1386
+ };
1387
+
1388
+ //////////////////////////////////////////////////////////////////////////////
1389
+ // Terminate
1390
+ //////////////////////////////////////////////////////////////////////////////
1391
+
1392
+ /**
1393
+ * Can be called multiple times
1394
+ */
1395
+ private _terminate(reason: RelayerTerminateReason, error?: unknown): void {
1396
+ // Warning: this._state.fetching can be true
1397
+ // ex: call cancel while fetch is running
1398
+
1399
+ if (this._state.terminated) {
1400
+ this._trace(`_terminate`, `reason=${reason}. Already terminated with reason='${this._terminateReason}'. IGNORE`);
1401
+ this._assert(this._terminateReason !== undefined, 'this._terminateReason !== undefined');
1402
+ this._assert(this._internalAbortSignal === undefined, 'this._signal === undefined');
1403
+ this._assert(this._requestGlobalTimeoutID === undefined, 'this._requestGlobalTimeoutID === undefined');
1404
+ this._assert(this._retryAfterTimeoutID === undefined, 'this._retryAfterTimeoutID === undefined');
1405
+ this._assert(
1406
+ this._retryAfterTimeoutPromiseFuncReject === undefined,
1407
+ 'this._retryAfterTimeoutPromiseFuncReject === undefined',
1408
+ );
1409
+ return;
1410
+ }
1411
+
1412
+ this._trace('_terminate', `reason=${reason}`);
1413
+
1414
+ this._terminateReason = reason;
1415
+ this._terminateError = error;
1416
+ this._state.terminated = true;
1417
+
1418
+ this._tryClearRetryAfterTimeout(error);
1419
+ this._tryClearGlobalRequestTimeout();
1420
+
1421
+ const is = this._internalAbortSignal;
1422
+ const es = this._externalAbortSignal;
1423
+
1424
+ this._externalAbortSignal = undefined;
1425
+ this._internalAbortSignal = undefined;
1426
+ this._internalAbortController = undefined;
1427
+
1428
+ if (es) {
1429
+ es.removeEventListener('abort', this._handleExternalSignalAbort);
1430
+ }
1431
+ if (is) {
1432
+ is.removeEventListener('abort', this._handleInternalSignalAbort);
1433
+ }
1434
+
1435
+ this._trace('_terminate', `reason=${reason} completed.`);
1436
+ }
1437
+
1438
+ //////////////////////////////////////////////////////////////////////////////
1439
+ // Retry-After timeout
1440
+ //////////////////////////////////////////////////////////////////////////////
1441
+
1442
+ private async _setRetryAfterTimeout(delayMs: number, options?: { skipIncrementRetryCount?: boolean }): Promise<void> {
1443
+ const { skipIncrementRetryCount = false } = options ?? {};
1444
+
1445
+ // Debug
1446
+ this._assert(!this._state.terminated, '!this._state.terminated');
1447
+ this._assert(this._retryAfterTimeoutID === undefined, 'this._retryAfterTimeoutID === undefined');
1448
+
1449
+ this._trace('_setRetryAfterTimeout', `delayMs=${delayMs}`);
1450
+
1451
+ // Keep the test in case we must remove the assert
1452
+ if ((this._retryAfterTimeoutID as unknown) !== undefined) {
1453
+ return Promise.reject(new Error(`retry-after already running.`));
1454
+ }
1455
+
1456
+ const p = new Promise<void>((resolve, reject) => {
1457
+ this._retryAfterTimeoutPromiseFuncReject = reject;
1458
+
1459
+ const callback = (): void => {
1460
+ this._retryAfterTimeoutID = undefined;
1461
+ this._retryAfterTimeoutPromiseFuncReject = undefined;
1462
+ resolve();
1463
+ };
1464
+
1465
+ if (!skipIncrementRetryCount) {
1466
+ this._retryCount++;
1467
+ }
1468
+ this._retryAfterTimeoutID = setTimeout(callback, delayMs);
1469
+ });
1470
+
1471
+ // Keep the assertion (defensive)
1472
+ this._assert((this._retryAfterTimeoutID as unknown) !== undefined, 'this._retryAfterTimeoutID !== undefined');
1473
+ this._assert(
1474
+ this._retryAfterTimeoutPromiseFuncReject !== undefined,
1475
+ 'this._retryAfterTimeoutPromiseFuncReject !== undefined',
1476
+ );
1477
+
1478
+ return p;
1479
+ }
1480
+
1481
+ //////////////////////////////////////////////////////////////////////////////
1482
+
1483
+ private _tryClearRetryAfterTimeout(error?: unknown): void {
1484
+ if (this._retryAfterTimeoutID === undefined) {
1485
+ // Debug
1486
+ this._assert(
1487
+ this._retryAfterTimeoutPromiseFuncReject === undefined,
1488
+ 'this._retryAfterTimeoutPromiseFuncReject === undefined',
1489
+ );
1490
+ return;
1491
+ }
1492
+
1493
+ this._assert(
1494
+ this._retryAfterTimeoutPromiseFuncReject !== undefined,
1495
+ 'this._retryAfterTimeoutPromiseFuncReject !== undefined',
1496
+ );
1497
+
1498
+ const reject = this._retryAfterTimeoutPromiseFuncReject;
1499
+ const tid = this._retryAfterTimeoutID;
1500
+
1501
+ this._retryAfterTimeoutID = undefined;
1502
+ this._retryAfterTimeoutPromiseFuncReject = undefined;
1503
+
1504
+ clearTimeout(tid);
1505
+
1506
+ // Calling reject will
1507
+ reject(error ?? new Error('_tryClearRetryAfterTimeout'));
1508
+ }
1509
+
1510
+ //////////////////////////////////////////////////////////////////////////////
1511
+ // Global Request Timeout
1512
+ //////////////////////////////////////////////////////////////////////////////
1513
+
1514
+ private _setGlobalRequestTimeout(delayMs: number): void {
1515
+ // Debug
1516
+ this._assert(this._requestGlobalTimeoutID === undefined, 'this._requestGlobalTimeoutID === undefined');
1517
+
1518
+ const callback = (): void => {
1519
+ this._requestGlobalTimeoutID = undefined;
1520
+ this._handleGlobalRequestTimeout();
1521
+ };
1522
+
1523
+ this._requestGlobalTimeoutID = setTimeout(callback, delayMs);
1524
+ }
1525
+
1526
+ private _handleGlobalRequestTimeout(): void {
1527
+ // Debug state-check guards:
1528
+ this._assert(this instanceof RelayerAsyncRequest, `this instanceof RelayerAsyncRequest`);
1529
+ this._assert(!this._state.terminated, `!this._state.terminated`);
1530
+ this._assert(!this._state.timeout, '!this._state.timeout');
1531
+
1532
+ this._state.timeout = true;
1533
+
1534
+ this._postAsyncOnProgressCallback({
1535
+ type: 'timeout',
1536
+ url: this._url,
1537
+ ...(this._fetchMethod !== undefined ? { method: this._fetchMethod } : {}),
1538
+ ...(this._jobId !== undefined ? { jobId: this._jobId } : {}),
1539
+ operation: this._relayerOperation,
1540
+ retryCount: this._retryCount,
1541
+ step: this._step,
1542
+ totalSteps: this._totalSteps,
1543
+ } satisfies RelayerProgressTimeout<RelayerPostOperation>);
1544
+
1545
+ this._terminate(
1546
+ 'timeout',
1547
+ new RelayerTimeoutError({
1548
+ operation: this._relayerOperation,
1549
+ jobId: this._jobId,
1550
+ url: this._url,
1551
+ timeoutMs: this._requestMaxDurationInMs,
1552
+ }),
1553
+ );
1554
+ }
1555
+
1556
+ private _tryClearGlobalRequestTimeout(): void {
1557
+ if (this._requestGlobalTimeoutID === undefined) {
1558
+ return;
1559
+ }
1560
+
1561
+ const tid = this._requestGlobalTimeoutID;
1562
+
1563
+ this._requestGlobalTimeoutID = undefined;
1564
+ clearTimeout(tid);
1565
+ }
1566
+
1567
+ //////////////////////////////////////////////////////////////////////////////
1568
+ // Progress
1569
+ //////////////////////////////////////////////////////////////////////////////
1570
+
1571
+ private _postAsyncOnProgressCallback(
1572
+ args:
1573
+ | RelayerInputProofProgressArgs
1574
+ | RelayerUserDecryptProgressArgs
1575
+ | RelayerDelegatedUserDecryptProgressArgs
1576
+ | RelayerPublicDecryptProgressArgs,
1577
+ ): void {
1578
+ const onProgressFunc = this._onProgress;
1579
+ if (onProgressFunc) {
1580
+ // setTimeout(() => {
1581
+ // onProgressFunc(args);
1582
+ // }, 0);
1583
+
1584
+ // onProgressFunc() will execute asynchronously in the next cycle of
1585
+ // the JavaScript event loop (the microtask queue).
1586
+ // Promise.resolve().then(() => {
1587
+ // onProgressFunc(args);
1588
+ // });
1589
+
1590
+ queueMicrotask(() => {
1591
+ onProgressFunc(args);
1592
+ });
1593
+ }
1594
+ }
1595
+
1596
+ //////////////////////////////////////////////////////////////////////////////
1597
+ // Errors
1598
+ //////////////////////////////////////////////////////////////////////////////
1599
+
1600
+ /**
1601
+ * Throws an unauthorized error for 401 responses.
1602
+ * @throws {RelayerResponseApiError} Always throws with 'unauthorized' label.
1603
+ */
1604
+ private _throwUnauthorizedError(status: Extract<RelayerFailureStatus, 401>): never {
1605
+ this._throwRelayerResponseApiError({
1606
+ status,
1607
+ relayerApiError: {
1608
+ label: 'unauthorized',
1609
+ message: 'Unauthorized, missing or invalid Zama Fhevm API Key.',
1610
+ },
1611
+ });
1612
+ }
1613
+
1614
+ /**
1615
+ * Throws a relayer API error with the given status and error details.
1616
+ * @throws {RelayerResponseApiError} Always throws with the provided error details.
1617
+ */
1618
+ private _throwRelayerResponseApiError(params: {
1619
+ status: RelayerFailureStatus;
1620
+ relayerApiError: RelayerApiError;
1621
+ }): never {
1622
+ // Clone
1623
+ const clonedRelayerApiError = JSON.parse(JSON.stringify(params.relayerApiError)) as RelayerApiError;
1624
+
1625
+ const args: RelayerProgressFailed<RelayerPostOperation> = {
1626
+ type: 'failed',
1627
+ url: this._url,
1628
+ method: this._fetchMethod as unknown as RelayerFetchMethod,
1629
+ status: params.status,
1630
+ ...(this._jobId !== undefined ? { jobId: this._jobId } : {}),
1631
+ operation: this._relayerOperation,
1632
+ retryCount: this._retryCount,
1633
+ elapsed: this._elapsed,
1634
+ relayerApiError: clonedRelayerApiError,
1635
+ step: this._step,
1636
+ totalSteps: this._totalSteps,
1637
+ } satisfies RelayerProgressFailed<RelayerPostOperation>;
1638
+
1639
+ // Async onProgress callback
1640
+ this._postAsyncOnProgressCallback(
1641
+ this._relayerOperation === 'INPUT_PROOF'
1642
+ ? (args as RelayerProgressFailed<'INPUT_PROOF'>)
1643
+ : this._relayerOperation === 'PUBLIC_DECRYPT'
1644
+ ? (args as RelayerProgressFailed<'PUBLIC_DECRYPT'>)
1645
+ : this._relayerOperation === 'USER_DECRYPT'
1646
+ ? (args as RelayerProgressFailed<'USER_DECRYPT'>)
1647
+ : (args as RelayerProgressFailed<'DELEGATED_USER_DECRYPT'>),
1648
+ );
1649
+
1650
+ throw new RelayerResponseApiError({
1651
+ url: this._url,
1652
+ fetchMethod: this._fetchMethod as unknown as RelayerFetchMethod,
1653
+ status: params.status,
1654
+ jobId: this._jobId,
1655
+ operation: this._relayerOperation,
1656
+ retryCount: this._retryCount,
1657
+ relayerApiError: params.relayerApiError,
1658
+ elapsed: this._elapsed,
1659
+ state: { ...this._state },
1660
+ });
1661
+ }
1662
+
1663
+ private _assert(condition: boolean, message: string): asserts condition {
1664
+ if (!condition) {
1665
+ this._throwInternalError(`Assertion failed: ${message}`);
1666
+ }
1667
+ }
1668
+
1669
+ /**
1670
+ * Throws an internal error
1671
+ * @throws {RelayerRequestInternalError}
1672
+ */
1673
+ private _throwInternalError(message: string): never {
1674
+ throw new RelayerRequestInternalError({
1675
+ operation: this._relayerOperation,
1676
+ url: this._url,
1677
+ message,
1678
+ state: JSON.stringify(this._state),
1679
+ jobId: this._jobId, // internal value
1680
+ });
1681
+ }
1682
+
1683
+ /**
1684
+ * Throws a max retry error when the request has exceeded the retry limit.
1685
+ * @throws {RelayerMaxRetryError} Always throws.
1686
+ */
1687
+ private _throwMaxRetryError(params: { fetchMethod: 'GET' | 'POST' }): never {
1688
+ const elapsed = this._jobIdTimestamp !== undefined ? Date.now() - this._jobIdTimestamp : 0;
1689
+ throw new RelayerMaxRetryError({
1690
+ operation: this._relayerOperation,
1691
+ url: this._url,
1692
+ state: { ...this._state },
1693
+ retryCount: this._retryCount,
1694
+ jobId: this._jobId, // internal value
1695
+ fetchMethod: params.fetchMethod,
1696
+ elapsed,
1697
+ });
1698
+ }
1699
+
1700
+ /**
1701
+ * Throws an error when the response body does not match the expected schema.
1702
+ * @throws {RelayerResponseInvalidBodyError} Always throws.
1703
+ */
1704
+ private _throwResponseInvalidBodyError(params: {
1705
+ status: number;
1706
+ cause: InvalidPropertyError;
1707
+ bodyJson: string;
1708
+ }): never {
1709
+ throw new RelayerResponseInvalidBodyError({
1710
+ ...params,
1711
+ fetchMethod: this._fetchMethod as unknown as RelayerFetchMethod,
1712
+ url: this._url,
1713
+ jobId: this._jobId,
1714
+ operation: this._relayerOperation,
1715
+ state: { ...this._state },
1716
+ retryCount: this._retryCount,
1717
+ elapsed: this._elapsed,
1718
+ });
1719
+ }
1720
+
1721
+ /**
1722
+ * Throws an error when a fetch operation fails (network error, JSON parse error, etc.).
1723
+ * @throws {RelayerFetchError} Always throws.
1724
+ */
1725
+ private _throwFetchError(params: { message: string; cause: unknown }): never {
1726
+ throw new RelayerFetchError({
1727
+ ...params,
1728
+ elapsed: this._elapsed,
1729
+ url: this._url,
1730
+ jobId: this._jobId,
1731
+ operation: this._relayerOperation,
1732
+ state: { ...this._state },
1733
+ retryCount: this._retryCount,
1734
+ fetchMethod: this._fetchMethod as unknown as RelayerFetchMethod,
1735
+ });
1736
+ }
1737
+
1738
+ /**
1739
+ * Assert Continuation Guard
1740
+ *
1741
+ * This internal method implements a state-check guard to ensure the state machine
1742
+ * can safely proceed after an asynchronous operation has completed.
1743
+ *
1744
+ * In a state machine with asynchronous calls (e.g., fetch, timer delays), the system's
1745
+ * state (e.g., this._state) might change externally during the 'await' pause
1746
+ * (e.g., due to a timeout, an external abort signal, or a concurrent state transition).
1747
+ *
1748
+ * If the internal check (this._canContinue()) returns false, it means the current
1749
+ * operation is no longer valid, and execution must stop immediately to prevent state corruption.
1750
+ * This pattern is essential for reliable asynchronous state machines.
1751
+ *
1752
+ * @throws {RelayerRequestInternalError} Thrown if the state check fails (i.e., this._canContinue() is false).
1753
+ * The error includes relevant state information (like current state and jobId)
1754
+ * to aid in debugging the exact point of the integrity failure.
1755
+ */
1756
+ private _assertCanContinueAfterAwait(): void {
1757
+ if (!this._canContinue()) {
1758
+ this._throwInternalError('cannot continue.');
1759
+ }
1760
+ }
1761
+
1762
+ //////////////////////////////////////////////////////////////////////////////
1763
+ // Trace
1764
+ //////////////////////////////////////////////////////////////////////////////
1765
+
1766
+ private _trace(functionName: string, message: string): void {
1767
+ if (this._debug) {
1768
+ console.log(`[RelayerAsyncRequest]:${functionName}: ${message}`);
1769
+ }
1770
+ }
1771
+ }