@dydxprotocol/v4-client-js 1.0.30 → 1.0.31

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.

Potentially problematic release.


This version of @dydxprotocol/v4-client-js might be problematic. Click here for more details.

Files changed (840) hide show
  1. package/.env +0 -0
  2. package/.eslintignore +0 -0
  3. package/.eslintrc.js +0 -0
  4. package/.gitleaks.toml +0 -0
  5. package/.gitleaksignore +0 -0
  6. package/.nvmrc +0 -0
  7. package/.telescope.json +0 -0
  8. package/.vscode/launch.json +0 -0
  9. package/LICENSE +0 -0
  10. package/README.md +0 -0
  11. package/__native__/__ios__/v4-native-client.js +0 -0
  12. package/__tests__/helpers/baseClients.ts +0 -0
  13. package/__tests__/helpers/constants.ts +0 -0
  14. package/__tests__/lib/helpers.test.ts +0 -0
  15. package/__tests__/lib/util.test.ts +0 -0
  16. package/__tests__/lib/validation.test.ts +0 -0
  17. package/__tests__/modules/client/AccountEndpoints.test.ts +0 -0
  18. package/__tests__/modules/client/FaucetEndpoint.test.ts +0 -0
  19. package/__tests__/modules/client/MarketsEndpoints.test.ts +0 -0
  20. package/__tests__/modules/client/Transfers.test.ts +0 -0
  21. package/__tests__/modules/client/UtilityEndpoints.test.ts +0 -0
  22. package/__tests__/modules/client/ValidatorGetEndpoints.test.ts +0 -0
  23. package/__tests__/modules/client/ValidatorPostEndpoints.test.ts +0 -0
  24. package/__tests__/modules/client/constants.ts +0 -0
  25. package/__tests__/modules/onboarding.test.ts +0 -0
  26. package/build/src/clients/lib/registry.d.ts +1 -0
  27. package/build/src/clients/lib/registry.js +73 -2
  28. package/build/src/clients/modules/local-wallet.js +2 -1
  29. package/build/src/lib/constants.d.ts +1 -0
  30. package/build/src/lib/constants.js +3 -2
  31. package/build/src/lib/helpers.js +23 -2
  32. package/build/src/lib/utils.d.ts +1 -0
  33. package/build/src/lib/utils.js +53 -2
  34. package/examples/account_endpoints.ts +0 -0
  35. package/examples/composite_example.ts +0 -0
  36. package/examples/constants.ts +0 -0
  37. package/examples/faucet_endpoint.ts +0 -0
  38. package/examples/gov_add_new_market.json +0 -0
  39. package/examples/gov_add_new_market.ts +0 -0
  40. package/examples/human_readable_orders.json +0 -0
  41. package/examples/human_readable_short_term_orders.json +0 -0
  42. package/examples/json-encoding.ts +0 -0
  43. package/examples/long_term_order_cancel_example.ts +0 -0
  44. package/examples/markets_endpoints.ts +0 -0
  45. package/examples/native_examples.ts +0 -0
  46. package/examples/noble_example.ts +0 -0
  47. package/examples/optimal_node.ts +0 -0
  48. package/examples/raw_orders.json +0 -0
  49. package/examples/short_term_order_cancel_example.ts +0 -0
  50. package/examples/short_term_order_composite_example.ts +0 -0
  51. package/examples/test.ts +0 -0
  52. package/examples/transfer_example_deposit.ts +0 -0
  53. package/examples/transfer_example_send.ts +0 -0
  54. package/examples/transfer_example_subaccount_transfer.ts +0 -0
  55. package/examples/transfer_example_withdraw.ts +0 -0
  56. package/examples/transfer_example_withdraw_other.ts +0 -0
  57. package/examples/utility_endpoints.ts +0 -0
  58. package/examples/validator_get_example.ts +0 -0
  59. package/examples/validator_post_example.ts +0 -0
  60. package/examples/wallet_address.ts +0 -0
  61. package/examples/websocket_example.ts +0 -0
  62. package/jest.config.js +0 -0
  63. package/jest.globalSetup.js +0 -0
  64. package/jest.setup.js +0 -0
  65. package/package.json +2 -1
  66. package/src/clients/composite-client.ts +0 -0
  67. package/src/clients/constants.ts +0 -0
  68. package/src/clients/faucet-client.ts +0 -0
  69. package/src/clients/helpers/chain-helpers.ts +0 -0
  70. package/src/clients/helpers/request-helpers.ts +0 -0
  71. package/src/clients/indexer-client.ts +0 -0
  72. package/src/clients/lib/axios/axiosRequest.ts +0 -0
  73. package/src/clients/lib/axios/errors.ts +0 -0
  74. package/src/clients/lib/axios/index.ts +0 -0
  75. package/src/clients/lib/axios/types.ts +0 -0
  76. package/src/clients/lib/cctpProto.ts +0 -0
  77. package/src/clients/lib/errors.ts +0 -0
  78. package/src/clients/lib/registry.ts +78 -0
  79. package/src/clients/modules/account.ts +0 -0
  80. package/src/clients/modules/composer.ts +0 -0
  81. package/src/clients/modules/get.ts +0 -0
  82. package/src/clients/modules/local-wallet.ts +2 -1
  83. package/src/clients/modules/markets.ts +0 -0
  84. package/src/clients/modules/post.ts +0 -0
  85. package/src/clients/modules/proto-includes.ts +0 -0
  86. package/src/clients/modules/rest.ts +0 -0
  87. package/src/clients/modules/signer.ts +0 -0
  88. package/src/clients/modules/tendermintClient.ts +0 -0
  89. package/src/clients/modules/utility.ts +0 -0
  90. package/src/clients/native.ts +0 -0
  91. package/src/clients/noble-client.ts +0 -0
  92. package/src/clients/socket-client.ts +0 -0
  93. package/src/clients/subaccount.ts +0 -0
  94. package/src/clients/types.ts +0 -0
  95. package/src/clients/validator-client.ts +0 -0
  96. package/src/codegen/helpers.ts +0 -0
  97. package/src/codegen/index.ts +0 -0
  98. package/src/index.ts +0 -0
  99. package/src/lib/constants.ts +2 -0
  100. package/src/lib/errors.ts +0 -0
  101. package/src/lib/helpers.ts +17 -2
  102. package/src/lib/onboarding.ts +0 -0
  103. package/src/lib/utils.ts +28 -0
  104. package/src/lib/validation.ts +0 -0
  105. package/src/network_optimizer.ts +0 -0
  106. package/src/types.ts +0 -0
  107. package/tasks.json +0 -0
  108. package/tsconfig.eslint.json +0 -0
  109. package/tsconfig.json +2 -2
  110. package/webpack.config.js +0 -0
  111. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/amino/amino.d.ts +0 -1
  112. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/amino/amino.js +0 -3
  113. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/amino/bundle.d.ts +0 -1
  114. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/amino/bundle.js +0 -30
  115. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/runtime/v1alpha1/module.d.ts +0 -94
  116. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/runtime/v1alpha1/module.js +0 -172
  117. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/v1alpha1/config.d.ts +0 -95
  118. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/v1alpha1/config.js +0 -169
  119. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/v1alpha1/module.d.ts +0 -115
  120. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/v1alpha1/module.js +0 -160
  121. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/v1alpha1/query.d.ts +0 -28
  122. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/v1alpha1/query.js +0 -90
  123. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/v1alpha1/query.rpc.Query.d.ts +0 -16
  124. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/app/v1alpha1/query.rpc.Query.js +0 -52
  125. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/module/v1/module.d.ts +0 -42
  126. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/module/v1/module.js +0 -124
  127. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/auth.d.ts +0 -97
  128. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/auth.js +0 -253
  129. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/genesis.d.ts +0 -21
  130. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/genesis.js +0 -74
  131. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/query.d.ts +0 -398
  132. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/query.js +0 -732
  133. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/query.lcd.d.ts +0 -18
  134. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/query.lcd.js +0 -102
  135. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/query.rpc.Query.d.ts +0 -83
  136. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/query.rpc.Query.js +0 -135
  137. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/tx.d.ts +0 -53
  138. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/tx.js +0 -99
  139. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/tx.rpc.msg.d.ts +0 -17
  140. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/auth/v1beta1/tx.rpc.msg.js +0 -41
  141. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/module/v1/module.d.ts +0 -13
  142. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/module/v1/module.js +0 -54
  143. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/authz.d.ts +0 -88
  144. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/authz.js +0 -207
  145. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/event.d.ts +0 -42
  146. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/event.js +0 -132
  147. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/genesis.d.ts +0 -16
  148. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/genesis.js +0 -65
  149. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/query.d.ts +0 -108
  150. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/query.js +0 -310
  151. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/query.lcd.d.ts +0 -11
  152. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/query.lcd.js +0 -60
  153. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/query.rpc.Query.d.ts +0 -32
  154. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/query.rpc.Query.js +0 -70
  155. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/tx.d.ts +0 -113
  156. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/tx.js +0 -266
  157. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/tx.rpc.msg.d.ts +0 -30
  158. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/authz/v1beta1/tx.rpc.msg.js +0 -53
  159. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/module/v1/module.d.ts +0 -23
  160. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/module/v1/module.js +0 -72
  161. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/authz.d.ts +0 -34
  162. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/authz.js +0 -73
  163. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/bank.d.ts +0 -194
  164. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/bank.js +0 -385
  165. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/genesis.d.ts +0 -60
  166. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/genesis.js +0 -142
  167. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/query.d.ts +0 -536
  168. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/query.js +0 -1025
  169. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/query.lcd.d.ts +0 -20
  170. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/query.lcd.js +0 -187
  171. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/query.rpc.Query.d.ts +0 -110
  172. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/query.rpc.Query.js +0 -155
  173. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/tx.d.ts +0 -172
  174. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/tx.js +0 -326
  175. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/tx.rpc.msg.d.ts +0 -33
  176. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bank/v1beta1/tx.rpc.msg.js +0 -59
  177. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/abci/v1beta1/abci.d.ts +0 -324
  178. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/abci/v1beta1/abci.js +0 -690
  179. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/node/v1beta1/query.d.ts +0 -69
  180. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/node/v1beta1/query.js +0 -202
  181. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/node/v1beta1/query.lcd.d.ts +0 -10
  182. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/node/v1beta1/query.lcd.js +0 -22
  183. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/node/v1beta1/query.rpc.Service.d.ts +0 -20
  184. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/node/v1beta1/query.rpc.Service.js +0 -61
  185. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/query/v1beta1/pagination.d.ts +0 -105
  186. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/query/v1beta1/pagination.js +0 -141
  187. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/reflection/v1beta1/reflection.d.ts +0 -66
  188. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/reflection/v1beta1/reflection.js +0 -162
  189. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/reflection/v2alpha1/reflection.d.ts +0 -451
  190. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/reflection/v2alpha1/reflection.js +0 -1017
  191. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/tendermint/v1beta1/query.d.ts +0 -366
  192. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/tendermint/v1beta1/query.js +0 -963
  193. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/tendermint/v1beta1/query.lcd.d.ts +0 -15
  194. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/tendermint/v1beta1/query.lcd.js +0 -86
  195. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/tendermint/v1beta1/query.rpc.Service.d.ts +0 -46
  196. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/tendermint/v1beta1/query.rpc.Service.js +0 -108
  197. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/tendermint/v1beta1/types.d.ts +0 -83
  198. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/tendermint/v1beta1/types.js +0 -232
  199. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/v1beta1/coin.d.ts +0 -90
  200. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/base/v1beta1/coin.js +0 -188
  201. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bundle.d.ts +0 -12018
  202. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/bundle.js +0 -670
  203. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/module/v1/module.d.ts +0 -16
  204. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/module/v1/module.js +0 -64
  205. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/query.d.ts +0 -84
  206. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/query.js +0 -242
  207. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/query.lcd.d.ts +0 -11
  208. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/query.lcd.js +0 -37
  209. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/query.rpc.Query.d.ts +0 -24
  210. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/query.rpc.Query.js +0 -72
  211. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/tx.d.ts +0 -113
  212. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/tx.js +0 -277
  213. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/tx.rpc.msg.d.ts +0 -24
  214. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/tx.rpc.msg.js +0 -53
  215. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/types.d.ts +0 -88
  216. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/circuit/v1/types.js +0 -225
  217. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/module/v1/module.d.ts +0 -16
  218. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/module/v1/module.js +0 -64
  219. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/query.d.ts +0 -32
  220. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/query.js +0 -90
  221. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/query.lcd.d.ts +0 -9
  222. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/query.lcd.js +0 -16
  223. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/query.rpc.Query.d.ts +0 -16
  224. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/query.rpc.Query.js +0 -52
  225. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/tx.d.ts +0 -50
  226. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/tx.js +0 -123
  227. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/tx.rpc.msg.d.ts +0 -17
  228. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/consensus/v1/tx.rpc.msg.js +0 -41
  229. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crisis/module/v1/module.d.ts +0 -19
  230. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crisis/module/v1/module.js +0 -72
  231. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crisis/v1beta1/genesis.d.ts +0 -20
  232. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crisis/v1beta1/genesis.js +0 -64
  233. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crisis/v1beta1/tx.d.ts +0 -80
  234. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crisis/v1beta1/tx.js +0 -177
  235. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crisis/v1beta1/tx.rpc.msg.d.ts +0 -20
  236. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crisis/v1beta1/tx.rpc.msg.js +0 -47
  237. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/ed25519/keys.d.ts +0 -46
  238. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/ed25519/keys.js +0 -100
  239. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/hd/v1/hd.d.ts +0 -31
  240. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/hd/v1/hd.js +0 -96
  241. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/keyring/v1/record.d.ts +0 -87
  242. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/keyring/v1/record.js +0 -228
  243. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/multisig/keys.d.ts +0 -26
  244. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/multisig/keys.js +0 -73
  245. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/multisig/v1beta1/multisig.d.ts +0 -48
  246. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/multisig/v1beta1/multisig.js +0 -108
  247. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/secp256k1/keys.d.ts +0 -40
  248. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/secp256k1/keys.js +0 -100
  249. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/secp256r1/keys.d.ts +0 -33
  250. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/crypto/secp256r1/keys.js +0 -100
  251. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/module/v1/module.d.ts +0 -18
  252. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/module/v1/module.js +0 -72
  253. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/distribution.d.ts +0 -306
  254. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/distribution.js +0 -590
  255. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/genesis.d.ts +0 -197
  256. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/genesis.js +0 -479
  257. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/query.d.ts +0 -399
  258. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/query.js +0 -793
  259. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/query.lcd.d.ts +0 -18
  260. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/query.lcd.js +0 -84
  261. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/query.rpc.Query.d.ts +0 -55
  262. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/query.rpc.Query.js +0 -133
  263. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/tx.d.ts +0 -303
  264. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/tx.js +0 -548
  265. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/tx.rpc.msg.d.ts +0 -59
  266. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/distribution/v1beta1/tx.rpc.msg.js +0 -77
  267. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/module/v1/module.d.ts +0 -13
  268. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/module/v1/module.js +0 -54
  269. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/evidence.d.ts +0 -32
  270. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/evidence.js +0 -90
  271. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/genesis.d.ts +0 -17
  272. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/genesis.js +0 -65
  273. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/query.d.ts +0 -87
  274. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/query.js +0 -188
  275. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/query.lcd.d.ts +0 -10
  276. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/query.lcd.js +0 -37
  277. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/query.rpc.Query.d.ts +0 -20
  278. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/query.rpc.Query.js +0 -63
  279. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/tx.d.ts +0 -40
  280. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/tx.js +0 -109
  281. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/tx.rpc.msg.d.ts +0 -15
  282. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/evidence/v1beta1/tx.rpc.msg.js +0 -41
  283. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/module/v1/module.d.ts +0 -13
  284. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/module/v1/module.js +0 -54
  285. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/feegrant.d.ts +0 -111
  286. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/feegrant.js +0 -241
  287. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/genesis.d.ts +0 -16
  288. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/genesis.js +0 -65
  289. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/query.d.ts +0 -117
  290. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/query.js +0 -285
  291. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/query.lcd.d.ts +0 -11
  292. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/query.lcd.js +0 -43
  293. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/query.rpc.Query.d.ts +0 -28
  294. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/query.rpc.Query.js +0 -70
  295. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/tx.d.ts +0 -109
  296. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/tx.js +0 -239
  297. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/tx.rpc.msg.d.ts +0 -28
  298. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/feegrant/v1beta1/tx.rpc.msg.js +0 -53
  299. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/genutil/module/v1/module.d.ts +0 -13
  300. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/genutil/module/v1/module.js +0 -54
  301. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/genutil/v1beta1/genesis.d.ts +0 -16
  302. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/genutil/v1beta1/genesis.js +0 -64
  303. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/module/v1/module.d.ts +0 -23
  304. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/module/v1/module.js +0 -73
  305. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/genesis.d.ts +0 -68
  306. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/genesis.js +0 -130
  307. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/gov.d.ts +0 -404
  308. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/gov.js +0 -822
  309. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/query.d.ts +0 -320
  310. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/query.js +0 -764
  311. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/query.lcd.d.ts +0 -17
  312. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/query.lcd.js +0 -92
  313. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/query.rpc.Query.d.ts +0 -48
  314. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/query.rpc.Query.js +0 -124
  315. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/tx.d.ts +0 -308
  316. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/tx.js +0 -638
  317. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/tx.rpc.msg.d.ts +0 -42
  318. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1/tx.rpc.msg.js +0 -77
  319. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/genesis.d.ts +0 -36
  320. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/genesis.js +0 -114
  321. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/gov.d.ts +0 -295
  322. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/gov.js +0 -662
  323. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/query.d.ts +0 -273
  324. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/query.js +0 -694
  325. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/query.lcd.d.ts +0 -16
  326. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/query.lcd.js +0 -86
  327. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/query.rpc.Query.d.ts +0 -44
  328. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/query.rpc.Query.js +0 -115
  329. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/tx.d.ts +0 -155
  330. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/tx.js +0 -353
  331. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/tx.rpc.msg.d.ts +0 -25
  332. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/gov/v1beta1/tx.rpc.msg.js +0 -59
  333. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/module/v1/module.d.ts +0 -27
  334. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/module/v1/module.js +0 -73
  335. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/events.d.ts +0 -159
  336. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/events.js +0 -425
  337. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/genesis.d.ts +0 -48
  338. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/genesis.js +0 -122
  339. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/query.d.ts +0 -467
  340. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/query.js +0 -1171
  341. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/query.lcd.d.ts +0 -22
  342. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/query.lcd.js +0 -157
  343. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/query.rpc.Query.d.ts +0 -78
  344. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/query.rpc.Query.js +0 -171
  345. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/tx.d.ts +0 -521
  346. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/tx.js +0 -1280
  347. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/tx.rpc.msg.d.ts +0 -51
  348. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/tx.rpc.msg.js +0 -119
  349. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/types.d.ts +0 -467
  350. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/group/v1/types.js +0 -935
  351. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/lcd.d.ts +0 -66
  352. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/lcd.js +0 -138
  353. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/module/v1/module.d.ts +0 -18
  354. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/module/v1/module.js +0 -72
  355. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/genesis.d.ts +0 -20
  356. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/genesis.js +0 -72
  357. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/mint.d.ts +0 -49
  358. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/mint.js +0 -149
  359. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/query.d.ts +0 -96
  360. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/query.js +0 -214
  361. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/query.lcd.d.ts +0 -11
  362. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/query.lcd.js +0 -28
  363. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/query.rpc.Query.d.ts +0 -24
  364. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/query.rpc.Query.js +0 -70
  365. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/tx.d.ts +0 -53
  366. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/tx.js +0 -99
  367. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/tx.rpc.msg.d.ts +0 -17
  368. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/mint/v1beta1/tx.rpc.msg.js +0 -41
  369. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/msg/textual/v1/textual.d.ts +0 -1
  370. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/msg/textual/v1/textual.js +0 -3
  371. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/msg/v1/msg.d.ts +0 -1
  372. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/msg/v1/msg.js +0 -3
  373. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/module/v1/module.d.ts +0 -13
  374. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/module/v1/module.js +0 -54
  375. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/event.d.ts +0 -65
  376. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/event.js +0 -192
  377. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/genesis.d.ts +0 -37
  378. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/genesis.js +0 -117
  379. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/nft.d.ts +0 -61
  380. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/nft.js +0 -181
  381. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/query.d.ts +0 -222
  382. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/query.js +0 -586
  383. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/query.lcd.d.ts +0 -15
  384. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/query.lcd.js +0 -74
  385. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/query.rpc.Query.d.ts +0 -43
  386. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/query.rpc.Query.js +0 -108
  387. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/tx.d.ts +0 -36
  388. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/tx.js +0 -114
  389. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/tx.rpc.msg.d.ts +0 -12
  390. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/nft/v1beta1/tx.rpc.msg.js +0 -41
  391. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/module/v1alpha1/module.d.ts +0 -21
  392. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/module/v1alpha1/module.js +0 -54
  393. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/query/v1alpha1/query.d.ts +0 -181
  394. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/query/v1alpha1/query.js +0 -404
  395. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/query/v1alpha1/query.rpc.Query.d.ts +0 -20
  396. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/query/v1alpha1/query.rpc.Query.js +0 -61
  397. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/v1/orm.d.ts +0 -133
  398. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/v1/orm.js +0 -212
  399. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/v1alpha1/schema.d.ts +0 -78
  400. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/orm/v1alpha1/schema.js +0 -181
  401. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/module/v1/module.d.ts +0 -13
  402. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/module/v1/module.js +0 -54
  403. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/v1beta1/params.d.ts +0 -42
  404. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/v1beta1/params.js +0 -132
  405. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/v1beta1/query.d.ts +0 -103
  406. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/v1beta1/query.js +0 -214
  407. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/v1beta1/query.lcd.d.ts +0 -10
  408. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/v1beta1/query.lcd.js +0 -34
  409. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/v1beta1/query.rpc.Query.d.ts +0 -27
  410. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/params/v1beta1/query.rpc.Query.js +0 -61
  411. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/query/v1/query.d.ts +0 -1
  412. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/query/v1/query.js +0 -3
  413. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/reflection/v1/reflection.d.ts +0 -28
  414. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/reflection/v1/reflection.js +0 -91
  415. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/rpc.query.d.ts +0 -227
  416. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/rpc.query.js +0 -106
  417. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/rpc.tx.d.ts +0 -59
  418. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/rpc.tx.js +0 -84
  419. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/module/v1/module.d.ts +0 -16
  420. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/module/v1/module.js +0 -64
  421. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/genesis.d.ts +0 -87
  422. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/genesis.js +0 -214
  423. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/query.d.ts +0 -109
  424. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/query.js +0 -241
  425. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/query.lcd.d.ts +0 -11
  426. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/query.lcd.js +0 -37
  427. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/query.rpc.Query.d.ts +0 -24
  428. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/query.rpc.Query.js +0 -72
  429. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/slashing.d.ts +0 -70
  430. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/slashing.js +0 -175
  431. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/tx.d.ts +0 -77
  432. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/tx.js +0 -161
  433. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/tx.rpc.msg.d.ts +0 -24
  434. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/slashing/v1beta1/tx.rpc.msg.js +0 -47
  435. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/module/v1/module.d.ts +0 -29
  436. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/module/v1/module.js +0 -88
  437. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/authz.d.ts +0 -74
  438. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/authz.js +0 -187
  439. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/genesis.d.ts +0 -62
  440. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/genesis.js +0 -166
  441. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/query.d.ts +0 -552
  442. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/query.js +0 -1163
  443. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/query.lcd.d.ts +0 -22
  444. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/query.lcd.js +0 -171
  445. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/query.rpc.Query.d.ts +0 -111
  446. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/query.rpc.Query.js +0 -169
  447. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/staking.d.ts +0 -568
  448. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/staking.js +0 -1287
  449. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/tx.d.ts +0 -298
  450. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/tx.js +0 -655
  451. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/tx.rpc.msg.d.ts +0 -48
  452. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/staking/v1beta1/tx.rpc.msg.js +0 -77
  453. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/internal/kv/v1beta1/kv.d.ts +0 -30
  454. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/internal/kv/v1beta1/kv.js +0 -108
  455. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/snapshots/v1/snapshot.d.ts +0 -159
  456. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/snapshots/v1/snapshot.js +0 -368
  457. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/streaming/abci/grpc.d.ts +0 -60
  458. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/streaming/abci/grpc.js +0 -178
  459. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/v1beta1/commit_info.d.ts +0 -68
  460. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/v1beta1/commit_info.js +0 -170
  461. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/v1beta1/listening.d.ts +0 -60
  462. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/store/v1beta1/listening.js +0 -140
  463. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/config/v1/config.d.ts +0 -25
  464. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/config/v1/config.js +0 -72
  465. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/signing/v1beta1/signing.d.ts +0 -163
  466. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/signing/v1beta1/signing.js +0 -355
  467. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/v1beta1/service.d.ts +0 -521
  468. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/v1beta1/service.js +0 -914
  469. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/v1beta1/service.lcd.d.ts +0 -11
  470. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/v1beta1/service.lcd.js +0 -58
  471. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/v1beta1/service.rpc.Service.d.ts +0 -68
  472. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/v1beta1/service.rpc.Service.js +0 -124
  473. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/v1beta1/tx.d.ts +0 -461
  474. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/tx/v1beta1/tx.js +0 -730
  475. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/module/v1/module.d.ts +0 -16
  476. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/module/v1/module.js +0 -64
  477. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/query.d.ts +0 -220
  478. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/query.js +0 -367
  479. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/query.lcd.d.ts +0 -13
  480. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/query.lcd.js +0 -55
  481. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/query.rpc.Query.d.ts +0 -47
  482. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/query.rpc.Query.js +0 -88
  483. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/tx.d.ts +0 -88
  484. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/tx.js +0 -161
  485. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/tx.rpc.msg.d.ts +0 -24
  486. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/tx.rpc.msg.js +0 -47
  487. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/upgrade.d.ts +0 -139
  488. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/upgrade/v1beta1/upgrade.js +0 -239
  489. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/vesting/module/v1/module.d.ts +0 -13
  490. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/vesting/module/v1/module.js +0 -54
  491. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/vesting/v1beta1/tx.d.ts +0 -141
  492. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/vesting/v1beta1/tx.js +0 -289
  493. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/vesting/v1beta1/tx.rpc.msg.d.ts +0 -31
  494. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/vesting/v1beta1/tx.rpc.msg.js +0 -53
  495. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/vesting/v1beta1/vesting.d.ts +0 -140
  496. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos/vesting/v1beta1/vesting.js +0 -308
  497. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos_proto/bundle.d.ts +0 -24
  498. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos_proto/bundle.js +0 -30
  499. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos_proto/cosmos.d.ts +0 -92
  500. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/cosmos_proto/cosmos.js +0 -174
  501. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/asset.d.ts +0 -59
  502. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/asset.js +0 -112
  503. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/genesis.d.ts +0 -16
  504. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/genesis.js +0 -65
  505. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/query.d.ts +0 -60
  506. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/query.js +0 -180
  507. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/query.lcd.d.ts +0 -10
  508. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/query.lcd.js +0 -31
  509. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/query.rpc.Query.d.ts +0 -20
  510. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/query.rpc.Query.js +0 -63
  511. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/tx.d.ts +0 -1
  512. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/assets/tx.js +0 -3
  513. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/blocktime.d.ts +0 -56
  514. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/blocktime.js +0 -154
  515. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/genesis.d.ts +0 -16
  516. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/genesis.js +0 -64
  517. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/params.d.ts +0 -20
  518. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/params.js +0 -65
  519. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/query.d.ts +0 -120
  520. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/query.js +0 -213
  521. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/query.lcd.d.ts +0 -10
  522. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/query.lcd.js +0 -22
  523. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/query.rpc.Query.d.ts +0 -24
  524. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/query.rpc.Query.js +0 -70
  525. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/tx.d.ts +0 -36
  526. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/tx.js +0 -99
  527. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/tx.rpc.msg.d.ts +0 -12
  528. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/blocktime/tx.rpc.msg.js +0 -41
  529. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/bridge_event.d.ts +0 -27
  530. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/bridge_event.js +0 -90
  531. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/bridge_event_info.d.ts +0 -29
  532. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/bridge_event_info.js +0 -73
  533. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/genesis.d.ts +0 -29
  534. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/genesis.js +0 -89
  535. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/params.d.ts +0 -89
  536. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/params.js +0 -186
  537. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/query.d.ts +0 -220
  538. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/query.js +0 -452
  539. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/query.lcd.d.ts +0 -14
  540. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/query.lcd.js +0 -57
  541. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/query.rpc.Query.d.ts +0 -47
  542. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/query.rpc.Query.js +0 -97
  543. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/tx.d.ts +0 -143
  544. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/tx.js +0 -372
  545. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/tx.rpc.msg.d.ts +0 -27
  546. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bridge/tx.rpc.msg.js +0 -65
  547. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bundle.d.ts +0 -5751
  548. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/bundle.js +0 -359
  549. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/block_rate_limit_config.d.ts +0 -66
  550. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/block_rate_limit_config.js +0 -132
  551. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/clob_pair.d.ts +0 -128
  552. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/clob_pair.js +0 -283
  553. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/equity_tier_limit_config.d.ts +0 -48
  554. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/equity_tier_limit_config.js +0 -116
  555. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/genesis.d.ts +0 -25
  556. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/genesis.js +0 -92
  557. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/liquidations.d.ts +0 -93
  558. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/liquidations.js +0 -188
  559. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/liquidations_config.d.ts +0 -125
  560. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/liquidations_config.js +0 -220
  561. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/matches.d.ts +0 -160
  562. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/matches.js +0 -348
  563. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/mev.d.ts +0 -126
  564. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/mev.js +0 -362
  565. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/operation.d.ts +0 -56
  566. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/operation.js +0 -150
  567. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/order.d.ts +0 -407
  568. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/order.js +0 -670
  569. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/order_removals.d.ts +0 -74
  570. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/order_removals.js +0 -185
  571. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/process_proposer_matches_events.d.ts +0 -54
  572. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/process_proposer_matches_events.js +0 -121
  573. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.d.ts +0 -285
  574. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.js +0 -590
  575. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.lcd.d.ts +0 -13
  576. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.lcd.js +0 -49
  577. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.rpc.Query.d.ts +0 -40
  578. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/query.rpc.Query.js +0 -108
  579. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.d.ts +0 -397
  580. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.js +0 -789
  581. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.rpc.msg.d.ts +0 -50
  582. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/clob/tx.rpc.msg.js +0 -89
  583. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/daemons/bridge/bridge.d.ts +0 -33
  584. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/daemons/bridge/bridge.js +0 -91
  585. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/daemons/liquidation/liquidation.d.ts +0 -53
  586. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/daemons/liquidation/liquidation.js +0 -116
  587. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/daemons/pricefeed/price_feed.d.ts +0 -59
  588. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/daemons/pricefeed/price_feed.js +0 -188
  589. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/block_message_ids.d.ts +0 -25
  590. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/block_message_ids.js +0 -74
  591. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/delayed_message.d.ts +0 -23
  592. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/delayed_message.js +0 -81
  593. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/genesis.d.ts +0 -20
  594. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/genesis.js +0 -73
  595. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/query.d.ts +0 -113
  596. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/query.js +0 -244
  597. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/query.lcd.d.ts +0 -11
  598. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/query.lcd.js +0 -28
  599. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/query.rpc.Query.d.ts +0 -24
  600. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/query.rpc.Query.js +0 -70
  601. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/tx.d.ts +0 -37
  602. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/tx.js +0 -117
  603. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/tx.rpc.msg.d.ts +0 -15
  604. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/delaymsg/tx.rpc.msg.js +0 -41
  605. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/epoch_info.d.ts +0 -59
  606. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/epoch_info.js +0 -112
  607. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/genesis.d.ts +0 -16
  608. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/genesis.js +0 -65
  609. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/query.d.ts +0 -59
  610. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/query.js +0 -180
  611. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/query.lcd.d.ts +0 -10
  612. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/query.lcd.js +0 -31
  613. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/query.rpc.Query.d.ts +0 -20
  614. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/epochs/query.rpc.Query.js +0 -63
  615. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/genesis.d.ts +0 -17
  616. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/genesis.js +0 -64
  617. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/params.d.ts +0 -46
  618. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/params.js +0 -141
  619. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.d.ts +0 -68
  620. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.js +0 -170
  621. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.lcd.d.ts +0 -10
  622. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.lcd.js +0 -28
  623. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.rpc.Query.d.ts +0 -20
  624. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/query.rpc.Query.js +0 -61
  625. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.d.ts +0 -36
  626. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.js +0 -99
  627. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.rpc.msg.d.ts +0 -12
  628. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/feetiers/tx.rpc.msg.js +0 -41
  629. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/genesis.d.ts +0 -13
  630. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/genesis.js +0 -54
  631. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/query.d.ts +0 -1
  632. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/query.js +0 -3
  633. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/query.rpc.Query.d.ts +0 -10
  634. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/query.rpc.Query.js +0 -17
  635. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/tx.d.ts +0 -58
  636. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/tx.js +0 -122
  637. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/tx.rpc.msg.d.ts +0 -15
  638. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/govplus/tx.rpc.msg.js +0 -41
  639. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/events/events.d.ts +0 -884
  640. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/events/events.js +0 -1547
  641. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/indexer_manager/event.d.ts +0 -129
  642. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/indexer_manager/event.js +0 -296
  643. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/off_chain_updates/off_chain_updates.d.ts +0 -153
  644. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/off_chain_updates/off_chain_updates.js +0 -353
  645. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/protocol/v1/clob.d.ts +0 -256
  646. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/protocol/v1/clob.js +0 -477
  647. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/protocol/v1/perpetual.d.ts +0 -16
  648. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/protocol/v1/perpetual.js +0 -51
  649. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/protocol/v1/subaccount.d.ts +0 -90
  650. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/protocol/v1/subaccount.js +0 -185
  651. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/redis/redis_order.d.ts +0 -56
  652. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/redis/redis_order.js +0 -152
  653. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/shared/removal_reason.d.ts +0 -71
  654. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/shared/removal_reason.js +0 -166
  655. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/socks/messages.d.ts +0 -139
  656. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/indexer/socks/messages.js +0 -396
  657. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/lcd.d.ts +0 -82
  658. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/lcd.js +0 -182
  659. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/genesis.d.ts +0 -21
  660. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/genesis.js +0 -82
  661. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/params.d.ts +0 -33
  662. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/params.js +0 -80
  663. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/perpetual.d.ts +0 -214
  664. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/perpetual.js +0 -398
  665. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/query.d.ts +0 -184
  666. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/query.js +0 -443
  667. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/query.lcd.d.ts +0 -14
  668. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/query.lcd.js +0 -63
  669. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/query.rpc.Query.d.ts +0 -36
  670. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/query.rpc.Query.js +0 -101
  671. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/tx.d.ts +0 -197
  672. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/tx.js +0 -416
  673. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/tx.rpc.msg.d.ts +0 -30
  674. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/perpetuals/tx.rpc.msg.js +0 -65
  675. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/genesis.d.ts +0 -19
  676. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/genesis.js +0 -74
  677. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/market_param.d.ts +0 -55
  678. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/market_param.js +0 -104
  679. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/market_price.d.ts +0 -29
  680. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/market_price.js +0 -81
  681. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/query.d.ts +0 -169
  682. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/query.js +0 -331
  683. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/query.lcd.d.ts +0 -12
  684. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/query.lcd.js +0 -51
  685. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/query.rpc.Query.d.ts +0 -28
  686. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/query.rpc.Query.js +0 -83
  687. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/tx.d.ts +0 -118
  688. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/tx.js +0 -276
  689. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/tx.rpc.msg.d.ts +0 -24
  690. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/prices/tx.rpc.msg.js +0 -53
  691. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/capacity.d.ts +0 -42
  692. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/capacity.js +0 -117
  693. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/genesis.d.ts +0 -17
  694. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/genesis.js +0 -65
  695. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/limit_params.d.ts +0 -57
  696. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/limit_params.js +0 -125
  697. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/query.d.ts +0 -70
  698. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/query.js +0 -164
  699. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/query.lcd.d.ts +0 -10
  700. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/query.lcd.js +0 -28
  701. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/query.rpc.Query.d.ts +0 -20
  702. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/query.rpc.Query.js +0 -61
  703. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/tx.d.ts +0 -30
  704. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/tx.js +0 -99
  705. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/tx.rpc.msg.d.ts +0 -12
  706. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/ratelimit/tx.rpc.msg.js +0 -41
  707. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/genesis.d.ts +0 -17
  708. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/genesis.js +0 -64
  709. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/params.d.ts +0 -36
  710. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/params.js +0 -96
  711. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/query.d.ts +0 -27
  712. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/query.js +0 -90
  713. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/query.lcd.d.ts +0 -9
  714. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/query.lcd.js +0 -16
  715. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/query.rpc.Query.d.ts +0 -16
  716. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/query.rpc.Query.js +0 -52
  717. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/reward_share.d.ts +0 -23
  718. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/reward_share.js +0 -72
  719. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/tx.d.ts +0 -30
  720. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/tx.js +0 -99
  721. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/tx.rpc.msg.d.ts +0 -12
  722. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rewards/tx.rpc.msg.js +0 -41
  723. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rpc.query.d.ts +0 -306
  724. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rpc.query.js +0 -125
  725. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rpc.tx.d.ts +0 -75
  726. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/rpc.tx.js +0 -100
  727. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/genesis.d.ts +0 -13
  728. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/genesis.js +0 -54
  729. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/query.d.ts +0 -1
  730. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/query.js +0 -3
  731. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/query.rpc.Query.d.ts +0 -10
  732. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/query.rpc.Query.js +0 -17
  733. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/transfer.d.ts +0 -121
  734. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/transfer.js +0 -271
  735. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.d.ts +0 -79
  736. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.js +0 -168
  737. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.rpc.msg.d.ts +0 -31
  738. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/sending/tx.rpc.msg.js +0 -60
  739. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/genesis.d.ts +0 -17
  740. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/genesis.js +0 -64
  741. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/params.d.ts +0 -17
  742. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/params.js +0 -64
  743. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.d.ts +0 -115
  744. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.js +0 -284
  745. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.lcd.d.ts +0 -12
  746. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.lcd.js +0 -40
  747. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.rpc.Query.d.ts +0 -28
  748. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/query.rpc.Query.js +0 -79
  749. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.d.ts +0 -117
  750. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/stats.js +0 -320
  751. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/tx.d.ts +0 -30
  752. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/tx.js +0 -99
  753. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/tx.rpc.msg.d.ts +0 -12
  754. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/stats/tx.rpc.msg.js +0 -41
  755. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/asset_position.d.ts +0 -33
  756. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/asset_position.js +0 -81
  757. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/genesis.d.ts +0 -16
  758. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/genesis.js +0 -65
  759. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/perpetual_position.d.ts +0 -31
  760. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/perpetual_position.js +0 -80
  761. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/query.d.ts +0 -100
  762. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/query.js +0 -266
  763. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/query.lcd.d.ts +0 -11
  764. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/query.lcd.js +0 -38
  765. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/query.rpc.Query.d.ts +0 -27
  766. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/query.rpc.Query.js +0 -72
  767. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/subaccount.d.ts +0 -62
  768. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/subaccounts/subaccount.js +0 -134
  769. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/genesis.d.ts +0 -13
  770. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/genesis.js +0 -54
  771. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/query.d.ts +0 -1
  772. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/query.js +0 -3
  773. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/query.rpc.Query.d.ts +0 -10
  774. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/query.rpc.Query.js +0 -17
  775. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/tx.d.ts +0 -35
  776. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/tx.js +0 -108
  777. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/tx.rpc.msg.d.ts +0 -12
  778. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/tx.rpc.msg.js +0 -41
  779. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/vault.d.ts +0 -44
  780. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vault/vault.js +0 -145
  781. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/genesis.d.ts +0 -17
  782. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/genesis.js +0 -65
  783. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/query.d.ts +0 -30
  784. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/query.js +0 -100
  785. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/query.lcd.d.ts +0 -9
  786. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/query.lcd.js +0 -22
  787. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/query.rpc.Query.d.ts +0 -16
  788. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/query.rpc.Query.js +0 -52
  789. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/tx.d.ts +0 -59
  790. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/tx.js +0 -169
  791. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/tx.rpc.msg.d.ts +0 -15
  792. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/tx.rpc.msg.js +0 -47
  793. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/vest_entry.d.ts +0 -40
  794. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/dydxprotocol/vest/vest_entry.js +0 -98
  795. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/gogoproto/bundle.d.ts +0 -1
  796. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/gogoproto/bundle.js +0 -30
  797. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/gogoproto/gogo.d.ts +0 -1
  798. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/gogoproto/gogo.js +0 -3
  799. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/api/annotations.d.ts +0 -1
  800. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/api/annotations.js +0 -3
  801. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/api/http.d.ts +0 -673
  802. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/api/http.js +0 -224
  803. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/bundle.d.ts +0 -1460
  804. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/bundle.js +0 -44
  805. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/protobuf/any.d.ts +0 -207
  806. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/protobuf/any.js +0 -72
  807. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/protobuf/descriptor.d.ts +0 -1172
  808. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/protobuf/descriptor.js +0 -2198
  809. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/protobuf/duration.d.ts +0 -149
  810. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/protobuf/duration.js +0 -73
  811. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/protobuf/timestamp.d.ts +0 -195
  812. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/google/protobuf/timestamp.js +0 -73
  813. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/helpers.d.ts +0 -82
  814. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/helpers.js +0 -184
  815. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/index.d.ts +0 -12
  816. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/index.js +0 -29
  817. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/abci/types.d.ts +0 -985
  818. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/abci/types.js +0 -3060
  819. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/bundle.d.ts +0 -2284
  820. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/bundle.js +0 -61
  821. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/crypto/keys.d.ts +0 -17
  822. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/crypto/keys.js +0 -72
  823. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/crypto/proof.d.ts +0 -88
  824. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/crypto/proof.js +0 -273
  825. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/libs/bits/types.d.ts +0 -16
  826. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/libs/bits/types.js +0 -83
  827. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/p2p/types.d.ts +0 -71
  828. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/p2p/types.js +0 -268
  829. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/block.d.ts +0 -21
  830. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/block.js +0 -89
  831. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/evidence.d.ts +0 -71
  832. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/evidence.js +0 -247
  833. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/params.d.ts +0 -168
  834. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/params.js +0 -340
  835. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/types.d.ts +0 -352
  836. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/types.js +0 -1043
  837. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/validator.d.ts +0 -63
  838. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/types/validator.js +0 -235
  839. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/version/types.d.ts +0 -49
  840. package/build/node_modules/@dydxprotocol/v4-proto/src/codegen/tendermint/version/types.js +0 -116
@@ -1,3060 +0,0 @@
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvQGR5ZHhwcm90b2NvbC92NC1wcm90by9zcmMvY29kZWdlbi90ZW5kZXJtaW50L2FiY2kvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0RBQTREO0FBQzVELDRDQUEwRTtBQUMxRSwyQ0FBNEQ7QUFDNUQseUNBQTZEO0FBRTdELHdEQUEwQztBQUMxQywyQ0FBOEU7QUFDOUUsSUFBWSxXQUlYO0FBSkQsV0FBWSxXQUFXO0lBQ3JCLDJDQUFPLENBQUE7SUFDUCxtREFBVyxDQUFBO0lBQ1gsOERBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUpXLFdBQVcsR0FBWCxtQkFBVyxLQUFYLG1CQUFXLFFBSXRCO0FBQ1ksUUFBQSxrQkFBa0IsR0FBRyxXQUFXLENBQUM7QUFDOUMsU0FBZ0IsbUJBQW1CLENBQUMsTUFBVztJQUM3QyxRQUFRLE1BQU0sRUFBRTtRQUNkLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxLQUFLO1lBQ1IsT0FBTyxXQUFXLENBQUMsR0FBRyxDQUFDO1FBRXpCLEtBQUssQ0FBQyxDQUFDO1FBQ1AsS0FBSyxTQUFTO1lBQ1osT0FBTyxXQUFXLENBQUMsT0FBTyxDQUFDO1FBRTdCLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDUixLQUFLLGNBQWMsQ0FBQztRQUNwQjtZQUNFLE9BQU8sV0FBVyxDQUFDLFlBQVksQ0FBQztLQUNuQztBQUNILENBQUM7QUFmRCxrREFlQztBQUNELFNBQWdCLGlCQUFpQixDQUFDLE1BQW1CO0lBQ25ELFFBQVEsTUFBTSxFQUFFO1FBQ2QsS0FBSyxXQUFXLENBQUMsR0FBRztZQUNsQixPQUFPLEtBQUssQ0FBQztRQUVmLEtBQUssV0FBVyxDQUFDLE9BQU87WUFDdEIsT0FBTyxTQUFTLENBQUM7UUFFbkIsS0FBSyxXQUFXLENBQUMs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