@inco/js 0.3.1 → 0.3.2-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 (381) hide show
  1. package/dist/cjs/advancedacl/session-key.d.ts +29 -0
  2. package/dist/cjs/advancedacl/session-key.js +167 -27
  3. package/dist/cjs/attestedcompute/attested-compute.d.ts +16 -16
  4. package/dist/cjs/attestedcompute/attested-compute.js +66 -73
  5. package/dist/cjs/attestedcompute/types.d.ts +3 -2
  6. package/dist/cjs/attesteddecrypt/attested-decrypt.d.ts +20 -19
  7. package/dist/cjs/attesteddecrypt/attested-decrypt.js +67 -61
  8. package/dist/cjs/attesteddecrypt/index.d.ts +0 -1
  9. package/dist/cjs/attesteddecrypt/index.js +1 -2
  10. package/dist/cjs/attesteddecrypt/types.d.ts +3 -2
  11. package/dist/cjs/attestedreveal/attested-reveal.d.ts +21 -0
  12. package/dist/cjs/attestedreveal/attested-reveal.js +66 -0
  13. package/dist/cjs/attestedreveal/index.d.ts +1 -0
  14. package/dist/cjs/{fhevm → attestedreveal}/index.js +2 -2
  15. package/dist/cjs/attestedreveal/types.d.ts +7 -0
  16. package/dist/cjs/attestedreveal/types.js +16 -0
  17. package/dist/cjs/generated/abis/addTwo.d.ts +18 -0
  18. package/dist/cjs/generated/abis/addTwo.js +9 -1
  19. package/dist/cjs/generated/abis/lightning-preview.d.ts +48 -0
  20. package/dist/cjs/generated/abis/lightning-preview.js +29 -1
  21. package/dist/cjs/generated/abis/lightning.d.ts +34 -0
  22. package/dist/cjs/generated/abis/lightning.js +22 -1
  23. package/dist/cjs/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +63 -5
  24. package/dist/cjs/generated/es/inco/kms/lite/v1/kms_service_pb.js +17 -7
  25. package/dist/cjs/generated/lightning.d.ts +31 -10
  26. package/dist/cjs/generated/lightning.js +33 -11
  27. package/dist/cjs/lite/attested-compute.d.ts +5 -4
  28. package/dist/cjs/lite/attested-compute.js +4 -3
  29. package/dist/cjs/lite/attested-decrypt.d.ts +3 -2
  30. package/dist/cjs/lite/attested-decrypt.js +4 -3
  31. package/dist/cjs/lite/index.d.ts +4 -1
  32. package/dist/cjs/lite/index.js +3 -1
  33. package/dist/cjs/lite/lightning.d.ts +73 -2
  34. package/dist/cjs/lite/lightning.js +65 -1
  35. package/dist/cjs/lite/reencrypt.d.ts +0 -1
  36. package/dist/cjs/lite/reencrypt.js +8 -20
  37. package/dist/cjs/local/local-node.js +35 -3
  38. package/dist/cjs/reencryption/types.d.ts +1 -2
  39. package/dist/esm/advancedacl/session-key.d.ts +29 -0
  40. package/dist/esm/advancedacl/session-key.js +160 -22
  41. package/dist/esm/attestedcompute/attested-compute.d.ts +16 -16
  42. package/dist/esm/attestedcompute/attested-compute.js +64 -72
  43. package/dist/esm/attestedcompute/types.d.ts +3 -2
  44. package/dist/esm/attesteddecrypt/attested-decrypt.d.ts +20 -19
  45. package/dist/esm/attesteddecrypt/attested-decrypt.js +65 -60
  46. package/dist/esm/attesteddecrypt/index.d.ts +0 -1
  47. package/dist/esm/attesteddecrypt/index.js +1 -2
  48. package/dist/esm/attesteddecrypt/types.d.ts +3 -2
  49. package/dist/esm/attestedreveal/attested-reveal.d.ts +21 -0
  50. package/dist/esm/attestedreveal/attested-reveal.js +63 -0
  51. package/dist/esm/attestedreveal/index.d.ts +1 -0
  52. package/dist/esm/attestedreveal/index.js +2 -0
  53. package/dist/esm/attestedreveal/types.d.ts +7 -0
  54. package/dist/esm/attestedreveal/types.js +12 -0
  55. package/dist/esm/generated/abis/addTwo.d.ts +18 -0
  56. package/dist/esm/generated/abis/addTwo.js +9 -1
  57. package/dist/esm/generated/abis/lightning-preview.d.ts +48 -0
  58. package/dist/esm/generated/abis/lightning-preview.js +29 -1
  59. package/dist/esm/generated/abis/lightning.d.ts +34 -0
  60. package/dist/esm/generated/abis/lightning.js +22 -1
  61. package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +63 -5
  62. package/dist/esm/generated/es/inco/kms/lite/v1/kms_service_pb.js +16 -6
  63. package/dist/esm/generated/lightning.d.ts +31 -10
  64. package/dist/esm/generated/lightning.js +33 -11
  65. package/dist/esm/lite/attested-compute.d.ts +5 -4
  66. package/dist/esm/lite/attested-compute.js +3 -3
  67. package/dist/esm/lite/attested-decrypt.d.ts +3 -2
  68. package/dist/esm/lite/attested-decrypt.js +3 -3
  69. package/dist/esm/lite/index.d.ts +4 -1
  70. package/dist/esm/lite/index.js +3 -1
  71. package/dist/esm/lite/lightning.d.ts +73 -2
  72. package/dist/esm/lite/lightning.js +66 -2
  73. package/dist/esm/lite/reencrypt.d.ts +0 -1
  74. package/dist/esm/lite/reencrypt.js +9 -20
  75. package/dist/esm/local/local-node.js +35 -3
  76. package/dist/esm/reencryption/types.d.ts +1 -2
  77. package/dist/types/advancedacl/session-key.d.ts +29 -0
  78. package/dist/types/attestedcompute/attested-compute.d.ts +16 -16
  79. package/dist/types/attestedcompute/types.d.ts +3 -2
  80. package/dist/types/attesteddecrypt/attested-decrypt.d.ts +20 -19
  81. package/dist/types/attesteddecrypt/index.d.ts +0 -1
  82. package/dist/types/attesteddecrypt/types.d.ts +3 -2
  83. package/dist/types/attestedreveal/attested-reveal.d.ts +21 -0
  84. package/dist/types/attestedreveal/index.d.ts +1 -0
  85. package/dist/types/attestedreveal/types.d.ts +7 -0
  86. package/dist/types/generated/abis/addTwo.d.ts +18 -0
  87. package/dist/types/generated/abis/lightning-preview.d.ts +48 -0
  88. package/dist/types/generated/abis/lightning.d.ts +34 -0
  89. package/dist/types/generated/es/inco/kms/lite/v1/kms_service_pb.d.ts +63 -5
  90. package/dist/types/generated/lightning.d.ts +31 -10
  91. package/dist/types/lite/attested-compute.d.ts +5 -4
  92. package/dist/types/lite/attested-decrypt.d.ts +3 -2
  93. package/dist/types/lite/index.d.ts +4 -1
  94. package/dist/types/lite/lightning.d.ts +73 -2
  95. package/dist/types/lite/reencrypt.d.ts +0 -1
  96. package/dist/types/reencryption/types.d.ts +1 -2
  97. package/package.json +28 -17
  98. package/dist/cjs/fhevm/fhe-environment.d.ts +0 -9
  99. package/dist/cjs/fhevm/fhe-environment.js +0 -11
  100. package/dist/cjs/fhevm/fhevm.d.ts +0 -41
  101. package/dist/cjs/fhevm/fhevm.js +0 -145
  102. package/dist/cjs/fhevm/index.d.ts +0 -1
  103. package/dist/cjs/fhevm/reencrypt.d.ts +0 -20
  104. package/dist/cjs/fhevm/reencrypt.js +0 -127
  105. package/dist/cjs/fhevm/tfhe.d.ts +0 -74
  106. package/dist/cjs/fhevm/tfhe.js +0 -336
  107. package/dist/cjs/fhevm/types.d.ts +0 -3
  108. package/dist/cjs/fhevm/types.js +0 -29
  109. package/dist/cjs/generated/abis/inco-fhevm.d.ts +0 -874
  110. package/dist/cjs/generated/abis/inco-fhevm.js +0 -681
  111. package/dist/cjs/generated/es/cosmos/msg/v1/msg_pb.d.ts +0 -29
  112. package/dist/cjs/generated/es/cosmos/msg/v1/msg_pb.js +0 -36
  113. package/dist/cjs/generated/es/google/api/annotations_pb.d.ts +0 -13
  114. package/dist/cjs/generated/es/google/api/annotations_pb.js +0 -30
  115. package/dist/cjs/generated/es/google/api/http_pb.d.ts +0 -440
  116. package/dist/cjs/generated/es/google/api/http_pb.js +0 -37
  117. package/dist/cjs/generated/es/inco/fhe/v1/events_pb.d.ts +0 -79
  118. package/dist/cjs/generated/es/inco/fhe/v1/events_pb.js +0 -24
  119. package/dist/cjs/generated/es/inco/fhe/v1/genesis_pb.d.ts +0 -252
  120. package/dist/cjs/generated/es/inco/fhe/v1/genesis_pb.js +0 -49
  121. package/dist/cjs/generated/es/inco/fhe/v1/query_pb.d.ts +0 -569
  122. package/dist/cjs/generated/es/inco/fhe/v1/query_pb.js +0 -111
  123. package/dist/cjs/generated/es/inco/fhe/v1/tx_pb.d.ts +0 -494
  124. package/dist/cjs/generated/es/inco/fhe/v1/tx_pb.js +0 -111
  125. package/dist/cjs/generated/es/inco/preflight/v1/genesis_pb.d.ts +0 -56
  126. package/dist/cjs/generated/es/inco/preflight/v1/genesis_pb.js +0 -23
  127. package/dist/cjs/generated/es/inco/preflight/v1/query_pb.d.ts +0 -100
  128. package/dist/cjs/generated/es/inco/preflight/v1/query_pb.js +0 -41
  129. package/dist/cjs/generated/es/inco/preflight/v1/tx_pb.d.ts +0 -193
  130. package/dist/cjs/generated/es/inco/preflight/v1/tx_pb.js +0 -51
  131. package/dist/cjs/generated/es/inco/preflight/v1/types_pb.d.ts +0 -144
  132. package/dist/cjs/generated/es/inco/preflight/v1/types_pb.js +0 -37
  133. package/dist/cjs/generated/fhe-environments.d.ts +0 -14
  134. package/dist/cjs/generated/fhe-environments.js +0 -18
  135. package/dist/cjs/generated/ts/amino/amino.d.ts +0 -1
  136. package/dist/cjs/generated/ts/amino/amino.js +0 -11
  137. package/dist/cjs/generated/ts/cometbft/abci/v1/types.d.ts +0 -597
  138. package/dist/cjs/generated/ts/cometbft/abci/v1/types.js +0 -5079
  139. package/dist/cjs/generated/ts/cometbft/crypto/v1/keys.d.ts +0 -27
  140. package/dist/cjs/generated/ts/cometbft/crypto/v1/keys.js +0 -108
  141. package/dist/cjs/generated/ts/cometbft/crypto/v1/proof.d.ts +0 -60
  142. package/dist/cjs/generated/ts/cometbft/crypto/v1/proof.js +0 -433
  143. package/dist/cjs/generated/ts/cometbft/types/v1/params.d.ts +0 -179
  144. package/dist/cjs/generated/ts/cometbft/types/v1/params.js +0 -716
  145. package/dist/cjs/generated/ts/cometbft/types/v1/validator.d.ts +0 -61
  146. package/dist/cjs/generated/ts/cometbft/types/v1/validator.js +0 -358
  147. package/dist/cjs/generated/ts/cosmos/app/v1alpha1/module.d.ts +0 -104
  148. package/dist/cjs/generated/ts/cosmos/app/v1alpha1/module.js +0 -221
  149. package/dist/cjs/generated/ts/cosmos/msg/v1/msg.d.ts +0 -1
  150. package/dist/cjs/generated/ts/cosmos/msg/v1/msg.js +0 -11
  151. package/dist/cjs/generated/ts/cosmos_proto/cosmos.d.ts +0 -80
  152. package/dist/cjs/generated/ts/cosmos_proto/cosmos.js +0 -216
  153. package/dist/cjs/generated/ts/gogoproto/gogo.d.ts +0 -1
  154. package/dist/cjs/generated/ts/gogoproto/gogo.js +0 -11
  155. package/dist/cjs/generated/ts/google/api/annotations.d.ts +0 -1
  156. package/dist/cjs/generated/ts/google/api/annotations.js +0 -11
  157. package/dist/cjs/generated/ts/google/api/http.d.ts +0 -371
  158. package/dist/cjs/generated/ts/google/api/http.js +0 -356
  159. package/dist/cjs/generated/ts/google/protobuf/descriptor.d.ts +0 -1228
  160. package/dist/cjs/generated/ts/google/protobuf/descriptor.js +0 -5108
  161. package/dist/cjs/generated/ts/google/protobuf/duration.d.ts +0 -99
  162. package/dist/cjs/generated/ts/google/protobuf/duration.js +0 -93
  163. package/dist/cjs/generated/ts/google/protobuf/timestamp.d.ts +0 -128
  164. package/dist/cjs/generated/ts/google/protobuf/timestamp.js +0 -93
  165. package/dist/cjs/generated/ts/google/protobuf/wrappers.d.ts +0 -111
  166. package/dist/cjs/generated/ts/google/protobuf/wrappers.js +0 -509
  167. package/dist/cjs/generated/ts/inco/abci/v1/types.d.ts +0 -35
  168. package/dist/cjs/generated/ts/inco/abci/v1/types.js +0 -73
  169. package/dist/cjs/generated/ts/inco/fhe/module/v1/module.d.ts +0 -31
  170. package/dist/cjs/generated/ts/inco/fhe/module/v1/module.js +0 -66
  171. package/dist/cjs/generated/ts/inco/fhe/v1/events.d.ts +0 -66
  172. package/dist/cjs/generated/ts/inco/fhe/v1/events.js +0 -190
  173. package/dist/cjs/generated/ts/inco/fhe/v1/genesis.d.ts +0 -117
  174. package/dist/cjs/generated/ts/inco/fhe/v1/genesis.js +0 -714
  175. package/dist/cjs/generated/ts/inco/fhe/v1/query.d.ts +0 -366
  176. package/dist/cjs/generated/ts/inco/fhe/v1/query.js +0 -1394
  177. package/dist/cjs/generated/ts/inco/fhe/v1/tx.d.ts +0 -409
  178. package/dist/cjs/generated/ts/inco/fhe/v1/tx.js +0 -1236
  179. package/dist/cjs/generated/ts/inco/fhe/v1/types.d.ts +0 -225
  180. package/dist/cjs/generated/ts/inco/fhe/v1/types.js +0 -990
  181. package/dist/cjs/generated/ts/inco/originchain/module/v1/module.d.ts +0 -30
  182. package/dist/cjs/generated/ts/inco/originchain/module/v1/module.js +0 -66
  183. package/dist/cjs/generated/ts/inco/originchain/v1/abci.d.ts +0 -80
  184. package/dist/cjs/generated/ts/inco/originchain/v1/abci.js +0 -331
  185. package/dist/cjs/generated/ts/inco/originchain/v1/events.d.ts +0 -60
  186. package/dist/cjs/generated/ts/inco/originchain/v1/events.js +0 -216
  187. package/dist/cjs/generated/ts/inco/originchain/v1/genesis.d.ts +0 -28
  188. package/dist/cjs/generated/ts/inco/originchain/v1/genesis.js +0 -69
  189. package/dist/cjs/generated/ts/inco/originchain/v1/query.d.ts +0 -116
  190. package/dist/cjs/generated/ts/inco/originchain/v1/query.js +0 -280
  191. package/dist/cjs/generated/ts/inco/originchain/v1/tx.d.ts +0 -89
  192. package/dist/cjs/generated/ts/inco/originchain/v1/tx.js +0 -140
  193. package/dist/cjs/generated/ts/inco/originchain/v1/types.d.ts +0 -58
  194. package/dist/cjs/generated/ts/inco/originchain/v1/types.js +0 -203
  195. package/dist/cjs/generated/ts/inco/preflight/module/v1/module.d.ts +0 -31
  196. package/dist/cjs/generated/ts/inco/preflight/module/v1/module.js +0 -66
  197. package/dist/cjs/generated/ts/inco/preflight/v1/genesis.d.ts +0 -41
  198. package/dist/cjs/generated/ts/inco/preflight/v1/genesis.js +0 -185
  199. package/dist/cjs/generated/ts/inco/preflight/v1/query.d.ts +0 -93
  200. package/dist/cjs/generated/ts/inco/preflight/v1/query.js +0 -259
  201. package/dist/cjs/generated/ts/inco/preflight/v1/tx.d.ts +0 -187
  202. package/dist/cjs/generated/ts/inco/preflight/v1/tx.js +0 -448
  203. package/dist/cjs/generated/ts/inco/preflight/v1/types.d.ts +0 -84
  204. package/dist/cjs/generated/ts/inco/preflight/v1/types.js +0 -398
  205. package/dist/cjs/l1/client.d.ts +0 -35
  206. package/dist/cjs/l1/client.js +0 -97
  207. package/dist/cjs/l1/index.d.ts +0 -2
  208. package/dist/cjs/l1/index.js +0 -19
  209. package/dist/cjs/l1/preflight.d.ts +0 -20
  210. package/dist/cjs/l1/preflight.js +0 -42
  211. package/dist/esm/fhevm/fhe-environment.d.ts +0 -9
  212. package/dist/esm/fhevm/fhe-environment.js +0 -8
  213. package/dist/esm/fhevm/fhevm.d.ts +0 -41
  214. package/dist/esm/fhevm/fhevm.js +0 -139
  215. package/dist/esm/fhevm/index.d.ts +0 -1
  216. package/dist/esm/fhevm/index.js +0 -2
  217. package/dist/esm/fhevm/reencrypt.d.ts +0 -20
  218. package/dist/esm/fhevm/reencrypt.js +0 -123
  219. package/dist/esm/fhevm/tfhe.d.ts +0 -74
  220. package/dist/esm/fhevm/tfhe.js +0 -328
  221. package/dist/esm/fhevm/types.d.ts +0 -3
  222. package/dist/esm/fhevm/types.js +0 -26
  223. package/dist/esm/generated/abis/inco-fhevm.d.ts +0 -874
  224. package/dist/esm/generated/abis/inco-fhevm.js +0 -678
  225. package/dist/esm/generated/es/cosmos/msg/v1/msg_pb.d.ts +0 -29
  226. package/dist/esm/generated/es/cosmos/msg/v1/msg_pb.js +0 -33
  227. package/dist/esm/generated/es/google/api/annotations_pb.d.ts +0 -13
  228. package/dist/esm/generated/es/google/api/annotations_pb.js +0 -27
  229. package/dist/esm/generated/es/google/api/http_pb.d.ts +0 -440
  230. package/dist/esm/generated/es/google/api/http_pb.js +0 -34
  231. package/dist/esm/generated/es/inco/fhe/v1/events_pb.d.ts +0 -79
  232. package/dist/esm/generated/es/inco/fhe/v1/events_pb.js +0 -21
  233. package/dist/esm/generated/es/inco/fhe/v1/genesis_pb.d.ts +0 -252
  234. package/dist/esm/generated/es/inco/fhe/v1/genesis_pb.js +0 -46
  235. package/dist/esm/generated/es/inco/fhe/v1/query_pb.d.ts +0 -569
  236. package/dist/esm/generated/es/inco/fhe/v1/query_pb.js +0 -108
  237. package/dist/esm/generated/es/inco/fhe/v1/tx_pb.d.ts +0 -494
  238. package/dist/esm/generated/es/inco/fhe/v1/tx_pb.js +0 -108
  239. package/dist/esm/generated/es/inco/preflight/v1/genesis_pb.d.ts +0 -56
  240. package/dist/esm/generated/es/inco/preflight/v1/genesis_pb.js +0 -20
  241. package/dist/esm/generated/es/inco/preflight/v1/query_pb.d.ts +0 -100
  242. package/dist/esm/generated/es/inco/preflight/v1/query_pb.js +0 -38
  243. package/dist/esm/generated/es/inco/preflight/v1/tx_pb.d.ts +0 -193
  244. package/dist/esm/generated/es/inco/preflight/v1/tx_pb.js +0 -48
  245. package/dist/esm/generated/es/inco/preflight/v1/types_pb.d.ts +0 -144
  246. package/dist/esm/generated/es/inco/preflight/v1/types_pb.js +0 -34
  247. package/dist/esm/generated/fhe-environments.d.ts +0 -14
  248. package/dist/esm/generated/fhe-environments.js +0 -15
  249. package/dist/esm/generated/ts/amino/amino.d.ts +0 -1
  250. package/dist/esm/generated/ts/amino/amino.js +0 -8
  251. package/dist/esm/generated/ts/cometbft/abci/v1/types.d.ts +0 -597
  252. package/dist/esm/generated/ts/cometbft/abci/v1/types.js +0 -5063
  253. package/dist/esm/generated/ts/cometbft/crypto/v1/keys.d.ts +0 -27
  254. package/dist/esm/generated/ts/cometbft/crypto/v1/keys.js +0 -105
  255. package/dist/esm/generated/ts/cometbft/crypto/v1/proof.d.ts +0 -60
  256. package/dist/esm/generated/ts/cometbft/crypto/v1/proof.js +0 -430
  257. package/dist/esm/generated/ts/cometbft/types/v1/params.d.ts +0 -179
  258. package/dist/esm/generated/ts/cometbft/types/v1/params.js +0 -713
  259. package/dist/esm/generated/ts/cometbft/types/v1/validator.d.ts +0 -61
  260. package/dist/esm/generated/ts/cometbft/types/v1/validator.js +0 -353
  261. package/dist/esm/generated/ts/cosmos/app/v1alpha1/module.d.ts +0 -104
  262. package/dist/esm/generated/ts/cosmos/app/v1alpha1/module.js +0 -218
  263. package/dist/esm/generated/ts/cosmos/msg/v1/msg.d.ts +0 -1
  264. package/dist/esm/generated/ts/cosmos/msg/v1/msg.js +0 -8
  265. package/dist/esm/generated/ts/cosmos_proto/cosmos.d.ts +0 -80
  266. package/dist/esm/generated/ts/cosmos_proto/cosmos.js +0 -211
  267. package/dist/esm/generated/ts/gogoproto/gogo.d.ts +0 -1
  268. package/dist/esm/generated/ts/gogoproto/gogo.js +0 -8
  269. package/dist/esm/generated/ts/google/api/annotations.d.ts +0 -1
  270. package/dist/esm/generated/ts/google/api/annotations.js +0 -8
  271. package/dist/esm/generated/ts/google/api/http.d.ts +0 -371
  272. package/dist/esm/generated/ts/google/api/http.js +0 -353
  273. package/dist/esm/generated/ts/google/protobuf/descriptor.d.ts +0 -1228
  274. package/dist/esm/generated/ts/google/protobuf/descriptor.js +0 -5070
  275. package/dist/esm/generated/ts/google/protobuf/duration.d.ts +0 -99
  276. package/dist/esm/generated/ts/google/protobuf/duration.js +0 -90
  277. package/dist/esm/generated/ts/google/protobuf/timestamp.d.ts +0 -128
  278. package/dist/esm/generated/ts/google/protobuf/timestamp.js +0 -90
  279. package/dist/esm/generated/ts/google/protobuf/wrappers.d.ts +0 -111
  280. package/dist/esm/generated/ts/google/protobuf/wrappers.js +0 -506
  281. package/dist/esm/generated/ts/inco/abci/v1/types.d.ts +0 -35
  282. package/dist/esm/generated/ts/inco/abci/v1/types.js +0 -70
  283. package/dist/esm/generated/ts/inco/fhe/module/v1/module.d.ts +0 -31
  284. package/dist/esm/generated/ts/inco/fhe/module/v1/module.js +0 -63
  285. package/dist/esm/generated/ts/inco/fhe/v1/events.d.ts +0 -66
  286. package/dist/esm/generated/ts/inco/fhe/v1/events.js +0 -187
  287. package/dist/esm/generated/ts/inco/fhe/v1/genesis.d.ts +0 -117
  288. package/dist/esm/generated/ts/inco/fhe/v1/genesis.js +0 -711
  289. package/dist/esm/generated/ts/inco/fhe/v1/query.d.ts +0 -366
  290. package/dist/esm/generated/ts/inco/fhe/v1/query.js +0 -1391
  291. package/dist/esm/generated/ts/inco/fhe/v1/tx.d.ts +0 -409
  292. package/dist/esm/generated/ts/inco/fhe/v1/tx.js +0 -1233
  293. package/dist/esm/generated/ts/inco/fhe/v1/types.d.ts +0 -225
  294. package/dist/esm/generated/ts/inco/fhe/v1/types.js +0 -985
  295. package/dist/esm/generated/ts/inco/originchain/module/v1/module.d.ts +0 -30
  296. package/dist/esm/generated/ts/inco/originchain/module/v1/module.js +0 -63
  297. package/dist/esm/generated/ts/inco/originchain/v1/abci.d.ts +0 -80
  298. package/dist/esm/generated/ts/inco/originchain/v1/abci.js +0 -328
  299. package/dist/esm/generated/ts/inco/originchain/v1/events.d.ts +0 -60
  300. package/dist/esm/generated/ts/inco/originchain/v1/events.js +0 -213
  301. package/dist/esm/generated/ts/inco/originchain/v1/genesis.d.ts +0 -28
  302. package/dist/esm/generated/ts/inco/originchain/v1/genesis.js +0 -66
  303. package/dist/esm/generated/ts/inco/originchain/v1/query.d.ts +0 -116
  304. package/dist/esm/generated/ts/inco/originchain/v1/query.js +0 -277
  305. package/dist/esm/generated/ts/inco/originchain/v1/tx.d.ts +0 -89
  306. package/dist/esm/generated/ts/inco/originchain/v1/tx.js +0 -137
  307. package/dist/esm/generated/ts/inco/originchain/v1/types.d.ts +0 -58
  308. package/dist/esm/generated/ts/inco/originchain/v1/types.js +0 -200
  309. package/dist/esm/generated/ts/inco/preflight/module/v1/module.d.ts +0 -31
  310. package/dist/esm/generated/ts/inco/preflight/module/v1/module.js +0 -63
  311. package/dist/esm/generated/ts/inco/preflight/v1/genesis.d.ts +0 -41
  312. package/dist/esm/generated/ts/inco/preflight/v1/genesis.js +0 -182
  313. package/dist/esm/generated/ts/inco/preflight/v1/query.d.ts +0 -93
  314. package/dist/esm/generated/ts/inco/preflight/v1/query.js +0 -256
  315. package/dist/esm/generated/ts/inco/preflight/v1/tx.d.ts +0 -187
  316. package/dist/esm/generated/ts/inco/preflight/v1/tx.js +0 -445
  317. package/dist/esm/generated/ts/inco/preflight/v1/types.d.ts +0 -84
  318. package/dist/esm/generated/ts/inco/preflight/v1/types.js +0 -395
  319. package/dist/esm/l1/client.d.ts +0 -35
  320. package/dist/esm/l1/client.js +0 -93
  321. package/dist/esm/l1/index.d.ts +0 -2
  322. package/dist/esm/l1/index.js +0 -3
  323. package/dist/esm/l1/preflight.d.ts +0 -20
  324. package/dist/esm/l1/preflight.js +0 -39
  325. package/dist/types/fhevm/fhe-environment.d.ts +0 -9
  326. package/dist/types/fhevm/fhevm.d.ts +0 -41
  327. package/dist/types/fhevm/index.d.ts +0 -1
  328. package/dist/types/fhevm/reencrypt.d.ts +0 -20
  329. package/dist/types/fhevm/tfhe.d.ts +0 -74
  330. package/dist/types/fhevm/types.d.ts +0 -3
  331. package/dist/types/generated/abis/inco-fhevm.d.ts +0 -874
  332. package/dist/types/generated/es/cosmos/msg/v1/msg_pb.d.ts +0 -29
  333. package/dist/types/generated/es/google/api/annotations_pb.d.ts +0 -13
  334. package/dist/types/generated/es/google/api/http_pb.d.ts +0 -440
  335. package/dist/types/generated/es/inco/fhe/v1/events_pb.d.ts +0 -79
  336. package/dist/types/generated/es/inco/fhe/v1/genesis_pb.d.ts +0 -252
  337. package/dist/types/generated/es/inco/fhe/v1/query_pb.d.ts +0 -569
  338. package/dist/types/generated/es/inco/fhe/v1/tx_pb.d.ts +0 -494
  339. package/dist/types/generated/es/inco/preflight/v1/genesis_pb.d.ts +0 -56
  340. package/dist/types/generated/es/inco/preflight/v1/query_pb.d.ts +0 -100
  341. package/dist/types/generated/es/inco/preflight/v1/tx_pb.d.ts +0 -193
  342. package/dist/types/generated/es/inco/preflight/v1/types_pb.d.ts +0 -144
  343. package/dist/types/generated/fhe-environments.d.ts +0 -14
  344. package/dist/types/generated/ts/amino/amino.d.ts +0 -1
  345. package/dist/types/generated/ts/cometbft/abci/v1/types.d.ts +0 -597
  346. package/dist/types/generated/ts/cometbft/crypto/v1/keys.d.ts +0 -27
  347. package/dist/types/generated/ts/cometbft/crypto/v1/proof.d.ts +0 -60
  348. package/dist/types/generated/ts/cometbft/types/v1/params.d.ts +0 -179
  349. package/dist/types/generated/ts/cometbft/types/v1/validator.d.ts +0 -61
  350. package/dist/types/generated/ts/cosmos/app/v1alpha1/module.d.ts +0 -104
  351. package/dist/types/generated/ts/cosmos/msg/v1/msg.d.ts +0 -1
  352. package/dist/types/generated/ts/cosmos_proto/cosmos.d.ts +0 -80
  353. package/dist/types/generated/ts/gogoproto/gogo.d.ts +0 -1
  354. package/dist/types/generated/ts/google/api/annotations.d.ts +0 -1
  355. package/dist/types/generated/ts/google/api/http.d.ts +0 -371
  356. package/dist/types/generated/ts/google/protobuf/descriptor.d.ts +0 -1228
  357. package/dist/types/generated/ts/google/protobuf/duration.d.ts +0 -99
  358. package/dist/types/generated/ts/google/protobuf/timestamp.d.ts +0 -128
  359. package/dist/types/generated/ts/google/protobuf/wrappers.d.ts +0 -111
  360. package/dist/types/generated/ts/inco/abci/v1/types.d.ts +0 -35
  361. package/dist/types/generated/ts/inco/fhe/module/v1/module.d.ts +0 -31
  362. package/dist/types/generated/ts/inco/fhe/v1/events.d.ts +0 -66
  363. package/dist/types/generated/ts/inco/fhe/v1/genesis.d.ts +0 -117
  364. package/dist/types/generated/ts/inco/fhe/v1/query.d.ts +0 -366
  365. package/dist/types/generated/ts/inco/fhe/v1/tx.d.ts +0 -409
  366. package/dist/types/generated/ts/inco/fhe/v1/types.d.ts +0 -225
  367. package/dist/types/generated/ts/inco/originchain/module/v1/module.d.ts +0 -30
  368. package/dist/types/generated/ts/inco/originchain/v1/abci.d.ts +0 -80
  369. package/dist/types/generated/ts/inco/originchain/v1/events.d.ts +0 -60
  370. package/dist/types/generated/ts/inco/originchain/v1/genesis.d.ts +0 -28
  371. package/dist/types/generated/ts/inco/originchain/v1/query.d.ts +0 -116
  372. package/dist/types/generated/ts/inco/originchain/v1/tx.d.ts +0 -89
  373. package/dist/types/generated/ts/inco/originchain/v1/types.d.ts +0 -58
  374. package/dist/types/generated/ts/inco/preflight/module/v1/module.d.ts +0 -31
  375. package/dist/types/generated/ts/inco/preflight/v1/genesis.d.ts +0 -41
  376. package/dist/types/generated/ts/inco/preflight/v1/query.d.ts +0 -93
  377. package/dist/types/generated/ts/inco/preflight/v1/tx.d.ts +0 -187
  378. package/dist/types/generated/ts/inco/preflight/v1/types.d.ts +0 -84
  379. package/dist/types/l1/client.d.ts +0 -35
  380. package/dist/types/l1/index.d.ts +0 -2
  381. package/dist/types/l1/preflight.d.ts +0 -20
@@ -1,328 +0,0 @@
1
- import { Decoder, RustType } from 'bincode-ts';
2
- import { Schema } from 'effect';
3
- import { CompactCiphertextList, CompactPkePublicParams, FheBool, FheTypes, FheUint160, FheUint256, FheUint64, ProvenCompactCiphertextList, set_server_key, TfheClientKey, TfheCompactPublicKey, TfheServerKey, ZkComputeLoad, } from 'node-tfhe';
4
- import { isAddress } from 'viem';
5
- import { asBytes32, bytesFromHexString, bytesToBigInt, bytesToHex } from '../binary.js';
6
- import { encryptionSchemes, getEncryptionSchemeName, } from '../encryption/encryption.js';
7
- import { computeHandle, computePrehandle, HANDLE_VERSION, handleTypes } from '../handle.js';
8
- import { parse } from '../schema.js';
9
- import { getHandleTypeFromFheType } from './types.js';
10
- // This code pulled and modifier from fhevmjs which currently is a relatively poor dependency to extend since it does
11
- // not expose types correctly and does not export various modules
12
- // Handed down on a stone tablet from: https://github.com/zama-ai/fhevm-backend/blob/5a70c19a90671cfa4901413db9e162a65c4cf17a/fhevm-engine/fhevm-engine-common/src/utils.rs#L6-L7
13
- // We use fhevm-backend in KMS and compute services
14
- export const SERIALIZED_SIZE_LIMIT_CIPHERTEXT = BigInt(1024 * 1024 * 512);
15
- export const SERIALIZED_SIZE_LIMIT_PK = BigInt(1024 * 1024 * 512);
16
- export const SERIALIZED_SIZE_LIMIT_CRS = BigInt(1024 * 1024 * 512);
17
- export const ENCRYPTION_TYPES = {
18
- 1: 0, // ebool takes 2 encrypted bits
19
- 4: 1,
20
- 8: 2,
21
- 16: 3,
22
- 32: 4,
23
- 64: 5,
24
- 128: 6,
25
- 160: 7,
26
- 256: 8,
27
- 512: 9,
28
- 1024: 10,
29
- 2048: 11,
30
- };
31
- export function getTfheEncryptor(args) {
32
- const publicKey = TfheCompactPublicKey.safe_deserialize(args.publicKey, SERIALIZED_SIZE_LIMIT_PK);
33
- const publicParams = CompactPkePublicParams.safe_deserialize(args.crs2048, SERIALIZED_SIZE_LIMIT_CRS);
34
- return async ({ context, plaintext, }) => {
35
- if (plaintext.scheme !== encryptionSchemes.tfhe) {
36
- throw new Error(`Plaintext with scheme ${getEncryptionSchemeName(plaintext.scheme)} cannot be encrypted with TFHE`);
37
- }
38
- const { aclAddress, userAddress, contractAddress, hostChainId } = context;
39
- const input = createEncryptedInput(aclAddress, hostChainId, publicKey, { 2048: { publicParams } })(userAddress, contractAddress);
40
- const encInput = await addPlaintextInput(input, plaintext).encrypt();
41
- // FIXME: support multi-valued ciphertext properly
42
- const prehandle = encInput.prehandles[0];
43
- const handle = computeHandle({ prehandle, context });
44
- return {
45
- context,
46
- // The '0x' prefix is required for bytes32 for correct json parsing in foundry, but avoided in ciphertext to avoid bytes-based encoding
47
- // we may need
48
- prehandle: asBytes32(prehandle),
49
- handle: asBytes32(handle),
50
- ciphertext: {
51
- scheme: plaintext.scheme,
52
- type: plaintext.type,
53
- value: bytesToHex(encInput.ciphertext),
54
- },
55
- };
56
- };
57
- }
58
- export function createEncryptedInput(aclContractAddress, chainId, tfheCompactPublicKey, publicParams) {
59
- return (userAddress, contractAddress) => {
60
- if (!isAddress(contractAddress)) {
61
- throw new Error('Contract address is not a valid address.');
62
- }
63
- if (!isAddress(userAddress)) {
64
- throw new Error('User address is not a valid address.');
65
- }
66
- const bits = [];
67
- const builder = CompactCiphertextList.builder(tfheCompactPublicKey);
68
- const checkLimit = (added) => {
69
- if (bits.reduce((acc, val) => acc + Math.max(2, val), 0) + added > 2048) {
70
- throw Error('Packing more than 2048 bits in a single input ciphertext is unsupported');
71
- }
72
- if (bits.length + 1 > 256)
73
- throw Error('Packing more than 256 variables in a single input ciphertext is unsupported');
74
- };
75
- function checkEncryptedValue(value, bits) {
76
- if (value == null)
77
- throw new Error('Missing value');
78
- let limit;
79
- if (bits >= 8) {
80
- limit = BigInt(`0x${new Array(bits / 8).fill(null).reduce((v) => `${v}ff`, '')}`);
81
- }
82
- else {
83
- limit = BigInt(2 ** bits - 1);
84
- }
85
- if (value > limit) {
86
- throw new Error(`The value exceeds the limit for ${bits}bits integer (${limit.toString()}).`);
87
- }
88
- }
89
- return {
90
- addBool(value) {
91
- if (typeof value !== 'bigint' && Number(value) > 1)
92
- throw new Error('The value must be 1 or 0.');
93
- checkEncryptedValue(Number(value), 1);
94
- checkLimit(2);
95
- builder.push_boolean(!!value);
96
- bits.push(1); // ebool takes 2 encrypted bits
97
- return this;
98
- },
99
- add4(value) {
100
- checkEncryptedValue(value, 4);
101
- checkLimit(4);
102
- builder.push_u4(Number(value));
103
- bits.push(4);
104
- return this;
105
- },
106
- add8(value) {
107
- checkEncryptedValue(value, 8);
108
- checkLimit(8);
109
- builder.push_u8(Number(value));
110
- bits.push(8);
111
- return this;
112
- },
113
- add16(value) {
114
- checkEncryptedValue(value, 16);
115
- checkLimit(16);
116
- builder.push_u16(Number(value));
117
- bits.push(16);
118
- return this;
119
- },
120
- add32(value) {
121
- checkEncryptedValue(value, 32);
122
- checkLimit(32);
123
- builder.push_u32(Number(value));
124
- bits.push(32);
125
- return this;
126
- },
127
- add64(value) {
128
- checkEncryptedValue(value, 64);
129
- checkLimit(64);
130
- builder.push_u64(BigInt(value));
131
- bits.push(64);
132
- return this;
133
- },
134
- add128(value) {
135
- checkEncryptedValue(value, 128);
136
- checkLimit(128);
137
- builder.push_u128(BigInt(value));
138
- bits.push(128);
139
- return this;
140
- },
141
- addAddress(value) {
142
- if (!isAddress(value)) {
143
- throw new Error('The value must be a valid address.');
144
- }
145
- checkLimit(160);
146
- builder.push_u160(BigInt(value));
147
- bits.push(160);
148
- return this;
149
- },
150
- add256(value) {
151
- checkEncryptedValue(value, 256);
152
- checkLimit(256);
153
- builder.push_u256(BigInt(value));
154
- bits.push(256);
155
- return this;
156
- },
157
- addBytes64(value) {
158
- if (value.length !== 64)
159
- throw Error('Incorrect length of input Uint8Array, should be 64 for an ebytes64');
160
- const bigIntValue = bytesToBigInt(value);
161
- checkEncryptedValue(bigIntValue, 512);
162
- checkLimit(512);
163
- builder.push_u512(bigIntValue);
164
- bits.push(512);
165
- return this;
166
- },
167
- addBytes128(value) {
168
- if (value.length !== 128)
169
- throw Error('Incorrect length of input Uint8Array, should be 128 for an ebytes128');
170
- const bigIntValue = bytesToBigInt(value);
171
- checkEncryptedValue(bigIntValue, 1024);
172
- checkLimit(1024);
173
- builder.push_u1024(bigIntValue);
174
- bits.push(1024);
175
- return this;
176
- },
177
- addBytes256(value) {
178
- if (value.length !== 256)
179
- throw Error('Incorrect length of input Uint8Array, should be 256 for an ebytes256');
180
- const bigIntValue = bytesToBigInt(value);
181
- checkEncryptedValue(bigIntValue, 2048);
182
- checkLimit(2048);
183
- builder.push_u2048(bigIntValue);
184
- bits.push(2048);
185
- return this;
186
- },
187
- getBits() {
188
- return bits;
189
- },
190
- async encrypt() {
191
- const getKeys = (obj) => Object.keys(obj);
192
- const totalBits = bits.reduce((total, v) => total + v, 0);
193
- const now = Date.now();
194
- // const ppTypes = getKeys(publicParams);
195
- const ppTypes = getKeys(publicParams);
196
- const closestPP = ppTypes.find((k) => Number(k) >= totalBits);
197
- if (!closestPP) {
198
- throw new Error(`Too many bits in provided values. Maximum is ${ppTypes[ppTypes.length - 1]}.`);
199
- }
200
- const pp = publicParams[closestPP].publicParams;
201
- const buffContract = bytesFromHexString(contractAddress);
202
- const buffUser = bytesFromHexString(userAddress);
203
- const buffAcl = bytesFromHexString(aclContractAddress);
204
- const buffChainId = bytesFromHexString(chainId.toString(16));
205
- const auxData = new Uint8Array(buffContract.length + buffUser.length + buffAcl.length + 32);
206
- auxData.set(buffContract, 0);
207
- auxData.set(buffUser, 20);
208
- auxData.set(buffAcl, 40);
209
- auxData.set(buffChainId, auxData.length - buffChainId.length);
210
- const encrypted = builder.build_with_proof_packed(pp, auxData, ZkComputeLoad.Proof);
211
- const ciphertext = Buffer.from(encrypted.safe_serialize(SERIALIZED_SIZE_LIMIT_CIPHERTEXT));
212
- // These prehandles have the expected layout expected by verifyCiphertext
213
- // including type and version metadata
214
- const prehandles = [];
215
- for (let i = 0; i < encrypted.len(); i++) {
216
- const handleType = getHandleTypeFromFheType(encrypted.get_kind_of(i));
217
- prehandles[i] = computePrehandle({
218
- ciphertext,
219
- handleType: handleType,
220
- handleVersion: HANDLE_VERSION,
221
- indexHandle: i,
222
- });
223
- }
224
- return {
225
- prehandles,
226
- ciphertext,
227
- };
228
- },
229
- };
230
- };
231
- }
232
- export function addPlaintextInput(input, plaintext) {
233
- switch (plaintext.type) {
234
- case handleTypes.ebool:
235
- return input.addBool(plaintext.value);
236
- case handleTypes.euint64:
237
- return input.add64(plaintext.value);
238
- case handleTypes.euint160:
239
- let addrStr = plaintext.value.toString(16);
240
- return input.addAddress(addrStr);
241
- case handleTypes.euint256:
242
- return input.add256(plaintext.value);
243
- }
244
- }
245
- // Decryption...
246
- export function getTfheDecryptor({ cks }) {
247
- const clientKey = TfheClientKey.safe_deserialize(cks, SERIALIZED_SIZE_LIMIT_CIPHERTEXT);
248
- const serverKey = TfheServerKey.new(clientKey);
249
- set_server_key(serverKey);
250
- return async ({ scheme, type, value, }) => {
251
- if (scheme !== encryptionSchemes.tfhe) {
252
- throw new Error(`Ciphertext with scheme ${getEncryptionSchemeName(scheme)} cannot be decrypted with TFHE`);
253
- }
254
- const handleType = type;
255
- const ctBuf = bytesFromHexString(value);
256
- const header = decodeTfheSerializationHeader(ctBuf);
257
- // For now just support a singleton ciphertext list
258
- if (header.name === ProvenCompactCiphertextListTypeName) {
259
- const encrypted = ProvenCompactCiphertextList.safe_deserialize(ctBuf, SERIALIZED_SIZE_LIMIT_CIPHERTEXT);
260
- const decrypted = encrypted.expand_without_verification();
261
- const kind = decrypted.get_kind_of(0);
262
- return fromCiphertextList(decrypted, clientKey);
263
- }
264
- const decryptor = decryptionClasses[handleType];
265
- if (!decryptor) {
266
- throw new Error(`Unsupported handle type: ${handleType}`);
267
- }
268
- const encrypted = decryptor.safe_deserialize(ctBuf, SERIALIZED_SIZE_LIMIT_CIPHERTEXT);
269
- const decrypted = encrypted.decrypt(clientKey);
270
- // First assign to unnarrowed plaintext to avoid concealing type
271
- const plaintext = { scheme: encryptionSchemes.tfhe, type: handleType, value: decrypted };
272
- return plaintext;
273
- };
274
- }
275
- function fromCiphertextList(decrypted, clientKey) {
276
- const kind = decrypted.get_kind_of(0);
277
- const scheme = encryptionSchemes.tfhe;
278
- switch (kind) {
279
- case FheTypes.Bool:
280
- return { scheme, type: handleTypes.ebool, value: decrypted.get_bool(0).decrypt(clientKey) };
281
- case FheTypes.Uint64:
282
- return { scheme, type: handleTypes.euint64, value: decrypted.get_uint64(0).decrypt(clientKey) };
283
- case FheTypes.Uint256:
284
- return { scheme, type: handleTypes.euint256, value: decrypted.get_uint256(0).decrypt(clientKey) };
285
- }
286
- throw new Error(`Unsupported kind: ${kind}`);
287
- }
288
- const decryptionClasses = {
289
- [handleTypes.ebool]: FheBool,
290
- [handleTypes.euint64]: FheUint64,
291
- [handleTypes.euint160]: FheUint160,
292
- [handleTypes.euint256]: FheUint256,
293
- };
294
- var VersioningMode;
295
- (function (VersioningMode) {
296
- VersioningMode[VersioningMode["Versioned"] = 0] = "Versioned";
297
- VersioningMode[VersioningMode["Unversioned"] = 1] = "Unversioned";
298
- })(VersioningMode || (VersioningMode = {}));
299
- // Representation of (https://github.com/zama-ai/tfhe-rs/blob/8ee1bdd9a935e9f00c72238f2ff5220ccf77c850/tfhe/src/safe_serialization.rs#L75-L79):
300
- // struct SerializationHeader {
301
- // header_version: Cow<'static, str>,
302
- // versioning_mode: SerializationVersioningMode,
303
- // name: Cow<'static, str>,
304
- // }
305
- export const SerializationHeader = RustType.Struct([
306
- ['header_version', RustType.Str],
307
- [
308
- 'versioning_mode',
309
- RustType.Enum({ [VersioningMode.Versioned]: RustType.Str, [VersioningMode.Unversioned]: RustType.Str }),
310
- ],
311
- ['name', RustType.Str],
312
- ]);
313
- // Output schema (note we currently strip the versioning_mode field because we do not care about it, only the name
314
- export const ProvenCompactCiphertextListTypeName = 'high_level_api::ProvenCompactCiphertextList';
315
- export const FheUintTypeName = 'high_level_api::FheUint';
316
- export const TfheSerialisationTypeName = Schema.Literal(ProvenCompactCiphertextListTypeName, FheUintTypeName);
317
- export const TfheSerializationHeader = Schema.Struct({
318
- header_version: Schema.String,
319
- // For now, we will accept any string to avoid having to define an exhaustive union above
320
- name: Schema.Union(TfheSerialisationTypeName, Schema.String),
321
- });
322
- // Decode a serialisation header from a ciphertext or other bincode-serialised data from tfhe-rs
323
- export function decodeTfheSerializationHeader(buffer) {
324
- const decoder = new Decoder();
325
- const decoded = decoder.load(Uint8Array.from(buffer).buffer).decodeAs(SerializationHeader);
326
- return parse(TfheSerializationHeader, decoded);
327
- }
328
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGZoZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9maGV2bS90ZmhlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFDaEMsT0FBTyxFQUNMLHFCQUFxQixFQUVyQixzQkFBc0IsRUFDdEIsT0FBTyxFQUNQLFFBQVEsRUFDUixVQUFVLEVBQ1YsVUFBVSxFQUNWLFNBQVMsRUFDVCwyQkFBMkIsRUFDM0IsY0FBYyxFQUNkLGFBQWEsRUFDYixvQkFBb0IsRUFDcEIsYUFBYSxFQUNiLGFBQWEsR0FDZCxNQUFNLFdBQVcsQ0FBQztBQUNuQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2pDLE9BQU8sRUFBRSxTQUFTLEVBQUUsa0JBQWtCLEVBQUUsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4RixPQUFPLEVBR0wsaUJBQWlCLEVBR2pCLHVCQUF1QixHQU14QixNQUFNLDZCQUE2QixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxhQUFhLEVBQUUsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUM1RixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3JDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUV0RCxxSEFBcUg7QUFDckgsbUVBQW1FO0FBRW5FLGlMQUFpTDtBQUNqTCxtREFBbUQ7QUFDbkQsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLEdBQUcsR0FBRyxDQUFDLENBQUM7QUFDMUUsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsTUFBTSxDQUFDLElBQUksR0FBRyxJQUFJLEdBQUcsR0FB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
@@ -1,3 +0,0 @@
1
- import { FheTypes } from 'node-tfhe';
2
- import { FheType } from '../handle.js';
3
- export declare function getHandleTypeFromFheType(fheType: FheTypes | undefined): FheType;
@@ -1,26 +0,0 @@
1
- import { FheTypes } from 'node-tfhe';
2
- import { handleTypes } from '../handle.js';
3
- // To HandleType
4
- // FIXME: how did you arrive at this?
5
- const fheTypeToHandleType = Object.freeze({
6
- [FheTypes.Bool]: handleTypes.ebool,
7
- [FheTypes.Uint4]: handleTypes.euint4,
8
- [FheTypes.Uint8]: handleTypes.euint8,
9
- [FheTypes.Uint16]: handleTypes.euint16,
10
- [FheTypes.Uint32]: handleTypes.euint32,
11
- [FheTypes.Uint64]: handleTypes.euint64,
12
- [FheTypes.Uint128]: handleTypes.euint128,
13
- [FheTypes.Uint160]: handleTypes.euint160,
14
- [FheTypes.Uint256]: handleTypes.euint256,
15
- });
16
- export function getHandleTypeFromFheType(fheType) {
17
- if (!fheType) {
18
- throw new Error('FHE type is required');
19
- }
20
- const handleType = fheTypeToHandleType[fheType];
21
- if (!handleType) {
22
- throw new Error(`Inco SDK does not know how to map FHE type '${fheType}' to HandleType`);
23
- }
24
- return handleType;
25
- }
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvZmhldm0vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUNyQyxPQUFPLEVBQVcsV0FBVyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRXBELGdCQUFnQjtBQUNoQixxQ0FBcUM7QUFDckMsTUFBTSxtQkFBbUIsR0FBdUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM1RSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxXQUFXLENBQUMsS0FBSztJQUNsQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxXQUFXLENBQUMsTUFBTTtJQUNwQyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxXQUFXLENBQUMsTUFBTTtJQUNwQyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFXLENBQUMsT0FBTztJQUN0QyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFXLENBQUMsT0FBTztJQUN0QyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxXQUFXLENBQUMsT0FBTztJQUN0QyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxXQUFXLENBQUMsUUFBUTtJQUN4QyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxXQUFXLENBQUMsUUFBUTtJQUN4QyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsRUFBRSxXQUFXLENBQUMsUUFBUTtDQUN6QyxDQUFDLENBQUM7QUFFSCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsT0FBNkI7SUFDcEUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ2IsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFDRCxNQUFNLFVBQVUsR0FBRyxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNoRCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDaEIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsT0FBTyxpQkFBaUIsQ0FBQyxDQUFDO0lBQzNGLENBQUM7SUFDRCxPQUFPLFVBQVUsQ0FBQztBQUNwQixDQUFDIn0=