@perpx/proto 0.0.1 → 0.0.2

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 (1226) hide show
  1. package/build/amino/amino.d.ts +1 -0
  2. package/build/amino/amino.js +3 -0
  3. package/build/amino/bundle.d.ts +1 -0
  4. package/build/amino/bundle.js +30 -0
  5. package/build/cosmos/app/runtime/v1alpha1/module.d.ts +94 -0
  6. package/build/cosmos/app/runtime/v1alpha1/module.js +172 -0
  7. package/build/cosmos/app/v1alpha1/config.d.ts +95 -0
  8. package/build/cosmos/app/v1alpha1/config.js +169 -0
  9. package/build/cosmos/app/v1alpha1/module.d.ts +115 -0
  10. package/build/cosmos/app/v1alpha1/module.js +160 -0
  11. package/build/cosmos/app/v1alpha1/query.d.ts +28 -0
  12. package/build/cosmos/app/v1alpha1/query.js +90 -0
  13. package/build/cosmos/app/v1alpha1/query.rpc.Query.d.ts +16 -0
  14. package/build/cosmos/app/v1alpha1/query.rpc.Query.js +52 -0
  15. package/build/cosmos/auth/module/v1/module.d.ts +42 -0
  16. package/build/cosmos/auth/module/v1/module.js +124 -0
  17. package/build/cosmos/auth/v1beta1/auth.d.ts +97 -0
  18. package/build/cosmos/auth/v1beta1/auth.js +253 -0
  19. package/build/cosmos/auth/v1beta1/genesis.d.ts +21 -0
  20. package/build/cosmos/auth/v1beta1/genesis.js +74 -0
  21. package/build/cosmos/auth/v1beta1/query.d.ts +398 -0
  22. package/build/cosmos/auth/v1beta1/query.js +732 -0
  23. package/build/cosmos/auth/v1beta1/query.lcd.d.ts +18 -0
  24. package/build/cosmos/auth/v1beta1/query.lcd.js +102 -0
  25. package/build/cosmos/auth/v1beta1/query.rpc.Query.d.ts +83 -0
  26. package/build/cosmos/auth/v1beta1/query.rpc.Query.js +135 -0
  27. package/build/cosmos/auth/v1beta1/tx.d.ts +53 -0
  28. package/build/cosmos/auth/v1beta1/tx.js +99 -0
  29. package/build/cosmos/auth/v1beta1/tx.rpc.msg.d.ts +17 -0
  30. package/build/cosmos/auth/v1beta1/tx.rpc.msg.js +41 -0
  31. package/build/cosmos/authz/module/v1/module.d.ts +13 -0
  32. package/build/cosmos/authz/module/v1/module.js +54 -0
  33. package/build/cosmos/authz/v1beta1/authz.d.ts +88 -0
  34. package/build/cosmos/authz/v1beta1/authz.js +207 -0
  35. package/build/cosmos/authz/v1beta1/event.d.ts +42 -0
  36. package/build/cosmos/authz/v1beta1/event.js +132 -0
  37. package/build/cosmos/authz/v1beta1/genesis.d.ts +16 -0
  38. package/build/cosmos/authz/v1beta1/genesis.js +65 -0
  39. package/build/cosmos/authz/v1beta1/query.d.ts +108 -0
  40. package/build/cosmos/authz/v1beta1/query.js +310 -0
  41. package/build/cosmos/authz/v1beta1/query.lcd.d.ts +11 -0
  42. package/build/cosmos/authz/v1beta1/query.lcd.js +60 -0
  43. package/build/cosmos/authz/v1beta1/query.rpc.Query.d.ts +32 -0
  44. package/build/cosmos/authz/v1beta1/query.rpc.Query.js +70 -0
  45. package/build/cosmos/authz/v1beta1/tx.d.ts +113 -0
  46. package/build/cosmos/authz/v1beta1/tx.js +266 -0
  47. package/build/cosmos/authz/v1beta1/tx.rpc.msg.d.ts +30 -0
  48. package/build/cosmos/authz/v1beta1/tx.rpc.msg.js +53 -0
  49. package/build/cosmos/bank/module/v1/module.d.ts +23 -0
  50. package/build/cosmos/bank/module/v1/module.js +72 -0
  51. package/build/cosmos/bank/v1beta1/authz.d.ts +34 -0
  52. package/build/cosmos/bank/v1beta1/authz.js +73 -0
  53. package/build/cosmos/bank/v1beta1/bank.d.ts +194 -0
  54. package/build/cosmos/bank/v1beta1/bank.js +385 -0
  55. package/build/cosmos/bank/v1beta1/genesis.d.ts +60 -0
  56. package/build/cosmos/bank/v1beta1/genesis.js +142 -0
  57. package/build/cosmos/bank/v1beta1/query.d.ts +536 -0
  58. package/build/cosmos/bank/v1beta1/query.js +1025 -0
  59. package/build/cosmos/bank/v1beta1/query.lcd.d.ts +20 -0
  60. package/build/cosmos/bank/v1beta1/query.lcd.js +187 -0
  61. package/build/cosmos/bank/v1beta1/query.rpc.Query.d.ts +110 -0
  62. package/build/cosmos/bank/v1beta1/query.rpc.Query.js +155 -0
  63. package/build/cosmos/bank/v1beta1/tx.d.ts +172 -0
  64. package/build/cosmos/bank/v1beta1/tx.js +326 -0
  65. package/build/cosmos/bank/v1beta1/tx.rpc.msg.d.ts +33 -0
  66. package/build/cosmos/bank/v1beta1/tx.rpc.msg.js +59 -0
  67. package/build/cosmos/base/abci/v1beta1/abci.d.ts +324 -0
  68. package/build/cosmos/base/abci/v1beta1/abci.js +690 -0
  69. package/build/cosmos/base/node/v1beta1/query.d.ts +69 -0
  70. package/build/cosmos/base/node/v1beta1/query.js +202 -0
  71. package/build/cosmos/base/node/v1beta1/query.lcd.d.ts +10 -0
  72. package/build/cosmos/base/node/v1beta1/query.lcd.js +22 -0
  73. package/build/cosmos/base/node/v1beta1/query.rpc.Service.d.ts +20 -0
  74. package/build/cosmos/base/node/v1beta1/query.rpc.Service.js +61 -0
  75. package/build/cosmos/base/query/v1beta1/pagination.d.ts +105 -0
  76. package/build/cosmos/base/query/v1beta1/pagination.js +141 -0
  77. package/build/cosmos/base/reflection/v1beta1/reflection.d.ts +66 -0
  78. package/build/cosmos/base/reflection/v1beta1/reflection.js +162 -0
  79. package/build/cosmos/base/reflection/v2alpha1/reflection.d.ts +451 -0
  80. package/build/cosmos/base/reflection/v2alpha1/reflection.js +1017 -0
  81. package/build/cosmos/base/tendermint/v1beta1/query.d.ts +366 -0
  82. package/build/cosmos/base/tendermint/v1beta1/query.js +963 -0
  83. package/build/cosmos/base/tendermint/v1beta1/query.lcd.d.ts +15 -0
  84. package/build/cosmos/base/tendermint/v1beta1/query.lcd.js +86 -0
  85. package/build/cosmos/base/tendermint/v1beta1/query.rpc.Service.d.ts +46 -0
  86. package/build/cosmos/base/tendermint/v1beta1/query.rpc.Service.js +108 -0
  87. package/build/cosmos/base/tendermint/v1beta1/types.d.ts +83 -0
  88. package/build/cosmos/base/tendermint/v1beta1/types.js +232 -0
  89. package/build/cosmos/base/v1beta1/coin.d.ts +90 -0
  90. package/build/cosmos/base/v1beta1/coin.js +188 -0
  91. package/build/cosmos/bundle.d.ts +12018 -0
  92. package/build/cosmos/bundle.js +670 -0
  93. package/build/cosmos/circuit/module/v1/module.d.ts +16 -0
  94. package/build/cosmos/circuit/module/v1/module.js +64 -0
  95. package/build/cosmos/circuit/v1/query.d.ts +84 -0
  96. package/build/cosmos/circuit/v1/query.js +242 -0
  97. package/build/cosmos/circuit/v1/query.lcd.d.ts +11 -0
  98. package/build/cosmos/circuit/v1/query.lcd.js +37 -0
  99. package/build/cosmos/circuit/v1/query.rpc.Query.d.ts +24 -0
  100. package/build/cosmos/circuit/v1/query.rpc.Query.js +72 -0
  101. package/build/cosmos/circuit/v1/tx.d.ts +113 -0
  102. package/build/cosmos/circuit/v1/tx.js +277 -0
  103. package/build/cosmos/circuit/v1/tx.rpc.msg.d.ts +24 -0
  104. package/build/cosmos/circuit/v1/tx.rpc.msg.js +53 -0
  105. package/build/cosmos/circuit/v1/types.d.ts +88 -0
  106. package/build/cosmos/circuit/v1/types.js +225 -0
  107. package/build/cosmos/consensus/module/v1/module.d.ts +16 -0
  108. package/build/cosmos/consensus/module/v1/module.js +64 -0
  109. package/build/cosmos/consensus/v1/query.d.ts +32 -0
  110. package/build/cosmos/consensus/v1/query.js +90 -0
  111. package/build/cosmos/consensus/v1/query.lcd.d.ts +9 -0
  112. package/build/cosmos/consensus/v1/query.lcd.js +16 -0
  113. package/build/cosmos/consensus/v1/query.rpc.Query.d.ts +16 -0
  114. package/build/cosmos/consensus/v1/query.rpc.Query.js +52 -0
  115. package/build/cosmos/consensus/v1/tx.d.ts +50 -0
  116. package/build/cosmos/consensus/v1/tx.js +123 -0
  117. package/build/cosmos/consensus/v1/tx.rpc.msg.d.ts +17 -0
  118. package/build/cosmos/consensus/v1/tx.rpc.msg.js +41 -0
  119. package/build/cosmos/crisis/module/v1/module.d.ts +19 -0
  120. package/build/cosmos/crisis/module/v1/module.js +72 -0
  121. package/build/cosmos/crisis/v1beta1/genesis.d.ts +20 -0
  122. package/build/cosmos/crisis/v1beta1/genesis.js +64 -0
  123. package/build/cosmos/crisis/v1beta1/tx.d.ts +80 -0
  124. package/build/cosmos/crisis/v1beta1/tx.js +177 -0
  125. package/build/cosmos/crisis/v1beta1/tx.rpc.msg.d.ts +20 -0
  126. package/build/cosmos/crisis/v1beta1/tx.rpc.msg.js +47 -0
  127. package/build/cosmos/crypto/ed25519/keys.d.ts +46 -0
  128. package/build/cosmos/crypto/ed25519/keys.js +100 -0
  129. package/build/cosmos/crypto/hd/v1/hd.d.ts +31 -0
  130. package/build/cosmos/crypto/hd/v1/hd.js +96 -0
  131. package/build/cosmos/crypto/keyring/v1/record.d.ts +87 -0
  132. package/build/cosmos/crypto/keyring/v1/record.js +228 -0
  133. package/build/cosmos/crypto/multisig/keys.d.ts +26 -0
  134. package/build/cosmos/crypto/multisig/keys.js +73 -0
  135. package/build/cosmos/crypto/multisig/v1beta1/multisig.d.ts +48 -0
  136. package/build/cosmos/crypto/multisig/v1beta1/multisig.js +108 -0
  137. package/build/cosmos/crypto/secp256k1/keys.d.ts +40 -0
  138. package/build/cosmos/crypto/secp256k1/keys.js +100 -0
  139. package/build/cosmos/crypto/secp256r1/keys.d.ts +33 -0
  140. package/build/cosmos/crypto/secp256r1/keys.js +100 -0
  141. package/build/cosmos/distribution/module/v1/module.d.ts +18 -0
  142. package/build/cosmos/distribution/module/v1/module.js +72 -0
  143. package/build/cosmos/distribution/v1beta1/distribution.d.ts +306 -0
  144. package/build/cosmos/distribution/v1beta1/distribution.js +590 -0
  145. package/build/cosmos/distribution/v1beta1/genesis.d.ts +197 -0
  146. package/build/cosmos/distribution/v1beta1/genesis.js +479 -0
  147. package/build/cosmos/distribution/v1beta1/query.d.ts +399 -0
  148. package/build/cosmos/distribution/v1beta1/query.js +793 -0
  149. package/build/cosmos/distribution/v1beta1/query.lcd.d.ts +18 -0
  150. package/build/cosmos/distribution/v1beta1/query.lcd.js +84 -0
  151. package/build/cosmos/distribution/v1beta1/query.rpc.Query.d.ts +55 -0
  152. package/build/cosmos/distribution/v1beta1/query.rpc.Query.js +133 -0
  153. package/build/cosmos/distribution/v1beta1/tx.d.ts +303 -0
  154. package/build/cosmos/distribution/v1beta1/tx.js +548 -0
  155. package/build/cosmos/distribution/v1beta1/tx.rpc.msg.d.ts +59 -0
  156. package/build/cosmos/distribution/v1beta1/tx.rpc.msg.js +77 -0
  157. package/build/cosmos/evidence/module/v1/module.d.ts +13 -0
  158. package/build/cosmos/evidence/module/v1/module.js +54 -0
  159. package/build/cosmos/evidence/v1beta1/evidence.d.ts +32 -0
  160. package/build/cosmos/evidence/v1beta1/evidence.js +90 -0
  161. package/build/cosmos/evidence/v1beta1/genesis.d.ts +17 -0
  162. package/build/cosmos/evidence/v1beta1/genesis.js +65 -0
  163. package/build/cosmos/evidence/v1beta1/query.d.ts +87 -0
  164. package/build/cosmos/evidence/v1beta1/query.js +188 -0
  165. package/build/cosmos/evidence/v1beta1/query.lcd.d.ts +10 -0
  166. package/build/cosmos/evidence/v1beta1/query.lcd.js +37 -0
  167. package/build/cosmos/evidence/v1beta1/query.rpc.Query.d.ts +20 -0
  168. package/build/cosmos/evidence/v1beta1/query.rpc.Query.js +63 -0
  169. package/build/cosmos/evidence/v1beta1/tx.d.ts +40 -0
  170. package/build/cosmos/evidence/v1beta1/tx.js +109 -0
  171. package/build/cosmos/evidence/v1beta1/tx.rpc.msg.d.ts +15 -0
  172. package/build/cosmos/evidence/v1beta1/tx.rpc.msg.js +41 -0
  173. package/build/cosmos/feegrant/module/v1/module.d.ts +13 -0
  174. package/build/cosmos/feegrant/module/v1/module.js +54 -0
  175. package/build/cosmos/feegrant/v1beta1/feegrant.d.ts +111 -0
  176. package/build/cosmos/feegrant/v1beta1/feegrant.js +241 -0
  177. package/build/cosmos/feegrant/v1beta1/genesis.d.ts +16 -0
  178. package/build/cosmos/feegrant/v1beta1/genesis.js +65 -0
  179. package/build/cosmos/feegrant/v1beta1/query.d.ts +117 -0
  180. package/build/cosmos/feegrant/v1beta1/query.js +285 -0
  181. package/build/cosmos/feegrant/v1beta1/query.lcd.d.ts +11 -0
  182. package/build/cosmos/feegrant/v1beta1/query.lcd.js +43 -0
  183. package/build/cosmos/feegrant/v1beta1/query.rpc.Query.d.ts +28 -0
  184. package/build/cosmos/feegrant/v1beta1/query.rpc.Query.js +70 -0
  185. package/build/cosmos/feegrant/v1beta1/tx.d.ts +109 -0
  186. package/build/cosmos/feegrant/v1beta1/tx.js +239 -0
  187. package/build/cosmos/feegrant/v1beta1/tx.rpc.msg.d.ts +28 -0
  188. package/build/cosmos/feegrant/v1beta1/tx.rpc.msg.js +53 -0
  189. package/build/cosmos/genutil/module/v1/module.d.ts +13 -0
  190. package/build/cosmos/genutil/module/v1/module.js +54 -0
  191. package/build/cosmos/genutil/v1beta1/genesis.d.ts +16 -0
  192. package/build/cosmos/genutil/v1beta1/genesis.js +64 -0
  193. package/build/cosmos/gov/module/v1/module.d.ts +23 -0
  194. package/build/cosmos/gov/module/v1/module.js +73 -0
  195. package/build/cosmos/gov/v1/genesis.d.ts +68 -0
  196. package/build/cosmos/gov/v1/genesis.js +130 -0
  197. package/build/cosmos/gov/v1/gov.d.ts +404 -0
  198. package/build/cosmos/gov/v1/gov.js +822 -0
  199. package/build/cosmos/gov/v1/query.d.ts +320 -0
  200. package/build/cosmos/gov/v1/query.js +764 -0
  201. package/build/cosmos/gov/v1/query.lcd.d.ts +17 -0
  202. package/build/cosmos/gov/v1/query.lcd.js +92 -0
  203. package/build/cosmos/gov/v1/query.rpc.Query.d.ts +48 -0
  204. package/build/cosmos/gov/v1/query.rpc.Query.js +124 -0
  205. package/build/cosmos/gov/v1/tx.d.ts +308 -0
  206. package/build/cosmos/gov/v1/tx.js +638 -0
  207. package/build/cosmos/gov/v1/tx.rpc.msg.d.ts +42 -0
  208. package/build/cosmos/gov/v1/tx.rpc.msg.js +77 -0
  209. package/build/cosmos/gov/v1beta1/genesis.d.ts +36 -0
  210. package/build/cosmos/gov/v1beta1/genesis.js +114 -0
  211. package/build/cosmos/gov/v1beta1/gov.d.ts +295 -0
  212. package/build/cosmos/gov/v1beta1/gov.js +662 -0
  213. package/build/cosmos/gov/v1beta1/query.d.ts +273 -0
  214. package/build/cosmos/gov/v1beta1/query.js +694 -0
  215. package/build/cosmos/gov/v1beta1/query.lcd.d.ts +16 -0
  216. package/build/cosmos/gov/v1beta1/query.lcd.js +86 -0
  217. package/build/cosmos/gov/v1beta1/query.rpc.Query.d.ts +44 -0
  218. package/build/cosmos/gov/v1beta1/query.rpc.Query.js +115 -0
  219. package/build/cosmos/gov/v1beta1/tx.d.ts +155 -0
  220. package/build/cosmos/gov/v1beta1/tx.js +353 -0
  221. package/build/cosmos/gov/v1beta1/tx.rpc.msg.d.ts +25 -0
  222. package/build/cosmos/gov/v1beta1/tx.rpc.msg.js +59 -0
  223. package/build/cosmos/group/module/v1/module.d.ts +27 -0
  224. package/build/cosmos/group/module/v1/module.js +73 -0
  225. package/build/cosmos/group/v1/events.d.ts +159 -0
  226. package/build/cosmos/group/v1/events.js +425 -0
  227. package/build/cosmos/group/v1/genesis.d.ts +48 -0
  228. package/build/cosmos/group/v1/genesis.js +122 -0
  229. package/build/cosmos/group/v1/query.d.ts +467 -0
  230. package/build/cosmos/group/v1/query.js +1171 -0
  231. package/build/cosmos/group/v1/query.lcd.d.ts +22 -0
  232. package/build/cosmos/group/v1/query.lcd.js +157 -0
  233. package/build/cosmos/group/v1/query.rpc.Query.d.ts +78 -0
  234. package/build/cosmos/group/v1/query.rpc.Query.js +171 -0
  235. package/build/cosmos/group/v1/tx.d.ts +521 -0
  236. package/build/cosmos/group/v1/tx.js +1280 -0
  237. package/build/cosmos/group/v1/tx.rpc.msg.d.ts +51 -0
  238. package/build/cosmos/group/v1/tx.rpc.msg.js +119 -0
  239. package/build/cosmos/group/v1/types.d.ts +467 -0
  240. package/build/cosmos/group/v1/types.js +935 -0
  241. package/build/cosmos/lcd.d.ts +66 -0
  242. package/build/cosmos/lcd.js +138 -0
  243. package/build/cosmos/mint/module/v1/module.d.ts +18 -0
  244. package/build/cosmos/mint/module/v1/module.js +72 -0
  245. package/build/cosmos/mint/v1beta1/genesis.d.ts +20 -0
  246. package/build/cosmos/mint/v1beta1/genesis.js +72 -0
  247. package/build/cosmos/mint/v1beta1/mint.d.ts +49 -0
  248. package/build/cosmos/mint/v1beta1/mint.js +149 -0
  249. package/build/cosmos/mint/v1beta1/query.d.ts +96 -0
  250. package/build/cosmos/mint/v1beta1/query.js +214 -0
  251. package/build/cosmos/mint/v1beta1/query.lcd.d.ts +11 -0
  252. package/build/cosmos/mint/v1beta1/query.lcd.js +28 -0
  253. package/build/cosmos/mint/v1beta1/query.rpc.Query.d.ts +24 -0
  254. package/build/cosmos/mint/v1beta1/query.rpc.Query.js +70 -0
  255. package/build/cosmos/mint/v1beta1/tx.d.ts +53 -0
  256. package/build/cosmos/mint/v1beta1/tx.js +99 -0
  257. package/build/cosmos/mint/v1beta1/tx.rpc.msg.d.ts +17 -0
  258. package/build/cosmos/mint/v1beta1/tx.rpc.msg.js +41 -0
  259. package/build/cosmos/msg/textual/v1/textual.d.ts +1 -0
  260. package/build/cosmos/msg/textual/v1/textual.js +3 -0
  261. package/build/cosmos/msg/v1/msg.d.ts +1 -0
  262. package/build/cosmos/msg/v1/msg.js +3 -0
  263. package/build/cosmos/nft/module/v1/module.d.ts +13 -0
  264. package/build/cosmos/nft/module/v1/module.js +54 -0
  265. package/build/cosmos/nft/v1beta1/event.d.ts +65 -0
  266. package/build/cosmos/nft/v1beta1/event.js +192 -0
  267. package/build/cosmos/nft/v1beta1/genesis.d.ts +37 -0
  268. package/build/cosmos/nft/v1beta1/genesis.js +117 -0
  269. package/build/cosmos/nft/v1beta1/nft.d.ts +61 -0
  270. package/build/cosmos/nft/v1beta1/nft.js +181 -0
  271. package/build/cosmos/nft/v1beta1/query.d.ts +222 -0
  272. package/build/cosmos/nft/v1beta1/query.js +586 -0
  273. package/build/cosmos/nft/v1beta1/query.lcd.d.ts +15 -0
  274. package/build/cosmos/nft/v1beta1/query.lcd.js +74 -0
  275. package/build/cosmos/nft/v1beta1/query.rpc.Query.d.ts +43 -0
  276. package/build/cosmos/nft/v1beta1/query.rpc.Query.js +108 -0
  277. package/build/cosmos/nft/v1beta1/tx.d.ts +36 -0
  278. package/build/cosmos/nft/v1beta1/tx.js +114 -0
  279. package/build/cosmos/nft/v1beta1/tx.rpc.msg.d.ts +12 -0
  280. package/build/cosmos/nft/v1beta1/tx.rpc.msg.js +41 -0
  281. package/build/cosmos/orm/module/v1alpha1/module.d.ts +21 -0
  282. package/build/cosmos/orm/module/v1alpha1/module.js +54 -0
  283. package/build/cosmos/orm/query/v1alpha1/query.d.ts +181 -0
  284. package/build/cosmos/orm/query/v1alpha1/query.js +404 -0
  285. package/build/cosmos/orm/query/v1alpha1/query.rpc.Query.d.ts +20 -0
  286. package/build/cosmos/orm/query/v1alpha1/query.rpc.Query.js +61 -0
  287. package/build/cosmos/orm/v1/orm.d.ts +133 -0
  288. package/build/cosmos/orm/v1/orm.js +212 -0
  289. package/build/cosmos/orm/v1alpha1/schema.d.ts +78 -0
  290. package/build/cosmos/orm/v1alpha1/schema.js +181 -0
  291. package/build/cosmos/params/module/v1/module.d.ts +13 -0
  292. package/build/cosmos/params/module/v1/module.js +54 -0
  293. package/build/cosmos/params/v1beta1/params.d.ts +42 -0
  294. package/build/cosmos/params/v1beta1/params.js +132 -0
  295. package/build/cosmos/params/v1beta1/query.d.ts +103 -0
  296. package/build/cosmos/params/v1beta1/query.js +214 -0
  297. package/build/cosmos/params/v1beta1/query.lcd.d.ts +10 -0
  298. package/build/cosmos/params/v1beta1/query.lcd.js +34 -0
  299. package/build/cosmos/params/v1beta1/query.rpc.Query.d.ts +27 -0
  300. package/build/cosmos/params/v1beta1/query.rpc.Query.js +61 -0
  301. package/build/cosmos/query/v1/query.d.ts +1 -0
  302. package/build/cosmos/query/v1/query.js +3 -0
  303. package/build/cosmos/reflection/v1/reflection.d.ts +28 -0
  304. package/build/cosmos/reflection/v1/reflection.js +91 -0
  305. package/build/cosmos/rpc.query.d.ts +227 -0
  306. package/build/cosmos/rpc.query.js +106 -0
  307. package/build/cosmos/rpc.tx.d.ts +59 -0
  308. package/build/cosmos/rpc.tx.js +84 -0
  309. package/build/cosmos/slashing/module/v1/module.d.ts +16 -0
  310. package/build/cosmos/slashing/module/v1/module.js +64 -0
  311. package/build/cosmos/slashing/v1beta1/genesis.d.ts +87 -0
  312. package/build/cosmos/slashing/v1beta1/genesis.js +214 -0
  313. package/build/cosmos/slashing/v1beta1/query.d.ts +109 -0
  314. package/build/cosmos/slashing/v1beta1/query.js +241 -0
  315. package/build/cosmos/slashing/v1beta1/query.lcd.d.ts +11 -0
  316. package/build/cosmos/slashing/v1beta1/query.lcd.js +37 -0
  317. package/build/cosmos/slashing/v1beta1/query.rpc.Query.d.ts +24 -0
  318. package/build/cosmos/slashing/v1beta1/query.rpc.Query.js +72 -0
  319. package/build/cosmos/slashing/v1beta1/slashing.d.ts +70 -0
  320. package/build/cosmos/slashing/v1beta1/slashing.js +175 -0
  321. package/build/cosmos/slashing/v1beta1/tx.d.ts +77 -0
  322. package/build/cosmos/slashing/v1beta1/tx.js +161 -0
  323. package/build/cosmos/slashing/v1beta1/tx.rpc.msg.d.ts +24 -0
  324. package/build/cosmos/slashing/v1beta1/tx.rpc.msg.js +47 -0
  325. package/build/cosmos/staking/module/v1/module.d.ts +29 -0
  326. package/build/cosmos/staking/module/v1/module.js +88 -0
  327. package/build/cosmos/staking/v1beta1/authz.d.ts +74 -0
  328. package/build/cosmos/staking/v1beta1/authz.js +187 -0
  329. package/build/cosmos/staking/v1beta1/genesis.d.ts +62 -0
  330. package/build/cosmos/staking/v1beta1/genesis.js +166 -0
  331. package/build/cosmos/staking/v1beta1/query.d.ts +552 -0
  332. package/build/cosmos/staking/v1beta1/query.js +1163 -0
  333. package/build/cosmos/staking/v1beta1/query.lcd.d.ts +22 -0
  334. package/build/cosmos/staking/v1beta1/query.lcd.js +171 -0
  335. package/build/cosmos/staking/v1beta1/query.rpc.Query.d.ts +111 -0
  336. package/build/cosmos/staking/v1beta1/query.rpc.Query.js +169 -0
  337. package/build/cosmos/staking/v1beta1/staking.d.ts +568 -0
  338. package/build/cosmos/staking/v1beta1/staking.js +1287 -0
  339. package/build/cosmos/staking/v1beta1/tx.d.ts +298 -0
  340. package/build/cosmos/staking/v1beta1/tx.js +655 -0
  341. package/build/cosmos/staking/v1beta1/tx.rpc.msg.d.ts +48 -0
  342. package/build/cosmos/staking/v1beta1/tx.rpc.msg.js +77 -0
  343. package/build/cosmos/store/internal/kv/v1beta1/kv.d.ts +30 -0
  344. package/build/cosmos/store/internal/kv/v1beta1/kv.js +108 -0
  345. package/build/cosmos/store/snapshots/v1/snapshot.d.ts +159 -0
  346. package/build/cosmos/store/snapshots/v1/snapshot.js +368 -0
  347. package/build/cosmos/store/streaming/abci/grpc.d.ts +60 -0
  348. package/build/cosmos/store/streaming/abci/grpc.js +178 -0
  349. package/build/cosmos/store/v1beta1/commit_info.d.ts +68 -0
  350. package/build/cosmos/store/v1beta1/commit_info.js +170 -0
  351. package/build/cosmos/store/v1beta1/listening.d.ts +60 -0
  352. package/build/cosmos/store/v1beta1/listening.js +140 -0
  353. package/build/cosmos/tx/config/v1/config.d.ts +25 -0
  354. package/build/cosmos/tx/config/v1/config.js +72 -0
  355. package/build/cosmos/tx/signing/v1beta1/signing.d.ts +163 -0
  356. package/build/cosmos/tx/signing/v1beta1/signing.js +355 -0
  357. package/build/cosmos/tx/v1beta1/service.d.ts +521 -0
  358. package/build/cosmos/tx/v1beta1/service.js +914 -0
  359. package/build/cosmos/tx/v1beta1/service.lcd.d.ts +11 -0
  360. package/build/cosmos/tx/v1beta1/service.lcd.js +58 -0
  361. package/build/cosmos/tx/v1beta1/service.rpc.Service.d.ts +68 -0
  362. package/build/cosmos/tx/v1beta1/service.rpc.Service.js +124 -0
  363. package/build/cosmos/tx/v1beta1/tx.d.ts +461 -0
  364. package/build/cosmos/tx/v1beta1/tx.js +730 -0
  365. package/build/cosmos/upgrade/module/v1/module.d.ts +16 -0
  366. package/build/cosmos/upgrade/module/v1/module.js +64 -0
  367. package/build/cosmos/upgrade/v1beta1/query.d.ts +220 -0
  368. package/build/cosmos/upgrade/v1beta1/query.js +367 -0
  369. package/build/cosmos/upgrade/v1beta1/query.lcd.d.ts +13 -0
  370. package/build/cosmos/upgrade/v1beta1/query.lcd.js +55 -0
  371. package/build/cosmos/upgrade/v1beta1/query.rpc.Query.d.ts +47 -0
  372. package/build/cosmos/upgrade/v1beta1/query.rpc.Query.js +88 -0
  373. package/build/cosmos/upgrade/v1beta1/tx.d.ts +88 -0
  374. package/build/cosmos/upgrade/v1beta1/tx.js +161 -0
  375. package/build/cosmos/upgrade/v1beta1/tx.rpc.msg.d.ts +24 -0
  376. package/build/cosmos/upgrade/v1beta1/tx.rpc.msg.js +47 -0
  377. package/build/cosmos/upgrade/v1beta1/upgrade.d.ts +139 -0
  378. package/build/cosmos/upgrade/v1beta1/upgrade.js +239 -0
  379. package/build/cosmos/vesting/module/v1/module.d.ts +13 -0
  380. package/build/cosmos/vesting/module/v1/module.js +54 -0
  381. package/build/cosmos/vesting/v1beta1/tx.d.ts +141 -0
  382. package/build/cosmos/vesting/v1beta1/tx.js +289 -0
  383. package/build/cosmos/vesting/v1beta1/tx.rpc.msg.d.ts +31 -0
  384. package/build/cosmos/vesting/v1beta1/tx.rpc.msg.js +53 -0
  385. package/build/cosmos/vesting/v1beta1/vesting.d.ts +140 -0
  386. package/build/cosmos/vesting/v1beta1/vesting.js +308 -0
  387. package/build/cosmos_proto/bundle.d.ts +24 -0
  388. package/build/cosmos_proto/bundle.js +30 -0
  389. package/build/cosmos_proto/cosmos.d.ts +92 -0
  390. package/build/cosmos_proto/cosmos.js +174 -0
  391. package/build/gogoproto/bundle.d.ts +1 -0
  392. package/build/gogoproto/bundle.js +30 -0
  393. package/build/gogoproto/gogo.d.ts +1 -0
  394. package/build/gogoproto/gogo.js +3 -0
  395. package/build/google/api/annotations.d.ts +1 -0
  396. package/build/google/api/annotations.js +3 -0
  397. package/build/google/api/http.d.ts +673 -0
  398. package/build/google/api/http.js +224 -0
  399. package/build/google/bundle.d.ts +1460 -0
  400. package/build/google/bundle.js +44 -0
  401. package/build/google/protobuf/any.d.ts +207 -0
  402. package/build/google/protobuf/any.js +72 -0
  403. package/build/google/protobuf/descriptor.d.ts +1172 -0
  404. package/build/google/protobuf/descriptor.js +2198 -0
  405. package/build/google/protobuf/duration.d.ts +149 -0
  406. package/build/google/protobuf/duration.js +73 -0
  407. package/build/google/protobuf/timestamp.d.ts +195 -0
  408. package/build/google/protobuf/timestamp.js +73 -0
  409. package/build/helpers.d.ts +82 -0
  410. package/build/helpers.js +184 -0
  411. package/build/index.d.ts +12 -0
  412. package/build/index.js +29 -0
  413. package/build/perpx/accountplus/accountplus.d.ts +35 -0
  414. package/build/perpx/accountplus/accountplus.js +127 -0
  415. package/build/perpx/accountplus/genesis.d.ts +59 -0
  416. package/build/perpx/accountplus/genesis.js +136 -0
  417. package/build/perpx/accountplus/models.d.ts +40 -0
  418. package/build/perpx/accountplus/models.js +81 -0
  419. package/build/perpx/accountplus/params.d.ts +20 -0
  420. package/build/perpx/accountplus/params.js +64 -0
  421. package/build/perpx/accountplus/query.d.ts +123 -0
  422. package/build/perpx/accountplus/query.js +315 -0
  423. package/build/perpx/accountplus/query.lcd.d.ts +12 -0
  424. package/build/perpx/accountplus/query.lcd.js +34 -0
  425. package/build/perpx/accountplus/query.rpc.Query.d.ts +28 -0
  426. package/build/perpx/accountplus/query.rpc.Query.js +79 -0
  427. package/build/perpx/accountplus/tx.d.ts +128 -0
  428. package/build/perpx/accountplus/tx.js +313 -0
  429. package/build/perpx/accountplus/tx.rpc.msg.d.ts +21 -0
  430. package/build/perpx/accountplus/tx.rpc.msg.js +53 -0
  431. package/build/perpx/affiliates/affiliates.d.ts +124 -0
  432. package/build/perpx/affiliates/affiliates.js +285 -0
  433. package/build/perpx/affiliates/genesis.d.ts +20 -0
  434. package/build/perpx/affiliates/genesis.js +72 -0
  435. package/build/perpx/affiliates/query.d.ts +241 -0
  436. package/build/perpx/affiliates/query.js +465 -0
  437. package/build/perpx/affiliates/query.lcd.d.ts +14 -0
  438. package/build/perpx/affiliates/query.lcd.js +46 -0
  439. package/build/perpx/affiliates/query.rpc.Query.d.ts +36 -0
  440. package/build/perpx/affiliates/query.rpc.Query.js +97 -0
  441. package/build/perpx/affiliates/tx.d.ts +143 -0
  442. package/build/perpx/affiliates/tx.js +379 -0
  443. package/build/perpx/affiliates/tx.rpc.msg.d.ts +24 -0
  444. package/build/perpx/affiliates/tx.rpc.msg.js +65 -0
  445. package/build/perpx/assets/asset.d.ts +59 -0
  446. package/build/perpx/assets/asset.js +112 -0
  447. package/build/perpx/assets/genesis.d.ts +16 -0
  448. package/build/perpx/assets/genesis.js +65 -0
  449. package/build/perpx/assets/query.d.ts +60 -0
  450. package/build/perpx/assets/query.js +180 -0
  451. package/build/perpx/assets/query.lcd.d.ts +10 -0
  452. package/build/perpx/assets/query.lcd.js +31 -0
  453. package/build/perpx/assets/query.rpc.Query.d.ts +20 -0
  454. package/build/perpx/assets/query.rpc.Query.js +63 -0
  455. package/build/perpx/assets/tx.d.ts +1 -0
  456. package/build/perpx/assets/tx.js +3 -0
  457. package/build/perpx/blocktime/blocktime.d.ts +56 -0
  458. package/build/perpx/blocktime/blocktime.js +154 -0
  459. package/build/perpx/blocktime/genesis.d.ts +16 -0
  460. package/build/perpx/blocktime/genesis.js +64 -0
  461. package/build/perpx/blocktime/params.d.ts +41 -0
  462. package/build/perpx/blocktime/params.js +100 -0
  463. package/build/perpx/blocktime/query.d.ts +144 -0
  464. package/build/perpx/blocktime/query.js +274 -0
  465. package/build/perpx/blocktime/query.lcd.d.ts +11 -0
  466. package/build/perpx/blocktime/query.lcd.js +28 -0
  467. package/build/perpx/blocktime/query.rpc.Query.d.ts +28 -0
  468. package/build/perpx/blocktime/query.rpc.Query.js +79 -0
  469. package/build/perpx/blocktime/tx.d.ts +69 -0
  470. package/build/perpx/blocktime/tx.js +169 -0
  471. package/build/perpx/blocktime/tx.rpc.msg.d.ts +15 -0
  472. package/build/perpx/blocktime/tx.rpc.msg.js +47 -0
  473. package/build/perpx/bridge/bridge_event.d.ts +27 -0
  474. package/build/perpx/bridge/bridge_event.js +90 -0
  475. package/build/perpx/bridge/bridge_event_info.d.ts +29 -0
  476. package/build/perpx/bridge/bridge_event_info.js +73 -0
  477. package/build/perpx/bridge/genesis.d.ts +29 -0
  478. package/build/perpx/bridge/genesis.js +89 -0
  479. package/build/perpx/bridge/params.d.ts +89 -0
  480. package/build/perpx/bridge/params.js +186 -0
  481. package/build/perpx/bridge/query.d.ts +220 -0
  482. package/build/perpx/bridge/query.js +452 -0
  483. package/build/perpx/bridge/query.lcd.d.ts +14 -0
  484. package/build/perpx/bridge/query.lcd.js +57 -0
  485. package/build/perpx/bridge/query.rpc.Query.d.ts +47 -0
  486. package/build/perpx/bridge/query.rpc.Query.js +97 -0
  487. package/build/perpx/bridge/tx.d.ts +143 -0
  488. package/build/perpx/bridge/tx.js +372 -0
  489. package/build/perpx/bridge/tx.rpc.msg.d.ts +27 -0
  490. package/build/perpx/bridge/tx.rpc.msg.js +65 -0
  491. package/build/perpx/bundle.d.ts +9575 -0
  492. package/build/perpx/bundle.js +449 -0
  493. package/build/perpx/clob/block_rate_limit_config.d.ts +76 -0
  494. package/build/perpx/clob/block_rate_limit_config.js +140 -0
  495. package/build/perpx/clob/clob_pair.d.ts +128 -0
  496. package/build/perpx/clob/clob_pair.js +283 -0
  497. package/build/perpx/clob/equity_tier_limit_config.d.ts +48 -0
  498. package/build/perpx/clob/equity_tier_limit_config.js +116 -0
  499. package/build/perpx/clob/finalize_block.d.ts +23 -0
  500. package/build/perpx/clob/finalize_block.js +64 -0
  501. package/build/perpx/clob/genesis.d.ts +25 -0
  502. package/build/perpx/clob/genesis.js +92 -0
  503. package/build/perpx/clob/liquidations.d.ts +93 -0
  504. package/build/perpx/clob/liquidations.js +188 -0
  505. package/build/perpx/clob/liquidations_config.d.ts +125 -0
  506. package/build/perpx/clob/liquidations_config.js +220 -0
  507. package/build/perpx/clob/matches.d.ts +160 -0
  508. package/build/perpx/clob/matches.js +348 -0
  509. package/build/perpx/clob/mev.d.ts +126 -0
  510. package/build/perpx/clob/mev.js +362 -0
  511. package/build/perpx/clob/operation.d.ts +56 -0
  512. package/build/perpx/clob/operation.js +150 -0
  513. package/build/perpx/clob/order.d.ts +547 -0
  514. package/build/perpx/clob/order.js +910 -0
  515. package/build/perpx/clob/order_removals.d.ts +84 -0
  516. package/build/perpx/clob/order_removals.js +205 -0
  517. package/build/perpx/clob/process_proposer_matches_events.d.ts +60 -0
  518. package/build/perpx/clob/process_proposer_matches_events.js +121 -0
  519. package/build/perpx/clob/query.d.ts +571 -0
  520. package/build/perpx/clob/query.js +1187 -0
  521. package/build/perpx/clob/query.lcd.d.ts +15 -0
  522. package/build/perpx/clob/query.lcd.js +61 -0
  523. package/build/perpx/clob/query.rpc.Query.d.ts +55 -0
  524. package/build/perpx/clob/query.rpc.Query.js +135 -0
  525. package/build/perpx/clob/streaming.d.ts +24 -0
  526. package/build/perpx/clob/streaming.js +90 -0
  527. package/build/perpx/clob/tx.d.ts +448 -0
  528. package/build/perpx/clob/tx.js +903 -0
  529. package/build/perpx/clob/tx.rpc.msg.d.ts +56 -0
  530. package/build/perpx/clob/tx.rpc.msg.js +95 -0
  531. package/build/perpx/daemons/bridge/bridge.d.ts +33 -0
  532. package/build/perpx/daemons/bridge/bridge.js +91 -0
  533. package/build/perpx/daemons/liquidation/liquidation.d.ts +53 -0
  534. package/build/perpx/daemons/liquidation/liquidation.js +116 -0
  535. package/build/perpx/daemons/pricefeed/price_feed.d.ts +59 -0
  536. package/build/perpx/daemons/pricefeed/price_feed.js +188 -0
  537. package/build/perpx/delaymsg/block_message_ids.d.ts +25 -0
  538. package/build/perpx/delaymsg/block_message_ids.js +74 -0
  539. package/build/perpx/delaymsg/delayed_message.d.ts +23 -0
  540. package/build/perpx/delaymsg/delayed_message.js +81 -0
  541. package/build/perpx/delaymsg/genesis.d.ts +20 -0
  542. package/build/perpx/delaymsg/genesis.js +73 -0
  543. package/build/perpx/delaymsg/query.d.ts +113 -0
  544. package/build/perpx/delaymsg/query.js +244 -0
  545. package/build/perpx/delaymsg/query.lcd.d.ts +11 -0
  546. package/build/perpx/delaymsg/query.lcd.js +28 -0
  547. package/build/perpx/delaymsg/query.rpc.Query.d.ts +24 -0
  548. package/build/perpx/delaymsg/query.rpc.Query.js +70 -0
  549. package/build/perpx/delaymsg/tx.d.ts +37 -0
  550. package/build/perpx/delaymsg/tx.js +117 -0
  551. package/build/perpx/delaymsg/tx.rpc.msg.d.ts +15 -0
  552. package/build/perpx/delaymsg/tx.rpc.msg.js +41 -0
  553. package/build/perpx/epochs/epoch_info.d.ts +59 -0
  554. package/build/perpx/epochs/epoch_info.js +112 -0
  555. package/build/perpx/epochs/genesis.d.ts +16 -0
  556. package/build/perpx/epochs/genesis.js +65 -0
  557. package/build/perpx/epochs/query.d.ts +59 -0
  558. package/build/perpx/epochs/query.js +180 -0
  559. package/build/perpx/epochs/query.lcd.d.ts +10 -0
  560. package/build/perpx/epochs/query.lcd.js +31 -0
  561. package/build/perpx/epochs/query.rpc.Query.d.ts +20 -0
  562. package/build/perpx/epochs/query.rpc.Query.js +63 -0
  563. package/build/perpx/feetiers/genesis.d.ts +21 -0
  564. package/build/perpx/feetiers/genesis.js +74 -0
  565. package/build/perpx/feetiers/params.d.ts +46 -0
  566. package/build/perpx/feetiers/params.js +141 -0
  567. package/build/perpx/feetiers/per_market_fee_discount.d.ts +35 -0
  568. package/build/perpx/feetiers/per_market_fee_discount.js +90 -0
  569. package/build/perpx/feetiers/query.d.ts +218 -0
  570. package/build/perpx/feetiers/query.js +455 -0
  571. package/build/perpx/feetiers/query.lcd.d.ts +14 -0
  572. package/build/perpx/feetiers/query.lcd.js +53 -0
  573. package/build/perpx/feetiers/query.rpc.Query.d.ts +39 -0
  574. package/build/perpx/feetiers/query.rpc.Query.js +97 -0
  575. package/build/perpx/feetiers/staking_tier.d.ts +45 -0
  576. package/build/perpx/feetiers/staking_tier.js +116 -0
  577. package/build/perpx/feetiers/tx.d.ts +105 -0
  578. package/build/perpx/feetiers/tx.js +241 -0
  579. package/build/perpx/feetiers/tx.rpc.msg.d.ts +21 -0
  580. package/build/perpx/feetiers/tx.rpc.msg.js +53 -0
  581. package/build/perpx/govplus/genesis.d.ts +13 -0
  582. package/build/perpx/govplus/genesis.js +54 -0
  583. package/build/perpx/govplus/query.d.ts +1 -0
  584. package/build/perpx/govplus/query.js +3 -0
  585. package/build/perpx/govplus/query.rpc.Query.d.ts +10 -0
  586. package/build/perpx/govplus/query.rpc.Query.js +17 -0
  587. package/build/perpx/govplus/tx.d.ts +58 -0
  588. package/build/perpx/govplus/tx.js +122 -0
  589. package/build/perpx/govplus/tx.rpc.msg.d.ts +15 -0
  590. package/build/perpx/govplus/tx.rpc.msg.js +41 -0
  591. package/build/perpx/indexer/events/events.d.ts +1386 -0
  592. package/build/perpx/indexer/events/events.js +2366 -0
  593. package/build/perpx/indexer/indexer_manager/event.d.ts +129 -0
  594. package/build/perpx/indexer/indexer_manager/event.js +296 -0
  595. package/build/perpx/indexer/off_chain_updates/off_chain_updates.d.ts +181 -0
  596. package/build/perpx/indexer/off_chain_updates/off_chain_updates.js +438 -0
  597. package/build/perpx/indexer/protocol/v1/clob.d.ts +326 -0
  598. package/build/perpx/indexer/protocol/v1/clob.js +597 -0
  599. package/build/perpx/indexer/protocol/v1/perpetual.d.ts +16 -0
  600. package/build/perpx/indexer/protocol/v1/perpetual.js +51 -0
  601. package/build/perpx/indexer/protocol/v1/subaccount.d.ts +90 -0
  602. package/build/perpx/indexer/protocol/v1/subaccount.js +185 -0
  603. package/build/perpx/indexer/protocol/v1/vault.d.ts +17 -0
  604. package/build/perpx/indexer/protocol/v1/vault.js +62 -0
  605. package/build/perpx/indexer/redis/redis_order.d.ts +56 -0
  606. package/build/perpx/indexer/redis/redis_order.js +152 -0
  607. package/build/perpx/indexer/shared/removal_reason.d.ts +76 -0
  608. package/build/perpx/indexer/shared/removal_reason.js +176 -0
  609. package/build/perpx/indexer/socks/messages.d.ts +159 -0
  610. package/build/perpx/indexer/socks/messages.js +448 -0
  611. package/build/perpx/lcd.d.ts +87 -0
  612. package/build/perpx/lcd.js +197 -0
  613. package/build/perpx/listing/genesis.d.ts +23 -0
  614. package/build/perpx/listing/genesis.js +73 -0
  615. package/build/perpx/listing/params.d.ts +25 -0
  616. package/build/perpx/listing/params.js +80 -0
  617. package/build/perpx/listing/query.d.ts +52 -0
  618. package/build/perpx/listing/query.js +152 -0
  619. package/build/perpx/listing/query.lcd.d.ts +10 -0
  620. package/build/perpx/listing/query.lcd.js +22 -0
  621. package/build/perpx/listing/query.rpc.Query.d.ts +20 -0
  622. package/build/perpx/listing/query.rpc.Query.js +61 -0
  623. package/build/perpx/listing/tx.d.ts +155 -0
  624. package/build/perpx/listing/tx.js +310 -0
  625. package/build/perpx/listing/tx.rpc.msg.d.ts +24 -0
  626. package/build/perpx/listing/tx.rpc.msg.js +59 -0
  627. package/build/perpx/perpetuals/genesis.d.ts +21 -0
  628. package/build/perpx/perpetuals/genesis.js +82 -0
  629. package/build/perpx/perpetuals/params.d.ts +33 -0
  630. package/build/perpx/perpetuals/params.js +80 -0
  631. package/build/perpx/perpetuals/perpetual.d.ts +214 -0
  632. package/build/perpx/perpetuals/perpetual.js +398 -0
  633. package/build/perpx/perpetuals/query.d.ts +209 -0
  634. package/build/perpx/perpetuals/query.js +505 -0
  635. package/build/perpx/perpetuals/query.lcd.d.ts +15 -0
  636. package/build/perpx/perpetuals/query.lcd.js +69 -0
  637. package/build/perpx/perpetuals/query.rpc.Query.d.ts +40 -0
  638. package/build/perpx/perpetuals/query.rpc.Query.js +110 -0
  639. package/build/perpx/perpetuals/tx.d.ts +197 -0
  640. package/build/perpx/perpetuals/tx.js +416 -0
  641. package/build/perpx/perpetuals/tx.rpc.msg.d.ts +30 -0
  642. package/build/perpx/perpetuals/tx.rpc.msg.js +65 -0
  643. package/build/perpx/prices/genesis.d.ts +19 -0
  644. package/build/perpx/prices/genesis.js +74 -0
  645. package/build/perpx/prices/market_param.d.ts +63 -0
  646. package/build/perpx/prices/market_param.js +104 -0
  647. package/build/perpx/prices/market_price.d.ts +32 -0
  648. package/build/perpx/prices/market_price.js +81 -0
  649. package/build/perpx/prices/query.d.ts +203 -0
  650. package/build/perpx/prices/query.js +393 -0
  651. package/build/perpx/prices/query.lcd.d.ts +13 -0
  652. package/build/perpx/prices/query.lcd.js +57 -0
  653. package/build/perpx/prices/query.rpc.Query.d.ts +32 -0
  654. package/build/perpx/prices/query.rpc.Query.js +92 -0
  655. package/build/perpx/prices/streaming.d.ts +23 -0
  656. package/build/perpx/prices/streaming.js +81 -0
  657. package/build/perpx/prices/tx.d.ts +118 -0
  658. package/build/perpx/prices/tx.js +276 -0
  659. package/build/perpx/prices/tx.rpc.msg.d.ts +24 -0
  660. package/build/perpx/prices/tx.rpc.msg.js +53 -0
  661. package/build/perpx/ratelimit/capacity.d.ts +42 -0
  662. package/build/perpx/ratelimit/capacity.js +117 -0
  663. package/build/perpx/ratelimit/genesis.d.ts +17 -0
  664. package/build/perpx/ratelimit/genesis.js +65 -0
  665. package/build/perpx/ratelimit/limit_params.d.ts +57 -0
  666. package/build/perpx/ratelimit/limit_params.js +125 -0
  667. package/build/perpx/ratelimit/pending_send_packet.d.ts +24 -0
  668. package/build/perpx/ratelimit/pending_send_packet.js +73 -0
  669. package/build/perpx/ratelimit/query.d.ts +107 -0
  670. package/build/perpx/ratelimit/query.js +227 -0
  671. package/build/perpx/ratelimit/query.lcd.d.ts +11 -0
  672. package/build/perpx/ratelimit/query.lcd.js +34 -0
  673. package/build/perpx/ratelimit/query.rpc.Query.d.ts +24 -0
  674. package/build/perpx/ratelimit/query.rpc.Query.js +70 -0
  675. package/build/perpx/ratelimit/tx.d.ts +30 -0
  676. package/build/perpx/ratelimit/tx.js +99 -0
  677. package/build/perpx/ratelimit/tx.rpc.msg.d.ts +12 -0
  678. package/build/perpx/ratelimit/tx.rpc.msg.js +41 -0
  679. package/build/perpx/revshare/genesis.d.ts +16 -0
  680. package/build/perpx/revshare/genesis.js +64 -0
  681. package/build/perpx/revshare/params.d.ts +29 -0
  682. package/build/perpx/revshare/params.js +80 -0
  683. package/build/perpx/revshare/query.d.ts +105 -0
  684. package/build/perpx/revshare/query.js +294 -0
  685. package/build/perpx/revshare/query.lcd.d.ts +12 -0
  686. package/build/perpx/revshare/query.lcd.js +35 -0
  687. package/build/perpx/revshare/query.rpc.Query.d.ts +31 -0
  688. package/build/perpx/revshare/query.rpc.Query.js +79 -0
  689. package/build/perpx/revshare/revshare.d.ts +77 -0
  690. package/build/perpx/revshare/revshare.js +188 -0
  691. package/build/perpx/revshare/tx.d.ts +123 -0
  692. package/build/perpx/revshare/tx.js +318 -0
  693. package/build/perpx/revshare/tx.rpc.msg.d.ts +27 -0
  694. package/build/perpx/revshare/tx.rpc.msg.js +59 -0
  695. package/build/perpx/rewards/genesis.d.ts +17 -0
  696. package/build/perpx/rewards/genesis.js +64 -0
  697. package/build/perpx/rewards/params.d.ts +36 -0
  698. package/build/perpx/rewards/params.js +96 -0
  699. package/build/perpx/rewards/query.d.ts +27 -0
  700. package/build/perpx/rewards/query.js +90 -0
  701. package/build/perpx/rewards/query.lcd.d.ts +9 -0
  702. package/build/perpx/rewards/query.lcd.js +16 -0
  703. package/build/perpx/rewards/query.rpc.Query.d.ts +16 -0
  704. package/build/perpx/rewards/query.rpc.Query.js +52 -0
  705. package/build/perpx/rewards/reward_share.d.ts +23 -0
  706. package/build/perpx/rewards/reward_share.js +72 -0
  707. package/build/perpx/rewards/tx.d.ts +30 -0
  708. package/build/perpx/rewards/tx.js +99 -0
  709. package/build/perpx/rewards/tx.rpc.msg.d.ts +12 -0
  710. package/build/perpx/rewards/tx.rpc.msg.js +41 -0
  711. package/build/perpx/rpc.query.d.ts +352 -0
  712. package/build/perpx/rpc.query.js +129 -0
  713. package/build/perpx/rpc.tx.d.ts +79 -0
  714. package/build/perpx/rpc.tx.js +104 -0
  715. package/build/perpx/sending/genesis.d.ts +13 -0
  716. package/build/perpx/sending/genesis.js +54 -0
  717. package/build/perpx/sending/query.d.ts +1 -0
  718. package/build/perpx/sending/query.js +3 -0
  719. package/build/perpx/sending/query.rpc.Query.d.ts +10 -0
  720. package/build/perpx/sending/query.rpc.Query.js +17 -0
  721. package/build/perpx/sending/transfer.d.ts +151 -0
  722. package/build/perpx/sending/transfer.js +331 -0
  723. package/build/perpx/sending/tx.d.ts +96 -0
  724. package/build/perpx/sending/tx.js +194 -0
  725. package/build/perpx/sending/tx.rpc.msg.d.ts +37 -0
  726. package/build/perpx/sending/tx.rpc.msg.js +66 -0
  727. package/build/perpx/stats/genesis.d.ts +17 -0
  728. package/build/perpx/stats/genesis.js +64 -0
  729. package/build/perpx/stats/params.d.ts +17 -0
  730. package/build/perpx/stats/params.js +64 -0
  731. package/build/perpx/stats/query.d.ts +143 -0
  732. package/build/perpx/stats/query.js +355 -0
  733. package/build/perpx/stats/query.lcd.d.ts +13 -0
  734. package/build/perpx/stats/query.lcd.js +46 -0
  735. package/build/perpx/stats/query.rpc.Query.d.ts +32 -0
  736. package/build/perpx/stats/query.rpc.Query.js +88 -0
  737. package/build/perpx/stats/stats.d.ts +201 -0
  738. package/build/perpx/stats/stats.js +497 -0
  739. package/build/perpx/stats/tx.d.ts +30 -0
  740. package/build/perpx/stats/tx.js +99 -0
  741. package/build/perpx/stats/tx.rpc.msg.d.ts +12 -0
  742. package/build/perpx/stats/tx.rpc.msg.js +41 -0
  743. package/build/perpx/subaccounts/asset_position.d.ts +33 -0
  744. package/build/perpx/subaccounts/asset_position.js +81 -0
  745. package/build/perpx/subaccounts/genesis.d.ts +16 -0
  746. package/build/perpx/subaccounts/genesis.js +65 -0
  747. package/build/perpx/subaccounts/leverage.d.ts +39 -0
  748. package/build/perpx/subaccounts/leverage.js +108 -0
  749. package/build/perpx/subaccounts/perpetual_position.d.ts +34 -0
  750. package/build/perpx/subaccounts/perpetual_position.js +88 -0
  751. package/build/perpx/subaccounts/query.d.ts +151 -0
  752. package/build/perpx/subaccounts/query.js +348 -0
  753. package/build/perpx/subaccounts/query.lcd.d.ts +12 -0
  754. package/build/perpx/subaccounts/query.lcd.js +44 -0
  755. package/build/perpx/subaccounts/query.rpc.Query.d.ts +31 -0
  756. package/build/perpx/subaccounts/query.rpc.Query.js +81 -0
  757. package/build/perpx/subaccounts/streaming.d.ts +86 -0
  758. package/build/perpx/subaccounts/streaming.js +178 -0
  759. package/build/perpx/subaccounts/subaccount.d.ts +62 -0
  760. package/build/perpx/subaccounts/subaccount.js +134 -0
  761. package/build/perpx/vault/genesis.d.ts +109 -0
  762. package/build/perpx/vault/genesis.js +291 -0
  763. package/build/perpx/vault/params.d.ts +148 -0
  764. package/build/perpx/vault/params.js +328 -0
  765. package/build/perpx/vault/query.d.ts +317 -0
  766. package/build/perpx/vault/query.js +737 -0
  767. package/build/perpx/vault/query.lcd.d.ts +15 -0
  768. package/build/perpx/vault/query.lcd.js +69 -0
  769. package/build/perpx/vault/query.rpc.Query.d.ts +44 -0
  770. package/build/perpx/vault/query.rpc.Query.js +119 -0
  771. package/build/perpx/vault/share.d.ts +71 -0
  772. package/build/perpx/vault/share.js +196 -0
  773. package/build/perpx/vault/tx.d.ts +329 -0
  774. package/build/perpx/vault/tx.js +748 -0
  775. package/build/perpx/vault/tx.rpc.msg.d.ts +36 -0
  776. package/build/perpx/vault/tx.rpc.msg.js +83 -0
  777. package/build/perpx/vault/vault.d.ts +50 -0
  778. package/build/perpx/vault/vault.js +170 -0
  779. package/build/perpx/vest/genesis.d.ts +17 -0
  780. package/build/perpx/vest/genesis.js +65 -0
  781. package/build/perpx/vest/query.d.ts +30 -0
  782. package/build/perpx/vest/query.js +100 -0
  783. package/build/perpx/vest/query.lcd.d.ts +9 -0
  784. package/build/perpx/vest/query.lcd.js +22 -0
  785. package/build/perpx/vest/query.rpc.Query.d.ts +16 -0
  786. package/build/perpx/vest/query.rpc.Query.js +52 -0
  787. package/build/perpx/vest/tx.d.ts +59 -0
  788. package/build/perpx/vest/tx.js +169 -0
  789. package/build/perpx/vest/tx.rpc.msg.d.ts +15 -0
  790. package/build/perpx/vest/tx.rpc.msg.js +47 -0
  791. package/build/perpx/vest/vest_entry.d.ts +40 -0
  792. package/build/perpx/vest/vest_entry.js +98 -0
  793. package/build/tendermint/abci/types.d.ts +985 -0
  794. package/build/tendermint/abci/types.js +3060 -0
  795. package/build/tendermint/bundle.d.ts +2284 -0
  796. package/build/tendermint/bundle.js +61 -0
  797. package/build/tendermint/crypto/keys.d.ts +17 -0
  798. package/build/tendermint/crypto/keys.js +72 -0
  799. package/build/tendermint/crypto/proof.d.ts +88 -0
  800. package/build/tendermint/crypto/proof.js +273 -0
  801. package/build/tendermint/libs/bits/types.d.ts +16 -0
  802. package/build/tendermint/libs/bits/types.js +83 -0
  803. package/build/tendermint/p2p/types.d.ts +71 -0
  804. package/build/tendermint/p2p/types.js +268 -0
  805. package/build/tendermint/types/block.d.ts +21 -0
  806. package/build/tendermint/types/block.js +89 -0
  807. package/build/tendermint/types/evidence.d.ts +71 -0
  808. package/build/tendermint/types/evidence.js +247 -0
  809. package/build/tendermint/types/params.d.ts +168 -0
  810. package/build/tendermint/types/params.js +340 -0
  811. package/build/tendermint/types/types.d.ts +352 -0
  812. package/build/tendermint/types/types.js +1043 -0
  813. package/build/tendermint/types/validator.d.ts +63 -0
  814. package/build/tendermint/types/validator.js +235 -0
  815. package/build/tendermint/version/types.d.ts +49 -0
  816. package/build/tendermint/version/types.js +116 -0
  817. package/build/tsconfig.tsbuildinfo +1 -0
  818. package/package.json +5 -5
  819. package/src/codegen/amino/amino.ts +0 -1
  820. package/src/codegen/amino/bundle.ts +0 -3
  821. package/src/codegen/cosmos/app/runtime/v1alpha1/module.ts +0 -277
  822. package/src/codegen/cosmos/app/v1alpha1/config.ts +0 -265
  823. package/src/codegen/cosmos/app/v1alpha1/module.ts +0 -274
  824. package/src/codegen/cosmos/app/v1alpha1/query.rpc.Query.ts +0 -35
  825. package/src/codegen/cosmos/app/v1alpha1/query.ts +0 -99
  826. package/src/codegen/cosmos/auth/module/v1/module.ts +0 -159
  827. package/src/codegen/cosmos/auth/v1beta1/auth.ts +0 -365
  828. package/src/codegen/cosmos/auth/v1beta1/genesis.ts +0 -74
  829. package/src/codegen/cosmos/auth/v1beta1/query.lcd.ts +0 -130
  830. package/src/codegen/cosmos/auth/v1beta1/query.rpc.Query.ts +0 -194
  831. package/src/codegen/cosmos/auth/v1beta1/query.ts +0 -1221
  832. package/src/codegen/cosmos/auth/v1beta1/tx.rpc.msg.ts +0 -29
  833. package/src/codegen/cosmos/auth/v1beta1/tx.ts +0 -135
  834. package/src/codegen/cosmos/authz/module/v1/module.ts +0 -42
  835. package/src/codegen/cosmos/authz/v1beta1/authz.ts +0 -298
  836. package/src/codegen/cosmos/authz/v1beta1/event.ts +0 -170
  837. package/src/codegen/cosmos/authz/v1beta1/genesis.ts +0 -58
  838. package/src/codegen/cosmos/authz/v1beta1/query.lcd.ts +0 -79
  839. package/src/codegen/cosmos/authz/v1beta1/query.rpc.Query.ts +0 -71
  840. package/src/codegen/cosmos/authz/v1beta1/query.ts +0 -447
  841. package/src/codegen/cosmos/authz/v1beta1/tx.rpc.msg.ts +0 -56
  842. package/src/codegen/cosmos/authz/v1beta1/tx.ts +0 -390
  843. package/src/codegen/cosmos/bank/module/v1/module.ts +0 -76
  844. package/src/codegen/cosmos/bank/v1beta1/authz.ts +0 -87
  845. package/src/codegen/cosmos/bank/v1beta1/bank.ts +0 -630
  846. package/src/codegen/cosmos/bank/v1beta1/genesis.ts +0 -199
  847. package/src/codegen/cosmos/bank/v1beta1/query.lcd.ts +0 -237
  848. package/src/codegen/cosmos/bank/v1beta1/query.rpc.Query.ts +0 -243
  849. package/src/codegen/cosmos/bank/v1beta1/query.ts +0 -1727
  850. package/src/codegen/cosmos/bank/v1beta1/tx.rpc.msg.ts +0 -66
  851. package/src/codegen/cosmos/bank/v1beta1/tx.ts +0 -519
  852. package/src/codegen/cosmos/base/abci/v1beta1/abci.ts +0 -1147
  853. package/src/codegen/cosmos/base/node/v1beta1/query.lcd.ts +0 -30
  854. package/src/codegen/cosmos/base/node/v1beta1/query.rpc.Service.ts +0 -49
  855. package/src/codegen/cosmos/base/node/v1beta1/query.ts +0 -276
  856. package/src/codegen/cosmos/base/query/v1beta1/pagination.ts +0 -243
  857. package/src/codegen/cosmos/base/reflection/v1beta1/reflection.ts +0 -221
  858. package/src/codegen/cosmos/base/reflection/v2alpha1/reflection.ts +0 -1630
  859. package/src/codegen/cosmos/base/tendermint/v1beta1/query.lcd.ts +0 -113
  860. package/src/codegen/cosmos/base/tendermint/v1beta1/query.rpc.Service.ts +0 -127
  861. package/src/codegen/cosmos/base/tendermint/v1beta1/query.ts +0 -1486
  862. package/src/codegen/cosmos/base/tendermint/v1beta1/types.ts +0 -335
  863. package/src/codegen/cosmos/base/v1beta1/coin.ts +0 -278
  864. package/src/codegen/cosmos/bundle.ts +0 -578
  865. package/src/codegen/cosmos/circuit/module/v1/module.ts +0 -58
  866. package/src/codegen/cosmos/circuit/v1/query.lcd.ts +0 -49
  867. package/src/codegen/cosmos/circuit/v1/query.rpc.Query.ts +0 -65
  868. package/src/codegen/cosmos/circuit/v1/query.ts +0 -334
  869. package/src/codegen/cosmos/circuit/v1/tx.rpc.msg.ts +0 -50
  870. package/src/codegen/cosmos/circuit/v1/tx.ts +0 -409
  871. package/src/codegen/cosmos/circuit/v1/types.ts +0 -290
  872. package/src/codegen/cosmos/consensus/module/v1/module.ts +0 -58
  873. package/src/codegen/cosmos/consensus/v1/query.lcd.ts +0 -22
  874. package/src/codegen/cosmos/consensus/v1/query.rpc.Query.ts +0 -35
  875. package/src/codegen/cosmos/consensus/v1/query.ts +0 -103
  876. package/src/codegen/cosmos/consensus/v1/tx.rpc.msg.ts +0 -29
  877. package/src/codegen/cosmos/consensus/v1/tx.ts +0 -163
  878. package/src/codegen/cosmos/crisis/module/v1/module.ts +0 -72
  879. package/src/codegen/cosmos/crisis/v1beta1/genesis.ts +0 -62
  880. package/src/codegen/cosmos/crisis/v1beta1/tx.rpc.msg.ts +0 -39
  881. package/src/codegen/cosmos/crisis/v1beta1/tx.ts +0 -255
  882. package/src/codegen/cosmos/crypto/ed25519/keys.ts +0 -130
  883. package/src/codegen/cosmos/crypto/hd/v1/hd.ts +0 -117
  884. package/src/codegen/cosmos/crypto/keyring/v1/record.ts +0 -326
  885. package/src/codegen/cosmos/crypto/multisig/keys.ts +0 -78
  886. package/src/codegen/cosmos/crypto/multisig/v1beta1/multisig.ts +0 -142
  887. package/src/codegen/cosmos/crypto/secp256k1/keys.ts +0 -124
  888. package/src/codegen/cosmos/crypto/secp256r1/keys.ts +0 -117
  889. package/src/codegen/cosmos/distribution/module/v1/module.ts +0 -71
  890. package/src/codegen/cosmos/distribution/v1beta1/distribution.ts +0 -977
  891. package/src/codegen/cosmos/distribution/v1beta1/genesis.ts +0 -752
  892. package/src/codegen/cosmos/distribution/v1beta1/query.lcd.ts +0 -112
  893. package/src/codegen/cosmos/distribution/v1beta1/query.rpc.Query.ts +0 -164
  894. package/src/codegen/cosmos/distribution/v1beta1/query.ts +0 -1300
  895. package/src/codegen/cosmos/distribution/v1beta1/tx.rpc.msg.ts +0 -113
  896. package/src/codegen/cosmos/distribution/v1beta1/tx.ts +0 -907
  897. package/src/codegen/cosmos/evidence/module/v1/module.ts +0 -42
  898. package/src/codegen/cosmos/evidence/v1beta1/evidence.ts +0 -107
  899. package/src/codegen/cosmos/evidence/v1beta1/genesis.ts +0 -59
  900. package/src/codegen/cosmos/evidence/v1beta1/query.lcd.ts +0 -49
  901. package/src/codegen/cosmos/evidence/v1beta1/query.rpc.Query.ts +0 -51
  902. package/src/codegen/cosmos/evidence/v1beta1/query.ts +0 -278
  903. package/src/codegen/cosmos/evidence/v1beta1/tx.rpc.msg.ts +0 -27
  904. package/src/codegen/cosmos/evidence/v1beta1/tx.ts +0 -135
  905. package/src/codegen/cosmos/feegrant/module/v1/module.ts +0 -42
  906. package/src/codegen/cosmos/feegrant/v1beta1/feegrant.ts +0 -368
  907. package/src/codegen/cosmos/feegrant/v1beta1/genesis.ts +0 -58
  908. package/src/codegen/cosmos/feegrant/v1beta1/query.lcd.ts +0 -57
  909. package/src/codegen/cosmos/feegrant/v1beta1/query.rpc.Query.ts +0 -67
  910. package/src/codegen/cosmos/feegrant/v1beta1/query.ts +0 -424
  911. package/src/codegen/cosmos/feegrant/v1beta1/tx.rpc.msg.ts +0 -54
  912. package/src/codegen/cosmos/feegrant/v1beta1/tx.ts +0 -355
  913. package/src/codegen/cosmos/genutil/module/v1/module.ts +0 -42
  914. package/src/codegen/cosmos/genutil/v1beta1/genesis.ts +0 -58
  915. package/src/codegen/cosmos/gov/module/v1/module.ts +0 -75
  916. package/src/codegen/cosmos/gov/v1/genesis.ts +0 -203
  917. package/src/codegen/cosmos/gov/v1/gov.ts +0 -1353
  918. package/src/codegen/cosmos/gov/v1/query.lcd.ts +0 -123
  919. package/src/codegen/cosmos/gov/v1/query.rpc.Query.ts +0 -147
  920. package/src/codegen/cosmos/gov/v1/query.ts +0 -1210
  921. package/src/codegen/cosmos/gov/v1/tx.rpc.msg.ts +0 -96
  922. package/src/codegen/cosmos/gov/v1/tx.ts +0 -1040
  923. package/src/codegen/cosmos/gov/v1beta1/genesis.ts +0 -143
  924. package/src/codegen/cosmos/gov/v1beta1/gov.ts +0 -1020
  925. package/src/codegen/cosmos/gov/v1beta1/query.lcd.ts +0 -115
  926. package/src/codegen/cosmos/gov/v1beta1/query.rpc.Query.ts +0 -133
  927. package/src/codegen/cosmos/gov/v1beta1/query.ts +0 -1076
  928. package/src/codegen/cosmos/gov/v1beta1/tx.rpc.msg.ts +0 -58
  929. package/src/codegen/cosmos/gov/v1beta1/tx.ts +0 -539
  930. package/src/codegen/cosmos/group/module/v1/module.ts +0 -79
  931. package/src/codegen/cosmos/group/v1/events.ts +0 -633
  932. package/src/codegen/cosmos/group/v1/genesis.ts +0 -166
  933. package/src/codegen/cosmos/group/v1/query.lcd.ts +0 -207
  934. package/src/codegen/cosmos/group/v1/query.rpc.Query.ts +0 -229
  935. package/src/codegen/cosmos/group/v1/query.ts +0 -1840
  936. package/src/codegen/cosmos/group/v1/tx.rpc.msg.ts +0 -154
  937. package/src/codegen/cosmos/group/v1/tx.ts +0 -2004
  938. package/src/codegen/cosmos/group/v1/types.ts +0 -1528
  939. package/src/codegen/cosmos/lcd.ts +0 -114
  940. package/src/codegen/cosmos/mint/module/v1/module.ts +0 -71
  941. package/src/codegen/cosmos/mint/v1beta1/genesis.ts +0 -73
  942. package/src/codegen/cosmos/mint/v1beta1/mint.ts +0 -198
  943. package/src/codegen/cosmos/mint/v1beta1/query.lcd.ts +0 -38
  944. package/src/codegen/cosmos/mint/v1beta1/query.rpc.Query.ts +0 -63
  945. package/src/codegen/cosmos/mint/v1beta1/query.ts +0 -309
  946. package/src/codegen/cosmos/mint/v1beta1/tx.rpc.msg.ts +0 -29
  947. package/src/codegen/cosmos/mint/v1beta1/tx.ts +0 -135
  948. package/src/codegen/cosmos/msg/textual/v1/textual.ts +0 -1
  949. package/src/codegen/cosmos/msg/v1/msg.ts +0 -1
  950. package/src/codegen/cosmos/nft/module/v1/module.ts +0 -42
  951. package/src/codegen/cosmos/nft/v1beta1/event.ts +0 -268
  952. package/src/codegen/cosmos/nft/v1beta1/genesis.ts +0 -143
  953. package/src/codegen/cosmos/nft/v1beta1/nft.ts +0 -255
  954. package/src/codegen/cosmos/nft/v1beta1/query.lcd.ts +0 -98
  955. package/src/codegen/cosmos/nft/v1beta1/query.rpc.Query.ts +0 -124
  956. package/src/codegen/cosmos/nft/v1beta1/query.ts +0 -886
  957. package/src/codegen/cosmos/nft/v1beta1/tx.rpc.msg.ts +0 -24
  958. package/src/codegen/cosmos/nft/v1beta1/tx.ts +0 -140
  959. package/src/codegen/cosmos/orm/module/v1alpha1/module.ts +0 -50
  960. package/src/codegen/cosmos/orm/query/v1alpha1/query.rpc.Query.ts +0 -49
  961. package/src/codegen/cosmos/orm/query/v1alpha1/query.ts +0 -640
  962. package/src/codegen/cosmos/orm/v1/orm.ts +0 -356
  963. package/src/codegen/cosmos/orm/v1alpha1/schema.ts +0 -232
  964. package/src/codegen/cosmos/params/module/v1/module.ts +0 -42
  965. package/src/codegen/cosmos/params/v1beta1/params.ts +0 -166
  966. package/src/codegen/cosmos/params/v1beta1/query.lcd.ts +0 -45
  967. package/src/codegen/cosmos/params/v1beta1/query.rpc.Query.ts +0 -56
  968. package/src/codegen/cosmos/params/v1beta1/query.ts +0 -321
  969. package/src/codegen/cosmos/query/v1/query.ts +0 -1
  970. package/src/codegen/cosmos/reflection/v1/reflection.ts +0 -99
  971. package/src/codegen/cosmos/rpc.query.ts +0 -82
  972. package/src/codegen/cosmos/rpc.tx.ts +0 -61
  973. package/src/codegen/cosmos/slashing/module/v1/module.ts +0 -58
  974. package/src/codegen/cosmos/slashing/v1beta1/genesis.ts +0 -309
  975. package/src/codegen/cosmos/slashing/v1beta1/query.lcd.ts +0 -49
  976. package/src/codegen/cosmos/slashing/v1beta1/query.rpc.Query.ts +0 -65
  977. package/src/codegen/cosmos/slashing/v1beta1/query.ts +0 -358
  978. package/src/codegen/cosmos/slashing/v1beta1/slashing.ts +0 -249
  979. package/src/codegen/cosmos/slashing/v1beta1/tx.rpc.msg.ts +0 -43
  980. package/src/codegen/cosmos/slashing/v1beta1/tx.ts +0 -230
  981. package/src/codegen/cosmos/staking/module/v1/module.ts +0 -104
  982. package/src/codegen/cosmos/staking/v1beta1/authz.ts +0 -244
  983. package/src/codegen/cosmos/staking/v1beta1/genesis.ts +0 -233
  984. package/src/codegen/cosmos/staking/v1beta1/query.lcd.ts +0 -220
  985. package/src/codegen/cosmos/staking/v1beta1/query.rpc.Query.ts +0 -260
  986. package/src/codegen/cosmos/staking/v1beta1/query.ts +0 -1910
  987. package/src/codegen/cosmos/staking/v1beta1/staking.ts +0 -2075
  988. package/src/codegen/cosmos/staking/v1beta1/tx.rpc.msg.ts +0 -102
  989. package/src/codegen/cosmos/staking/v1beta1/tx.ts +0 -1039
  990. package/src/codegen/cosmos/store/internal/kv/v1beta1/kv.ts +0 -124
  991. package/src/codegen/cosmos/store/snapshots/v1/snapshot.ts +0 -564
  992. package/src/codegen/cosmos/store/streaming/abci/grpc.ts +0 -231
  993. package/src/codegen/cosmos/store/v1beta1/commit_info.ts +0 -234
  994. package/src/codegen/cosmos/store/v1beta1/listening.ts +0 -196
  995. package/src/codegen/cosmos/tx/config/v1/config.ts +0 -78
  996. package/src/codegen/cosmos/tx/signing/v1beta1/signing.ts +0 -487
  997. package/src/codegen/cosmos/tx/v1beta1/service.lcd.ts +0 -77
  998. package/src/codegen/cosmos/tx/v1beta1/service.rpc.Service.ts +0 -167
  999. package/src/codegen/cosmos/tx/v1beta1/service.ts +0 -1536
  1000. package/src/codegen/cosmos/tx/v1beta1/tx.ts +0 -1331
  1001. package/src/codegen/cosmos/upgrade/module/v1/module.ts +0 -58
  1002. package/src/codegen/cosmos/upgrade/v1beta1/query.lcd.ts +0 -71
  1003. package/src/codegen/cosmos/upgrade/v1beta1/query.rpc.Query.ts +0 -106
  1004. package/src/codegen/cosmos/upgrade/v1beta1/query.ts +0 -617
  1005. package/src/codegen/cosmos/upgrade/v1beta1/tx.rpc.msg.ts +0 -43
  1006. package/src/codegen/cosmos/upgrade/v1beta1/tx.ts +0 -241
  1007. package/src/codegen/cosmos/upgrade/v1beta1/upgrade.ts +0 -403
  1008. package/src/codegen/cosmos/vesting/module/v1/module.ts +0 -42
  1009. package/src/codegen/cosmos/vesting/v1beta1/tx.rpc.msg.ts +0 -57
  1010. package/src/codegen/cosmos/vesting/v1beta1/tx.ts +0 -445
  1011. package/src/codegen/cosmos/vesting/v1beta1/vesting.ts +0 -473
  1012. package/src/codegen/cosmos_proto/bundle.ts +0 -3
  1013. package/src/codegen/cosmos_proto/cosmos.ts +0 -255
  1014. package/src/codegen/gogoproto/bundle.ts +0 -3
  1015. package/src/codegen/gogoproto/gogo.ts +0 -1
  1016. package/src/codegen/google/api/annotations.ts +0 -1
  1017. package/src/codegen/google/api/http.ts +0 -920
  1018. package/src/codegen/google/bundle.ts +0 -16
  1019. package/src/codegen/google/protobuf/any.ts +0 -260
  1020. package/src/codegen/google/protobuf/descriptor.ts +0 -3697
  1021. package/src/codegen/google/protobuf/duration.ts +0 -201
  1022. package/src/codegen/google/protobuf/timestamp.ts +0 -247
  1023. package/src/codegen/helpers.ts +0 -242
  1024. package/src/codegen/index.ts +0 -13
  1025. package/src/codegen/perpx/accountplus/accountplus.ts +0 -152
  1026. package/src/codegen/perpx/accountplus/genesis.ts +0 -186
  1027. package/src/codegen/perpx/accountplus/models.ts +0 -103
  1028. package/src/codegen/perpx/accountplus/params.ts +0 -62
  1029. package/src/codegen/perpx/accountplus/query.lcd.ts +0 -46
  1030. package/src/codegen/perpx/accountplus/query.rpc.Query.ts +0 -77
  1031. package/src/codegen/perpx/accountplus/query.ts +0 -455
  1032. package/src/codegen/perpx/accountplus/tx.rpc.msg.ts +0 -47
  1033. package/src/codegen/perpx/accountplus/tx.ts +0 -460
  1034. package/src/codegen/perpx/affiliates/affiliates.ts +0 -432
  1035. package/src/codegen/perpx/affiliates/genesis.ts +0 -73
  1036. package/src/codegen/perpx/affiliates/query.lcd.ts +0 -62
  1037. package/src/codegen/perpx/affiliates/query.rpc.Query.ts +0 -105
  1038. package/src/codegen/perpx/affiliates/query.ts +0 -761
  1039. package/src/codegen/perpx/affiliates/tx.rpc.msg.ts +0 -64
  1040. package/src/codegen/perpx/affiliates/tx.ts +0 -553
  1041. package/src/codegen/perpx/assets/asset.ts +0 -167
  1042. package/src/codegen/perpx/assets/genesis.ts +0 -58
  1043. package/src/codegen/perpx/assets/query.lcd.ts +0 -41
  1044. package/src/codegen/perpx/assets/query.rpc.Query.ts +0 -51
  1045. package/src/codegen/perpx/assets/query.ts +0 -238
  1046. package/src/codegen/perpx/assets/tx.ts +0 -1
  1047. package/src/codegen/perpx/blocktime/blocktime.ts +0 -203
  1048. package/src/codegen/perpx/blocktime/genesis.ts +0 -58
  1049. package/src/codegen/perpx/blocktime/params.ts +0 -125
  1050. package/src/codegen/perpx/blocktime/query.lcd.ts +0 -38
  1051. package/src/codegen/perpx/blocktime/query.rpc.Query.ts +0 -77
  1052. package/src/codegen/perpx/blocktime/query.ts +0 -428
  1053. package/src/codegen/perpx/blocktime/tx.rpc.msg.ts +0 -34
  1054. package/src/codegen/perpx/blocktime/tx.ts +0 -233
  1055. package/src/codegen/perpx/bridge/bridge_event.ts +0 -101
  1056. package/src/codegen/perpx/bridge/bridge_event_info.ts +0 -81
  1057. package/src/codegen/perpx/bridge/genesis.ts +0 -102
  1058. package/src/codegen/perpx/bridge/params.ts +0 -280
  1059. package/src/codegen/perpx/bridge/query.lcd.ts +0 -75
  1060. package/src/codegen/perpx/bridge/query.rpc.Query.ts +0 -116
  1061. package/src/codegen/perpx/bridge/query.ts +0 -711
  1062. package/src/codegen/perpx/bridge/tx.rpc.msg.ts +0 -67
  1063. package/src/codegen/perpx/bridge/tx.ts +0 -542
  1064. package/src/codegen/perpx/bundle.ts +0 -418
  1065. package/src/codegen/perpx/clob/block_rate_limit_config.ts +0 -216
  1066. package/src/codegen/perpx/clob/clob_pair.ts +0 -396
  1067. package/src/codegen/perpx/clob/equity_tier_limit_config.ts +0 -154
  1068. package/src/codegen/perpx/clob/finalize_block.ts +0 -65
  1069. package/src/codegen/perpx/clob/genesis.ts +0 -97
  1070. package/src/codegen/perpx/clob/liquidations.ts +0 -284
  1071. package/src/codegen/perpx/clob/liquidations_config.ts +0 -358
  1072. package/src/codegen/perpx/clob/matches.ts +0 -552
  1073. package/src/codegen/perpx/clob/mev.ts +0 -525
  1074. package/src/codegen/perpx/clob/operation.ts +0 -200
  1075. package/src/codegen/perpx/clob/order.ts +0 -1538
  1076. package/src/codegen/perpx/clob/order_removals.ts +0 -228
  1077. package/src/codegen/perpx/clob/process_proposer_matches_events.ts +0 -176
  1078. package/src/codegen/perpx/clob/query.lcd.ts +0 -81
  1079. package/src/codegen/perpx/clob/query.rpc.Query.ts +0 -166
  1080. package/src/codegen/perpx/clob/query.ts +0 -1945
  1081. package/src/codegen/perpx/clob/streaming.ts +0 -96
  1082. package/src/codegen/perpx/clob/tx.rpc.msg.ts +0 -131
  1083. package/src/codegen/perpx/clob/tx.ts +0 -1472
  1084. package/src/codegen/perpx/daemons/bridge/bridge.ts +0 -104
  1085. package/src/codegen/perpx/daemons/liquidation/liquidation.ts +0 -156
  1086. package/src/codegen/perpx/daemons/pricefeed/price_feed.ts +0 -244
  1087. package/src/codegen/perpx/delaymsg/block_message_ids.ts +0 -79
  1088. package/src/codegen/perpx/delaymsg/delayed_message.ts +0 -87
  1089. package/src/codegen/perpx/delaymsg/genesis.ts +0 -73
  1090. package/src/codegen/perpx/delaymsg/query.lcd.ts +0 -38
  1091. package/src/codegen/perpx/delaymsg/query.rpc.Query.ts +0 -63
  1092. package/src/codegen/perpx/delaymsg/query.ts +0 -364
  1093. package/src/codegen/perpx/delaymsg/tx.rpc.msg.ts +0 -27
  1094. package/src/codegen/perpx/delaymsg/tx.ts +0 -142
  1095. package/src/codegen/perpx/epochs/epoch_info.ts +0 -167
  1096. package/src/codegen/perpx/epochs/genesis.ts +0 -58
  1097. package/src/codegen/perpx/epochs/query.lcd.ts +0 -41
  1098. package/src/codegen/perpx/epochs/query.rpc.Query.ts +0 -51
  1099. package/src/codegen/perpx/epochs/query.ts +0 -237
  1100. package/src/codegen/perpx/feetiers/genesis.ts +0 -74
  1101. package/src/codegen/perpx/feetiers/params.ts +0 -184
  1102. package/src/codegen/perpx/feetiers/per_market_fee_discount.ts +0 -111
  1103. package/src/codegen/perpx/feetiers/query.lcd.ts +0 -71
  1104. package/src/codegen/perpx/feetiers/query.rpc.Query.ts +0 -108
  1105. package/src/codegen/perpx/feetiers/query.ts +0 -715
  1106. package/src/codegen/perpx/feetiers/staking_tier.ts +0 -151
  1107. package/src/codegen/perpx/feetiers/tx.rpc.msg.ts +0 -47
  1108. package/src/codegen/perpx/feetiers/tx.ts +0 -351
  1109. package/src/codegen/perpx/govplus/genesis.ts +0 -42
  1110. package/src/codegen/perpx/govplus/query.rpc.Query.ts +0 -18
  1111. package/src/codegen/perpx/govplus/query.ts +0 -1
  1112. package/src/codegen/perpx/govplus/tx.rpc.msg.ts +0 -27
  1113. package/src/codegen/perpx/govplus/tx.ts +0 -173
  1114. package/src/codegen/perpx/indexer/events/events.ts +0 -4292
  1115. package/src/codegen/perpx/indexer/indexer_manager/event.ts +0 -428
  1116. package/src/codegen/perpx/indexer/off_chain_updates/off_chain_updates.ts +0 -595
  1117. package/src/codegen/perpx/indexer/protocol/v1/clob.ts +0 -887
  1118. package/src/codegen/perpx/indexer/protocol/v1/perpetual.ts +0 -52
  1119. package/src/codegen/perpx/indexer/protocol/v1/subaccount.ts +0 -281
  1120. package/src/codegen/perpx/indexer/protocol/v1/vault.ts +0 -69
  1121. package/src/codegen/perpx/indexer/redis/redis_order.ts +0 -190
  1122. package/src/codegen/perpx/indexer/shared/removal_reason.ts +0 -216
  1123. package/src/codegen/perpx/indexer/socks/messages.ts +0 -656
  1124. package/src/codegen/perpx/lcd.ts +0 -173
  1125. package/src/codegen/perpx/listing/genesis.ts +0 -76
  1126. package/src/codegen/perpx/listing/params.ts +0 -89
  1127. package/src/codegen/perpx/listing/query.lcd.ts +0 -30
  1128. package/src/codegen/perpx/listing/query.rpc.Query.ts +0 -49
  1129. package/src/codegen/perpx/listing/query.ts +0 -194
  1130. package/src/codegen/perpx/listing/tx.rpc.msg.ts +0 -57
  1131. package/src/codegen/perpx/listing/tx.ts +0 -483
  1132. package/src/codegen/perpx/perpetuals/genesis.ts +0 -83
  1133. package/src/codegen/perpx/perpetuals/params.ts +0 -97
  1134. package/src/codegen/perpx/perpetuals/perpetual.ts +0 -660
  1135. package/src/codegen/perpx/perpetuals/query.lcd.ts +0 -91
  1136. package/src/codegen/perpx/perpetuals/query.rpc.Query.ts +0 -123
  1137. package/src/codegen/perpx/perpetuals/query.ts +0 -765
  1138. package/src/codegen/perpx/perpetuals/tx.rpc.msg.ts +0 -70
  1139. package/src/codegen/perpx/perpetuals/tx.ts +0 -649
  1140. package/src/codegen/perpx/prices/genesis.ts +0 -71
  1141. package/src/codegen/perpx/prices/market_param.ts +0 -162
  1142. package/src/codegen/perpx/prices/market_price.ts +0 -95
  1143. package/src/codegen/perpx/prices/query.lcd.ts +0 -75
  1144. package/src/codegen/perpx/prices/query.rpc.Query.ts +0 -95
  1145. package/src/codegen/perpx/prices/query.ts +0 -630
  1146. package/src/codegen/perpx/prices/streaming.ts +0 -87
  1147. package/src/codegen/perpx/prices/tx.rpc.msg.ts +0 -50
  1148. package/src/codegen/perpx/prices/tx.ts +0 -405
  1149. package/src/codegen/perpx/ratelimit/capacity.ts +0 -147
  1150. package/src/codegen/perpx/ratelimit/genesis.ts +0 -59
  1151. package/src/codegen/perpx/ratelimit/limit_params.ts +0 -174
  1152. package/src/codegen/perpx/ratelimit/pending_send_packet.ts +0 -75
  1153. package/src/codegen/perpx/ratelimit/query.lcd.ts +0 -46
  1154. package/src/codegen/perpx/ratelimit/query.rpc.Query.ts +0 -63
  1155. package/src/codegen/perpx/ratelimit/query.ts +0 -333
  1156. package/src/codegen/perpx/ratelimit/tx.rpc.msg.ts +0 -24
  1157. package/src/codegen/perpx/ratelimit/tx.ts +0 -112
  1158. package/src/codegen/perpx/revshare/genesis.ts +0 -58
  1159. package/src/codegen/perpx/revshare/params.ts +0 -93
  1160. package/src/codegen/perpx/revshare/query.lcd.ts +0 -47
  1161. package/src/codegen/perpx/revshare/query.rpc.Query.ts +0 -80
  1162. package/src/codegen/perpx/revshare/query.ts +0 -415
  1163. package/src/codegen/perpx/revshare/revshare.ts +0 -266
  1164. package/src/codegen/perpx/revshare/tx.rpc.msg.ts +0 -60
  1165. package/src/codegen/perpx/revshare/tx.ts +0 -462
  1166. package/src/codegen/perpx/rewards/genesis.ts +0 -59
  1167. package/src/codegen/perpx/rewards/params.ts +0 -122
  1168. package/src/codegen/perpx/rewards/query.lcd.ts +0 -22
  1169. package/src/codegen/perpx/rewards/query.rpc.Query.ts +0 -35
  1170. package/src/codegen/perpx/rewards/query.ts +0 -98
  1171. package/src/codegen/perpx/rewards/reward_share.ts +0 -75
  1172. package/src/codegen/perpx/rewards/tx.rpc.msg.ts +0 -24
  1173. package/src/codegen/perpx/rewards/tx.ts +0 -112
  1174. package/src/codegen/perpx/rpc.query.ts +0 -105
  1175. package/src/codegen/perpx/rpc.tx.ts +0 -81
  1176. package/src/codegen/perpx/sending/genesis.ts +0 -42
  1177. package/src/codegen/perpx/sending/query.rpc.Query.ts +0 -18
  1178. package/src/codegen/perpx/sending/query.ts +0 -1
  1179. package/src/codegen/perpx/sending/transfer.ts +0 -525
  1180. package/src/codegen/perpx/sending/tx.rpc.msg.ts +0 -77
  1181. package/src/codegen/perpx/sending/tx.ts +0 -283
  1182. package/src/codegen/perpx/stats/genesis.ts +0 -59
  1183. package/src/codegen/perpx/stats/params.ts +0 -59
  1184. package/src/codegen/perpx/stats/query.lcd.ts +0 -62
  1185. package/src/codegen/perpx/stats/query.rpc.Query.ts +0 -91
  1186. package/src/codegen/perpx/stats/query.ts +0 -524
  1187. package/src/codegen/perpx/stats/stats.ts +0 -756
  1188. package/src/codegen/perpx/stats/tx.rpc.msg.ts +0 -24
  1189. package/src/codegen/perpx/stats/tx.ts +0 -112
  1190. package/src/codegen/perpx/subaccounts/asset_position.ts +0 -96
  1191. package/src/codegen/perpx/subaccounts/genesis.ts +0 -58
  1192. package/src/codegen/perpx/subaccounts/leverage.ts +0 -134
  1193. package/src/codegen/perpx/subaccounts/perpetual_position.ts +0 -109
  1194. package/src/codegen/perpx/subaccounts/query.lcd.ts +0 -58
  1195. package/src/codegen/perpx/subaccounts/query.rpc.Query.ts +0 -82
  1196. package/src/codegen/perpx/subaccounts/query.ts +0 -527
  1197. package/src/codegen/perpx/subaccounts/streaming.ts +0 -266
  1198. package/src/codegen/perpx/subaccounts/subaccount.ts +0 -190
  1199. package/src/codegen/perpx/vault/genesis.ts +0 -433
  1200. package/src/codegen/perpx/vault/params.ts +0 -523
  1201. package/src/codegen/perpx/vault/query.lcd.ts +0 -91
  1202. package/src/codegen/perpx/vault/query.rpc.Query.ts +0 -137
  1203. package/src/codegen/perpx/vault/query.ts +0 -1162
  1204. package/src/codegen/perpx/vault/share.ts +0 -271
  1205. package/src/codegen/perpx/vault/tx.rpc.msg.ts +0 -97
  1206. package/src/codegen/perpx/vault/tx.ts +0 -1189
  1207. package/src/codegen/perpx/vault/vault.ts +0 -185
  1208. package/src/codegen/perpx/vest/genesis.ts +0 -59
  1209. package/src/codegen/perpx/vest/query.lcd.ts +0 -30
  1210. package/src/codegen/perpx/vest/query.rpc.Query.ts +0 -35
  1211. package/src/codegen/perpx/vest/query.ts +0 -114
  1212. package/src/codegen/perpx/vest/tx.rpc.msg.ts +0 -34
  1213. package/src/codegen/perpx/vest/tx.ts +0 -223
  1214. package/src/codegen/perpx/vest/vest_entry.ts +0 -127
  1215. package/src/codegen/tendermint/abci/types.ts +0 -4487
  1216. package/src/codegen/tendermint/bundle.ts +0 -32
  1217. package/src/codegen/tendermint/crypto/keys.ts +0 -69
  1218. package/src/codegen/tendermint/crypto/proof.ts +0 -372
  1219. package/src/codegen/tendermint/libs/bits/types.ts +0 -77
  1220. package/src/codegen/tendermint/p2p/types.ts +0 -350
  1221. package/src/codegen/tendermint/types/block.ts +0 -91
  1222. package/src/codegen/tendermint/types/evidence.ts +0 -325
  1223. package/src/codegen/tendermint/types/params.ts +0 -544
  1224. package/src/codegen/tendermint/types/types.ts +0 -1558
  1225. package/src/codegen/tendermint/types/validator.ts +0 -286
  1226. package/src/codegen/tendermint/version/types.ts +0 -152
@@ -0,0 +1,3060 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.ResponseCommit = exports.ResponseCheckTx = exports.ResponseQuery = exports.ResponseInitChain = exports.ResponseInfo = exports.ResponseFlush = exports.ResponseEcho = exports.ResponseException = exports.Response = exports.RequestFinalizeBlock = exports.RequestVerifyVoteExtension = exports.RequestExtendVote = exports.RequestProcessProposal = exports.RequestPrepareProposal = exports.RequestApplySnapshotChunk = exports.RequestLoadSnapshotChunk = exports.RequestOfferSnapshot = exports.RequestListSnapshots = exports.RequestCommit = exports.RequestCheckTx = exports.RequestQuery = exports.RequestInitChain = exports.RequestInfo = exports.RequestFlush = exports.RequestEcho = exports.Request = exports.misbehaviorTypeToJSON = exports.misbehaviorTypeFromJSON = exports.MisbehaviorTypeSDKType = exports.MisbehaviorType = exports.responseVerifyVoteExtension_VerifyStatusToJSON = exports.responseVerifyVoteExtension_VerifyStatusFromJSON = exports.ResponseVerifyVoteExtension_VerifyStatusSDKType = exports.ResponseVerifyVoteExtension_VerifyStatus = exports.responseProcessProposal_ProposalStatusToJSON = exports.responseProcessProposal_ProposalStatusFromJSON = exports.ResponseProcessProposal_ProposalStatusSDKType = exports.ResponseProcessProposal_ProposalStatus = exports.responseApplySnapshotChunk_ResultToJSON = exports.responseApplySnapshotChunk_ResultFromJSON = exports.ResponseApplySnapshotChunk_ResultSDKType = exports.ResponseApplySnapshotChunk_Result = exports.responseOfferSnapshot_ResultToJSON = exports.responseOfferSnapshot_ResultFromJSON = exports.ResponseOfferSnapshot_ResultSDKType = exports.ResponseOfferSnapshot_Result = exports.checkTxTypeToJSON = exports.checkTxTypeFromJSON = exports.CheckTxTypeSDKType = exports.CheckTxType = void 0;
27
+ exports.Snapshot = exports.Misbehavior = exports.ExtendedVoteInfo = exports.VoteInfo = exports.ValidatorUpdate = exports.Validator = exports.TxResult = exports.ExecTxResult = exports.EventAttribute = exports.Event = exports.ExtendedCommitInfo = exports.CommitInfo = exports.ResponseFinalizeBlock = exports.ResponseVerifyVoteExtension = exports.ResponseExtendVote = exports.ResponseProcessProposal = exports.ResponsePrepareProposal = exports.ResponseApplySnapshotChunk = exports.ResponseLoadSnapshotChunk = exports.ResponseOfferSnapshot = exports.ResponseListSnapshots = void 0;
28
+ const timestamp_1 = require("../../google/protobuf/timestamp");
29
+ const params_1 = require("../types/params");
30
+ const proof_1 = require("../crypto/proof");
31
+ const keys_1 = require("../crypto/keys");
32
+ const _m0 = __importStar(require("protobufjs/minimal"));
33
+ const helpers_1 = require("../../helpers");
34
+ var CheckTxType;
35
+ (function (CheckTxType) {
36
+ CheckTxType[CheckTxType["NEW"] = 0] = "NEW";
37
+ CheckTxType[CheckTxType["RECHECK"] = 1] = "RECHECK";
38
+ CheckTxType[CheckTxType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
39
+ })(CheckTxType = exports.CheckTxType || (exports.CheckTxType = {}));
40
+ exports.CheckTxTypeSDKType = CheckTxType;
41
+ function checkTxTypeFromJSON(object) {
42
+ switch (object) {
43
+ case 0:
44
+ case "NEW":
45
+ return CheckTxType.NEW;
46
+ case 1:
47
+ case "RECHECK":
48
+ return CheckTxType.RECHECK;
49
+ case -1:
50
+ case "UNRECOGNIZED":
51
+ default:
52
+ return CheckTxType.UNRECOGNIZED;
53
+ }
54
+ }
55
+ exports.checkTxTypeFromJSON = checkTxTypeFromJSON;
56
+ function checkTxTypeToJSON(object) {
57
+ switch (object) {
58
+ case CheckTxType.NEW:
59
+ return "NEW";
60
+ case CheckTxType.RECHECK:
61
+ return "RECHECK";
62
+ case CheckTxType.UNRECOGNIZED:
63
+ default:
64
+ return "UNRECOGNIZED";
65
+ }
66
+ }
67
+ exports.checkTxTypeToJSON = checkTxTypeToJSON;
68
+ var ResponseOfferSnapshot_Result;
69
+ (function (ResponseOfferSnapshot_Result) {
70
+ /** UNKNOWN - Unknown result, abort all snapshot restoration */
71
+ ResponseOfferSnapshot_Result[ResponseOfferSnapshot_Result["UNKNOWN"] = 0] = "UNKNOWN";
72
+ /** ACCEPT - Snapshot accepted, apply chunks */
73
+ ResponseOfferSnapshot_Result[ResponseOfferSnapshot_Result["ACCEPT"] = 1] = "ACCEPT";
74
+ /** ABORT - Abort all snapshot restoration */
75
+ ResponseOfferSnapshot_Result[ResponseOfferSnapshot_Result["ABORT"] = 2] = "ABORT";
76
+ /** REJECT - Reject this specific snapshot, try others */
77
+ ResponseOfferSnapshot_Result[ResponseOfferSnapshot_Result["REJECT"] = 3] = "REJECT";
78
+ /** REJECT_FORMAT - Reject all snapshots of this format, try others */
79
+ ResponseOfferSnapshot_Result[ResponseOfferSnapshot_Result["REJECT_FORMAT"] = 4] = "REJECT_FORMAT";
80
+ /** REJECT_SENDER - Reject all snapshots from the sender(s), try others */
81
+ ResponseOfferSnapshot_Result[ResponseOfferSnapshot_Result["REJECT_SENDER"] = 5] = "REJECT_SENDER";
82
+ ResponseOfferSnapshot_Result[ResponseOfferSnapshot_Result["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
83
+ })(ResponseOfferSnapshot_Result = exports.ResponseOfferSnapshot_Result || (exports.ResponseOfferSnapshot_Result = {}));
84
+ exports.ResponseOfferSnapshot_ResultSDKType = ResponseOfferSnapshot_Result;
85
+ function responseOfferSnapshot_ResultFromJSON(object) {
86
+ switch (object) {
87
+ case 0:
88
+ case "UNKNOWN":
89
+ return ResponseOfferSnapshot_Result.UNKNOWN;
90
+ case 1:
91
+ case "ACCEPT":
92
+ return ResponseOfferSnapshot_Result.ACCEPT;
93
+ case 2:
94
+ case "ABORT":
95
+ return ResponseOfferSnapshot_Result.ABORT;
96
+ case 3:
97
+ case "REJECT":
98
+ return ResponseOfferSnapshot_Result.REJECT;
99
+ case 4:
100
+ case "REJECT_FORMAT":
101
+ return ResponseOfferSnapshot_Result.REJECT_FORMAT;
102
+ case 5:
103
+ case "REJECT_SENDER":
104
+ return ResponseOfferSnapshot_Result.REJECT_SENDER;
105
+ case -1:
106
+ case "UNRECOGNIZED":
107
+ default:
108
+ return ResponseOfferSnapshot_Result.UNRECOGNIZED;
109
+ }
110
+ }
111
+ exports.responseOfferSnapshot_ResultFromJSON = responseOfferSnapshot_ResultFromJSON;
112
+ function responseOfferSnapshot_ResultToJSON(object) {
113
+ switch (object) {
114
+ case ResponseOfferSnapshot_Result.UNKNOWN:
115
+ return "UNKNOWN";
116
+ case ResponseOfferSnapshot_Result.ACCEPT:
117
+ return "ACCEPT";
118
+ case ResponseOfferSnapshot_Result.ABORT:
119
+ return "ABORT";
120
+ case ResponseOfferSnapshot_Result.REJECT:
121
+ return "REJECT";
122
+ case ResponseOfferSnapshot_Result.REJECT_FORMAT:
123
+ return "REJECT_FORMAT";
124
+ case ResponseOfferSnapshot_Result.REJECT_SENDER:
125
+ return "REJECT_SENDER";
126
+ case ResponseOfferSnapshot_Result.UNRECOGNIZED:
127
+ default:
128
+ return "UNRECOGNIZED";
129
+ }
130
+ }
131
+ exports.responseOfferSnapshot_ResultToJSON = responseOfferSnapshot_ResultToJSON;
132
+ var ResponseApplySnapshotChunk_Result;
133
+ (function (ResponseApplySnapshotChunk_Result) {
134
+ /** UNKNOWN - Unknown result, abort all snapshot restoration */
135
+ ResponseApplySnapshotChunk_Result[ResponseApplySnapshotChunk_Result["UNKNOWN"] = 0] = "UNKNOWN";
136
+ /** ACCEPT - Chunk successfully accepted */
137
+ ResponseApplySnapshotChunk_Result[ResponseApplySnapshotChunk_Result["ACCEPT"] = 1] = "ACCEPT";
138
+ /** ABORT - Abort all snapshot restoration */
139
+ ResponseApplySnapshotChunk_Result[ResponseApplySnapshotChunk_Result["ABORT"] = 2] = "ABORT";
140
+ /** RETRY - Retry chunk (combine with refetch and reject) */
141
+ ResponseApplySnapshotChunk_Result[ResponseApplySnapshotChunk_Result["RETRY"] = 3] = "RETRY";
142
+ /** RETRY_SNAPSHOT - Retry snapshot (combine with refetch and reject) */
143
+ ResponseApplySnapshotChunk_Result[ResponseApplySnapshotChunk_Result["RETRY_SNAPSHOT"] = 4] = "RETRY_SNAPSHOT";
144
+ /** REJECT_SNAPSHOT - Reject this snapshot, try others */
145
+ ResponseApplySnapshotChunk_Result[ResponseApplySnapshotChunk_Result["REJECT_SNAPSHOT"] = 5] = "REJECT_SNAPSHOT";
146
+ ResponseApplySnapshotChunk_Result[ResponseApplySnapshotChunk_Result["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
147
+ })(ResponseApplySnapshotChunk_Result = exports.ResponseApplySnapshotChunk_Result || (exports.ResponseApplySnapshotChunk_Result = {}));
148
+ exports.ResponseApplySnapshotChunk_ResultSDKType = ResponseApplySnapshotChunk_Result;
149
+ function responseApplySnapshotChunk_ResultFromJSON(object) {
150
+ switch (object) {
151
+ case 0:
152
+ case "UNKNOWN":
153
+ return ResponseApplySnapshotChunk_Result.UNKNOWN;
154
+ case 1:
155
+ case "ACCEPT":
156
+ return ResponseApplySnapshotChunk_Result.ACCEPT;
157
+ case 2:
158
+ case "ABORT":
159
+ return ResponseApplySnapshotChunk_Result.ABORT;
160
+ case 3:
161
+ case "RETRY":
162
+ return ResponseApplySnapshotChunk_Result.RETRY;
163
+ case 4:
164
+ case "RETRY_SNAPSHOT":
165
+ return ResponseApplySnapshotChunk_Result.RETRY_SNAPSHOT;
166
+ case 5:
167
+ case "REJECT_SNAPSHOT":
168
+ return ResponseApplySnapshotChunk_Result.REJECT_SNAPSHOT;
169
+ case -1:
170
+ case "UNRECOGNIZED":
171
+ default:
172
+ return ResponseApplySnapshotChunk_Result.UNRECOGNIZED;
173
+ }
174
+ }
175
+ exports.responseApplySnapshotChunk_ResultFromJSON = responseApplySnapshotChunk_ResultFromJSON;
176
+ function responseApplySnapshotChunk_ResultToJSON(object) {
177
+ switch (object) {
178
+ case ResponseApplySnapshotChunk_Result.UNKNOWN:
179
+ return "UNKNOWN";
180
+ case ResponseApplySnapshotChunk_Result.ACCEPT:
181
+ return "ACCEPT";
182
+ case ResponseApplySnapshotChunk_Result.ABORT:
183
+ return "ABORT";
184
+ case ResponseApplySnapshotChunk_Result.RETRY:
185
+ return "RETRY";
186
+ case ResponseApplySnapshotChunk_Result.RETRY_SNAPSHOT:
187
+ return "RETRY_SNAPSHOT";
188
+ case ResponseApplySnapshotChunk_Result.REJECT_SNAPSHOT:
189
+ return "REJECT_SNAPSHOT";
190
+ case ResponseApplySnapshotChunk_Result.UNRECOGNIZED:
191
+ default:
192
+ return "UNRECOGNIZED";
193
+ }
194
+ }
195
+ exports.responseApplySnapshotChunk_ResultToJSON = responseApplySnapshotChunk_ResultToJSON;
196
+ var ResponseProcessProposal_ProposalStatus;
197
+ (function (ResponseProcessProposal_ProposalStatus) {
198
+ ResponseProcessProposal_ProposalStatus[ResponseProcessProposal_ProposalStatus["UNKNOWN"] = 0] = "UNKNOWN";
199
+ ResponseProcessProposal_ProposalStatus[ResponseProcessProposal_ProposalStatus["ACCEPT"] = 1] = "ACCEPT";
200
+ ResponseProcessProposal_ProposalStatus[ResponseProcessProposal_ProposalStatus["REJECT"] = 2] = "REJECT";
201
+ ResponseProcessProposal_ProposalStatus[ResponseProcessProposal_ProposalStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
202
+ })(ResponseProcessProposal_ProposalStatus = exports.ResponseProcessProposal_ProposalStatus || (exports.ResponseProcessProposal_ProposalStatus = {}));
203
+ exports.ResponseProcessProposal_ProposalStatusSDKType = ResponseProcessProposal_ProposalStatus;
204
+ function responseProcessProposal_ProposalStatusFromJSON(object) {
205
+ switch (object) {
206
+ case 0:
207
+ case "UNKNOWN":
208
+ return ResponseProcessProposal_ProposalStatus.UNKNOWN;
209
+ case 1:
210
+ case "ACCEPT":
211
+ return ResponseProcessProposal_ProposalStatus.ACCEPT;
212
+ case 2:
213
+ case "REJECT":
214
+ return ResponseProcessProposal_ProposalStatus.REJECT;
215
+ case -1:
216
+ case "UNRECOGNIZED":
217
+ default:
218
+ return ResponseProcessProposal_ProposalStatus.UNRECOGNIZED;
219
+ }
220
+ }
221
+ exports.responseProcessProposal_ProposalStatusFromJSON = responseProcessProposal_ProposalStatusFromJSON;
222
+ function responseProcessProposal_ProposalStatusToJSON(object) {
223
+ switch (object) {
224
+ case ResponseProcessProposal_ProposalStatus.UNKNOWN:
225
+ return "UNKNOWN";
226
+ case ResponseProcessProposal_ProposalStatus.ACCEPT:
227
+ return "ACCEPT";
228
+ case ResponseProcessProposal_ProposalStatus.REJECT:
229
+ return "REJECT";
230
+ case ResponseProcessProposal_ProposalStatus.UNRECOGNIZED:
231
+ default:
232
+ return "UNRECOGNIZED";
233
+ }
234
+ }
235
+ exports.responseProcessProposal_ProposalStatusToJSON = responseProcessProposal_ProposalStatusToJSON;
236
+ var ResponseVerifyVoteExtension_VerifyStatus;
237
+ (function (ResponseVerifyVoteExtension_VerifyStatus) {
238
+ ResponseVerifyVoteExtension_VerifyStatus[ResponseVerifyVoteExtension_VerifyStatus["UNKNOWN"] = 0] = "UNKNOWN";
239
+ ResponseVerifyVoteExtension_VerifyStatus[ResponseVerifyVoteExtension_VerifyStatus["ACCEPT"] = 1] = "ACCEPT";
240
+ /**
241
+ * REJECT - Rejecting the vote extension will reject the entire precommit by the sender.
242
+ * Incorrectly implementing this thus has liveness implications as it may affect
243
+ * CometBFT's ability to receive 2/3+ valid votes to finalize the block.
244
+ * Honest nodes should never be rejected.
245
+ */
246
+ ResponseVerifyVoteExtension_VerifyStatus[ResponseVerifyVoteExtension_VerifyStatus["REJECT"] = 2] = "REJECT";
247
+ ResponseVerifyVoteExtension_VerifyStatus[ResponseVerifyVoteExtension_VerifyStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
248
+ })(ResponseVerifyVoteExtension_VerifyStatus = exports.ResponseVerifyVoteExtension_VerifyStatus || (exports.ResponseVerifyVoteExtension_VerifyStatus = {}));
249
+ exports.ResponseVerifyVoteExtension_VerifyStatusSDKType = ResponseVerifyVoteExtension_VerifyStatus;
250
+ function responseVerifyVoteExtension_VerifyStatusFromJSON(object) {
251
+ switch (object) {
252
+ case 0:
253
+ case "UNKNOWN":
254
+ return ResponseVerifyVoteExtension_VerifyStatus.UNKNOWN;
255
+ case 1:
256
+ case "ACCEPT":
257
+ return ResponseVerifyVoteExtension_VerifyStatus.ACCEPT;
258
+ case 2:
259
+ case "REJECT":
260
+ return ResponseVerifyVoteExtension_VerifyStatus.REJECT;
261
+ case -1:
262
+ case "UNRECOGNIZED":
263
+ default:
264
+ return ResponseVerifyVoteExtension_VerifyStatus.UNRECOGNIZED;
265
+ }
266
+ }
267
+ exports.responseVerifyVoteExtension_VerifyStatusFromJSON = responseVerifyVoteExtension_VerifyStatusFromJSON;
268
+ function responseVerifyVoteExtension_VerifyStatusToJSON(object) {
269
+ switch (object) {
270
+ case ResponseVerifyVoteExtension_VerifyStatus.UNKNOWN:
271
+ return "UNKNOWN";
272
+ case ResponseVerifyVoteExtension_VerifyStatus.ACCEPT:
273
+ return "ACCEPT";
274
+ case ResponseVerifyVoteExtension_VerifyStatus.REJECT:
275
+ return "REJECT";
276
+ case ResponseVerifyVoteExtension_VerifyStatus.UNRECOGNIZED:
277
+ default:
278
+ return "UNRECOGNIZED";
279
+ }
280
+ }
281
+ exports.responseVerifyVoteExtension_VerifyStatusToJSON = responseVerifyVoteExtension_VerifyStatusToJSON;
282
+ var MisbehaviorType;
283
+ (function (MisbehaviorType) {
284
+ MisbehaviorType[MisbehaviorType["UNKNOWN"] = 0] = "UNKNOWN";
285
+ MisbehaviorType[MisbehaviorType["DUPLICATE_VOTE"] = 1] = "DUPLICATE_VOTE";
286
+ MisbehaviorType[MisbehaviorType["LIGHT_CLIENT_ATTACK"] = 2] = "LIGHT_CLIENT_ATTACK";
287
+ MisbehaviorType[MisbehaviorType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED";
288
+ })(MisbehaviorType = exports.MisbehaviorType || (exports.MisbehaviorType = {}));
289
+ exports.MisbehaviorTypeSDKType = MisbehaviorType;
290
+ function misbehaviorTypeFromJSON(object) {
291
+ switch (object) {
292
+ case 0:
293
+ case "UNKNOWN":
294
+ return MisbehaviorType.UNKNOWN;
295
+ case 1:
296
+ case "DUPLICATE_VOTE":
297
+ return MisbehaviorType.DUPLICATE_VOTE;
298
+ case 2:
299
+ case "LIGHT_CLIENT_ATTACK":
300
+ return MisbehaviorType.LIGHT_CLIENT_ATTACK;
301
+ case -1:
302
+ case "UNRECOGNIZED":
303
+ default:
304
+ return MisbehaviorType.UNRECOGNIZED;
305
+ }
306
+ }
307
+ exports.misbehaviorTypeFromJSON = misbehaviorTypeFromJSON;
308
+ function misbehaviorTypeToJSON(object) {
309
+ switch (object) {
310
+ case MisbehaviorType.UNKNOWN:
311
+ return "UNKNOWN";
312
+ case MisbehaviorType.DUPLICATE_VOTE:
313
+ return "DUPLICATE_VOTE";
314
+ case MisbehaviorType.LIGHT_CLIENT_ATTACK:
315
+ return "LIGHT_CLIENT_ATTACK";
316
+ case MisbehaviorType.UNRECOGNIZED:
317
+ default:
318
+ return "UNRECOGNIZED";
319
+ }
320
+ }
321
+ exports.misbehaviorTypeToJSON = misbehaviorTypeToJSON;
322
+ function createBaseRequest() {
323
+ return {
324
+ echo: undefined,
325
+ flush: undefined,
326
+ info: undefined,
327
+ initChain: undefined,
328
+ query: undefined,
329
+ checkTx: undefined,
330
+ commit: undefined,
331
+ listSnapshots: undefined,
332
+ offerSnapshot: undefined,
333
+ loadSnapshotChunk: undefined,
334
+ applySnapshotChunk: undefined,
335
+ prepareProposal: undefined,
336
+ processProposal: undefined,
337
+ extendVote: undefined,
338
+ verifyVoteExtension: undefined,
339
+ finalizeBlock: undefined
340
+ };
341
+ }
342
+ exports.Request = {
343
+ encode(message, writer = _m0.Writer.create()) {
344
+ if (message.echo !== undefined) {
345
+ exports.RequestEcho.encode(message.echo, writer.uint32(10).fork()).ldelim();
346
+ }
347
+ if (message.flush !== undefined) {
348
+ exports.RequestFlush.encode(message.flush, writer.uint32(18).fork()).ldelim();
349
+ }
350
+ if (message.info !== undefined) {
351
+ exports.RequestInfo.encode(message.info, writer.uint32(26).fork()).ldelim();
352
+ }
353
+ if (message.initChain !== undefined) {
354
+ exports.RequestInitChain.encode(message.initChain, writer.uint32(42).fork()).ldelim();
355
+ }
356
+ if (message.query !== undefined) {
357
+ exports.RequestQuery.encode(message.query, writer.uint32(50).fork()).ldelim();
358
+ }
359
+ if (message.checkTx !== undefined) {
360
+ exports.RequestCheckTx.encode(message.checkTx, writer.uint32(66).fork()).ldelim();
361
+ }
362
+ if (message.commit !== undefined) {
363
+ exports.RequestCommit.encode(message.commit, writer.uint32(90).fork()).ldelim();
364
+ }
365
+ if (message.listSnapshots !== undefined) {
366
+ exports.RequestListSnapshots.encode(message.listSnapshots, writer.uint32(98).fork()).ldelim();
367
+ }
368
+ if (message.offerSnapshot !== undefined) {
369
+ exports.RequestOfferSnapshot.encode(message.offerSnapshot, writer.uint32(106).fork()).ldelim();
370
+ }
371
+ if (message.loadSnapshotChunk !== undefined) {
372
+ exports.RequestLoadSnapshotChunk.encode(message.loadSnapshotChunk, writer.uint32(114).fork()).ldelim();
373
+ }
374
+ if (message.applySnapshotChunk !== undefined) {
375
+ exports.RequestApplySnapshotChunk.encode(message.applySnapshotChunk, writer.uint32(122).fork()).ldelim();
376
+ }
377
+ if (message.prepareProposal !== undefined) {
378
+ exports.RequestPrepareProposal.encode(message.prepareProposal, writer.uint32(130).fork()).ldelim();
379
+ }
380
+ if (message.processProposal !== undefined) {
381
+ exports.RequestProcessProposal.encode(message.processProposal, writer.uint32(138).fork()).ldelim();
382
+ }
383
+ if (message.extendVote !== undefined) {
384
+ exports.RequestExtendVote.encode(message.extendVote, writer.uint32(146).fork()).ldelim();
385
+ }
386
+ if (message.verifyVoteExtension !== undefined) {
387
+ exports.RequestVerifyVoteExtension.encode(message.verifyVoteExtension, writer.uint32(154).fork()).ldelim();
388
+ }
389
+ if (message.finalizeBlock !== undefined) {
390
+ exports.RequestFinalizeBlock.encode(message.finalizeBlock, writer.uint32(162).fork()).ldelim();
391
+ }
392
+ return writer;
393
+ },
394
+ decode(input, length) {
395
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
396
+ let end = length === undefined ? reader.len : reader.pos + length;
397
+ const message = createBaseRequest();
398
+ while (reader.pos < end) {
399
+ const tag = reader.uint32();
400
+ switch (tag >>> 3) {
401
+ case 1:
402
+ message.echo = exports.RequestEcho.decode(reader, reader.uint32());
403
+ break;
404
+ case 2:
405
+ message.flush = exports.RequestFlush.decode(reader, reader.uint32());
406
+ break;
407
+ case 3:
408
+ message.info = exports.RequestInfo.decode(reader, reader.uint32());
409
+ break;
410
+ case 5:
411
+ message.initChain = exports.RequestInitChain.decode(reader, reader.uint32());
412
+ break;
413
+ case 6:
414
+ message.query = exports.RequestQuery.decode(reader, reader.uint32());
415
+ break;
416
+ case 8:
417
+ message.checkTx = exports.RequestCheckTx.decode(reader, reader.uint32());
418
+ break;
419
+ case 11:
420
+ message.commit = exports.RequestCommit.decode(reader, reader.uint32());
421
+ break;
422
+ case 12:
423
+ message.listSnapshots = exports.RequestListSnapshots.decode(reader, reader.uint32());
424
+ break;
425
+ case 13:
426
+ message.offerSnapshot = exports.RequestOfferSnapshot.decode(reader, reader.uint32());
427
+ break;
428
+ case 14:
429
+ message.loadSnapshotChunk = exports.RequestLoadSnapshotChunk.decode(reader, reader.uint32());
430
+ break;
431
+ case 15:
432
+ message.applySnapshotChunk = exports.RequestApplySnapshotChunk.decode(reader, reader.uint32());
433
+ break;
434
+ case 16:
435
+ message.prepareProposal = exports.RequestPrepareProposal.decode(reader, reader.uint32());
436
+ break;
437
+ case 17:
438
+ message.processProposal = exports.RequestProcessProposal.decode(reader, reader.uint32());
439
+ break;
440
+ case 18:
441
+ message.extendVote = exports.RequestExtendVote.decode(reader, reader.uint32());
442
+ break;
443
+ case 19:
444
+ message.verifyVoteExtension = exports.RequestVerifyVoteExtension.decode(reader, reader.uint32());
445
+ break;
446
+ case 20:
447
+ message.finalizeBlock = exports.RequestFinalizeBlock.decode(reader, reader.uint32());
448
+ break;
449
+ default:
450
+ reader.skipType(tag & 7);
451
+ break;
452
+ }
453
+ }
454
+ return message;
455
+ },
456
+ fromPartial(object) {
457
+ const message = createBaseRequest();
458
+ message.echo = object.echo !== undefined && object.echo !== null ? exports.RequestEcho.fromPartial(object.echo) : undefined;
459
+ message.flush = object.flush !== undefined && object.flush !== null ? exports.RequestFlush.fromPartial(object.flush) : undefined;
460
+ message.info = object.info !== undefined && object.info !== null ? exports.RequestInfo.fromPartial(object.info) : undefined;
461
+ message.initChain = object.initChain !== undefined && object.initChain !== null ? exports.RequestInitChain.fromPartial(object.initChain) : undefined;
462
+ message.query = object.query !== undefined && object.query !== null ? exports.RequestQuery.fromPartial(object.query) : undefined;
463
+ message.checkTx = object.checkTx !== undefined && object.checkTx !== null ? exports.RequestCheckTx.fromPartial(object.checkTx) : undefined;
464
+ message.commit = object.commit !== undefined && object.commit !== null ? exports.RequestCommit.fromPartial(object.commit) : undefined;
465
+ message.listSnapshots = object.listSnapshots !== undefined && object.listSnapshots !== null ? exports.RequestListSnapshots.fromPartial(object.listSnapshots) : undefined;
466
+ message.offerSnapshot = object.offerSnapshot !== undefined && object.offerSnapshot !== null ? exports.RequestOfferSnapshot.fromPartial(object.offerSnapshot) : undefined;
467
+ message.loadSnapshotChunk = object.loadSnapshotChunk !== undefined && object.loadSnapshotChunk !== null ? exports.RequestLoadSnapshotChunk.fromPartial(object.loadSnapshotChunk) : undefined;
468
+ message.applySnapshotChunk = object.applySnapshotChunk !== undefined && object.applySnapshotChunk !== null ? exports.RequestApplySnapshotChunk.fromPartial(object.applySnapshotChunk) : undefined;
469
+ message.prepareProposal = object.prepareProposal !== undefined && object.prepareProposal !== null ? exports.RequestPrepareProposal.fromPartial(object.prepareProposal) : undefined;
470
+ message.processProposal = object.processProposal !== undefined && object.processProposal !== null ? exports.RequestProcessProposal.fromPartial(object.processProposal) : undefined;
471
+ message.extendVote = object.extendVote !== undefined && object.extendVote !== null ? exports.RequestExtendVote.fromPartial(object.extendVote) : undefined;
472
+ message.verifyVoteExtension = object.verifyVoteExtension !== undefined && object.verifyVoteExtension !== null ? exports.RequestVerifyVoteExtension.fromPartial(object.verifyVoteExtension) : undefined;
473
+ message.finalizeBlock = object.finalizeBlock !== undefined && object.finalizeBlock !== null ? exports.RequestFinalizeBlock.fromPartial(object.finalizeBlock) : undefined;
474
+ return message;
475
+ }
476
+ };
477
+ function createBaseRequestEcho() {
478
+ return {
479
+ message: ""
480
+ };
481
+ }
482
+ exports.RequestEcho = {
483
+ encode(message, writer = _m0.Writer.create()) {
484
+ if (message.message !== "") {
485
+ writer.uint32(10).string(message.message);
486
+ }
487
+ return writer;
488
+ },
489
+ decode(input, length) {
490
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
491
+ let end = length === undefined ? reader.len : reader.pos + length;
492
+ const message = createBaseRequestEcho();
493
+ while (reader.pos < end) {
494
+ const tag = reader.uint32();
495
+ switch (tag >>> 3) {
496
+ case 1:
497
+ message.message = reader.string();
498
+ break;
499
+ default:
500
+ reader.skipType(tag & 7);
501
+ break;
502
+ }
503
+ }
504
+ return message;
505
+ },
506
+ fromPartial(object) {
507
+ var _a;
508
+ const message = createBaseRequestEcho();
509
+ message.message = (_a = object.message) !== null && _a !== void 0 ? _a : "";
510
+ return message;
511
+ }
512
+ };
513
+ function createBaseRequestFlush() {
514
+ return {};
515
+ }
516
+ exports.RequestFlush = {
517
+ encode(_, writer = _m0.Writer.create()) {
518
+ return writer;
519
+ },
520
+ decode(input, length) {
521
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
522
+ let end = length === undefined ? reader.len : reader.pos + length;
523
+ const message = createBaseRequestFlush();
524
+ while (reader.pos < end) {
525
+ const tag = reader.uint32();
526
+ switch (tag >>> 3) {
527
+ default:
528
+ reader.skipType(tag & 7);
529
+ break;
530
+ }
531
+ }
532
+ return message;
533
+ },
534
+ fromPartial(_) {
535
+ const message = createBaseRequestFlush();
536
+ return message;
537
+ }
538
+ };
539
+ function createBaseRequestInfo() {
540
+ return {
541
+ version: "",
542
+ blockVersion: helpers_1.Long.UZERO,
543
+ p2pVersion: helpers_1.Long.UZERO,
544
+ abciVersion: ""
545
+ };
546
+ }
547
+ exports.RequestInfo = {
548
+ encode(message, writer = _m0.Writer.create()) {
549
+ if (message.version !== "") {
550
+ writer.uint32(10).string(message.version);
551
+ }
552
+ if (!message.blockVersion.isZero()) {
553
+ writer.uint32(16).uint64(message.blockVersion);
554
+ }
555
+ if (!message.p2pVersion.isZero()) {
556
+ writer.uint32(24).uint64(message.p2pVersion);
557
+ }
558
+ if (message.abciVersion !== "") {
559
+ writer.uint32(34).string(message.abciVersion);
560
+ }
561
+ return writer;
562
+ },
563
+ decode(input, length) {
564
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
565
+ let end = length === undefined ? reader.len : reader.pos + length;
566
+ const message = createBaseRequestInfo();
567
+ while (reader.pos < end) {
568
+ const tag = reader.uint32();
569
+ switch (tag >>> 3) {
570
+ case 1:
571
+ message.version = reader.string();
572
+ break;
573
+ case 2:
574
+ message.blockVersion = reader.uint64();
575
+ break;
576
+ case 3:
577
+ message.p2pVersion = reader.uint64();
578
+ break;
579
+ case 4:
580
+ message.abciVersion = reader.string();
581
+ break;
582
+ default:
583
+ reader.skipType(tag & 7);
584
+ break;
585
+ }
586
+ }
587
+ return message;
588
+ },
589
+ fromPartial(object) {
590
+ var _a, _b;
591
+ const message = createBaseRequestInfo();
592
+ message.version = (_a = object.version) !== null && _a !== void 0 ? _a : "";
593
+ message.blockVersion = object.blockVersion !== undefined && object.blockVersion !== null ? helpers_1.Long.fromValue(object.blockVersion) : helpers_1.Long.UZERO;
594
+ message.p2pVersion = object.p2pVersion !== undefined && object.p2pVersion !== null ? helpers_1.Long.fromValue(object.p2pVersion) : helpers_1.Long.UZERO;
595
+ message.abciVersion = (_b = object.abciVersion) !== null && _b !== void 0 ? _b : "";
596
+ return message;
597
+ }
598
+ };
599
+ function createBaseRequestInitChain() {
600
+ return {
601
+ time: undefined,
602
+ chainId: "",
603
+ consensusParams: undefined,
604
+ validators: [],
605
+ appStateBytes: new Uint8Array(),
606
+ initialHeight: helpers_1.Long.ZERO
607
+ };
608
+ }
609
+ exports.RequestInitChain = {
610
+ encode(message, writer = _m0.Writer.create()) {
611
+ if (message.time !== undefined) {
612
+ timestamp_1.Timestamp.encode((0, helpers_1.toTimestamp)(message.time), writer.uint32(10).fork()).ldelim();
613
+ }
614
+ if (message.chainId !== "") {
615
+ writer.uint32(18).string(message.chainId);
616
+ }
617
+ if (message.consensusParams !== undefined) {
618
+ params_1.ConsensusParams.encode(message.consensusParams, writer.uint32(26).fork()).ldelim();
619
+ }
620
+ for (const v of message.validators) {
621
+ exports.ValidatorUpdate.encode(v, writer.uint32(34).fork()).ldelim();
622
+ }
623
+ if (message.appStateBytes.length !== 0) {
624
+ writer.uint32(42).bytes(message.appStateBytes);
625
+ }
626
+ if (!message.initialHeight.isZero()) {
627
+ writer.uint32(48).int64(message.initialHeight);
628
+ }
629
+ return writer;
630
+ },
631
+ decode(input, length) {
632
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
633
+ let end = length === undefined ? reader.len : reader.pos + length;
634
+ const message = createBaseRequestInitChain();
635
+ while (reader.pos < end) {
636
+ const tag = reader.uint32();
637
+ switch (tag >>> 3) {
638
+ case 1:
639
+ message.time = (0, helpers_1.fromTimestamp)(timestamp_1.Timestamp.decode(reader, reader.uint32()));
640
+ break;
641
+ case 2:
642
+ message.chainId = reader.string();
643
+ break;
644
+ case 3:
645
+ message.consensusParams = params_1.ConsensusParams.decode(reader, reader.uint32());
646
+ break;
647
+ case 4:
648
+ message.validators.push(exports.ValidatorUpdate.decode(reader, reader.uint32()));
649
+ break;
650
+ case 5:
651
+ message.appStateBytes = reader.bytes();
652
+ break;
653
+ case 6:
654
+ message.initialHeight = reader.int64();
655
+ break;
656
+ default:
657
+ reader.skipType(tag & 7);
658
+ break;
659
+ }
660
+ }
661
+ return message;
662
+ },
663
+ fromPartial(object) {
664
+ var _a, _b, _c, _d;
665
+ const message = createBaseRequestInitChain();
666
+ message.time = (_a = object.time) !== null && _a !== void 0 ? _a : undefined;
667
+ message.chainId = (_b = object.chainId) !== null && _b !== void 0 ? _b : "";
668
+ message.consensusParams = object.consensusParams !== undefined && object.consensusParams !== null ? params_1.ConsensusParams.fromPartial(object.consensusParams) : undefined;
669
+ message.validators = ((_c = object.validators) === null || _c === void 0 ? void 0 : _c.map(e => exports.ValidatorUpdate.fromPartial(e))) || [];
670
+ message.appStateBytes = (_d = object.appStateBytes) !== null && _d !== void 0 ? _d : new Uint8Array();
671
+ message.initialHeight = object.initialHeight !== undefined && object.initialHeight !== null ? helpers_1.Long.fromValue(object.initialHeight) : helpers_1.Long.ZERO;
672
+ return message;
673
+ }
674
+ };
675
+ function createBaseRequestQuery() {
676
+ return {
677
+ data: new Uint8Array(),
678
+ path: "",
679
+ height: helpers_1.Long.ZERO,
680
+ prove: false
681
+ };
682
+ }
683
+ exports.RequestQuery = {
684
+ encode(message, writer = _m0.Writer.create()) {
685
+ if (message.data.length !== 0) {
686
+ writer.uint32(10).bytes(message.data);
687
+ }
688
+ if (message.path !== "") {
689
+ writer.uint32(18).string(message.path);
690
+ }
691
+ if (!message.height.isZero()) {
692
+ writer.uint32(24).int64(message.height);
693
+ }
694
+ if (message.prove === true) {
695
+ writer.uint32(32).bool(message.prove);
696
+ }
697
+ return writer;
698
+ },
699
+ decode(input, length) {
700
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
701
+ let end = length === undefined ? reader.len : reader.pos + length;
702
+ const message = createBaseRequestQuery();
703
+ while (reader.pos < end) {
704
+ const tag = reader.uint32();
705
+ switch (tag >>> 3) {
706
+ case 1:
707
+ message.data = reader.bytes();
708
+ break;
709
+ case 2:
710
+ message.path = reader.string();
711
+ break;
712
+ case 3:
713
+ message.height = reader.int64();
714
+ break;
715
+ case 4:
716
+ message.prove = reader.bool();
717
+ break;
718
+ default:
719
+ reader.skipType(tag & 7);
720
+ break;
721
+ }
722
+ }
723
+ return message;
724
+ },
725
+ fromPartial(object) {
726
+ var _a, _b, _c;
727
+ const message = createBaseRequestQuery();
728
+ message.data = (_a = object.data) !== null && _a !== void 0 ? _a : new Uint8Array();
729
+ message.path = (_b = object.path) !== null && _b !== void 0 ? _b : "";
730
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
731
+ message.prove = (_c = object.prove) !== null && _c !== void 0 ? _c : false;
732
+ return message;
733
+ }
734
+ };
735
+ function createBaseRequestCheckTx() {
736
+ return {
737
+ tx: new Uint8Array(),
738
+ type: 0
739
+ };
740
+ }
741
+ exports.RequestCheckTx = {
742
+ encode(message, writer = _m0.Writer.create()) {
743
+ if (message.tx.length !== 0) {
744
+ writer.uint32(10).bytes(message.tx);
745
+ }
746
+ if (message.type !== 0) {
747
+ writer.uint32(16).int32(message.type);
748
+ }
749
+ return writer;
750
+ },
751
+ decode(input, length) {
752
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
753
+ let end = length === undefined ? reader.len : reader.pos + length;
754
+ const message = createBaseRequestCheckTx();
755
+ while (reader.pos < end) {
756
+ const tag = reader.uint32();
757
+ switch (tag >>> 3) {
758
+ case 1:
759
+ message.tx = reader.bytes();
760
+ break;
761
+ case 2:
762
+ message.type = reader.int32();
763
+ break;
764
+ default:
765
+ reader.skipType(tag & 7);
766
+ break;
767
+ }
768
+ }
769
+ return message;
770
+ },
771
+ fromPartial(object) {
772
+ var _a, _b;
773
+ const message = createBaseRequestCheckTx();
774
+ message.tx = (_a = object.tx) !== null && _a !== void 0 ? _a : new Uint8Array();
775
+ message.type = (_b = object.type) !== null && _b !== void 0 ? _b : 0;
776
+ return message;
777
+ }
778
+ };
779
+ function createBaseRequestCommit() {
780
+ return {};
781
+ }
782
+ exports.RequestCommit = {
783
+ encode(_, writer = _m0.Writer.create()) {
784
+ return writer;
785
+ },
786
+ decode(input, length) {
787
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
788
+ let end = length === undefined ? reader.len : reader.pos + length;
789
+ const message = createBaseRequestCommit();
790
+ while (reader.pos < end) {
791
+ const tag = reader.uint32();
792
+ switch (tag >>> 3) {
793
+ default:
794
+ reader.skipType(tag & 7);
795
+ break;
796
+ }
797
+ }
798
+ return message;
799
+ },
800
+ fromPartial(_) {
801
+ const message = createBaseRequestCommit();
802
+ return message;
803
+ }
804
+ };
805
+ function createBaseRequestListSnapshots() {
806
+ return {};
807
+ }
808
+ exports.RequestListSnapshots = {
809
+ encode(_, writer = _m0.Writer.create()) {
810
+ return writer;
811
+ },
812
+ decode(input, length) {
813
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
814
+ let end = length === undefined ? reader.len : reader.pos + length;
815
+ const message = createBaseRequestListSnapshots();
816
+ while (reader.pos < end) {
817
+ const tag = reader.uint32();
818
+ switch (tag >>> 3) {
819
+ default:
820
+ reader.skipType(tag & 7);
821
+ break;
822
+ }
823
+ }
824
+ return message;
825
+ },
826
+ fromPartial(_) {
827
+ const message = createBaseRequestListSnapshots();
828
+ return message;
829
+ }
830
+ };
831
+ function createBaseRequestOfferSnapshot() {
832
+ return {
833
+ snapshot: undefined,
834
+ appHash: new Uint8Array()
835
+ };
836
+ }
837
+ exports.RequestOfferSnapshot = {
838
+ encode(message, writer = _m0.Writer.create()) {
839
+ if (message.snapshot !== undefined) {
840
+ exports.Snapshot.encode(message.snapshot, writer.uint32(10).fork()).ldelim();
841
+ }
842
+ if (message.appHash.length !== 0) {
843
+ writer.uint32(18).bytes(message.appHash);
844
+ }
845
+ return writer;
846
+ },
847
+ decode(input, length) {
848
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
849
+ let end = length === undefined ? reader.len : reader.pos + length;
850
+ const message = createBaseRequestOfferSnapshot();
851
+ while (reader.pos < end) {
852
+ const tag = reader.uint32();
853
+ switch (tag >>> 3) {
854
+ case 1:
855
+ message.snapshot = exports.Snapshot.decode(reader, reader.uint32());
856
+ break;
857
+ case 2:
858
+ message.appHash = reader.bytes();
859
+ break;
860
+ default:
861
+ reader.skipType(tag & 7);
862
+ break;
863
+ }
864
+ }
865
+ return message;
866
+ },
867
+ fromPartial(object) {
868
+ var _a;
869
+ const message = createBaseRequestOfferSnapshot();
870
+ message.snapshot = object.snapshot !== undefined && object.snapshot !== null ? exports.Snapshot.fromPartial(object.snapshot) : undefined;
871
+ message.appHash = (_a = object.appHash) !== null && _a !== void 0 ? _a : new Uint8Array();
872
+ return message;
873
+ }
874
+ };
875
+ function createBaseRequestLoadSnapshotChunk() {
876
+ return {
877
+ height: helpers_1.Long.UZERO,
878
+ format: 0,
879
+ chunk: 0
880
+ };
881
+ }
882
+ exports.RequestLoadSnapshotChunk = {
883
+ encode(message, writer = _m0.Writer.create()) {
884
+ if (!message.height.isZero()) {
885
+ writer.uint32(8).uint64(message.height);
886
+ }
887
+ if (message.format !== 0) {
888
+ writer.uint32(16).uint32(message.format);
889
+ }
890
+ if (message.chunk !== 0) {
891
+ writer.uint32(24).uint32(message.chunk);
892
+ }
893
+ return writer;
894
+ },
895
+ decode(input, length) {
896
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
897
+ let end = length === undefined ? reader.len : reader.pos + length;
898
+ const message = createBaseRequestLoadSnapshotChunk();
899
+ while (reader.pos < end) {
900
+ const tag = reader.uint32();
901
+ switch (tag >>> 3) {
902
+ case 1:
903
+ message.height = reader.uint64();
904
+ break;
905
+ case 2:
906
+ message.format = reader.uint32();
907
+ break;
908
+ case 3:
909
+ message.chunk = reader.uint32();
910
+ break;
911
+ default:
912
+ reader.skipType(tag & 7);
913
+ break;
914
+ }
915
+ }
916
+ return message;
917
+ },
918
+ fromPartial(object) {
919
+ var _a, _b;
920
+ const message = createBaseRequestLoadSnapshotChunk();
921
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.UZERO;
922
+ message.format = (_a = object.format) !== null && _a !== void 0 ? _a : 0;
923
+ message.chunk = (_b = object.chunk) !== null && _b !== void 0 ? _b : 0;
924
+ return message;
925
+ }
926
+ };
927
+ function createBaseRequestApplySnapshotChunk() {
928
+ return {
929
+ index: 0,
930
+ chunk: new Uint8Array(),
931
+ sender: ""
932
+ };
933
+ }
934
+ exports.RequestApplySnapshotChunk = {
935
+ encode(message, writer = _m0.Writer.create()) {
936
+ if (message.index !== 0) {
937
+ writer.uint32(8).uint32(message.index);
938
+ }
939
+ if (message.chunk.length !== 0) {
940
+ writer.uint32(18).bytes(message.chunk);
941
+ }
942
+ if (message.sender !== "") {
943
+ writer.uint32(26).string(message.sender);
944
+ }
945
+ return writer;
946
+ },
947
+ decode(input, length) {
948
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
949
+ let end = length === undefined ? reader.len : reader.pos + length;
950
+ const message = createBaseRequestApplySnapshotChunk();
951
+ while (reader.pos < end) {
952
+ const tag = reader.uint32();
953
+ switch (tag >>> 3) {
954
+ case 1:
955
+ message.index = reader.uint32();
956
+ break;
957
+ case 2:
958
+ message.chunk = reader.bytes();
959
+ break;
960
+ case 3:
961
+ message.sender = reader.string();
962
+ break;
963
+ default:
964
+ reader.skipType(tag & 7);
965
+ break;
966
+ }
967
+ }
968
+ return message;
969
+ },
970
+ fromPartial(object) {
971
+ var _a, _b, _c;
972
+ const message = createBaseRequestApplySnapshotChunk();
973
+ message.index = (_a = object.index) !== null && _a !== void 0 ? _a : 0;
974
+ message.chunk = (_b = object.chunk) !== null && _b !== void 0 ? _b : new Uint8Array();
975
+ message.sender = (_c = object.sender) !== null && _c !== void 0 ? _c : "";
976
+ return message;
977
+ }
978
+ };
979
+ function createBaseRequestPrepareProposal() {
980
+ return {
981
+ maxTxBytes: helpers_1.Long.ZERO,
982
+ txs: [],
983
+ localLastCommit: undefined,
984
+ misbehavior: [],
985
+ height: helpers_1.Long.ZERO,
986
+ time: undefined,
987
+ nextValidatorsHash: new Uint8Array(),
988
+ proposerAddress: new Uint8Array()
989
+ };
990
+ }
991
+ exports.RequestPrepareProposal = {
992
+ encode(message, writer = _m0.Writer.create()) {
993
+ if (!message.maxTxBytes.isZero()) {
994
+ writer.uint32(8).int64(message.maxTxBytes);
995
+ }
996
+ for (const v of message.txs) {
997
+ writer.uint32(18).bytes(v);
998
+ }
999
+ if (message.localLastCommit !== undefined) {
1000
+ exports.ExtendedCommitInfo.encode(message.localLastCommit, writer.uint32(26).fork()).ldelim();
1001
+ }
1002
+ for (const v of message.misbehavior) {
1003
+ exports.Misbehavior.encode(v, writer.uint32(34).fork()).ldelim();
1004
+ }
1005
+ if (!message.height.isZero()) {
1006
+ writer.uint32(40).int64(message.height);
1007
+ }
1008
+ if (message.time !== undefined) {
1009
+ timestamp_1.Timestamp.encode((0, helpers_1.toTimestamp)(message.time), writer.uint32(50).fork()).ldelim();
1010
+ }
1011
+ if (message.nextValidatorsHash.length !== 0) {
1012
+ writer.uint32(58).bytes(message.nextValidatorsHash);
1013
+ }
1014
+ if (message.proposerAddress.length !== 0) {
1015
+ writer.uint32(66).bytes(message.proposerAddress);
1016
+ }
1017
+ return writer;
1018
+ },
1019
+ decode(input, length) {
1020
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1021
+ let end = length === undefined ? reader.len : reader.pos + length;
1022
+ const message = createBaseRequestPrepareProposal();
1023
+ while (reader.pos < end) {
1024
+ const tag = reader.uint32();
1025
+ switch (tag >>> 3) {
1026
+ case 1:
1027
+ message.maxTxBytes = reader.int64();
1028
+ break;
1029
+ case 2:
1030
+ message.txs.push(reader.bytes());
1031
+ break;
1032
+ case 3:
1033
+ message.localLastCommit = exports.ExtendedCommitInfo.decode(reader, reader.uint32());
1034
+ break;
1035
+ case 4:
1036
+ message.misbehavior.push(exports.Misbehavior.decode(reader, reader.uint32()));
1037
+ break;
1038
+ case 5:
1039
+ message.height = reader.int64();
1040
+ break;
1041
+ case 6:
1042
+ message.time = (0, helpers_1.fromTimestamp)(timestamp_1.Timestamp.decode(reader, reader.uint32()));
1043
+ break;
1044
+ case 7:
1045
+ message.nextValidatorsHash = reader.bytes();
1046
+ break;
1047
+ case 8:
1048
+ message.proposerAddress = reader.bytes();
1049
+ break;
1050
+ default:
1051
+ reader.skipType(tag & 7);
1052
+ break;
1053
+ }
1054
+ }
1055
+ return message;
1056
+ },
1057
+ fromPartial(object) {
1058
+ var _a, _b, _c, _d, _e;
1059
+ const message = createBaseRequestPrepareProposal();
1060
+ message.maxTxBytes = object.maxTxBytes !== undefined && object.maxTxBytes !== null ? helpers_1.Long.fromValue(object.maxTxBytes) : helpers_1.Long.ZERO;
1061
+ message.txs = ((_a = object.txs) === null || _a === void 0 ? void 0 : _a.map(e => e)) || [];
1062
+ message.localLastCommit = object.localLastCommit !== undefined && object.localLastCommit !== null ? exports.ExtendedCommitInfo.fromPartial(object.localLastCommit) : undefined;
1063
+ message.misbehavior = ((_b = object.misbehavior) === null || _b === void 0 ? void 0 : _b.map(e => exports.Misbehavior.fromPartial(e))) || [];
1064
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
1065
+ message.time = (_c = object.time) !== null && _c !== void 0 ? _c : undefined;
1066
+ message.nextValidatorsHash = (_d = object.nextValidatorsHash) !== null && _d !== void 0 ? _d : new Uint8Array();
1067
+ message.proposerAddress = (_e = object.proposerAddress) !== null && _e !== void 0 ? _e : new Uint8Array();
1068
+ return message;
1069
+ }
1070
+ };
1071
+ function createBaseRequestProcessProposal() {
1072
+ return {
1073
+ txs: [],
1074
+ proposedLastCommit: undefined,
1075
+ misbehavior: [],
1076
+ hash: new Uint8Array(),
1077
+ height: helpers_1.Long.ZERO,
1078
+ time: undefined,
1079
+ nextValidatorsHash: new Uint8Array(),
1080
+ proposerAddress: new Uint8Array()
1081
+ };
1082
+ }
1083
+ exports.RequestProcessProposal = {
1084
+ encode(message, writer = _m0.Writer.create()) {
1085
+ for (const v of message.txs) {
1086
+ writer.uint32(10).bytes(v);
1087
+ }
1088
+ if (message.proposedLastCommit !== undefined) {
1089
+ exports.CommitInfo.encode(message.proposedLastCommit, writer.uint32(18).fork()).ldelim();
1090
+ }
1091
+ for (const v of message.misbehavior) {
1092
+ exports.Misbehavior.encode(v, writer.uint32(26).fork()).ldelim();
1093
+ }
1094
+ if (message.hash.length !== 0) {
1095
+ writer.uint32(34).bytes(message.hash);
1096
+ }
1097
+ if (!message.height.isZero()) {
1098
+ writer.uint32(40).int64(message.height);
1099
+ }
1100
+ if (message.time !== undefined) {
1101
+ timestamp_1.Timestamp.encode((0, helpers_1.toTimestamp)(message.time), writer.uint32(50).fork()).ldelim();
1102
+ }
1103
+ if (message.nextValidatorsHash.length !== 0) {
1104
+ writer.uint32(58).bytes(message.nextValidatorsHash);
1105
+ }
1106
+ if (message.proposerAddress.length !== 0) {
1107
+ writer.uint32(66).bytes(message.proposerAddress);
1108
+ }
1109
+ return writer;
1110
+ },
1111
+ decode(input, length) {
1112
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1113
+ let end = length === undefined ? reader.len : reader.pos + length;
1114
+ const message = createBaseRequestProcessProposal();
1115
+ while (reader.pos < end) {
1116
+ const tag = reader.uint32();
1117
+ switch (tag >>> 3) {
1118
+ case 1:
1119
+ message.txs.push(reader.bytes());
1120
+ break;
1121
+ case 2:
1122
+ message.proposedLastCommit = exports.CommitInfo.decode(reader, reader.uint32());
1123
+ break;
1124
+ case 3:
1125
+ message.misbehavior.push(exports.Misbehavior.decode(reader, reader.uint32()));
1126
+ break;
1127
+ case 4:
1128
+ message.hash = reader.bytes();
1129
+ break;
1130
+ case 5:
1131
+ message.height = reader.int64();
1132
+ break;
1133
+ case 6:
1134
+ message.time = (0, helpers_1.fromTimestamp)(timestamp_1.Timestamp.decode(reader, reader.uint32()));
1135
+ break;
1136
+ case 7:
1137
+ message.nextValidatorsHash = reader.bytes();
1138
+ break;
1139
+ case 8:
1140
+ message.proposerAddress = reader.bytes();
1141
+ break;
1142
+ default:
1143
+ reader.skipType(tag & 7);
1144
+ break;
1145
+ }
1146
+ }
1147
+ return message;
1148
+ },
1149
+ fromPartial(object) {
1150
+ var _a, _b, _c, _d, _e, _f;
1151
+ const message = createBaseRequestProcessProposal();
1152
+ message.txs = ((_a = object.txs) === null || _a === void 0 ? void 0 : _a.map(e => e)) || [];
1153
+ message.proposedLastCommit = object.proposedLastCommit !== undefined && object.proposedLastCommit !== null ? exports.CommitInfo.fromPartial(object.proposedLastCommit) : undefined;
1154
+ message.misbehavior = ((_b = object.misbehavior) === null || _b === void 0 ? void 0 : _b.map(e => exports.Misbehavior.fromPartial(e))) || [];
1155
+ message.hash = (_c = object.hash) !== null && _c !== void 0 ? _c : new Uint8Array();
1156
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
1157
+ message.time = (_d = object.time) !== null && _d !== void 0 ? _d : undefined;
1158
+ message.nextValidatorsHash = (_e = object.nextValidatorsHash) !== null && _e !== void 0 ? _e : new Uint8Array();
1159
+ message.proposerAddress = (_f = object.proposerAddress) !== null && _f !== void 0 ? _f : new Uint8Array();
1160
+ return message;
1161
+ }
1162
+ };
1163
+ function createBaseRequestExtendVote() {
1164
+ return {
1165
+ hash: new Uint8Array(),
1166
+ height: helpers_1.Long.ZERO,
1167
+ time: undefined,
1168
+ txs: [],
1169
+ proposedLastCommit: undefined,
1170
+ misbehavior: [],
1171
+ nextValidatorsHash: new Uint8Array(),
1172
+ proposerAddress: new Uint8Array()
1173
+ };
1174
+ }
1175
+ exports.RequestExtendVote = {
1176
+ encode(message, writer = _m0.Writer.create()) {
1177
+ if (message.hash.length !== 0) {
1178
+ writer.uint32(10).bytes(message.hash);
1179
+ }
1180
+ if (!message.height.isZero()) {
1181
+ writer.uint32(16).int64(message.height);
1182
+ }
1183
+ if (message.time !== undefined) {
1184
+ timestamp_1.Timestamp.encode((0, helpers_1.toTimestamp)(message.time), writer.uint32(26).fork()).ldelim();
1185
+ }
1186
+ for (const v of message.txs) {
1187
+ writer.uint32(34).bytes(v);
1188
+ }
1189
+ if (message.proposedLastCommit !== undefined) {
1190
+ exports.CommitInfo.encode(message.proposedLastCommit, writer.uint32(42).fork()).ldelim();
1191
+ }
1192
+ for (const v of message.misbehavior) {
1193
+ exports.Misbehavior.encode(v, writer.uint32(50).fork()).ldelim();
1194
+ }
1195
+ if (message.nextValidatorsHash.length !== 0) {
1196
+ writer.uint32(58).bytes(message.nextValidatorsHash);
1197
+ }
1198
+ if (message.proposerAddress.length !== 0) {
1199
+ writer.uint32(66).bytes(message.proposerAddress);
1200
+ }
1201
+ return writer;
1202
+ },
1203
+ decode(input, length) {
1204
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1205
+ let end = length === undefined ? reader.len : reader.pos + length;
1206
+ const message = createBaseRequestExtendVote();
1207
+ while (reader.pos < end) {
1208
+ const tag = reader.uint32();
1209
+ switch (tag >>> 3) {
1210
+ case 1:
1211
+ message.hash = reader.bytes();
1212
+ break;
1213
+ case 2:
1214
+ message.height = reader.int64();
1215
+ break;
1216
+ case 3:
1217
+ message.time = (0, helpers_1.fromTimestamp)(timestamp_1.Timestamp.decode(reader, reader.uint32()));
1218
+ break;
1219
+ case 4:
1220
+ message.txs.push(reader.bytes());
1221
+ break;
1222
+ case 5:
1223
+ message.proposedLastCommit = exports.CommitInfo.decode(reader, reader.uint32());
1224
+ break;
1225
+ case 6:
1226
+ message.misbehavior.push(exports.Misbehavior.decode(reader, reader.uint32()));
1227
+ break;
1228
+ case 7:
1229
+ message.nextValidatorsHash = reader.bytes();
1230
+ break;
1231
+ case 8:
1232
+ message.proposerAddress = reader.bytes();
1233
+ break;
1234
+ default:
1235
+ reader.skipType(tag & 7);
1236
+ break;
1237
+ }
1238
+ }
1239
+ return message;
1240
+ },
1241
+ fromPartial(object) {
1242
+ var _a, _b, _c, _d, _e, _f;
1243
+ const message = createBaseRequestExtendVote();
1244
+ message.hash = (_a = object.hash) !== null && _a !== void 0 ? _a : new Uint8Array();
1245
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
1246
+ message.time = (_b = object.time) !== null && _b !== void 0 ? _b : undefined;
1247
+ message.txs = ((_c = object.txs) === null || _c === void 0 ? void 0 : _c.map(e => e)) || [];
1248
+ message.proposedLastCommit = object.proposedLastCommit !== undefined && object.proposedLastCommit !== null ? exports.CommitInfo.fromPartial(object.proposedLastCommit) : undefined;
1249
+ message.misbehavior = ((_d = object.misbehavior) === null || _d === void 0 ? void 0 : _d.map(e => exports.Misbehavior.fromPartial(e))) || [];
1250
+ message.nextValidatorsHash = (_e = object.nextValidatorsHash) !== null && _e !== void 0 ? _e : new Uint8Array();
1251
+ message.proposerAddress = (_f = object.proposerAddress) !== null && _f !== void 0 ? _f : new Uint8Array();
1252
+ return message;
1253
+ }
1254
+ };
1255
+ function createBaseRequestVerifyVoteExtension() {
1256
+ return {
1257
+ hash: new Uint8Array(),
1258
+ validatorAddress: new Uint8Array(),
1259
+ height: helpers_1.Long.ZERO,
1260
+ voteExtension: new Uint8Array()
1261
+ };
1262
+ }
1263
+ exports.RequestVerifyVoteExtension = {
1264
+ encode(message, writer = _m0.Writer.create()) {
1265
+ if (message.hash.length !== 0) {
1266
+ writer.uint32(10).bytes(message.hash);
1267
+ }
1268
+ if (message.validatorAddress.length !== 0) {
1269
+ writer.uint32(18).bytes(message.validatorAddress);
1270
+ }
1271
+ if (!message.height.isZero()) {
1272
+ writer.uint32(24).int64(message.height);
1273
+ }
1274
+ if (message.voteExtension.length !== 0) {
1275
+ writer.uint32(34).bytes(message.voteExtension);
1276
+ }
1277
+ return writer;
1278
+ },
1279
+ decode(input, length) {
1280
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1281
+ let end = length === undefined ? reader.len : reader.pos + length;
1282
+ const message = createBaseRequestVerifyVoteExtension();
1283
+ while (reader.pos < end) {
1284
+ const tag = reader.uint32();
1285
+ switch (tag >>> 3) {
1286
+ case 1:
1287
+ message.hash = reader.bytes();
1288
+ break;
1289
+ case 2:
1290
+ message.validatorAddress = reader.bytes();
1291
+ break;
1292
+ case 3:
1293
+ message.height = reader.int64();
1294
+ break;
1295
+ case 4:
1296
+ message.voteExtension = reader.bytes();
1297
+ break;
1298
+ default:
1299
+ reader.skipType(tag & 7);
1300
+ break;
1301
+ }
1302
+ }
1303
+ return message;
1304
+ },
1305
+ fromPartial(object) {
1306
+ var _a, _b, _c;
1307
+ const message = createBaseRequestVerifyVoteExtension();
1308
+ message.hash = (_a = object.hash) !== null && _a !== void 0 ? _a : new Uint8Array();
1309
+ message.validatorAddress = (_b = object.validatorAddress) !== null && _b !== void 0 ? _b : new Uint8Array();
1310
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
1311
+ message.voteExtension = (_c = object.voteExtension) !== null && _c !== void 0 ? _c : new Uint8Array();
1312
+ return message;
1313
+ }
1314
+ };
1315
+ function createBaseRequestFinalizeBlock() {
1316
+ return {
1317
+ txs: [],
1318
+ decidedLastCommit: undefined,
1319
+ misbehavior: [],
1320
+ hash: new Uint8Array(),
1321
+ height: helpers_1.Long.ZERO,
1322
+ time: undefined,
1323
+ nextValidatorsHash: new Uint8Array(),
1324
+ proposerAddress: new Uint8Array()
1325
+ };
1326
+ }
1327
+ exports.RequestFinalizeBlock = {
1328
+ encode(message, writer = _m0.Writer.create()) {
1329
+ for (const v of message.txs) {
1330
+ writer.uint32(10).bytes(v);
1331
+ }
1332
+ if (message.decidedLastCommit !== undefined) {
1333
+ exports.CommitInfo.encode(message.decidedLastCommit, writer.uint32(18).fork()).ldelim();
1334
+ }
1335
+ for (const v of message.misbehavior) {
1336
+ exports.Misbehavior.encode(v, writer.uint32(26).fork()).ldelim();
1337
+ }
1338
+ if (message.hash.length !== 0) {
1339
+ writer.uint32(34).bytes(message.hash);
1340
+ }
1341
+ if (!message.height.isZero()) {
1342
+ writer.uint32(40).int64(message.height);
1343
+ }
1344
+ if (message.time !== undefined) {
1345
+ timestamp_1.Timestamp.encode((0, helpers_1.toTimestamp)(message.time), writer.uint32(50).fork()).ldelim();
1346
+ }
1347
+ if (message.nextValidatorsHash.length !== 0) {
1348
+ writer.uint32(58).bytes(message.nextValidatorsHash);
1349
+ }
1350
+ if (message.proposerAddress.length !== 0) {
1351
+ writer.uint32(66).bytes(message.proposerAddress);
1352
+ }
1353
+ return writer;
1354
+ },
1355
+ decode(input, length) {
1356
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1357
+ let end = length === undefined ? reader.len : reader.pos + length;
1358
+ const message = createBaseRequestFinalizeBlock();
1359
+ while (reader.pos < end) {
1360
+ const tag = reader.uint32();
1361
+ switch (tag >>> 3) {
1362
+ case 1:
1363
+ message.txs.push(reader.bytes());
1364
+ break;
1365
+ case 2:
1366
+ message.decidedLastCommit = exports.CommitInfo.decode(reader, reader.uint32());
1367
+ break;
1368
+ case 3:
1369
+ message.misbehavior.push(exports.Misbehavior.decode(reader, reader.uint32()));
1370
+ break;
1371
+ case 4:
1372
+ message.hash = reader.bytes();
1373
+ break;
1374
+ case 5:
1375
+ message.height = reader.int64();
1376
+ break;
1377
+ case 6:
1378
+ message.time = (0, helpers_1.fromTimestamp)(timestamp_1.Timestamp.decode(reader, reader.uint32()));
1379
+ break;
1380
+ case 7:
1381
+ message.nextValidatorsHash = reader.bytes();
1382
+ break;
1383
+ case 8:
1384
+ message.proposerAddress = reader.bytes();
1385
+ break;
1386
+ default:
1387
+ reader.skipType(tag & 7);
1388
+ break;
1389
+ }
1390
+ }
1391
+ return message;
1392
+ },
1393
+ fromPartial(object) {
1394
+ var _a, _b, _c, _d, _e, _f;
1395
+ const message = createBaseRequestFinalizeBlock();
1396
+ message.txs = ((_a = object.txs) === null || _a === void 0 ? void 0 : _a.map(e => e)) || [];
1397
+ message.decidedLastCommit = object.decidedLastCommit !== undefined && object.decidedLastCommit !== null ? exports.CommitInfo.fromPartial(object.decidedLastCommit) : undefined;
1398
+ message.misbehavior = ((_b = object.misbehavior) === null || _b === void 0 ? void 0 : _b.map(e => exports.Misbehavior.fromPartial(e))) || [];
1399
+ message.hash = (_c = object.hash) !== null && _c !== void 0 ? _c : new Uint8Array();
1400
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
1401
+ message.time = (_d = object.time) !== null && _d !== void 0 ? _d : undefined;
1402
+ message.nextValidatorsHash = (_e = object.nextValidatorsHash) !== null && _e !== void 0 ? _e : new Uint8Array();
1403
+ message.proposerAddress = (_f = object.proposerAddress) !== null && _f !== void 0 ? _f : new Uint8Array();
1404
+ return message;
1405
+ }
1406
+ };
1407
+ function createBaseResponse() {
1408
+ return {
1409
+ exception: undefined,
1410
+ echo: undefined,
1411
+ flush: undefined,
1412
+ info: undefined,
1413
+ initChain: undefined,
1414
+ query: undefined,
1415
+ checkTx: undefined,
1416
+ commit: undefined,
1417
+ listSnapshots: undefined,
1418
+ offerSnapshot: undefined,
1419
+ loadSnapshotChunk: undefined,
1420
+ applySnapshotChunk: undefined,
1421
+ prepareProposal: undefined,
1422
+ processProposal: undefined,
1423
+ extendVote: undefined,
1424
+ verifyVoteExtension: undefined,
1425
+ finalizeBlock: undefined
1426
+ };
1427
+ }
1428
+ exports.Response = {
1429
+ encode(message, writer = _m0.Writer.create()) {
1430
+ if (message.exception !== undefined) {
1431
+ exports.ResponseException.encode(message.exception, writer.uint32(10).fork()).ldelim();
1432
+ }
1433
+ if (message.echo !== undefined) {
1434
+ exports.ResponseEcho.encode(message.echo, writer.uint32(18).fork()).ldelim();
1435
+ }
1436
+ if (message.flush !== undefined) {
1437
+ exports.ResponseFlush.encode(message.flush, writer.uint32(26).fork()).ldelim();
1438
+ }
1439
+ if (message.info !== undefined) {
1440
+ exports.ResponseInfo.encode(message.info, writer.uint32(34).fork()).ldelim();
1441
+ }
1442
+ if (message.initChain !== undefined) {
1443
+ exports.ResponseInitChain.encode(message.initChain, writer.uint32(50).fork()).ldelim();
1444
+ }
1445
+ if (message.query !== undefined) {
1446
+ exports.ResponseQuery.encode(message.query, writer.uint32(58).fork()).ldelim();
1447
+ }
1448
+ if (message.checkTx !== undefined) {
1449
+ exports.ResponseCheckTx.encode(message.checkTx, writer.uint32(74).fork()).ldelim();
1450
+ }
1451
+ if (message.commit !== undefined) {
1452
+ exports.ResponseCommit.encode(message.commit, writer.uint32(98).fork()).ldelim();
1453
+ }
1454
+ if (message.listSnapshots !== undefined) {
1455
+ exports.ResponseListSnapshots.encode(message.listSnapshots, writer.uint32(106).fork()).ldelim();
1456
+ }
1457
+ if (message.offerSnapshot !== undefined) {
1458
+ exports.ResponseOfferSnapshot.encode(message.offerSnapshot, writer.uint32(114).fork()).ldelim();
1459
+ }
1460
+ if (message.loadSnapshotChunk !== undefined) {
1461
+ exports.ResponseLoadSnapshotChunk.encode(message.loadSnapshotChunk, writer.uint32(122).fork()).ldelim();
1462
+ }
1463
+ if (message.applySnapshotChunk !== undefined) {
1464
+ exports.ResponseApplySnapshotChunk.encode(message.applySnapshotChunk, writer.uint32(130).fork()).ldelim();
1465
+ }
1466
+ if (message.prepareProposal !== undefined) {
1467
+ exports.ResponsePrepareProposal.encode(message.prepareProposal, writer.uint32(138).fork()).ldelim();
1468
+ }
1469
+ if (message.processProposal !== undefined) {
1470
+ exports.ResponseProcessProposal.encode(message.processProposal, writer.uint32(146).fork()).ldelim();
1471
+ }
1472
+ if (message.extendVote !== undefined) {
1473
+ exports.ResponseExtendVote.encode(message.extendVote, writer.uint32(154).fork()).ldelim();
1474
+ }
1475
+ if (message.verifyVoteExtension !== undefined) {
1476
+ exports.ResponseVerifyVoteExtension.encode(message.verifyVoteExtension, writer.uint32(162).fork()).ldelim();
1477
+ }
1478
+ if (message.finalizeBlock !== undefined) {
1479
+ exports.ResponseFinalizeBlock.encode(message.finalizeBlock, writer.uint32(170).fork()).ldelim();
1480
+ }
1481
+ return writer;
1482
+ },
1483
+ decode(input, length) {
1484
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1485
+ let end = length === undefined ? reader.len : reader.pos + length;
1486
+ const message = createBaseResponse();
1487
+ while (reader.pos < end) {
1488
+ const tag = reader.uint32();
1489
+ switch (tag >>> 3) {
1490
+ case 1:
1491
+ message.exception = exports.ResponseException.decode(reader, reader.uint32());
1492
+ break;
1493
+ case 2:
1494
+ message.echo = exports.ResponseEcho.decode(reader, reader.uint32());
1495
+ break;
1496
+ case 3:
1497
+ message.flush = exports.ResponseFlush.decode(reader, reader.uint32());
1498
+ break;
1499
+ case 4:
1500
+ message.info = exports.ResponseInfo.decode(reader, reader.uint32());
1501
+ break;
1502
+ case 6:
1503
+ message.initChain = exports.ResponseInitChain.decode(reader, reader.uint32());
1504
+ break;
1505
+ case 7:
1506
+ message.query = exports.ResponseQuery.decode(reader, reader.uint32());
1507
+ break;
1508
+ case 9:
1509
+ message.checkTx = exports.ResponseCheckTx.decode(reader, reader.uint32());
1510
+ break;
1511
+ case 12:
1512
+ message.commit = exports.ResponseCommit.decode(reader, reader.uint32());
1513
+ break;
1514
+ case 13:
1515
+ message.listSnapshots = exports.ResponseListSnapshots.decode(reader, reader.uint32());
1516
+ break;
1517
+ case 14:
1518
+ message.offerSnapshot = exports.ResponseOfferSnapshot.decode(reader, reader.uint32());
1519
+ break;
1520
+ case 15:
1521
+ message.loadSnapshotChunk = exports.ResponseLoadSnapshotChunk.decode(reader, reader.uint32());
1522
+ break;
1523
+ case 16:
1524
+ message.applySnapshotChunk = exports.ResponseApplySnapshotChunk.decode(reader, reader.uint32());
1525
+ break;
1526
+ case 17:
1527
+ message.prepareProposal = exports.ResponsePrepareProposal.decode(reader, reader.uint32());
1528
+ break;
1529
+ case 18:
1530
+ message.processProposal = exports.ResponseProcessProposal.decode(reader, reader.uint32());
1531
+ break;
1532
+ case 19:
1533
+ message.extendVote = exports.ResponseExtendVote.decode(reader, reader.uint32());
1534
+ break;
1535
+ case 20:
1536
+ message.verifyVoteExtension = exports.ResponseVerifyVoteExtension.decode(reader, reader.uint32());
1537
+ break;
1538
+ case 21:
1539
+ message.finalizeBlock = exports.ResponseFinalizeBlock.decode(reader, reader.uint32());
1540
+ break;
1541
+ default:
1542
+ reader.skipType(tag & 7);
1543
+ break;
1544
+ }
1545
+ }
1546
+ return message;
1547
+ },
1548
+ fromPartial(object) {
1549
+ const message = createBaseResponse();
1550
+ message.exception = object.exception !== undefined && object.exception !== null ? exports.ResponseException.fromPartial(object.exception) : undefined;
1551
+ message.echo = object.echo !== undefined && object.echo !== null ? exports.ResponseEcho.fromPartial(object.echo) : undefined;
1552
+ message.flush = object.flush !== undefined && object.flush !== null ? exports.ResponseFlush.fromPartial(object.flush) : undefined;
1553
+ message.info = object.info !== undefined && object.info !== null ? exports.ResponseInfo.fromPartial(object.info) : undefined;
1554
+ message.initChain = object.initChain !== undefined && object.initChain !== null ? exports.ResponseInitChain.fromPartial(object.initChain) : undefined;
1555
+ message.query = object.query !== undefined && object.query !== null ? exports.ResponseQuery.fromPartial(object.query) : undefined;
1556
+ message.checkTx = object.checkTx !== undefined && object.checkTx !== null ? exports.ResponseCheckTx.fromPartial(object.checkTx) : undefined;
1557
+ message.commit = object.commit !== undefined && object.commit !== null ? exports.ResponseCommit.fromPartial(object.commit) : undefined;
1558
+ message.listSnapshots = object.listSnapshots !== undefined && object.listSnapshots !== null ? exports.ResponseListSnapshots.fromPartial(object.listSnapshots) : undefined;
1559
+ message.offerSnapshot = object.offerSnapshot !== undefined && object.offerSnapshot !== null ? exports.ResponseOfferSnapshot.fromPartial(object.offerSnapshot) : undefined;
1560
+ message.loadSnapshotChunk = object.loadSnapshotChunk !== undefined && object.loadSnapshotChunk !== null ? exports.ResponseLoadSnapshotChunk.fromPartial(object.loadSnapshotChunk) : undefined;
1561
+ message.applySnapshotChunk = object.applySnapshotChunk !== undefined && object.applySnapshotChunk !== null ? exports.ResponseApplySnapshotChunk.fromPartial(object.applySnapshotChunk) : undefined;
1562
+ message.prepareProposal = object.prepareProposal !== undefined && object.prepareProposal !== null ? exports.ResponsePrepareProposal.fromPartial(object.prepareProposal) : undefined;
1563
+ message.processProposal = object.processProposal !== undefined && object.processProposal !== null ? exports.ResponseProcessProposal.fromPartial(object.processProposal) : undefined;
1564
+ message.extendVote = object.extendVote !== undefined && object.extendVote !== null ? exports.ResponseExtendVote.fromPartial(object.extendVote) : undefined;
1565
+ message.verifyVoteExtension = object.verifyVoteExtension !== undefined && object.verifyVoteExtension !== null ? exports.ResponseVerifyVoteExtension.fromPartial(object.verifyVoteExtension) : undefined;
1566
+ message.finalizeBlock = object.finalizeBlock !== undefined && object.finalizeBlock !== null ? exports.ResponseFinalizeBlock.fromPartial(object.finalizeBlock) : undefined;
1567
+ return message;
1568
+ }
1569
+ };
1570
+ function createBaseResponseException() {
1571
+ return {
1572
+ error: ""
1573
+ };
1574
+ }
1575
+ exports.ResponseException = {
1576
+ encode(message, writer = _m0.Writer.create()) {
1577
+ if (message.error !== "") {
1578
+ writer.uint32(10).string(message.error);
1579
+ }
1580
+ return writer;
1581
+ },
1582
+ decode(input, length) {
1583
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1584
+ let end = length === undefined ? reader.len : reader.pos + length;
1585
+ const message = createBaseResponseException();
1586
+ while (reader.pos < end) {
1587
+ const tag = reader.uint32();
1588
+ switch (tag >>> 3) {
1589
+ case 1:
1590
+ message.error = reader.string();
1591
+ break;
1592
+ default:
1593
+ reader.skipType(tag & 7);
1594
+ break;
1595
+ }
1596
+ }
1597
+ return message;
1598
+ },
1599
+ fromPartial(object) {
1600
+ var _a;
1601
+ const message = createBaseResponseException();
1602
+ message.error = (_a = object.error) !== null && _a !== void 0 ? _a : "";
1603
+ return message;
1604
+ }
1605
+ };
1606
+ function createBaseResponseEcho() {
1607
+ return {
1608
+ message: ""
1609
+ };
1610
+ }
1611
+ exports.ResponseEcho = {
1612
+ encode(message, writer = _m0.Writer.create()) {
1613
+ if (message.message !== "") {
1614
+ writer.uint32(10).string(message.message);
1615
+ }
1616
+ return writer;
1617
+ },
1618
+ decode(input, length) {
1619
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1620
+ let end = length === undefined ? reader.len : reader.pos + length;
1621
+ const message = createBaseResponseEcho();
1622
+ while (reader.pos < end) {
1623
+ const tag = reader.uint32();
1624
+ switch (tag >>> 3) {
1625
+ case 1:
1626
+ message.message = reader.string();
1627
+ break;
1628
+ default:
1629
+ reader.skipType(tag & 7);
1630
+ break;
1631
+ }
1632
+ }
1633
+ return message;
1634
+ },
1635
+ fromPartial(object) {
1636
+ var _a;
1637
+ const message = createBaseResponseEcho();
1638
+ message.message = (_a = object.message) !== null && _a !== void 0 ? _a : "";
1639
+ return message;
1640
+ }
1641
+ };
1642
+ function createBaseResponseFlush() {
1643
+ return {};
1644
+ }
1645
+ exports.ResponseFlush = {
1646
+ encode(_, writer = _m0.Writer.create()) {
1647
+ return writer;
1648
+ },
1649
+ decode(input, length) {
1650
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1651
+ let end = length === undefined ? reader.len : reader.pos + length;
1652
+ const message = createBaseResponseFlush();
1653
+ while (reader.pos < end) {
1654
+ const tag = reader.uint32();
1655
+ switch (tag >>> 3) {
1656
+ default:
1657
+ reader.skipType(tag & 7);
1658
+ break;
1659
+ }
1660
+ }
1661
+ return message;
1662
+ },
1663
+ fromPartial(_) {
1664
+ const message = createBaseResponseFlush();
1665
+ return message;
1666
+ }
1667
+ };
1668
+ function createBaseResponseInfo() {
1669
+ return {
1670
+ data: "",
1671
+ version: "",
1672
+ appVersion: helpers_1.Long.UZERO,
1673
+ lastBlockHeight: helpers_1.Long.ZERO,
1674
+ lastBlockAppHash: new Uint8Array()
1675
+ };
1676
+ }
1677
+ exports.ResponseInfo = {
1678
+ encode(message, writer = _m0.Writer.create()) {
1679
+ if (message.data !== "") {
1680
+ writer.uint32(10).string(message.data);
1681
+ }
1682
+ if (message.version !== "") {
1683
+ writer.uint32(18).string(message.version);
1684
+ }
1685
+ if (!message.appVersion.isZero()) {
1686
+ writer.uint32(24).uint64(message.appVersion);
1687
+ }
1688
+ if (!message.lastBlockHeight.isZero()) {
1689
+ writer.uint32(32).int64(message.lastBlockHeight);
1690
+ }
1691
+ if (message.lastBlockAppHash.length !== 0) {
1692
+ writer.uint32(42).bytes(message.lastBlockAppHash);
1693
+ }
1694
+ return writer;
1695
+ },
1696
+ decode(input, length) {
1697
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1698
+ let end = length === undefined ? reader.len : reader.pos + length;
1699
+ const message = createBaseResponseInfo();
1700
+ while (reader.pos < end) {
1701
+ const tag = reader.uint32();
1702
+ switch (tag >>> 3) {
1703
+ case 1:
1704
+ message.data = reader.string();
1705
+ break;
1706
+ case 2:
1707
+ message.version = reader.string();
1708
+ break;
1709
+ case 3:
1710
+ message.appVersion = reader.uint64();
1711
+ break;
1712
+ case 4:
1713
+ message.lastBlockHeight = reader.int64();
1714
+ break;
1715
+ case 5:
1716
+ message.lastBlockAppHash = reader.bytes();
1717
+ break;
1718
+ default:
1719
+ reader.skipType(tag & 7);
1720
+ break;
1721
+ }
1722
+ }
1723
+ return message;
1724
+ },
1725
+ fromPartial(object) {
1726
+ var _a, _b, _c;
1727
+ const message = createBaseResponseInfo();
1728
+ message.data = (_a = object.data) !== null && _a !== void 0 ? _a : "";
1729
+ message.version = (_b = object.version) !== null && _b !== void 0 ? _b : "";
1730
+ message.appVersion = object.appVersion !== undefined && object.appVersion !== null ? helpers_1.Long.fromValue(object.appVersion) : helpers_1.Long.UZERO;
1731
+ message.lastBlockHeight = object.lastBlockHeight !== undefined && object.lastBlockHeight !== null ? helpers_1.Long.fromValue(object.lastBlockHeight) : helpers_1.Long.ZERO;
1732
+ message.lastBlockAppHash = (_c = object.lastBlockAppHash) !== null && _c !== void 0 ? _c : new Uint8Array();
1733
+ return message;
1734
+ }
1735
+ };
1736
+ function createBaseResponseInitChain() {
1737
+ return {
1738
+ consensusParams: undefined,
1739
+ validators: [],
1740
+ appHash: new Uint8Array()
1741
+ };
1742
+ }
1743
+ exports.ResponseInitChain = {
1744
+ encode(message, writer = _m0.Writer.create()) {
1745
+ if (message.consensusParams !== undefined) {
1746
+ params_1.ConsensusParams.encode(message.consensusParams, writer.uint32(10).fork()).ldelim();
1747
+ }
1748
+ for (const v of message.validators) {
1749
+ exports.ValidatorUpdate.encode(v, writer.uint32(18).fork()).ldelim();
1750
+ }
1751
+ if (message.appHash.length !== 0) {
1752
+ writer.uint32(26).bytes(message.appHash);
1753
+ }
1754
+ return writer;
1755
+ },
1756
+ decode(input, length) {
1757
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1758
+ let end = length === undefined ? reader.len : reader.pos + length;
1759
+ const message = createBaseResponseInitChain();
1760
+ while (reader.pos < end) {
1761
+ const tag = reader.uint32();
1762
+ switch (tag >>> 3) {
1763
+ case 1:
1764
+ message.consensusParams = params_1.ConsensusParams.decode(reader, reader.uint32());
1765
+ break;
1766
+ case 2:
1767
+ message.validators.push(exports.ValidatorUpdate.decode(reader, reader.uint32()));
1768
+ break;
1769
+ case 3:
1770
+ message.appHash = reader.bytes();
1771
+ break;
1772
+ default:
1773
+ reader.skipType(tag & 7);
1774
+ break;
1775
+ }
1776
+ }
1777
+ return message;
1778
+ },
1779
+ fromPartial(object) {
1780
+ var _a, _b;
1781
+ const message = createBaseResponseInitChain();
1782
+ message.consensusParams = object.consensusParams !== undefined && object.consensusParams !== null ? params_1.ConsensusParams.fromPartial(object.consensusParams) : undefined;
1783
+ message.validators = ((_a = object.validators) === null || _a === void 0 ? void 0 : _a.map(e => exports.ValidatorUpdate.fromPartial(e))) || [];
1784
+ message.appHash = (_b = object.appHash) !== null && _b !== void 0 ? _b : new Uint8Array();
1785
+ return message;
1786
+ }
1787
+ };
1788
+ function createBaseResponseQuery() {
1789
+ return {
1790
+ code: 0,
1791
+ log: "",
1792
+ info: "",
1793
+ index: helpers_1.Long.ZERO,
1794
+ key: new Uint8Array(),
1795
+ value: new Uint8Array(),
1796
+ proofOps: undefined,
1797
+ height: helpers_1.Long.ZERO,
1798
+ codespace: ""
1799
+ };
1800
+ }
1801
+ exports.ResponseQuery = {
1802
+ encode(message, writer = _m0.Writer.create()) {
1803
+ if (message.code !== 0) {
1804
+ writer.uint32(8).uint32(message.code);
1805
+ }
1806
+ if (message.log !== "") {
1807
+ writer.uint32(26).string(message.log);
1808
+ }
1809
+ if (message.info !== "") {
1810
+ writer.uint32(34).string(message.info);
1811
+ }
1812
+ if (!message.index.isZero()) {
1813
+ writer.uint32(40).int64(message.index);
1814
+ }
1815
+ if (message.key.length !== 0) {
1816
+ writer.uint32(50).bytes(message.key);
1817
+ }
1818
+ if (message.value.length !== 0) {
1819
+ writer.uint32(58).bytes(message.value);
1820
+ }
1821
+ if (message.proofOps !== undefined) {
1822
+ proof_1.ProofOps.encode(message.proofOps, writer.uint32(66).fork()).ldelim();
1823
+ }
1824
+ if (!message.height.isZero()) {
1825
+ writer.uint32(72).int64(message.height);
1826
+ }
1827
+ if (message.codespace !== "") {
1828
+ writer.uint32(82).string(message.codespace);
1829
+ }
1830
+ return writer;
1831
+ },
1832
+ decode(input, length) {
1833
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1834
+ let end = length === undefined ? reader.len : reader.pos + length;
1835
+ const message = createBaseResponseQuery();
1836
+ while (reader.pos < end) {
1837
+ const tag = reader.uint32();
1838
+ switch (tag >>> 3) {
1839
+ case 1:
1840
+ message.code = reader.uint32();
1841
+ break;
1842
+ case 3:
1843
+ message.log = reader.string();
1844
+ break;
1845
+ case 4:
1846
+ message.info = reader.string();
1847
+ break;
1848
+ case 5:
1849
+ message.index = reader.int64();
1850
+ break;
1851
+ case 6:
1852
+ message.key = reader.bytes();
1853
+ break;
1854
+ case 7:
1855
+ message.value = reader.bytes();
1856
+ break;
1857
+ case 8:
1858
+ message.proofOps = proof_1.ProofOps.decode(reader, reader.uint32());
1859
+ break;
1860
+ case 9:
1861
+ message.height = reader.int64();
1862
+ break;
1863
+ case 10:
1864
+ message.codespace = reader.string();
1865
+ break;
1866
+ default:
1867
+ reader.skipType(tag & 7);
1868
+ break;
1869
+ }
1870
+ }
1871
+ return message;
1872
+ },
1873
+ fromPartial(object) {
1874
+ var _a, _b, _c, _d, _e, _f;
1875
+ const message = createBaseResponseQuery();
1876
+ message.code = (_a = object.code) !== null && _a !== void 0 ? _a : 0;
1877
+ message.log = (_b = object.log) !== null && _b !== void 0 ? _b : "";
1878
+ message.info = (_c = object.info) !== null && _c !== void 0 ? _c : "";
1879
+ message.index = object.index !== undefined && object.index !== null ? helpers_1.Long.fromValue(object.index) : helpers_1.Long.ZERO;
1880
+ message.key = (_d = object.key) !== null && _d !== void 0 ? _d : new Uint8Array();
1881
+ message.value = (_e = object.value) !== null && _e !== void 0 ? _e : new Uint8Array();
1882
+ message.proofOps = object.proofOps !== undefined && object.proofOps !== null ? proof_1.ProofOps.fromPartial(object.proofOps) : undefined;
1883
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
1884
+ message.codespace = (_f = object.codespace) !== null && _f !== void 0 ? _f : "";
1885
+ return message;
1886
+ }
1887
+ };
1888
+ function createBaseResponseCheckTx() {
1889
+ return {
1890
+ code: 0,
1891
+ data: new Uint8Array(),
1892
+ log: "",
1893
+ info: "",
1894
+ gasWanted: helpers_1.Long.ZERO,
1895
+ gasUsed: helpers_1.Long.ZERO,
1896
+ events: [],
1897
+ codespace: ""
1898
+ };
1899
+ }
1900
+ exports.ResponseCheckTx = {
1901
+ encode(message, writer = _m0.Writer.create()) {
1902
+ if (message.code !== 0) {
1903
+ writer.uint32(8).uint32(message.code);
1904
+ }
1905
+ if (message.data.length !== 0) {
1906
+ writer.uint32(18).bytes(message.data);
1907
+ }
1908
+ if (message.log !== "") {
1909
+ writer.uint32(26).string(message.log);
1910
+ }
1911
+ if (message.info !== "") {
1912
+ writer.uint32(34).string(message.info);
1913
+ }
1914
+ if (!message.gasWanted.isZero()) {
1915
+ writer.uint32(40).int64(message.gasWanted);
1916
+ }
1917
+ if (!message.gasUsed.isZero()) {
1918
+ writer.uint32(48).int64(message.gasUsed);
1919
+ }
1920
+ for (const v of message.events) {
1921
+ exports.Event.encode(v, writer.uint32(58).fork()).ldelim();
1922
+ }
1923
+ if (message.codespace !== "") {
1924
+ writer.uint32(66).string(message.codespace);
1925
+ }
1926
+ return writer;
1927
+ },
1928
+ decode(input, length) {
1929
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1930
+ let end = length === undefined ? reader.len : reader.pos + length;
1931
+ const message = createBaseResponseCheckTx();
1932
+ while (reader.pos < end) {
1933
+ const tag = reader.uint32();
1934
+ switch (tag >>> 3) {
1935
+ case 1:
1936
+ message.code = reader.uint32();
1937
+ break;
1938
+ case 2:
1939
+ message.data = reader.bytes();
1940
+ break;
1941
+ case 3:
1942
+ message.log = reader.string();
1943
+ break;
1944
+ case 4:
1945
+ message.info = reader.string();
1946
+ break;
1947
+ case 5:
1948
+ message.gasWanted = reader.int64();
1949
+ break;
1950
+ case 6:
1951
+ message.gasUsed = reader.int64();
1952
+ break;
1953
+ case 7:
1954
+ message.events.push(exports.Event.decode(reader, reader.uint32()));
1955
+ break;
1956
+ case 8:
1957
+ message.codespace = reader.string();
1958
+ break;
1959
+ default:
1960
+ reader.skipType(tag & 7);
1961
+ break;
1962
+ }
1963
+ }
1964
+ return message;
1965
+ },
1966
+ fromPartial(object) {
1967
+ var _a, _b, _c, _d, _e, _f;
1968
+ const message = createBaseResponseCheckTx();
1969
+ message.code = (_a = object.code) !== null && _a !== void 0 ? _a : 0;
1970
+ message.data = (_b = object.data) !== null && _b !== void 0 ? _b : new Uint8Array();
1971
+ message.log = (_c = object.log) !== null && _c !== void 0 ? _c : "";
1972
+ message.info = (_d = object.info) !== null && _d !== void 0 ? _d : "";
1973
+ message.gasWanted = object.gasWanted !== undefined && object.gasWanted !== null ? helpers_1.Long.fromValue(object.gasWanted) : helpers_1.Long.ZERO;
1974
+ message.gasUsed = object.gasUsed !== undefined && object.gasUsed !== null ? helpers_1.Long.fromValue(object.gasUsed) : helpers_1.Long.ZERO;
1975
+ message.events = ((_e = object.events) === null || _e === void 0 ? void 0 : _e.map(e => exports.Event.fromPartial(e))) || [];
1976
+ message.codespace = (_f = object.codespace) !== null && _f !== void 0 ? _f : "";
1977
+ return message;
1978
+ }
1979
+ };
1980
+ function createBaseResponseCommit() {
1981
+ return {
1982
+ retainHeight: helpers_1.Long.ZERO
1983
+ };
1984
+ }
1985
+ exports.ResponseCommit = {
1986
+ encode(message, writer = _m0.Writer.create()) {
1987
+ if (!message.retainHeight.isZero()) {
1988
+ writer.uint32(24).int64(message.retainHeight);
1989
+ }
1990
+ return writer;
1991
+ },
1992
+ decode(input, length) {
1993
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
1994
+ let end = length === undefined ? reader.len : reader.pos + length;
1995
+ const message = createBaseResponseCommit();
1996
+ while (reader.pos < end) {
1997
+ const tag = reader.uint32();
1998
+ switch (tag >>> 3) {
1999
+ case 3:
2000
+ message.retainHeight = reader.int64();
2001
+ break;
2002
+ default:
2003
+ reader.skipType(tag & 7);
2004
+ break;
2005
+ }
2006
+ }
2007
+ return message;
2008
+ },
2009
+ fromPartial(object) {
2010
+ const message = createBaseResponseCommit();
2011
+ message.retainHeight = object.retainHeight !== undefined && object.retainHeight !== null ? helpers_1.Long.fromValue(object.retainHeight) : helpers_1.Long.ZERO;
2012
+ return message;
2013
+ }
2014
+ };
2015
+ function createBaseResponseListSnapshots() {
2016
+ return {
2017
+ snapshots: []
2018
+ };
2019
+ }
2020
+ exports.ResponseListSnapshots = {
2021
+ encode(message, writer = _m0.Writer.create()) {
2022
+ for (const v of message.snapshots) {
2023
+ exports.Snapshot.encode(v, writer.uint32(10).fork()).ldelim();
2024
+ }
2025
+ return writer;
2026
+ },
2027
+ decode(input, length) {
2028
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2029
+ let end = length === undefined ? reader.len : reader.pos + length;
2030
+ const message = createBaseResponseListSnapshots();
2031
+ while (reader.pos < end) {
2032
+ const tag = reader.uint32();
2033
+ switch (tag >>> 3) {
2034
+ case 1:
2035
+ message.snapshots.push(exports.Snapshot.decode(reader, reader.uint32()));
2036
+ break;
2037
+ default:
2038
+ reader.skipType(tag & 7);
2039
+ break;
2040
+ }
2041
+ }
2042
+ return message;
2043
+ },
2044
+ fromPartial(object) {
2045
+ var _a;
2046
+ const message = createBaseResponseListSnapshots();
2047
+ message.snapshots = ((_a = object.snapshots) === null || _a === void 0 ? void 0 : _a.map(e => exports.Snapshot.fromPartial(e))) || [];
2048
+ return message;
2049
+ }
2050
+ };
2051
+ function createBaseResponseOfferSnapshot() {
2052
+ return {
2053
+ result: 0
2054
+ };
2055
+ }
2056
+ exports.ResponseOfferSnapshot = {
2057
+ encode(message, writer = _m0.Writer.create()) {
2058
+ if (message.result !== 0) {
2059
+ writer.uint32(8).int32(message.result);
2060
+ }
2061
+ return writer;
2062
+ },
2063
+ decode(input, length) {
2064
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2065
+ let end = length === undefined ? reader.len : reader.pos + length;
2066
+ const message = createBaseResponseOfferSnapshot();
2067
+ while (reader.pos < end) {
2068
+ const tag = reader.uint32();
2069
+ switch (tag >>> 3) {
2070
+ case 1:
2071
+ message.result = reader.int32();
2072
+ break;
2073
+ default:
2074
+ reader.skipType(tag & 7);
2075
+ break;
2076
+ }
2077
+ }
2078
+ return message;
2079
+ },
2080
+ fromPartial(object) {
2081
+ var _a;
2082
+ const message = createBaseResponseOfferSnapshot();
2083
+ message.result = (_a = object.result) !== null && _a !== void 0 ? _a : 0;
2084
+ return message;
2085
+ }
2086
+ };
2087
+ function createBaseResponseLoadSnapshotChunk() {
2088
+ return {
2089
+ chunk: new Uint8Array()
2090
+ };
2091
+ }
2092
+ exports.ResponseLoadSnapshotChunk = {
2093
+ encode(message, writer = _m0.Writer.create()) {
2094
+ if (message.chunk.length !== 0) {
2095
+ writer.uint32(10).bytes(message.chunk);
2096
+ }
2097
+ return writer;
2098
+ },
2099
+ decode(input, length) {
2100
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2101
+ let end = length === undefined ? reader.len : reader.pos + length;
2102
+ const message = createBaseResponseLoadSnapshotChunk();
2103
+ while (reader.pos < end) {
2104
+ const tag = reader.uint32();
2105
+ switch (tag >>> 3) {
2106
+ case 1:
2107
+ message.chunk = reader.bytes();
2108
+ break;
2109
+ default:
2110
+ reader.skipType(tag & 7);
2111
+ break;
2112
+ }
2113
+ }
2114
+ return message;
2115
+ },
2116
+ fromPartial(object) {
2117
+ var _a;
2118
+ const message = createBaseResponseLoadSnapshotChunk();
2119
+ message.chunk = (_a = object.chunk) !== null && _a !== void 0 ? _a : new Uint8Array();
2120
+ return message;
2121
+ }
2122
+ };
2123
+ function createBaseResponseApplySnapshotChunk() {
2124
+ return {
2125
+ result: 0,
2126
+ refetchChunks: [],
2127
+ rejectSenders: []
2128
+ };
2129
+ }
2130
+ exports.ResponseApplySnapshotChunk = {
2131
+ encode(message, writer = _m0.Writer.create()) {
2132
+ if (message.result !== 0) {
2133
+ writer.uint32(8).int32(message.result);
2134
+ }
2135
+ writer.uint32(18).fork();
2136
+ for (const v of message.refetchChunks) {
2137
+ writer.uint32(v);
2138
+ }
2139
+ writer.ldelim();
2140
+ for (const v of message.rejectSenders) {
2141
+ writer.uint32(26).string(v);
2142
+ }
2143
+ return writer;
2144
+ },
2145
+ decode(input, length) {
2146
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2147
+ let end = length === undefined ? reader.len : reader.pos + length;
2148
+ const message = createBaseResponseApplySnapshotChunk();
2149
+ while (reader.pos < end) {
2150
+ const tag = reader.uint32();
2151
+ switch (tag >>> 3) {
2152
+ case 1:
2153
+ message.result = reader.int32();
2154
+ break;
2155
+ case 2:
2156
+ if ((tag & 7) === 2) {
2157
+ const end2 = reader.uint32() + reader.pos;
2158
+ while (reader.pos < end2) {
2159
+ message.refetchChunks.push(reader.uint32());
2160
+ }
2161
+ }
2162
+ else {
2163
+ message.refetchChunks.push(reader.uint32());
2164
+ }
2165
+ break;
2166
+ case 3:
2167
+ message.rejectSenders.push(reader.string());
2168
+ break;
2169
+ default:
2170
+ reader.skipType(tag & 7);
2171
+ break;
2172
+ }
2173
+ }
2174
+ return message;
2175
+ },
2176
+ fromPartial(object) {
2177
+ var _a, _b, _c;
2178
+ const message = createBaseResponseApplySnapshotChunk();
2179
+ message.result = (_a = object.result) !== null && _a !== void 0 ? _a : 0;
2180
+ message.refetchChunks = ((_b = object.refetchChunks) === null || _b === void 0 ? void 0 : _b.map(e => e)) || [];
2181
+ message.rejectSenders = ((_c = object.rejectSenders) === null || _c === void 0 ? void 0 : _c.map(e => e)) || [];
2182
+ return message;
2183
+ }
2184
+ };
2185
+ function createBaseResponsePrepareProposal() {
2186
+ return {
2187
+ txs: []
2188
+ };
2189
+ }
2190
+ exports.ResponsePrepareProposal = {
2191
+ encode(message, writer = _m0.Writer.create()) {
2192
+ for (const v of message.txs) {
2193
+ writer.uint32(10).bytes(v);
2194
+ }
2195
+ return writer;
2196
+ },
2197
+ decode(input, length) {
2198
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2199
+ let end = length === undefined ? reader.len : reader.pos + length;
2200
+ const message = createBaseResponsePrepareProposal();
2201
+ while (reader.pos < end) {
2202
+ const tag = reader.uint32();
2203
+ switch (tag >>> 3) {
2204
+ case 1:
2205
+ message.txs.push(reader.bytes());
2206
+ break;
2207
+ default:
2208
+ reader.skipType(tag & 7);
2209
+ break;
2210
+ }
2211
+ }
2212
+ return message;
2213
+ },
2214
+ fromPartial(object) {
2215
+ var _a;
2216
+ const message = createBaseResponsePrepareProposal();
2217
+ message.txs = ((_a = object.txs) === null || _a === void 0 ? void 0 : _a.map(e => e)) || [];
2218
+ return message;
2219
+ }
2220
+ };
2221
+ function createBaseResponseProcessProposal() {
2222
+ return {
2223
+ status: 0
2224
+ };
2225
+ }
2226
+ exports.ResponseProcessProposal = {
2227
+ encode(message, writer = _m0.Writer.create()) {
2228
+ if (message.status !== 0) {
2229
+ writer.uint32(8).int32(message.status);
2230
+ }
2231
+ return writer;
2232
+ },
2233
+ decode(input, length) {
2234
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2235
+ let end = length === undefined ? reader.len : reader.pos + length;
2236
+ const message = createBaseResponseProcessProposal();
2237
+ while (reader.pos < end) {
2238
+ const tag = reader.uint32();
2239
+ switch (tag >>> 3) {
2240
+ case 1:
2241
+ message.status = reader.int32();
2242
+ break;
2243
+ default:
2244
+ reader.skipType(tag & 7);
2245
+ break;
2246
+ }
2247
+ }
2248
+ return message;
2249
+ },
2250
+ fromPartial(object) {
2251
+ var _a;
2252
+ const message = createBaseResponseProcessProposal();
2253
+ message.status = (_a = object.status) !== null && _a !== void 0 ? _a : 0;
2254
+ return message;
2255
+ }
2256
+ };
2257
+ function createBaseResponseExtendVote() {
2258
+ return {
2259
+ voteExtension: new Uint8Array()
2260
+ };
2261
+ }
2262
+ exports.ResponseExtendVote = {
2263
+ encode(message, writer = _m0.Writer.create()) {
2264
+ if (message.voteExtension.length !== 0) {
2265
+ writer.uint32(10).bytes(message.voteExtension);
2266
+ }
2267
+ return writer;
2268
+ },
2269
+ decode(input, length) {
2270
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2271
+ let end = length === undefined ? reader.len : reader.pos + length;
2272
+ const message = createBaseResponseExtendVote();
2273
+ while (reader.pos < end) {
2274
+ const tag = reader.uint32();
2275
+ switch (tag >>> 3) {
2276
+ case 1:
2277
+ message.voteExtension = reader.bytes();
2278
+ break;
2279
+ default:
2280
+ reader.skipType(tag & 7);
2281
+ break;
2282
+ }
2283
+ }
2284
+ return message;
2285
+ },
2286
+ fromPartial(object) {
2287
+ var _a;
2288
+ const message = createBaseResponseExtendVote();
2289
+ message.voteExtension = (_a = object.voteExtension) !== null && _a !== void 0 ? _a : new Uint8Array();
2290
+ return message;
2291
+ }
2292
+ };
2293
+ function createBaseResponseVerifyVoteExtension() {
2294
+ return {
2295
+ status: 0
2296
+ };
2297
+ }
2298
+ exports.ResponseVerifyVoteExtension = {
2299
+ encode(message, writer = _m0.Writer.create()) {
2300
+ if (message.status !== 0) {
2301
+ writer.uint32(8).int32(message.status);
2302
+ }
2303
+ return writer;
2304
+ },
2305
+ decode(input, length) {
2306
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2307
+ let end = length === undefined ? reader.len : reader.pos + length;
2308
+ const message = createBaseResponseVerifyVoteExtension();
2309
+ while (reader.pos < end) {
2310
+ const tag = reader.uint32();
2311
+ switch (tag >>> 3) {
2312
+ case 1:
2313
+ message.status = reader.int32();
2314
+ break;
2315
+ default:
2316
+ reader.skipType(tag & 7);
2317
+ break;
2318
+ }
2319
+ }
2320
+ return message;
2321
+ },
2322
+ fromPartial(object) {
2323
+ var _a;
2324
+ const message = createBaseResponseVerifyVoteExtension();
2325
+ message.status = (_a = object.status) !== null && _a !== void 0 ? _a : 0;
2326
+ return message;
2327
+ }
2328
+ };
2329
+ function createBaseResponseFinalizeBlock() {
2330
+ return {
2331
+ events: [],
2332
+ txResults: [],
2333
+ validatorUpdates: [],
2334
+ consensusParamUpdates: undefined,
2335
+ appHash: new Uint8Array()
2336
+ };
2337
+ }
2338
+ exports.ResponseFinalizeBlock = {
2339
+ encode(message, writer = _m0.Writer.create()) {
2340
+ for (const v of message.events) {
2341
+ exports.Event.encode(v, writer.uint32(10).fork()).ldelim();
2342
+ }
2343
+ for (const v of message.txResults) {
2344
+ exports.ExecTxResult.encode(v, writer.uint32(18).fork()).ldelim();
2345
+ }
2346
+ for (const v of message.validatorUpdates) {
2347
+ exports.ValidatorUpdate.encode(v, writer.uint32(26).fork()).ldelim();
2348
+ }
2349
+ if (message.consensusParamUpdates !== undefined) {
2350
+ params_1.ConsensusParams.encode(message.consensusParamUpdates, writer.uint32(34).fork()).ldelim();
2351
+ }
2352
+ if (message.appHash.length !== 0) {
2353
+ writer.uint32(42).bytes(message.appHash);
2354
+ }
2355
+ return writer;
2356
+ },
2357
+ decode(input, length) {
2358
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2359
+ let end = length === undefined ? reader.len : reader.pos + length;
2360
+ const message = createBaseResponseFinalizeBlock();
2361
+ while (reader.pos < end) {
2362
+ const tag = reader.uint32();
2363
+ switch (tag >>> 3) {
2364
+ case 1:
2365
+ message.events.push(exports.Event.decode(reader, reader.uint32()));
2366
+ break;
2367
+ case 2:
2368
+ message.txResults.push(exports.ExecTxResult.decode(reader, reader.uint32()));
2369
+ break;
2370
+ case 3:
2371
+ message.validatorUpdates.push(exports.ValidatorUpdate.decode(reader, reader.uint32()));
2372
+ break;
2373
+ case 4:
2374
+ message.consensusParamUpdates = params_1.ConsensusParams.decode(reader, reader.uint32());
2375
+ break;
2376
+ case 5:
2377
+ message.appHash = reader.bytes();
2378
+ break;
2379
+ default:
2380
+ reader.skipType(tag & 7);
2381
+ break;
2382
+ }
2383
+ }
2384
+ return message;
2385
+ },
2386
+ fromPartial(object) {
2387
+ var _a, _b, _c, _d;
2388
+ const message = createBaseResponseFinalizeBlock();
2389
+ message.events = ((_a = object.events) === null || _a === void 0 ? void 0 : _a.map(e => exports.Event.fromPartial(e))) || [];
2390
+ message.txResults = ((_b = object.txResults) === null || _b === void 0 ? void 0 : _b.map(e => exports.ExecTxResult.fromPartial(e))) || [];
2391
+ message.validatorUpdates = ((_c = object.validatorUpdates) === null || _c === void 0 ? void 0 : _c.map(e => exports.ValidatorUpdate.fromPartial(e))) || [];
2392
+ message.consensusParamUpdates = object.consensusParamUpdates !== undefined && object.consensusParamUpdates !== null ? params_1.ConsensusParams.fromPartial(object.consensusParamUpdates) : undefined;
2393
+ message.appHash = (_d = object.appHash) !== null && _d !== void 0 ? _d : new Uint8Array();
2394
+ return message;
2395
+ }
2396
+ };
2397
+ function createBaseCommitInfo() {
2398
+ return {
2399
+ round: 0,
2400
+ votes: []
2401
+ };
2402
+ }
2403
+ exports.CommitInfo = {
2404
+ encode(message, writer = _m0.Writer.create()) {
2405
+ if (message.round !== 0) {
2406
+ writer.uint32(8).int32(message.round);
2407
+ }
2408
+ for (const v of message.votes) {
2409
+ exports.VoteInfo.encode(v, writer.uint32(18).fork()).ldelim();
2410
+ }
2411
+ return writer;
2412
+ },
2413
+ decode(input, length) {
2414
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2415
+ let end = length === undefined ? reader.len : reader.pos + length;
2416
+ const message = createBaseCommitInfo();
2417
+ while (reader.pos < end) {
2418
+ const tag = reader.uint32();
2419
+ switch (tag >>> 3) {
2420
+ case 1:
2421
+ message.round = reader.int32();
2422
+ break;
2423
+ case 2:
2424
+ message.votes.push(exports.VoteInfo.decode(reader, reader.uint32()));
2425
+ break;
2426
+ default:
2427
+ reader.skipType(tag & 7);
2428
+ break;
2429
+ }
2430
+ }
2431
+ return message;
2432
+ },
2433
+ fromPartial(object) {
2434
+ var _a, _b;
2435
+ const message = createBaseCommitInfo();
2436
+ message.round = (_a = object.round) !== null && _a !== void 0 ? _a : 0;
2437
+ message.votes = ((_b = object.votes) === null || _b === void 0 ? void 0 : _b.map(e => exports.VoteInfo.fromPartial(e))) || [];
2438
+ return message;
2439
+ }
2440
+ };
2441
+ function createBaseExtendedCommitInfo() {
2442
+ return {
2443
+ round: 0,
2444
+ votes: []
2445
+ };
2446
+ }
2447
+ exports.ExtendedCommitInfo = {
2448
+ encode(message, writer = _m0.Writer.create()) {
2449
+ if (message.round !== 0) {
2450
+ writer.uint32(8).int32(message.round);
2451
+ }
2452
+ for (const v of message.votes) {
2453
+ exports.ExtendedVoteInfo.encode(v, writer.uint32(18).fork()).ldelim();
2454
+ }
2455
+ return writer;
2456
+ },
2457
+ decode(input, length) {
2458
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2459
+ let end = length === undefined ? reader.len : reader.pos + length;
2460
+ const message = createBaseExtendedCommitInfo();
2461
+ while (reader.pos < end) {
2462
+ const tag = reader.uint32();
2463
+ switch (tag >>> 3) {
2464
+ case 1:
2465
+ message.round = reader.int32();
2466
+ break;
2467
+ case 2:
2468
+ message.votes.push(exports.ExtendedVoteInfo.decode(reader, reader.uint32()));
2469
+ break;
2470
+ default:
2471
+ reader.skipType(tag & 7);
2472
+ break;
2473
+ }
2474
+ }
2475
+ return message;
2476
+ },
2477
+ fromPartial(object) {
2478
+ var _a, _b;
2479
+ const message = createBaseExtendedCommitInfo();
2480
+ message.round = (_a = object.round) !== null && _a !== void 0 ? _a : 0;
2481
+ message.votes = ((_b = object.votes) === null || _b === void 0 ? void 0 : _b.map(e => exports.ExtendedVoteInfo.fromPartial(e))) || [];
2482
+ return message;
2483
+ }
2484
+ };
2485
+ function createBaseEvent() {
2486
+ return {
2487
+ type: "",
2488
+ attributes: []
2489
+ };
2490
+ }
2491
+ exports.Event = {
2492
+ encode(message, writer = _m0.Writer.create()) {
2493
+ if (message.type !== "") {
2494
+ writer.uint32(10).string(message.type);
2495
+ }
2496
+ for (const v of message.attributes) {
2497
+ exports.EventAttribute.encode(v, writer.uint32(18).fork()).ldelim();
2498
+ }
2499
+ return writer;
2500
+ },
2501
+ decode(input, length) {
2502
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2503
+ let end = length === undefined ? reader.len : reader.pos + length;
2504
+ const message = createBaseEvent();
2505
+ while (reader.pos < end) {
2506
+ const tag = reader.uint32();
2507
+ switch (tag >>> 3) {
2508
+ case 1:
2509
+ message.type = reader.string();
2510
+ break;
2511
+ case 2:
2512
+ message.attributes.push(exports.EventAttribute.decode(reader, reader.uint32()));
2513
+ break;
2514
+ default:
2515
+ reader.skipType(tag & 7);
2516
+ break;
2517
+ }
2518
+ }
2519
+ return message;
2520
+ },
2521
+ fromPartial(object) {
2522
+ var _a, _b;
2523
+ const message = createBaseEvent();
2524
+ message.type = (_a = object.type) !== null && _a !== void 0 ? _a : "";
2525
+ message.attributes = ((_b = object.attributes) === null || _b === void 0 ? void 0 : _b.map(e => exports.EventAttribute.fromPartial(e))) || [];
2526
+ return message;
2527
+ }
2528
+ };
2529
+ function createBaseEventAttribute() {
2530
+ return {
2531
+ key: "",
2532
+ value: "",
2533
+ index: false
2534
+ };
2535
+ }
2536
+ exports.EventAttribute = {
2537
+ encode(message, writer = _m0.Writer.create()) {
2538
+ if (message.key !== "") {
2539
+ writer.uint32(10).string(message.key);
2540
+ }
2541
+ if (message.value !== "") {
2542
+ writer.uint32(18).string(message.value);
2543
+ }
2544
+ if (message.index === true) {
2545
+ writer.uint32(24).bool(message.index);
2546
+ }
2547
+ return writer;
2548
+ },
2549
+ decode(input, length) {
2550
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2551
+ let end = length === undefined ? reader.len : reader.pos + length;
2552
+ const message = createBaseEventAttribute();
2553
+ while (reader.pos < end) {
2554
+ const tag = reader.uint32();
2555
+ switch (tag >>> 3) {
2556
+ case 1:
2557
+ message.key = reader.string();
2558
+ break;
2559
+ case 2:
2560
+ message.value = reader.string();
2561
+ break;
2562
+ case 3:
2563
+ message.index = reader.bool();
2564
+ break;
2565
+ default:
2566
+ reader.skipType(tag & 7);
2567
+ break;
2568
+ }
2569
+ }
2570
+ return message;
2571
+ },
2572
+ fromPartial(object) {
2573
+ var _a, _b, _c;
2574
+ const message = createBaseEventAttribute();
2575
+ message.key = (_a = object.key) !== null && _a !== void 0 ? _a : "";
2576
+ message.value = (_b = object.value) !== null && _b !== void 0 ? _b : "";
2577
+ message.index = (_c = object.index) !== null && _c !== void 0 ? _c : false;
2578
+ return message;
2579
+ }
2580
+ };
2581
+ function createBaseExecTxResult() {
2582
+ return {
2583
+ code: 0,
2584
+ data: new Uint8Array(),
2585
+ log: "",
2586
+ info: "",
2587
+ gasWanted: helpers_1.Long.ZERO,
2588
+ gasUsed: helpers_1.Long.ZERO,
2589
+ events: [],
2590
+ codespace: ""
2591
+ };
2592
+ }
2593
+ exports.ExecTxResult = {
2594
+ encode(message, writer = _m0.Writer.create()) {
2595
+ if (message.code !== 0) {
2596
+ writer.uint32(8).uint32(message.code);
2597
+ }
2598
+ if (message.data.length !== 0) {
2599
+ writer.uint32(18).bytes(message.data);
2600
+ }
2601
+ if (message.log !== "") {
2602
+ writer.uint32(26).string(message.log);
2603
+ }
2604
+ if (message.info !== "") {
2605
+ writer.uint32(34).string(message.info);
2606
+ }
2607
+ if (!message.gasWanted.isZero()) {
2608
+ writer.uint32(40).int64(message.gasWanted);
2609
+ }
2610
+ if (!message.gasUsed.isZero()) {
2611
+ writer.uint32(48).int64(message.gasUsed);
2612
+ }
2613
+ for (const v of message.events) {
2614
+ exports.Event.encode(v, writer.uint32(58).fork()).ldelim();
2615
+ }
2616
+ if (message.codespace !== "") {
2617
+ writer.uint32(66).string(message.codespace);
2618
+ }
2619
+ return writer;
2620
+ },
2621
+ decode(input, length) {
2622
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2623
+ let end = length === undefined ? reader.len : reader.pos + length;
2624
+ const message = createBaseExecTxResult();
2625
+ while (reader.pos < end) {
2626
+ const tag = reader.uint32();
2627
+ switch (tag >>> 3) {
2628
+ case 1:
2629
+ message.code = reader.uint32();
2630
+ break;
2631
+ case 2:
2632
+ message.data = reader.bytes();
2633
+ break;
2634
+ case 3:
2635
+ message.log = reader.string();
2636
+ break;
2637
+ case 4:
2638
+ message.info = reader.string();
2639
+ break;
2640
+ case 5:
2641
+ message.gasWanted = reader.int64();
2642
+ break;
2643
+ case 6:
2644
+ message.gasUsed = reader.int64();
2645
+ break;
2646
+ case 7:
2647
+ message.events.push(exports.Event.decode(reader, reader.uint32()));
2648
+ break;
2649
+ case 8:
2650
+ message.codespace = reader.string();
2651
+ break;
2652
+ default:
2653
+ reader.skipType(tag & 7);
2654
+ break;
2655
+ }
2656
+ }
2657
+ return message;
2658
+ },
2659
+ fromPartial(object) {
2660
+ var _a, _b, _c, _d, _e, _f;
2661
+ const message = createBaseExecTxResult();
2662
+ message.code = (_a = object.code) !== null && _a !== void 0 ? _a : 0;
2663
+ message.data = (_b = object.data) !== null && _b !== void 0 ? _b : new Uint8Array();
2664
+ message.log = (_c = object.log) !== null && _c !== void 0 ? _c : "";
2665
+ message.info = (_d = object.info) !== null && _d !== void 0 ? _d : "";
2666
+ message.gasWanted = object.gasWanted !== undefined && object.gasWanted !== null ? helpers_1.Long.fromValue(object.gasWanted) : helpers_1.Long.ZERO;
2667
+ message.gasUsed = object.gasUsed !== undefined && object.gasUsed !== null ? helpers_1.Long.fromValue(object.gasUsed) : helpers_1.Long.ZERO;
2668
+ message.events = ((_e = object.events) === null || _e === void 0 ? void 0 : _e.map(e => exports.Event.fromPartial(e))) || [];
2669
+ message.codespace = (_f = object.codespace) !== null && _f !== void 0 ? _f : "";
2670
+ return message;
2671
+ }
2672
+ };
2673
+ function createBaseTxResult() {
2674
+ return {
2675
+ height: helpers_1.Long.ZERO,
2676
+ index: 0,
2677
+ tx: new Uint8Array(),
2678
+ result: undefined
2679
+ };
2680
+ }
2681
+ exports.TxResult = {
2682
+ encode(message, writer = _m0.Writer.create()) {
2683
+ if (!message.height.isZero()) {
2684
+ writer.uint32(8).int64(message.height);
2685
+ }
2686
+ if (message.index !== 0) {
2687
+ writer.uint32(16).uint32(message.index);
2688
+ }
2689
+ if (message.tx.length !== 0) {
2690
+ writer.uint32(26).bytes(message.tx);
2691
+ }
2692
+ if (message.result !== undefined) {
2693
+ exports.ExecTxResult.encode(message.result, writer.uint32(34).fork()).ldelim();
2694
+ }
2695
+ return writer;
2696
+ },
2697
+ decode(input, length) {
2698
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2699
+ let end = length === undefined ? reader.len : reader.pos + length;
2700
+ const message = createBaseTxResult();
2701
+ while (reader.pos < end) {
2702
+ const tag = reader.uint32();
2703
+ switch (tag >>> 3) {
2704
+ case 1:
2705
+ message.height = reader.int64();
2706
+ break;
2707
+ case 2:
2708
+ message.index = reader.uint32();
2709
+ break;
2710
+ case 3:
2711
+ message.tx = reader.bytes();
2712
+ break;
2713
+ case 4:
2714
+ message.result = exports.ExecTxResult.decode(reader, reader.uint32());
2715
+ break;
2716
+ default:
2717
+ reader.skipType(tag & 7);
2718
+ break;
2719
+ }
2720
+ }
2721
+ return message;
2722
+ },
2723
+ fromPartial(object) {
2724
+ var _a, _b;
2725
+ const message = createBaseTxResult();
2726
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
2727
+ message.index = (_a = object.index) !== null && _a !== void 0 ? _a : 0;
2728
+ message.tx = (_b = object.tx) !== null && _b !== void 0 ? _b : new Uint8Array();
2729
+ message.result = object.result !== undefined && object.result !== null ? exports.ExecTxResult.fromPartial(object.result) : undefined;
2730
+ return message;
2731
+ }
2732
+ };
2733
+ function createBaseValidator() {
2734
+ return {
2735
+ address: new Uint8Array(),
2736
+ power: helpers_1.Long.ZERO
2737
+ };
2738
+ }
2739
+ exports.Validator = {
2740
+ encode(message, writer = _m0.Writer.create()) {
2741
+ if (message.address.length !== 0) {
2742
+ writer.uint32(10).bytes(message.address);
2743
+ }
2744
+ if (!message.power.isZero()) {
2745
+ writer.uint32(24).int64(message.power);
2746
+ }
2747
+ return writer;
2748
+ },
2749
+ decode(input, length) {
2750
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2751
+ let end = length === undefined ? reader.len : reader.pos + length;
2752
+ const message = createBaseValidator();
2753
+ while (reader.pos < end) {
2754
+ const tag = reader.uint32();
2755
+ switch (tag >>> 3) {
2756
+ case 1:
2757
+ message.address = reader.bytes();
2758
+ break;
2759
+ case 3:
2760
+ message.power = reader.int64();
2761
+ break;
2762
+ default:
2763
+ reader.skipType(tag & 7);
2764
+ break;
2765
+ }
2766
+ }
2767
+ return message;
2768
+ },
2769
+ fromPartial(object) {
2770
+ var _a;
2771
+ const message = createBaseValidator();
2772
+ message.address = (_a = object.address) !== null && _a !== void 0 ? _a : new Uint8Array();
2773
+ message.power = object.power !== undefined && object.power !== null ? helpers_1.Long.fromValue(object.power) : helpers_1.Long.ZERO;
2774
+ return message;
2775
+ }
2776
+ };
2777
+ function createBaseValidatorUpdate() {
2778
+ return {
2779
+ pubKey: undefined,
2780
+ power: helpers_1.Long.ZERO
2781
+ };
2782
+ }
2783
+ exports.ValidatorUpdate = {
2784
+ encode(message, writer = _m0.Writer.create()) {
2785
+ if (message.pubKey !== undefined) {
2786
+ keys_1.PublicKey.encode(message.pubKey, writer.uint32(10).fork()).ldelim();
2787
+ }
2788
+ if (!message.power.isZero()) {
2789
+ writer.uint32(16).int64(message.power);
2790
+ }
2791
+ return writer;
2792
+ },
2793
+ decode(input, length) {
2794
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2795
+ let end = length === undefined ? reader.len : reader.pos + length;
2796
+ const message = createBaseValidatorUpdate();
2797
+ while (reader.pos < end) {
2798
+ const tag = reader.uint32();
2799
+ switch (tag >>> 3) {
2800
+ case 1:
2801
+ message.pubKey = keys_1.PublicKey.decode(reader, reader.uint32());
2802
+ break;
2803
+ case 2:
2804
+ message.power = reader.int64();
2805
+ break;
2806
+ default:
2807
+ reader.skipType(tag & 7);
2808
+ break;
2809
+ }
2810
+ }
2811
+ return message;
2812
+ },
2813
+ fromPartial(object) {
2814
+ const message = createBaseValidatorUpdate();
2815
+ message.pubKey = object.pubKey !== undefined && object.pubKey !== null ? keys_1.PublicKey.fromPartial(object.pubKey) : undefined;
2816
+ message.power = object.power !== undefined && object.power !== null ? helpers_1.Long.fromValue(object.power) : helpers_1.Long.ZERO;
2817
+ return message;
2818
+ }
2819
+ };
2820
+ function createBaseVoteInfo() {
2821
+ return {
2822
+ validator: undefined,
2823
+ blockIdFlag: 0
2824
+ };
2825
+ }
2826
+ exports.VoteInfo = {
2827
+ encode(message, writer = _m0.Writer.create()) {
2828
+ if (message.validator !== undefined) {
2829
+ exports.Validator.encode(message.validator, writer.uint32(10).fork()).ldelim();
2830
+ }
2831
+ if (message.blockIdFlag !== 0) {
2832
+ writer.uint32(24).int32(message.blockIdFlag);
2833
+ }
2834
+ return writer;
2835
+ },
2836
+ decode(input, length) {
2837
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2838
+ let end = length === undefined ? reader.len : reader.pos + length;
2839
+ const message = createBaseVoteInfo();
2840
+ while (reader.pos < end) {
2841
+ const tag = reader.uint32();
2842
+ switch (tag >>> 3) {
2843
+ case 1:
2844
+ message.validator = exports.Validator.decode(reader, reader.uint32());
2845
+ break;
2846
+ case 3:
2847
+ message.blockIdFlag = reader.int32();
2848
+ break;
2849
+ default:
2850
+ reader.skipType(tag & 7);
2851
+ break;
2852
+ }
2853
+ }
2854
+ return message;
2855
+ },
2856
+ fromPartial(object) {
2857
+ var _a;
2858
+ const message = createBaseVoteInfo();
2859
+ message.validator = object.validator !== undefined && object.validator !== null ? exports.Validator.fromPartial(object.validator) : undefined;
2860
+ message.blockIdFlag = (_a = object.blockIdFlag) !== null && _a !== void 0 ? _a : 0;
2861
+ return message;
2862
+ }
2863
+ };
2864
+ function createBaseExtendedVoteInfo() {
2865
+ return {
2866
+ validator: undefined,
2867
+ voteExtension: new Uint8Array(),
2868
+ extensionSignature: new Uint8Array(),
2869
+ blockIdFlag: 0
2870
+ };
2871
+ }
2872
+ exports.ExtendedVoteInfo = {
2873
+ encode(message, writer = _m0.Writer.create()) {
2874
+ if (message.validator !== undefined) {
2875
+ exports.Validator.encode(message.validator, writer.uint32(10).fork()).ldelim();
2876
+ }
2877
+ if (message.voteExtension.length !== 0) {
2878
+ writer.uint32(26).bytes(message.voteExtension);
2879
+ }
2880
+ if (message.extensionSignature.length !== 0) {
2881
+ writer.uint32(34).bytes(message.extensionSignature);
2882
+ }
2883
+ if (message.blockIdFlag !== 0) {
2884
+ writer.uint32(40).int32(message.blockIdFlag);
2885
+ }
2886
+ return writer;
2887
+ },
2888
+ decode(input, length) {
2889
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2890
+ let end = length === undefined ? reader.len : reader.pos + length;
2891
+ const message = createBaseExtendedVoteInfo();
2892
+ while (reader.pos < end) {
2893
+ const tag = reader.uint32();
2894
+ switch (tag >>> 3) {
2895
+ case 1:
2896
+ message.validator = exports.Validator.decode(reader, reader.uint32());
2897
+ break;
2898
+ case 3:
2899
+ message.voteExtension = reader.bytes();
2900
+ break;
2901
+ case 4:
2902
+ message.extensionSignature = reader.bytes();
2903
+ break;
2904
+ case 5:
2905
+ message.blockIdFlag = reader.int32();
2906
+ break;
2907
+ default:
2908
+ reader.skipType(tag & 7);
2909
+ break;
2910
+ }
2911
+ }
2912
+ return message;
2913
+ },
2914
+ fromPartial(object) {
2915
+ var _a, _b, _c;
2916
+ const message = createBaseExtendedVoteInfo();
2917
+ message.validator = object.validator !== undefined && object.validator !== null ? exports.Validator.fromPartial(object.validator) : undefined;
2918
+ message.voteExtension = (_a = object.voteExtension) !== null && _a !== void 0 ? _a : new Uint8Array();
2919
+ message.extensionSignature = (_b = object.extensionSignature) !== null && _b !== void 0 ? _b : new Uint8Array();
2920
+ message.blockIdFlag = (_c = object.blockIdFlag) !== null && _c !== void 0 ? _c : 0;
2921
+ return message;
2922
+ }
2923
+ };
2924
+ function createBaseMisbehavior() {
2925
+ return {
2926
+ type: 0,
2927
+ validator: undefined,
2928
+ height: helpers_1.Long.ZERO,
2929
+ time: undefined,
2930
+ totalVotingPower: helpers_1.Long.ZERO
2931
+ };
2932
+ }
2933
+ exports.Misbehavior = {
2934
+ encode(message, writer = _m0.Writer.create()) {
2935
+ if (message.type !== 0) {
2936
+ writer.uint32(8).int32(message.type);
2937
+ }
2938
+ if (message.validator !== undefined) {
2939
+ exports.Validator.encode(message.validator, writer.uint32(18).fork()).ldelim();
2940
+ }
2941
+ if (!message.height.isZero()) {
2942
+ writer.uint32(24).int64(message.height);
2943
+ }
2944
+ if (message.time !== undefined) {
2945
+ timestamp_1.Timestamp.encode((0, helpers_1.toTimestamp)(message.time), writer.uint32(34).fork()).ldelim();
2946
+ }
2947
+ if (!message.totalVotingPower.isZero()) {
2948
+ writer.uint32(40).int64(message.totalVotingPower);
2949
+ }
2950
+ return writer;
2951
+ },
2952
+ decode(input, length) {
2953
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
2954
+ let end = length === undefined ? reader.len : reader.pos + length;
2955
+ const message = createBaseMisbehavior();
2956
+ while (reader.pos < end) {
2957
+ const tag = reader.uint32();
2958
+ switch (tag >>> 3) {
2959
+ case 1:
2960
+ message.type = reader.int32();
2961
+ break;
2962
+ case 2:
2963
+ message.validator = exports.Validator.decode(reader, reader.uint32());
2964
+ break;
2965
+ case 3:
2966
+ message.height = reader.int64();
2967
+ break;
2968
+ case 4:
2969
+ message.time = (0, helpers_1.fromTimestamp)(timestamp_1.Timestamp.decode(reader, reader.uint32()));
2970
+ break;
2971
+ case 5:
2972
+ message.totalVotingPower = reader.int64();
2973
+ break;
2974
+ default:
2975
+ reader.skipType(tag & 7);
2976
+ break;
2977
+ }
2978
+ }
2979
+ return message;
2980
+ },
2981
+ fromPartial(object) {
2982
+ var _a, _b;
2983
+ const message = createBaseMisbehavior();
2984
+ message.type = (_a = object.type) !== null && _a !== void 0 ? _a : 0;
2985
+ message.validator = object.validator !== undefined && object.validator !== null ? exports.Validator.fromPartial(object.validator) : undefined;
2986
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.ZERO;
2987
+ message.time = (_b = object.time) !== null && _b !== void 0 ? _b : undefined;
2988
+ message.totalVotingPower = object.totalVotingPower !== undefined && object.totalVotingPower !== null ? helpers_1.Long.fromValue(object.totalVotingPower) : helpers_1.Long.ZERO;
2989
+ return message;
2990
+ }
2991
+ };
2992
+ function createBaseSnapshot() {
2993
+ return {
2994
+ height: helpers_1.Long.UZERO,
2995
+ format: 0,
2996
+ chunks: 0,
2997
+ hash: new Uint8Array(),
2998
+ metadata: new Uint8Array()
2999
+ };
3000
+ }
3001
+ exports.Snapshot = {
3002
+ encode(message, writer = _m0.Writer.create()) {
3003
+ if (!message.height.isZero()) {
3004
+ writer.uint32(8).uint64(message.height);
3005
+ }
3006
+ if (message.format !== 0) {
3007
+ writer.uint32(16).uint32(message.format);
3008
+ }
3009
+ if (message.chunks !== 0) {
3010
+ writer.uint32(24).uint32(message.chunks);
3011
+ }
3012
+ if (message.hash.length !== 0) {
3013
+ writer.uint32(34).bytes(message.hash);
3014
+ }
3015
+ if (message.metadata.length !== 0) {
3016
+ writer.uint32(42).bytes(message.metadata);
3017
+ }
3018
+ return writer;
3019
+ },
3020
+ decode(input, length) {
3021
+ const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input);
3022
+ let end = length === undefined ? reader.len : reader.pos + length;
3023
+ const message = createBaseSnapshot();
3024
+ while (reader.pos < end) {
3025
+ const tag = reader.uint32();
3026
+ switch (tag >>> 3) {
3027
+ case 1:
3028
+ message.height = reader.uint64();
3029
+ break;
3030
+ case 2:
3031
+ message.format = reader.uint32();
3032
+ break;
3033
+ case 3:
3034
+ message.chunks = reader.uint32();
3035
+ break;
3036
+ case 4:
3037
+ message.hash = reader.bytes();
3038
+ break;
3039
+ case 5:
3040
+ message.metadata = reader.bytes();
3041
+ break;
3042
+ default:
3043
+ reader.skipType(tag & 7);
3044
+ break;
3045
+ }
3046
+ }
3047
+ return message;
3048
+ },
3049
+ fromPartial(object) {
3050
+ var _a, _b, _c, _d;
3051
+ const message = createBaseSnapshot();
3052
+ message.height = object.height !== undefined && object.height !== null ? helpers_1.Long.fromValue(object.height) : helpers_1.Long.UZERO;
3053
+ message.format = (_a = object.format) !== null && _a !== void 0 ? _a : 0;
3054
+ message.chunks = (_b = object.chunks) !== null && _b !== void 0 ? _b : 0;
3055
+ message.hash = (_c = object.hash) !== null && _c !== void 0 ? _c : new Uint8Array();
3056
+ message.metadata = (_d = object.metadata) !== null && _d !== void 0 ? _d : new Uint8Array();
3057
+ return message;
3058
+ }
3059
+ };
3060
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29kZWdlbi90ZW5kZXJtaW50L2FiY2kvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0RBQTREO0FBQzVELDRDQUEwRTtBQUMxRSwyQ0FBNEQ7QUFDNUQseUNBQTZEO0FBRTdELHdEQUEwQztBQUMxQywyQ0FBOEU7QUFDOUUsSUFBWSxXQUlYO0FBSkQsV0FBWSxXQUFXO0lBQ3JCLDJDQUFPLENBQUE7SUFDUCxtREFBVyxDQUFBO0lBQ1gsOERBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBSXRCO0FBQ1ksUUFBQSxrQkFBa0IsR0FBRyxXQUFXLENBQUM7QUFDOUMsU0FBZ0IsbUJBQW1CLENBQUMsTUFBVztJQUM3QyxRQUFRLE1BQU0sRUFBRTtRQUNkLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxLQUFLO1lBQ1IsT0FBTyxXQUFXLENBQUMsR0FBRyxDQUFDO1FBRXpCLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxTQUFTO1lBQ1osT0FBTyxXQUFXLENBQUMsT0FBTyxDQUFDO1FBRTdCLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDUixLQUFLLGNBQWMsQ0FBQztRQUNwQjtZQUNFLE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FBQztLQUNuQztBQUNILENBQUM7QUFmRCxrREFlQztBQUNELFNBQWdCLGlCQUFpQixDQUFDLE1BQW1CO0lBQ25ELFFBQVEsTUFBTSxFQUFFO1FBQ2QsS0FBSyxXQUFXLENBQUMsR0FBRztZQUNsQixPQUFPLEtBQUssQ0FBQztRQUVmLEtBQUssV0FBVyxDQUFDLE9BQU87WUFDdEIsT0FBTyxTQUFTLENBQUM7UUFFbkIsS0FBSyxXQUFXLENBQUMsWUFBWSxDQUFDO1FBQzlCO1lBQ0UsT0FBTyxjQUFjLENBQUM7S0FDekI7QUFDSCxDQUFD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QUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFO1FBQ3JFLElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxDQUFDLEVBQUU7WUFDdEIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3ZDO1FBRUQsSUFBSSxPQUFPLENBQUMsR0FBRyxLQUFLLEVBQUUsRUFBRTtZQUN0QixNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdkM7UUFFRCxJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssRUFBRSxFQUFFO1lBQ3ZCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN4QztRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQzNCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QztRQUVELElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzVCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUN0QztRQUVELElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzlCLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUN4QztRQUVELElBQUksT0FBTyxDQUFDLFFBQVEsS0FBSyxTQUFTLEVBQUU7WUFDbEMsZ0JBQVEsQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLEVB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