@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,711 +0,0 @@
1
- // Code generated by protoc-gen-ts_proto. DO NOT EDIT.
2
- // versions:
3
- // protoc-gen-ts_proto v2.7.5
4
- // protoc unknown
5
- // source: inco/fhe/v1/genesis.proto
6
- /* eslint-disable */
7
- import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire";
8
- import { BlockTopo, CARoot, Covalidator, FheEnv, FheEnvBlock, HandleBindingEntry, KeysetInfo } from "./types";
9
- export const protobufPackage = "inco.fhe.v1";
10
- function createBaseGenesisState() {
11
- return {
12
- covalidators: [],
13
- keysets: [],
14
- fheEnvs: [],
15
- votes: [],
16
- caRoots: [],
17
- topoVotes: [],
18
- bindingVotes: [],
19
- blockTopos: [],
20
- handleBindings: [],
21
- };
22
- }
23
- export const GenesisState = {
24
- encode(message, writer = new BinaryWriter()) {
25
- for (const v of message.covalidators) {
26
- Covalidator.encode(v, writer.uint32(10).fork()).join();
27
- }
28
- for (const v of message.keysets) {
29
- KeysetInfo.encode(v, writer.uint32(18).fork()).join();
30
- }
31
- for (const v of message.fheEnvs) {
32
- FheEnv.encode(v, writer.uint32(26).fork()).join();
33
- }
34
- for (const v of message.votes) {
35
- GenesisVote.encode(v, writer.uint32(34).fork()).join();
36
- }
37
- for (const v of message.caRoots) {
38
- GenesisCARoot.encode(v, writer.uint32(42).fork()).join();
39
- }
40
- for (const v of message.topoVotes) {
41
- GenesisTopoVote.encode(v, writer.uint32(50).fork()).join();
42
- }
43
- for (const v of message.bindingVotes) {
44
- GenesisBindingVote.encode(v, writer.uint32(58).fork()).join();
45
- }
46
- for (const v of message.blockTopos) {
47
- GenesisTopo.encode(v, writer.uint32(66).fork()).join();
48
- }
49
- for (const v of message.handleBindings) {
50
- GenesisHandleBinding.encode(v, writer.uint32(74).fork()).join();
51
- }
52
- return writer;
53
- },
54
- decode(input, length) {
55
- const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
56
- const end = length === undefined ? reader.len : reader.pos + length;
57
- const message = createBaseGenesisState();
58
- while (reader.pos < end) {
59
- const tag = reader.uint32();
60
- switch (tag >>> 3) {
61
- case 1: {
62
- if (tag !== 10) {
63
- break;
64
- }
65
- message.covalidators.push(Covalidator.decode(reader, reader.uint32()));
66
- continue;
67
- }
68
- case 2: {
69
- if (tag !== 18) {
70
- break;
71
- }
72
- message.keysets.push(KeysetInfo.decode(reader, reader.uint32()));
73
- continue;
74
- }
75
- case 3: {
76
- if (tag !== 26) {
77
- break;
78
- }
79
- message.fheEnvs.push(FheEnv.decode(reader, reader.uint32()));
80
- continue;
81
- }
82
- case 4: {
83
- if (tag !== 34) {
84
- break;
85
- }
86
- message.votes.push(GenesisVote.decode(reader, reader.uint32()));
87
- continue;
88
- }
89
- case 5: {
90
- if (tag !== 42) {
91
- break;
92
- }
93
- message.caRoots.push(GenesisCARoot.decode(reader, reader.uint32()));
94
- continue;
95
- }
96
- case 6: {
97
- if (tag !== 50) {
98
- break;
99
- }
100
- message.topoVotes.push(GenesisTopoVote.decode(reader, reader.uint32()));
101
- continue;
102
- }
103
- case 7: {
104
- if (tag !== 58) {
105
- break;
106
- }
107
- message.bindingVotes.push(GenesisBindingVote.decode(reader, reader.uint32()));
108
- continue;
109
- }
110
- case 8: {
111
- if (tag !== 66) {
112
- break;
113
- }
114
- message.blockTopos.push(GenesisTopo.decode(reader, reader.uint32()));
115
- continue;
116
- }
117
- case 9: {
118
- if (tag !== 74) {
119
- break;
120
- }
121
- message.handleBindings.push(GenesisHandleBinding.decode(reader, reader.uint32()));
122
- continue;
123
- }
124
- }
125
- if ((tag & 7) === 4 || tag === 0) {
126
- break;
127
- }
128
- reader.skip(tag & 7);
129
- }
130
- return message;
131
- },
132
- fromJSON(object) {
133
- return {
134
- covalidators: globalThis.Array.isArray(object?.covalidators)
135
- ? object.covalidators.map((e) => Covalidator.fromJSON(e))
136
- : [],
137
- keysets: globalThis.Array.isArray(object?.keysets) ? object.keysets.map((e) => KeysetInfo.fromJSON(e)) : [],
138
- fheEnvs: globalThis.Array.isArray(object?.fheEnvs) ? object.fheEnvs.map((e) => FheEnv.fromJSON(e)) : [],
139
- votes: globalThis.Array.isArray(object?.votes) ? object.votes.map((e) => GenesisVote.fromJSON(e)) : [],
140
- caRoots: globalThis.Array.isArray(object?.caRoots)
141
- ? object.caRoots.map((e) => GenesisCARoot.fromJSON(e))
142
- : [],
143
- topoVotes: globalThis.Array.isArray(object?.topoVotes)
144
- ? object.topoVotes.map((e) => GenesisTopoVote.fromJSON(e))
145
- : [],
146
- bindingVotes: globalThis.Array.isArray(object?.bindingVotes)
147
- ? object.bindingVotes.map((e) => GenesisBindingVote.fromJSON(e))
148
- : [],
149
- blockTopos: globalThis.Array.isArray(object?.blockTopos)
150
- ? object.blockTopos.map((e) => GenesisTopo.fromJSON(e))
151
- : [],
152
- handleBindings: globalThis.Array.isArray(object?.handleBindings)
153
- ? object.handleBindings.map((e) => GenesisHandleBinding.fromJSON(e))
154
- : [],
155
- };
156
- },
157
- toJSON(message) {
158
- const obj = {};
159
- if (message.covalidators?.length) {
160
- obj.covalidators = message.covalidators.map((e) => Covalidator.toJSON(e));
161
- }
162
- if (message.keysets?.length) {
163
- obj.keysets = message.keysets.map((e) => KeysetInfo.toJSON(e));
164
- }
165
- if (message.fheEnvs?.length) {
166
- obj.fheEnvs = message.fheEnvs.map((e) => FheEnv.toJSON(e));
167
- }
168
- if (message.votes?.length) {
169
- obj.votes = message.votes.map((e) => GenesisVote.toJSON(e));
170
- }
171
- if (message.caRoots?.length) {
172
- obj.caRoots = message.caRoots.map((e) => GenesisCARoot.toJSON(e));
173
- }
174
- if (message.topoVotes?.length) {
175
- obj.topoVotes = message.topoVotes.map((e) => GenesisTopoVote.toJSON(e));
176
- }
177
- if (message.bindingVotes?.length) {
178
- obj.bindingVotes = message.bindingVotes.map((e) => GenesisBindingVote.toJSON(e));
179
- }
180
- if (message.blockTopos?.length) {
181
- obj.blockTopos = message.blockTopos.map((e) => GenesisTopo.toJSON(e));
182
- }
183
- if (message.handleBindings?.length) {
184
- obj.handleBindings = message.handleBindings.map((e) => GenesisHandleBinding.toJSON(e));
185
- }
186
- return obj;
187
- },
188
- create(base) {
189
- return GenesisState.fromPartial(base ?? {});
190
- },
191
- fromPartial(object) {
192
- const message = createBaseGenesisState();
193
- message.covalidators = object.covalidators?.map((e) => Covalidator.fromPartial(e)) || [];
194
- message.keysets = object.keysets?.map((e) => KeysetInfo.fromPartial(e)) || [];
195
- message.fheEnvs = object.fheEnvs?.map((e) => FheEnv.fromPartial(e)) || [];
196
- message.votes = object.votes?.map((e) => GenesisVote.fromPartial(e)) || [];
197
- message.caRoots = object.caRoots?.map((e) => GenesisCARoot.fromPartial(e)) || [];
198
- message.topoVotes = object.topoVotes?.map((e) => GenesisTopoVote.fromPartial(e)) || [];
199
- message.bindingVotes = object.bindingVotes?.map((e) => GenesisBindingVote.fromPartial(e)) || [];
200
- message.blockTopos = object.blockTopos?.map((e) => GenesisTopo.fromPartial(e)) || [];
201
- message.handleBindings = object.handleBindings?.map((e) => GenesisHandleBinding.fromPartial(e)) || [];
202
- return message;
203
- },
204
- };
205
- function createBaseGenesisVote() {
206
- return { covalidator: "", fheEnvBlock: undefined, caRoot: undefined };
207
- }
208
- export const GenesisVote = {
209
- encode(message, writer = new BinaryWriter()) {
210
- if (message.covalidator !== "") {
211
- writer.uint32(10).string(message.covalidator);
212
- }
213
- if (message.fheEnvBlock !== undefined) {
214
- FheEnvBlock.encode(message.fheEnvBlock, writer.uint32(18).fork()).join();
215
- }
216
- if (message.caRoot !== undefined) {
217
- CARoot.encode(message.caRoot, writer.uint32(26).fork()).join();
218
- }
219
- return writer;
220
- },
221
- decode(input, length) {
222
- const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
223
- const end = length === undefined ? reader.len : reader.pos + length;
224
- const message = createBaseGenesisVote();
225
- while (reader.pos < end) {
226
- const tag = reader.uint32();
227
- switch (tag >>> 3) {
228
- case 1: {
229
- if (tag !== 10) {
230
- break;
231
- }
232
- message.covalidator = reader.string();
233
- continue;
234
- }
235
- case 2: {
236
- if (tag !== 18) {
237
- break;
238
- }
239
- message.fheEnvBlock = FheEnvBlock.decode(reader, reader.uint32());
240
- continue;
241
- }
242
- case 3: {
243
- if (tag !== 26) {
244
- break;
245
- }
246
- message.caRoot = CARoot.decode(reader, reader.uint32());
247
- continue;
248
- }
249
- }
250
- if ((tag & 7) === 4 || tag === 0) {
251
- break;
252
- }
253
- reader.skip(tag & 7);
254
- }
255
- return message;
256
- },
257
- fromJSON(object) {
258
- return {
259
- covalidator: isSet(object.covalidator) ? globalThis.String(object.covalidator) : "",
260
- fheEnvBlock: isSet(object.fheEnvBlock) ? FheEnvBlock.fromJSON(object.fheEnvBlock) : undefined,
261
- caRoot: isSet(object.caRoot) ? CARoot.fromJSON(object.caRoot) : undefined,
262
- };
263
- },
264
- toJSON(message) {
265
- const obj = {};
266
- if (message.covalidator !== "") {
267
- obj.covalidator = message.covalidator;
268
- }
269
- if (message.fheEnvBlock !== undefined) {
270
- obj.fheEnvBlock = FheEnvBlock.toJSON(message.fheEnvBlock);
271
- }
272
- if (message.caRoot !== undefined) {
273
- obj.caRoot = CARoot.toJSON(message.caRoot);
274
- }
275
- return obj;
276
- },
277
- create(base) {
278
- return GenesisVote.fromPartial(base ?? {});
279
- },
280
- fromPartial(object) {
281
- const message = createBaseGenesisVote();
282
- message.covalidator = object.covalidator ?? "";
283
- message.fheEnvBlock = (object.fheEnvBlock !== undefined && object.fheEnvBlock !== null)
284
- ? FheEnvBlock.fromPartial(object.fheEnvBlock)
285
- : undefined;
286
- message.caRoot = (object.caRoot !== undefined && object.caRoot !== null)
287
- ? CARoot.fromPartial(object.caRoot)
288
- : undefined;
289
- return message;
290
- },
291
- };
292
- function createBaseGenesisTopoVote() {
293
- return { fheEnvBlock: undefined, covalidator: "", blockTopo: undefined };
294
- }
295
- export const GenesisTopoVote = {
296
- encode(message, writer = new BinaryWriter()) {
297
- if (message.fheEnvBlock !== undefined) {
298
- FheEnvBlock.encode(message.fheEnvBlock, writer.uint32(10).fork()).join();
299
- }
300
- if (message.covalidator !== "") {
301
- writer.uint32(18).string(message.covalidator);
302
- }
303
- if (message.blockTopo !== undefined) {
304
- BlockTopo.encode(message.blockTopo, writer.uint32(26).fork()).join();
305
- }
306
- return writer;
307
- },
308
- decode(input, length) {
309
- const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
310
- const end = length === undefined ? reader.len : reader.pos + length;
311
- const message = createBaseGenesisTopoVote();
312
- while (reader.pos < end) {
313
- const tag = reader.uint32();
314
- switch (tag >>> 3) {
315
- case 1: {
316
- if (tag !== 10) {
317
- break;
318
- }
319
- message.fheEnvBlock = FheEnvBlock.decode(reader, reader.uint32());
320
- continue;
321
- }
322
- case 2: {
323
- if (tag !== 18) {
324
- break;
325
- }
326
- message.covalidator = reader.string();
327
- continue;
328
- }
329
- case 3: {
330
- if (tag !== 26) {
331
- break;
332
- }
333
- message.blockTopo = BlockTopo.decode(reader, reader.uint32());
334
- continue;
335
- }
336
- }
337
- if ((tag & 7) === 4 || tag === 0) {
338
- break;
339
- }
340
- reader.skip(tag & 7);
341
- }
342
- return message;
343
- },
344
- fromJSON(object) {
345
- return {
346
- fheEnvBlock: isSet(object.fheEnvBlock) ? FheEnvBlock.fromJSON(object.fheEnvBlock) : undefined,
347
- covalidator: isSet(object.covalidator) ? globalThis.String(object.covalidator) : "",
348
- blockTopo: isSet(object.blockTopo) ? BlockTopo.fromJSON(object.blockTopo) : undefined,
349
- };
350
- },
351
- toJSON(message) {
352
- const obj = {};
353
- if (message.fheEnvBlock !== undefined) {
354
- obj.fheEnvBlock = FheEnvBlock.toJSON(message.fheEnvBlock);
355
- }
356
- if (message.covalidator !== "") {
357
- obj.covalidator = message.covalidator;
358
- }
359
- if (message.blockTopo !== undefined) {
360
- obj.blockTopo = BlockTopo.toJSON(message.blockTopo);
361
- }
362
- return obj;
363
- },
364
- create(base) {
365
- return GenesisTopoVote.fromPartial(base ?? {});
366
- },
367
- fromPartial(object) {
368
- const message = createBaseGenesisTopoVote();
369
- message.fheEnvBlock = (object.fheEnvBlock !== undefined && object.fheEnvBlock !== null)
370
- ? FheEnvBlock.fromPartial(object.fheEnvBlock)
371
- : undefined;
372
- message.covalidator = object.covalidator ?? "";
373
- message.blockTopo = (object.blockTopo !== undefined && object.blockTopo !== null)
374
- ? BlockTopo.fromPartial(object.blockTopo)
375
- : undefined;
376
- return message;
377
- },
378
- };
379
- function createBaseGenesisBindingVote() {
380
- return { hostChainId: "", keysetId: "", covalidator: "", entry: undefined };
381
- }
382
- export const GenesisBindingVote = {
383
- encode(message, writer = new BinaryWriter()) {
384
- if (message.hostChainId !== "") {
385
- writer.uint32(10).string(message.hostChainId);
386
- }
387
- if (message.keysetId !== "") {
388
- writer.uint32(18).string(message.keysetId);
389
- }
390
- if (message.covalidator !== "") {
391
- writer.uint32(26).string(message.covalidator);
392
- }
393
- if (message.entry !== undefined) {
394
- HandleBindingEntry.encode(message.entry, writer.uint32(34).fork()).join();
395
- }
396
- return writer;
397
- },
398
- decode(input, length) {
399
- const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
400
- const end = length === undefined ? reader.len : reader.pos + length;
401
- const message = createBaseGenesisBindingVote();
402
- while (reader.pos < end) {
403
- const tag = reader.uint32();
404
- switch (tag >>> 3) {
405
- case 1: {
406
- if (tag !== 10) {
407
- break;
408
- }
409
- message.hostChainId = reader.string();
410
- continue;
411
- }
412
- case 2: {
413
- if (tag !== 18) {
414
- break;
415
- }
416
- message.keysetId = reader.string();
417
- continue;
418
- }
419
- case 3: {
420
- if (tag !== 26) {
421
- break;
422
- }
423
- message.covalidator = reader.string();
424
- continue;
425
- }
426
- case 4: {
427
- if (tag !== 34) {
428
- break;
429
- }
430
- message.entry = HandleBindingEntry.decode(reader, reader.uint32());
431
- continue;
432
- }
433
- }
434
- if ((tag & 7) === 4 || tag === 0) {
435
- break;
436
- }
437
- reader.skip(tag & 7);
438
- }
439
- return message;
440
- },
441
- fromJSON(object) {
442
- return {
443
- hostChainId: isSet(object.hostChainId) ? globalThis.String(object.hostChainId) : "",
444
- keysetId: isSet(object.keysetId) ? globalThis.String(object.keysetId) : "",
445
- covalidator: isSet(object.covalidator) ? globalThis.String(object.covalidator) : "",
446
- entry: isSet(object.entry) ? HandleBindingEntry.fromJSON(object.entry) : undefined,
447
- };
448
- },
449
- toJSON(message) {
450
- const obj = {};
451
- if (message.hostChainId !== "") {
452
- obj.hostChainId = message.hostChainId;
453
- }
454
- if (message.keysetId !== "") {
455
- obj.keysetId = message.keysetId;
456
- }
457
- if (message.covalidator !== "") {
458
- obj.covalidator = message.covalidator;
459
- }
460
- if (message.entry !== undefined) {
461
- obj.entry = HandleBindingEntry.toJSON(message.entry);
462
- }
463
- return obj;
464
- },
465
- create(base) {
466
- return GenesisBindingVote.fromPartial(base ?? {});
467
- },
468
- fromPartial(object) {
469
- const message = createBaseGenesisBindingVote();
470
- message.hostChainId = object.hostChainId ?? "";
471
- message.keysetId = object.keysetId ?? "";
472
- message.covalidator = object.covalidator ?? "";
473
- message.entry = (object.entry !== undefined && object.entry !== null)
474
- ? HandleBindingEntry.fromPartial(object.entry)
475
- : undefined;
476
- return message;
477
- },
478
- };
479
- function createBaseGenesisCARoot() {
480
- return { fheEnvBlock: undefined, caRoot: undefined };
481
- }
482
- export const GenesisCARoot = {
483
- encode(message, writer = new BinaryWriter()) {
484
- if (message.fheEnvBlock !== undefined) {
485
- FheEnvBlock.encode(message.fheEnvBlock, writer.uint32(10).fork()).join();
486
- }
487
- if (message.caRoot !== undefined) {
488
- CARoot.encode(message.caRoot, writer.uint32(18).fork()).join();
489
- }
490
- return writer;
491
- },
492
- decode(input, length) {
493
- const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
494
- const end = length === undefined ? reader.len : reader.pos + length;
495
- const message = createBaseGenesisCARoot();
496
- while (reader.pos < end) {
497
- const tag = reader.uint32();
498
- switch (tag >>> 3) {
499
- case 1: {
500
- if (tag !== 10) {
501
- break;
502
- }
503
- message.fheEnvBlock = FheEnvBlock.decode(reader, reader.uint32());
504
- continue;
505
- }
506
- case 2: {
507
- if (tag !== 18) {
508
- break;
509
- }
510
- message.caRoot = CARoot.decode(reader, reader.uint32());
511
- continue;
512
- }
513
- }
514
- if ((tag & 7) === 4 || tag === 0) {
515
- break;
516
- }
517
- reader.skip(tag & 7);
518
- }
519
- return message;
520
- },
521
- fromJSON(object) {
522
- return {
523
- fheEnvBlock: isSet(object.fheEnvBlock) ? FheEnvBlock.fromJSON(object.fheEnvBlock) : undefined,
524
- caRoot: isSet(object.caRoot) ? CARoot.fromJSON(object.caRoot) : undefined,
525
- };
526
- },
527
- toJSON(message) {
528
- const obj = {};
529
- if (message.fheEnvBlock !== undefined) {
530
- obj.fheEnvBlock = FheEnvBlock.toJSON(message.fheEnvBlock);
531
- }
532
- if (message.caRoot !== undefined) {
533
- obj.caRoot = CARoot.toJSON(message.caRoot);
534
- }
535
- return obj;
536
- },
537
- create(base) {
538
- return GenesisCARoot.fromPartial(base ?? {});
539
- },
540
- fromPartial(object) {
541
- const message = createBaseGenesisCARoot();
542
- message.fheEnvBlock = (object.fheEnvBlock !== undefined && object.fheEnvBlock !== null)
543
- ? FheEnvBlock.fromPartial(object.fheEnvBlock)
544
- : undefined;
545
- message.caRoot = (object.caRoot !== undefined && object.caRoot !== null)
546
- ? CARoot.fromPartial(object.caRoot)
547
- : undefined;
548
- return message;
549
- },
550
- };
551
- function createBaseGenesisTopo() {
552
- return { fheEnvBlock: undefined, blockTopo: undefined };
553
- }
554
- export const GenesisTopo = {
555
- encode(message, writer = new BinaryWriter()) {
556
- if (message.fheEnvBlock !== undefined) {
557
- FheEnvBlock.encode(message.fheEnvBlock, writer.uint32(10).fork()).join();
558
- }
559
- if (message.blockTopo !== undefined) {
560
- BlockTopo.encode(message.blockTopo, writer.uint32(18).fork()).join();
561
- }
562
- return writer;
563
- },
564
- decode(input, length) {
565
- const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
566
- const end = length === undefined ? reader.len : reader.pos + length;
567
- const message = createBaseGenesisTopo();
568
- while (reader.pos < end) {
569
- const tag = reader.uint32();
570
- switch (tag >>> 3) {
571
- case 1: {
572
- if (tag !== 10) {
573
- break;
574
- }
575
- message.fheEnvBlock = FheEnvBlock.decode(reader, reader.uint32());
576
- continue;
577
- }
578
- case 2: {
579
- if (tag !== 18) {
580
- break;
581
- }
582
- message.blockTopo = BlockTopo.decode(reader, reader.uint32());
583
- continue;
584
- }
585
- }
586
- if ((tag & 7) === 4 || tag === 0) {
587
- break;
588
- }
589
- reader.skip(tag & 7);
590
- }
591
- return message;
592
- },
593
- fromJSON(object) {
594
- return {
595
- fheEnvBlock: isSet(object.fheEnvBlock) ? FheEnvBlock.fromJSON(object.fheEnvBlock) : undefined,
596
- blockTopo: isSet(object.blockTopo) ? BlockTopo.fromJSON(object.blockTopo) : undefined,
597
- };
598
- },
599
- toJSON(message) {
600
- const obj = {};
601
- if (message.fheEnvBlock !== undefined) {
602
- obj.fheEnvBlock = FheEnvBlock.toJSON(message.fheEnvBlock);
603
- }
604
- if (message.blockTopo !== undefined) {
605
- obj.blockTopo = BlockTopo.toJSON(message.blockTopo);
606
- }
607
- return obj;
608
- },
609
- create(base) {
610
- return GenesisTopo.fromPartial(base ?? {});
611
- },
612
- fromPartial(object) {
613
- const message = createBaseGenesisTopo();
614
- message.fheEnvBlock = (object.fheEnvBlock !== undefined && object.fheEnvBlock !== null)
615
- ? FheEnvBlock.fromPartial(object.fheEnvBlock)
616
- : undefined;
617
- message.blockTopo = (object.blockTopo !== undefined && object.blockTopo !== null)
618
- ? BlockTopo.fromPartial(object.blockTopo)
619
- : undefined;
620
- return message;
621
- },
622
- };
623
- function createBaseGenesisHandleBinding() {
624
- return { hostChainId: "", keysetId: "", entry: undefined };
625
- }
626
- export const GenesisHandleBinding = {
627
- encode(message, writer = new BinaryWriter()) {
628
- if (message.hostChainId !== "") {
629
- writer.uint32(10).string(message.hostChainId);
630
- }
631
- if (message.keysetId !== "") {
632
- writer.uint32(18).string(message.keysetId);
633
- }
634
- if (message.entry !== undefined) {
635
- HandleBindingEntry.encode(message.entry, writer.uint32(26).fork()).join();
636
- }
637
- return writer;
638
- },
639
- decode(input, length) {
640
- const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
641
- const end = length === undefined ? reader.len : reader.pos + length;
642
- const message = createBaseGenesisHandleBinding();
643
- while (reader.pos < end) {
644
- const tag = reader.uint32();
645
- switch (tag >>> 3) {
646
- case 1: {
647
- if (tag !== 10) {
648
- break;
649
- }
650
- message.hostChainId = reader.string();
651
- continue;
652
- }
653
- case 2: {
654
- if (tag !== 18) {
655
- break;
656
- }
657
- message.keysetId = reader.string();
658
- continue;
659
- }
660
- case 3: {
661
- if (tag !== 26) {
662
- break;
663
- }
664
- message.entry = HandleBindingEntry.decode(reader, reader.uint32());
665
- continue;
666
- }
667
- }
668
- if ((tag & 7) === 4 || tag === 0) {
669
- break;
670
- }
671
- reader.skip(tag & 7);
672
- }
673
- return message;
674
- },
675
- fromJSON(object) {
676
- return {
677
- hostChainId: isSet(object.hostChainId) ? globalThis.String(object.hostChainId) : "",
678
- keysetId: isSet(object.keysetId) ? globalThis.String(object.keysetId) : "",
679
- entry: isSet(object.entry) ? HandleBindingEntry.fromJSON(object.entry) : undefined,
680
- };
681
- },
682
- toJSON(message) {
683
- const obj = {};
684
- if (message.hostChainId !== "") {
685
- obj.hostChainId = message.hostChainId;
686
- }
687
- if (message.keysetId !== "") {
688
- obj.keysetId = message.keysetId;
689
- }
690
- if (message.entry !== undefined) {
691
- obj.entry = HandleBindingEntry.toJSON(message.entry);
692
- }
693
- return obj;
694
- },
695
- create(base) {
696
- return GenesisHandleBinding.fromPartial(base ?? {});
697
- },
698
- fromPartial(object) {
699
- const message = createBaseGenesisHandleBinding();
700
- message.hostChainId = object.hostChainId ?? "";
701
- message.keysetId = object.keysetId ?? "";
702
- message.entry = (object.entry !== undefined && object.entry !== null)
703
- ? HandleBindingEntry.fromPartial(object.entry)
704
- : undefined;
705
- return message;
706
- },
707
- };
708
- function isSet(value) {
709
- return value !== null && value !== undefined;
710
- }
711
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXNpcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYy9nZW5lcmF0ZWQvdHMvaW5jby9maGUvdjEvZ2VuZXNpcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzREFBc0Q7QUFDdEQsWUFBWTtBQUNaLGdDQUFnQztBQUNoQyxpQ0FBaUM7QUFDakMsb0NBQW9DO0FBRXBDLG9CQUFvQjtBQUNwQixPQUFPLEVBQUUsWUFBWSxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUU5RyxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsYUFBYSxDQUFDO0FBeUc3QyxTQUFTLHNCQUFzQjtJQUM3QixPQUFPO1FBQ0wsWUFBWSxFQUFFLEVBQUU7UUFDaEIsT0FBTyxFQUFFLEVBQUU7UUFDWCxPQUFPLEVBQUUsRUFBRTtRQUNYLEtBQUssRUFBRSxFQUFFO1FBQ1QsT0FBTyxFQUFFLEVBQUU7UUFDWCxTQUFTLEVBQUUsRUFBRTtRQUNiLFlBQVksRUFBRSxFQUFFO1FBQ2hCLFVBQVUsRUFBRSxFQUFFO1FBQ2QsY0FBYyxFQUFFLEVBQUU7S0FDbkIsQ0FBQztBQUNKLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQTZCO0lBQ3BELE1BQU0sQ0FBQyxPQUFxQixFQUFFLFNBQXVCLElBQUksWUFBWSxFQUFFO1FBQ3JFLEtBQUssTUFBTSxDQUFDLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3JDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBRSxFQUFFLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxRCxDQUFDO1FB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