@dydxprotocol/v4-client-js 0.33.0 → 0.33.1

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