@akashnetwork/chain-sdk 1.0.0-alpha.23 → 1.0.0-alpha.25

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 (181) hide show
  1. package/README.md +25 -0
  2. package/dist/cjs/generated/createCosmosSDK.cjs +237 -237
  3. package/dist/cjs/generated/createCosmosSDK.cjs.map +2 -2
  4. package/dist/cjs/generated/createIbc-goSDK.cjs +91 -91
  5. package/dist/cjs/generated/createIbc-goSDK.cjs.map +2 -2
  6. package/dist/cjs/generated/createNodeSDK.cjs +68 -61
  7. package/dist/cjs/generated/createNodeSDK.cjs.map +2 -2
  8. package/dist/cjs/generated/createProviderSDK.cjs +18 -11
  9. package/dist/cjs/generated/createProviderSDK.cjs.map +2 -2
  10. package/dist/cjs/generated/patches/providerCustomTypePatches.cjs +34 -0
  11. package/dist/cjs/generated/patches/providerCustomTypePatches.cjs.map +7 -0
  12. package/dist/cjs/generated/patches/providerPatchMessage.cjs +38 -0
  13. package/dist/cjs/generated/patches/providerPatchMessage.cjs.map +7 -0
  14. package/dist/cjs/generated/protos/akash/bme/v1/filters.cjs +125 -0
  15. package/dist/cjs/generated/protos/akash/bme/v1/filters.cjs.map +7 -0
  16. package/dist/cjs/generated/protos/akash/bme/v1/params.cjs +26 -10
  17. package/dist/cjs/generated/protos/akash/bme/v1/params.cjs.map +2 -2
  18. package/dist/cjs/generated/protos/akash/bme/v1/query.cjs +233 -0
  19. package/dist/cjs/generated/protos/akash/bme/v1/query.cjs.map +2 -2
  20. package/dist/cjs/generated/protos/akash/bme/v1/query_akash.cjs +9 -0
  21. package/dist/cjs/generated/protos/akash/bme/v1/query_akash.cjs.map +2 -2
  22. package/dist/cjs/generated/protos/akash/manifest/v2beta3/service.cjs +67 -2
  23. package/dist/cjs/generated/protos/akash/manifest/v2beta3/service.cjs.map +2 -2
  24. package/dist/cjs/generated/protos/akash/market/v1beta5/params.cjs +17 -2
  25. package/dist/cjs/generated/protos/akash/market/v1beta5/params.cjs.map +2 -2
  26. package/dist/cjs/generated/protos/akash/market/v1beta5/resourcesoffer.cjs +266 -3
  27. package/dist/cjs/generated/protos/akash/market/v1beta5/resourcesoffer.cjs.map +2 -2
  28. package/dist/cjs/generated/protos/akash/oracle/v1/params.cjs +53 -1
  29. package/dist/cjs/generated/protos/akash/oracle/v1/params.cjs.map +2 -2
  30. package/dist/cjs/generated/protos/akash/provider/v1/service_akash.cjs +9 -0
  31. package/dist/cjs/generated/protos/akash/provider/v1/service_akash.cjs.map +2 -2
  32. package/dist/cjs/generated/protos/akash/provider/v1/validation.cjs +195 -0
  33. package/dist/cjs/generated/protos/akash/provider/v1/validation.cjs.map +7 -0
  34. package/dist/cjs/generated/protos/google/protobuf/descriptor.cjs +6 -0
  35. package/dist/cjs/generated/protos/google/protobuf/descriptor.cjs.map +2 -2
  36. package/dist/cjs/generated/protos/index.akash.v1.cjs +11 -5
  37. package/dist/cjs/generated/protos/index.akash.v1.cjs.map +3 -3
  38. package/dist/cjs/generated/protos/index.akash.v1beta5.cjs +4 -1
  39. package/dist/cjs/generated/protos/index.akash.v1beta5.cjs.map +2 -2
  40. package/dist/cjs/generated/protos/index.provider.akash.v1.cjs +3 -0
  41. package/dist/cjs/generated/protos/index.provider.akash.v1.cjs.map +2 -2
  42. package/dist/cjs/generated/protos/index.provider.akash.v2beta3.cjs +1 -0
  43. package/dist/cjs/generated/protos/index.provider.akash.v2beta3.cjs.map +2 -2
  44. package/dist/cjs/sdk/chain/createChainNodeSDK.cjs +2 -1
  45. package/dist/cjs/sdk/chain/createChainNodeSDK.cjs.map +2 -2
  46. package/dist/cjs/sdk/chain/createChainNodeWebSDK.cjs +2 -1
  47. package/dist/cjs/sdk/chain/createChainNodeWebSDK.cjs.map +2 -2
  48. package/dist/cjs/sdk/chain/helpers.cjs +56 -0
  49. package/dist/cjs/sdk/chain/helpers.cjs.map +7 -0
  50. package/dist/cjs/sdk/client/sdkMetadata.cjs.map +2 -2
  51. package/dist/cjs/sdk/index.cjs.map +2 -2
  52. package/dist/cjs/sdk/index.shared.cjs +4 -1
  53. package/dist/cjs/sdk/index.shared.cjs.map +2 -2
  54. package/dist/cjs/sdk/index.web.cjs.map +2 -2
  55. package/dist/cjs/sdk/transport/tx/createTxTransport.cjs +1 -1
  56. package/dist/cjs/sdk/transport/tx/createTxTransport.cjs.map +2 -2
  57. package/dist/cjs/sdl/SDL/SDL.cjs +11 -11
  58. package/dist/cjs/sdl/SDL/SDL.cjs.map +2 -2
  59. package/dist/cjs/sdl/manifest/generateManifest.cjs +8 -6
  60. package/dist/cjs/sdl/manifest/generateManifest.cjs.map +2 -2
  61. package/dist/cjs/sdl/manifest/generateManifestVersion.cjs.map +2 -2
  62. package/dist/cjs/sdl/manifest/manifestUtils.cjs +16 -9
  63. package/dist/cjs/sdl/manifest/manifestUtils.cjs.map +2 -2
  64. package/dist/cjs/sdl/types.cjs.map +1 -1
  65. package/dist/cjs/utils/yaml.cjs +10 -3
  66. package/dist/cjs/utils/yaml.cjs.map +2 -2
  67. package/dist/esm/{chunk-BYQF33C6.js → chunk-5YIS3XNX.js} +2 -2
  68. package/dist/esm/{chunk-JISXXX24.js → chunk-6CIH635G.js} +2 -2
  69. package/dist/esm/{chunk-GUNMCW7A.js → chunk-BWGYKJLS.js} +2 -2
  70. package/dist/esm/{chunk-MQPC6TDF.js → chunk-C3DBWOZD.js} +53 -1
  71. package/dist/esm/{chunk-MQPC6TDF.js.map → chunk-C3DBWOZD.js.map} +2 -2
  72. package/dist/esm/{chunk-TCVGOF7L.js → chunk-DJASDN6A.js} +2 -2
  73. package/dist/esm/{chunk-5DCYIWCG.js → chunk-E76SLJJ3.js} +3 -1
  74. package/dist/esm/{chunk-4D3QNKFB.js → chunk-EKFJV4QU.js} +6 -4
  75. package/dist/esm/{chunk-4D3QNKFB.js.map → chunk-EKFJV4QU.js.map} +1 -1
  76. package/dist/esm/{chunk-XFCN5LRY.js → chunk-H5WUFEMM.js} +2 -2
  77. package/dist/esm/{chunk-YSMDEW4E.js → chunk-JZTFWLSX.js} +178 -2
  78. package/dist/esm/{chunk-YSMDEW4E.js.map → chunk-JZTFWLSX.js.map} +4 -4
  79. package/dist/esm/{chunk-C7UQYVYH.js → chunk-KFWTFROT.js} +21 -79
  80. package/dist/esm/chunk-KFWTFROT.js.map +7 -0
  81. package/dist/esm/{chunk-IZQCYKLD.js → chunk-LGAXM6RX.js} +27 -11
  82. package/dist/esm/chunk-LGAXM6RX.js.map +7 -0
  83. package/dist/esm/{chunk-VRE72ZD5.js → chunk-M2ZK7HEC.js} +69 -4
  84. package/dist/esm/chunk-M2ZK7HEC.js.map +7 -0
  85. package/dist/esm/{chunk-Z5KZUB7X.js → chunk-MVADLHLI.js} +2 -2
  86. package/dist/esm/chunk-OL4JUIQC.js +702 -0
  87. package/dist/esm/chunk-OL4JUIQC.js.map +7 -0
  88. package/dist/esm/{chunk-5YECXI3P.js → chunk-RUC3LXDX.js} +2 -2
  89. package/dist/esm/{chunk-SA4SEZ6F.js → chunk-TXQ2BR6G.js} +5 -3
  90. package/dist/esm/{chunk-SA4SEZ6F.js.map → chunk-TXQ2BR6G.js.map} +1 -1
  91. package/dist/esm/{chunk-IJSLZIPC.js → chunk-UFJRY3ID.js} +2 -2
  92. package/dist/esm/chunk-Y7JCYDLU.js +346 -0
  93. package/dist/esm/chunk-Y7JCYDLU.js.map +7 -0
  94. package/dist/esm/{chunk-RON4KFMD.js → chunk-ZQDAXUFL.js} +6 -1
  95. package/dist/esm/chunk-ZQDAXUFL.js.map +7 -0
  96. package/dist/esm/{chunk-QSKWS3TI.js → chunk-ZRM47VCZ.js} +409 -349
  97. package/dist/esm/chunk-ZRM47VCZ.js.map +7 -0
  98. package/dist/esm/generated/protos/index.akash.v1.js +18 -8
  99. package/dist/esm/generated/protos/index.akash.v1.js.map +1 -1
  100. package/dist/esm/generated/protos/index.akash.v1beta4.js +5 -5
  101. package/dist/esm/generated/protos/index.akash.v1beta5.js +16 -8
  102. package/dist/esm/generated/protos/index.akash.v1beta5.js.map +1 -1
  103. package/dist/esm/generated/protos/index.cosmos.v1.js +1 -1
  104. package/dist/esm/generated/protos/index.provider.akash.v1.js +10 -4
  105. package/dist/esm/generated/protos/index.provider.akash.v2beta3.js +4 -2
  106. package/dist/esm/index.js +33 -21
  107. package/dist/esm/index.js.map +2 -2
  108. package/dist/esm/index.web.js +13 -8
  109. package/dist/esm/index.web.js.map +2 -2
  110. package/dist/esm/{query_akash-RGYTHUNZ.js → query_akash-745M5I3X.js} +3 -3
  111. package/dist/esm/{query_akash-N2BNNOTD.js → query_akash-EHAEDYOH.js} +15 -3
  112. package/dist/esm/query_akash-EHAEDYOH.js.map +7 -0
  113. package/dist/esm/{query_akash-DJ7LTLRE.js → query_akash-FYNRLU72.js} +6 -5
  114. package/dist/esm/{query_akash-DJ7LTLRE.js.map → query_akash-FYNRLU72.js.map} +1 -1
  115. package/dist/esm/{query_akash-4CTLBKZR.js → query_akash-LW3YJGS6.js} +4 -4
  116. package/dist/esm/{reflection_akash-WUBSNT7I.js → reflection_akash-YHEVUIB6.js} +2 -2
  117. package/dist/esm/{service_akash-KPU6LPVP.js → service_akash-2VS4VW6P.js} +3 -3
  118. package/dist/esm/{service_akash-AZFAYT7H.js → service_akash-5JSE44LJ.js} +4 -4
  119. package/dist/esm/{service_akash-VMU3LNBA.js → service_akash-FI6WXDZP.js} +4 -4
  120. package/dist/esm/{service_akash-WRGOVR7I.js → service_akash-QEN5EQUY.js} +5 -4
  121. package/dist/esm/{service_akash-WRGOVR7I.js.map → service_akash-QEN5EQUY.js.map} +1 -1
  122. package/dist/esm/{service_akash-CQVYVSHE.js → service_akash-UDPD4GFX.js} +18 -2
  123. package/dist/esm/service_akash-UDPD4GFX.js.map +7 -0
  124. package/dist/esm/{service_akash-RQDCQLQH.js → service_akash-VFDQVHZD.js} +3 -3
  125. package/dist/tsconfig.build.tsbuildinfo +1 -1
  126. package/dist/types/generated/createNodeSDK.d.ts +11 -0
  127. package/dist/types/generated/createProviderSDK.d.ts +11 -0
  128. package/dist/types/generated/patches/providerCustomTypePatches.d.ts +7 -0
  129. package/dist/types/generated/patches/providerPatchMessage.d.ts +2 -0
  130. package/dist/types/generated/protos/akash/bme/v1/filters.d.ts +17 -0
  131. package/dist/types/generated/protos/akash/bme/v1/params.d.ts +6 -1
  132. package/dist/types/generated/protos/akash/bme/v1/query.d.ts +31 -1
  133. package/dist/types/generated/protos/akash/bme/v1/query_akash.d.ts +8 -1
  134. package/dist/types/generated/protos/akash/manifest/v2beta3/service.d.ts +10 -0
  135. package/dist/types/generated/protos/akash/market/v1beta5/params.d.ts +6 -1
  136. package/dist/types/generated/protos/akash/market/v1beta5/resourcesoffer.d.ts +91 -0
  137. package/dist/types/generated/protos/akash/oracle/v1/params.d.ts +14 -0
  138. package/dist/types/generated/protos/akash/provider/v1/service_akash.d.ts +7 -0
  139. package/dist/types/generated/protos/akash/provider/v1/validation.d.ts +30 -0
  140. package/dist/types/generated/protos/google/protobuf/descriptor.d.ts +2 -0
  141. package/dist/types/generated/protos/index.akash.v1.d.ts +3 -2
  142. package/dist/types/generated/protos/index.akash.v1beta5.d.ts +1 -1
  143. package/dist/types/generated/protos/index.provider.akash.v1.d.ts +1 -0
  144. package/dist/types/generated/protos/index.provider.akash.v2beta3.d.ts +1 -1
  145. package/dist/types/sdk/chain/createChainNodeSDK.d.ts +3 -0
  146. package/dist/types/sdk/chain/createChainNodeWebSDK.d.ts +3 -0
  147. package/dist/types/sdk/chain/helpers.d.ts +14 -0
  148. package/dist/types/sdk/client/sdkMetadata.d.ts +5 -2
  149. package/dist/types/sdk/index.d.ts +2 -0
  150. package/dist/types/sdk/index.shared.d.ts +2 -0
  151. package/dist/types/sdk/index.web.d.ts +2 -0
  152. package/dist/types/sdl/manifest/generateManifest.d.ts +3 -3
  153. package/dist/types/sdl/manifest/generateManifestVersion.d.ts +2 -2
  154. package/dist/types/sdl/types.d.ts +1 -1
  155. package/dist/types/utils/yaml.d.ts +3 -0
  156. package/package.json +1 -1
  157. package/dist/esm/chunk-C7UQYVYH.js.map +0 -7
  158. package/dist/esm/chunk-IZQCYKLD.js.map +0 -7
  159. package/dist/esm/chunk-QSKWS3TI.js.map +0 -7
  160. package/dist/esm/chunk-RON4KFMD.js.map +0 -7
  161. package/dist/esm/chunk-VRE72ZD5.js.map +0 -7
  162. package/dist/esm/chunk-XPIWBE65.js +0 -362
  163. package/dist/esm/chunk-XPIWBE65.js.map +0 -7
  164. package/dist/esm/query_akash-N2BNNOTD.js.map +0 -7
  165. package/dist/esm/service_akash-CQVYVSHE.js.map +0 -7
  166. /package/dist/esm/{chunk-BYQF33C6.js.map → chunk-5YIS3XNX.js.map} +0 -0
  167. /package/dist/esm/{chunk-JISXXX24.js.map → chunk-6CIH635G.js.map} +0 -0
  168. /package/dist/esm/{chunk-GUNMCW7A.js.map → chunk-BWGYKJLS.js.map} +0 -0
  169. /package/dist/esm/{chunk-TCVGOF7L.js.map → chunk-DJASDN6A.js.map} +0 -0
  170. /package/dist/esm/{chunk-5DCYIWCG.js.map → chunk-E76SLJJ3.js.map} +0 -0
  171. /package/dist/esm/{chunk-XFCN5LRY.js.map → chunk-H5WUFEMM.js.map} +0 -0
  172. /package/dist/esm/{chunk-Z5KZUB7X.js.map → chunk-MVADLHLI.js.map} +0 -0
  173. /package/dist/esm/{chunk-5YECXI3P.js.map → chunk-RUC3LXDX.js.map} +0 -0
  174. /package/dist/esm/{chunk-IJSLZIPC.js.map → chunk-UFJRY3ID.js.map} +0 -0
  175. /package/dist/esm/{query_akash-RGYTHUNZ.js.map → query_akash-745M5I3X.js.map} +0 -0
  176. /package/dist/esm/{query_akash-4CTLBKZR.js.map → query_akash-LW3YJGS6.js.map} +0 -0
  177. /package/dist/esm/{reflection_akash-WUBSNT7I.js.map → reflection_akash-YHEVUIB6.js.map} +0 -0
  178. /package/dist/esm/{service_akash-KPU6LPVP.js.map → service_akash-2VS4VW6P.js.map} +0 -0
  179. /package/dist/esm/{service_akash-AZFAYT7H.js.map → service_akash-5JSE44LJ.js.map} +0 -0
  180. /package/dist/esm/{service_akash-VMU3LNBA.js.map → service_akash-FI6WXDZP.js.map} +0 -0
  181. /package/dist/esm/{service_akash-RQDCQLQH.js.map → service_akash-VFDQVHZD.js.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Group
3
- } from "./chunk-VRE72ZD5.js";
3
+ } from "./chunk-M2ZK7HEC.js";
4
4
  import {
5
5
  LeaseID
6
6
  } from "./chunk-LKYHOABO.js";
@@ -946,4 +946,4 @@ export {
946
946
  ServiceStatusRequest,
947
947
  ServiceStatusResponse
948
948
  };
949
- //# sourceMappingURL=chunk-BYQF33C6.js.map
949
+ //# sourceMappingURL=chunk-5YIS3XNX.js.map
@@ -8,7 +8,7 @@ import {
8
8
  } from "./chunk-OHAEKHAC.js";
9
9
  import {
10
10
  GroupSpec
11
- } from "./chunk-5YECXI3P.js";
11
+ } from "./chunk-RUC3LXDX.js";
12
12
  import {
13
13
  Account
14
14
  } from "./chunk-CT7AHZAH.js";
@@ -811,4 +811,4 @@ export {
811
811
  QueryParamsRequest,
812
812
  QueryParamsResponse
813
813
  };
814
- //# sourceMappingURL=chunk-JISXXX24.js.map
814
+ //# sourceMappingURL=chunk-6CIH635G.js.map
@@ -2,7 +2,7 @@ import {
2
2
  DataID,
3
3
  Params,
4
4
  PriceDataState
5
- } from "./chunk-MQPC6TDF.js";
5
+ } from "./chunk-C3DBWOZD.js";
6
6
  import {
7
7
  isSet
8
8
  } from "./chunk-35BIJBXD.js";
@@ -233,4 +233,4 @@ export {
233
233
  MsgUpdateParams,
234
234
  MsgUpdateParamsResponse
235
235
  };
236
- //# sourceMappingURL=chunk-GUNMCW7A.js.map
236
+ //# sourceMappingURL=chunk-BWGYKJLS.js.map
@@ -976,6 +976,57 @@ var PythContractParams = {
976
976
  return message;
977
977
  }
978
978
  };
979
+ function createBaseWormholeContractParams() {
980
+ return { guardianAddresses: [] };
981
+ }
982
+ var WormholeContractParams = {
983
+ $type: "akash.oracle.v1.WormholeContractParams",
984
+ encode(message, writer = new BinaryWriter2()) {
985
+ for (const v of message.guardianAddresses) {
986
+ writer.uint32(10).string(v);
987
+ }
988
+ return writer;
989
+ },
990
+ decode(input, length) {
991
+ const reader = input instanceof BinaryReader2 ? input : new BinaryReader2(input);
992
+ const end = length === void 0 ? reader.len : reader.pos + length;
993
+ const message = createBaseWormholeContractParams();
994
+ while (reader.pos < end) {
995
+ const tag = reader.uint32();
996
+ switch (tag >>> 3) {
997
+ case 1: {
998
+ if (tag !== 10) {
999
+ break;
1000
+ }
1001
+ message.guardianAddresses.push(reader.string());
1002
+ continue;
1003
+ }
1004
+ }
1005
+ if ((tag & 7) === 4 || tag === 0) {
1006
+ break;
1007
+ }
1008
+ reader.skip(tag & 7);
1009
+ }
1010
+ return message;
1011
+ },
1012
+ fromJSON(object) {
1013
+ return {
1014
+ guardianAddresses: globalThis.Array.isArray(object?.guardian_addresses) ? object.guardian_addresses.map((e) => globalThis.String(e)) : []
1015
+ };
1016
+ },
1017
+ toJSON(message) {
1018
+ const obj = {};
1019
+ if (message.guardianAddresses?.length) {
1020
+ obj.guardian_addresses = message.guardianAddresses;
1021
+ }
1022
+ return obj;
1023
+ },
1024
+ fromPartial(object) {
1025
+ const message = createBaseWormholeContractParams();
1026
+ message.guardianAddresses = object.guardianAddresses?.map((e) => e) || [];
1027
+ return message;
1028
+ }
1029
+ };
979
1030
  function createBaseParams() {
980
1031
  return {
981
1032
  sources: [],
@@ -1122,6 +1173,7 @@ export {
1122
1173
  PriceDataState,
1123
1174
  AggregatedPrice,
1124
1175
  PythContractParams,
1176
+ WormholeContractParams,
1125
1177
  Params
1126
1178
  };
1127
- //# sourceMappingURL=chunk-MQPC6TDF.js.map
1179
+ //# sourceMappingURL=chunk-C3DBWOZD.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/generated/protos/akash/oracle/v1/prices.ts", "../../src/generated/protos/akash/oracle/v1/params.ts"],
4
- "sourcesContent": ["import { patched } from \"../../../../patches/nodePatchMessage.ts\";\nimport { toTimestamp, fromTimestamp, fromJsonTimestamp, numberToLong, isSet } from \"../../../../../encoding/typeEncodingHelpers.ts\"\nimport type { DeepPartial, MessageFns } from \"../../../../../encoding/typeEncodingHelpers.ts\"\n// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.7.7\n// protoc unknown\n// source: akash/oracle/v1/prices.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\nimport Long from \"long\";\nimport { PageRequest, PageResponse } from \"../../../cosmos/base/query/v1beta1/pagination.ts\";\nimport { Timestamp } from \"../../../google/protobuf/timestamp.ts\";\n\n/** DataID uniquely identifies a price pair by asset and base denomination */\nexport interface DataID {\n /** denom is the asset denomination (e.g., \"uakt\") */\n denom: string;\n /** base_denom is the base denomination for the price pair (e.g., \"usd\") */\n baseDenom: string;\n}\n\n/** PriceDataID identifies price data from a specific source for a specific pair */\nexport interface PriceDataID {\n /** source is the index of the price source (oracle provider) */\n source: number;\n /** denom is the asset denomination */\n denom: string;\n /** base_denom is the base denomination for the price pair */\n baseDenom: string;\n}\n\n/**\n * PriceDataRecordID represents a price from a specific source at a specific time.\n * It also represents a single data point in TWAP history\n */\nexport interface PriceDataRecordID {\n /** source is the index of the price source (oracle provider) */\n source: number;\n /** denom is the asset denomination */\n denom: string;\n /** base_denom is the base denomination for the price pair */\n baseDenom: string;\n /** height is the block height when this price was recorded */\n height: Long;\n}\n\n/** PriceDataState represents the price value and timestamp for a price entry */\nexport interface PriceDataState {\n /** price is the decimal price value */\n price: string;\n /** timestamp is when the price was recorded */\n timestamp: Date | undefined;\n}\n\n/** PriceData combines a price record identifier with its state */\nexport interface PriceData {\n /** id uniquely identifies this price record */\n id:\n | PriceDataRecordID\n | undefined;\n /** state contains the price value and timestamp */\n state: PriceDataState | undefined;\n}\n\n/** AggregatedPrice represents the final aggregated price from all sources */\nexport interface AggregatedPrice {\n /** denom is the asset denomination */\n denom: string;\n /** twap is the time-weighted average price over the configured window */\n twap: string;\n /** median_price is the median of all source prices */\n medianPrice: string;\n /** min_price is the minimum price from all sources */\n minPrice: string;\n /** max_price is the maximum price from all sources */\n maxPrice: string;\n /** timestamp is when the aggregated price was computed */\n timestamp:\n | Date\n | undefined;\n /** num_sources is the number of price sources contributing to this aggregation */\n numSources: number;\n /** deviation_bps is the price deviation in basis points between min and max prices */\n deviationBps: Long;\n}\n\n/** PriceHealth represents the health status of a price feed */\nexport interface PriceHealth {\n /** denom is the asset denomination */\n denom: string;\n /** is_healthy indicates if the price feed meets all health requirements */\n isHealthy: boolean;\n /** has_min_sources indicates if minimum number of sources are reporting */\n hasMinSources: boolean;\n /** deviation_ok indicates if price deviation is within acceptable limits */\n deviationOk: boolean;\n /** total_sources indicates total amount of sources registered for price calculations */\n totalSources: number;\n /** total_healthy_sources indicates total usable sources for price calculations */\n totalHealthySources: number;\n /** failure_reason lists reasons for unhealthy status, if any */\n failureReason: string[];\n}\n\n/** PricesFilter defines filters used to query price data */\nexport interface PricesFilter {\n /** asset_denom is the asset denomination to filter by */\n assetDenom: string;\n /** base_denom is the base denomination to filter by */\n baseDenom: string;\n /** height is the block height to filter by */\n height: Long;\n}\n\n/** QueryPricesRequest is the request type for querying price history */\nexport interface QueryPricesRequest {\n /** filters holds the price fields to filter the request */\n filters:\n | PricesFilter\n | undefined;\n /** pagination is used to paginate the request */\n pagination: PageRequest | undefined;\n}\n\n/** QueryPricesResponse is the response type for querying price history */\nexport interface QueryPricesResponse {\n /** prices is the list of historical price data matching the filters */\n prices: PriceData[];\n /** pagination contains the information about response pagination */\n pagination: PageResponse | undefined;\n}\n\nfunction createBaseDataID(): DataID {\n return { denom: \"\", baseDenom: \"\" };\n}\n\nexport const DataID: MessageFns<DataID, \"akash.oracle.v1.DataID\"> = {\n $type: \"akash.oracle.v1.DataID\" as const,\n\n encode(message: DataID, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.denom !== \"\") {\n writer.uint32(10).string(message.denom);\n }\n if (message.baseDenom !== \"\") {\n writer.uint32(18).string(message.baseDenom);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): DataID {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDataID();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.baseDenom = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): DataID {\n return {\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n baseDenom: isSet(object.base_denom) ? globalThis.String(object.base_denom) : \"\",\n };\n },\n\n toJSON(message: DataID): unknown {\n const obj: any = {};\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.baseDenom !== \"\") {\n obj.base_denom = message.baseDenom;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<DataID>): DataID {\n const message = createBaseDataID();\n message.denom = object.denom ?? \"\";\n message.baseDenom = object.baseDenom ?? \"\";\n return message;\n },\n};\n\nfunction createBasePriceDataID(): PriceDataID {\n return { source: 0, denom: \"\", baseDenom: \"\" };\n}\n\nexport const PriceDataID: MessageFns<PriceDataID, \"akash.oracle.v1.PriceDataID\"> = {\n $type: \"akash.oracle.v1.PriceDataID\" as const,\n\n encode(message: PriceDataID, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.source !== 0) {\n writer.uint32(8).uint32(message.source);\n }\n if (message.denom !== \"\") {\n writer.uint32(18).string(message.denom);\n }\n if (message.baseDenom !== \"\") {\n writer.uint32(26).string(message.baseDenom);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceDataID {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceDataID();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.source = reader.uint32();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.baseDenom = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceDataID {\n return {\n source: isSet(object.source) ? globalThis.Number(object.source) : 0,\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n baseDenom: isSet(object.base_denom) ? globalThis.String(object.base_denom) : \"\",\n };\n },\n\n toJSON(message: PriceDataID): unknown {\n const obj: any = {};\n if (message.source !== 0) {\n obj.source = Math.round(message.source);\n }\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.baseDenom !== \"\") {\n obj.base_denom = message.baseDenom;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceDataID>): PriceDataID {\n const message = createBasePriceDataID();\n message.source = object.source ?? 0;\n message.denom = object.denom ?? \"\";\n message.baseDenom = object.baseDenom ?? \"\";\n return message;\n },\n};\n\nfunction createBasePriceDataRecordID(): PriceDataRecordID {\n return { source: 0, denom: \"\", baseDenom: \"\", height: Long.ZERO };\n}\n\nexport const PriceDataRecordID: MessageFns<PriceDataRecordID, \"akash.oracle.v1.PriceDataRecordID\"> = {\n $type: \"akash.oracle.v1.PriceDataRecordID\" as const,\n\n encode(message: PriceDataRecordID, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.source !== 0) {\n writer.uint32(8).uint32(message.source);\n }\n if (message.denom !== \"\") {\n writer.uint32(18).string(message.denom);\n }\n if (message.baseDenom !== \"\") {\n writer.uint32(26).string(message.baseDenom);\n }\n if (!message.height.equals(Long.ZERO)) {\n writer.uint32(32).int64(message.height.toString());\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceDataRecordID {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceDataRecordID();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.source = reader.uint32();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.baseDenom = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.height = Long.fromString(reader.int64().toString());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceDataRecordID {\n return {\n source: isSet(object.source) ? globalThis.Number(object.source) : 0,\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n baseDenom: isSet(object.base_denom) ? globalThis.String(object.base_denom) : \"\",\n height: isSet(object.height) ? Long.fromValue(object.height) : Long.ZERO,\n };\n },\n\n toJSON(message: PriceDataRecordID): unknown {\n const obj: any = {};\n if (message.source !== 0) {\n obj.source = Math.round(message.source);\n }\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.baseDenom !== \"\") {\n obj.base_denom = message.baseDenom;\n }\n if (!message.height.equals(Long.ZERO)) {\n obj.height = (message.height || Long.ZERO).toString();\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceDataRecordID>): PriceDataRecordID {\n const message = createBasePriceDataRecordID();\n message.source = object.source ?? 0;\n message.denom = object.denom ?? \"\";\n message.baseDenom = object.baseDenom ?? \"\";\n message.height = (object.height !== undefined && object.height !== null)\n ? Long.fromValue(object.height)\n : Long.ZERO;\n return message;\n },\n};\n\nfunction createBasePriceDataState(): PriceDataState {\n return { price: \"\", timestamp: undefined };\n}\n\nconst _PriceDataState: MessageFns<PriceDataState, \"akash.oracle.v1.PriceDataState\"> = {\n $type: \"akash.oracle.v1.PriceDataState\" as const,\n\n encode(message: PriceDataState, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.price !== \"\") {\n writer.uint32(10).string(message.price);\n }\n if (message.timestamp !== undefined) {\n Timestamp.encode(toTimestamp(message.timestamp), writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceDataState {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceDataState();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.price = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.timestamp = fromTimestamp(Timestamp.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceDataState {\n return {\n price: isSet(object.price) ? globalThis.String(object.price) : \"\",\n timestamp: isSet(object.timestamp) ? fromJsonTimestamp(object.timestamp) : undefined,\n };\n },\n\n toJSON(message: PriceDataState): unknown {\n const obj: any = {};\n if (message.price !== \"\") {\n obj.price = message.price;\n }\n if (message.timestamp !== undefined) {\n obj.timestamp = message.timestamp.toISOString();\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceDataState>): PriceDataState {\n const message = createBasePriceDataState();\n message.price = object.price ?? \"\";\n message.timestamp = object.timestamp ?? undefined;\n return message;\n },\n};\n\nfunction createBasePriceData(): PriceData {\n return { id: undefined, state: undefined };\n}\n\nexport const PriceData: MessageFns<PriceData, \"akash.oracle.v1.PriceData\"> = {\n $type: \"akash.oracle.v1.PriceData\" as const,\n\n encode(message: PriceData, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.id !== undefined) {\n PriceDataRecordID.encode(message.id, writer.uint32(10).fork()).join();\n }\n if (message.state !== undefined) {\n PriceDataState.encode(message.state, writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceData {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceData();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.id = PriceDataRecordID.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.state = PriceDataState.decode(reader, reader.uint32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceData {\n return {\n id: isSet(object.id) ? PriceDataRecordID.fromJSON(object.id) : undefined,\n state: isSet(object.state) ? PriceDataState.fromJSON(object.state) : undefined,\n };\n },\n\n toJSON(message: PriceData): unknown {\n const obj: any = {};\n if (message.id !== undefined) {\n obj.id = PriceDataRecordID.toJSON(message.id);\n }\n if (message.state !== undefined) {\n obj.state = PriceDataState.toJSON(message.state);\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceData>): PriceData {\n const message = createBasePriceData();\n message.id = (object.id !== undefined && object.id !== null) ? PriceDataRecordID.fromPartial(object.id) : undefined;\n message.state = (object.state !== undefined && object.state !== null)\n ? PriceDataState.fromPartial(object.state)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseAggregatedPrice(): AggregatedPrice {\n return {\n denom: \"\",\n twap: \"\",\n medianPrice: \"\",\n minPrice: \"\",\n maxPrice: \"\",\n timestamp: undefined,\n numSources: 0,\n deviationBps: Long.UZERO,\n };\n}\n\nconst _AggregatedPrice: MessageFns<AggregatedPrice, \"akash.oracle.v1.AggregatedPrice\"> = {\n $type: \"akash.oracle.v1.AggregatedPrice\" as const,\n\n encode(message: AggregatedPrice, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.denom !== \"\") {\n writer.uint32(10).string(message.denom);\n }\n if (message.twap !== \"\") {\n writer.uint32(18).string(message.twap);\n }\n if (message.medianPrice !== \"\") {\n writer.uint32(26).string(message.medianPrice);\n }\n if (message.minPrice !== \"\") {\n writer.uint32(34).string(message.minPrice);\n }\n if (message.maxPrice !== \"\") {\n writer.uint32(42).string(message.maxPrice);\n }\n if (message.timestamp !== undefined) {\n Timestamp.encode(toTimestamp(message.timestamp), writer.uint32(50).fork()).join();\n }\n if (message.numSources !== 0) {\n writer.uint32(56).uint32(message.numSources);\n }\n if (!message.deviationBps.equals(Long.UZERO)) {\n writer.uint32(64).uint64(message.deviationBps.toString());\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): AggregatedPrice {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseAggregatedPrice();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.twap = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.medianPrice = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.minPrice = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.maxPrice = reader.string();\n continue;\n }\n case 6: {\n if (tag !== 50) {\n break;\n }\n\n message.timestamp = fromTimestamp(Timestamp.decode(reader, reader.uint32()));\n continue;\n }\n case 7: {\n if (tag !== 56) {\n break;\n }\n\n message.numSources = reader.uint32();\n continue;\n }\n case 8: {\n if (tag !== 64) {\n break;\n }\n\n message.deviationBps = Long.fromString(reader.uint64().toString(), true);\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): AggregatedPrice {\n return {\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n twap: isSet(object.twap) ? globalThis.String(object.twap) : \"\",\n medianPrice: isSet(object.median_price) ? globalThis.String(object.median_price) : \"\",\n minPrice: isSet(object.min_price) ? globalThis.String(object.min_price) : \"\",\n maxPrice: isSet(object.max_price) ? globalThis.String(object.max_price) : \"\",\n timestamp: isSet(object.timestamp) ? fromJsonTimestamp(object.timestamp) : undefined,\n numSources: isSet(object.num_sources) ? globalThis.Number(object.num_sources) : 0,\n deviationBps: isSet(object.deviation_bps) ? Long.fromValue(object.deviation_bps) : Long.UZERO,\n };\n },\n\n toJSON(message: AggregatedPrice): unknown {\n const obj: any = {};\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.twap !== \"\") {\n obj.twap = message.twap;\n }\n if (message.medianPrice !== \"\") {\n obj.median_price = message.medianPrice;\n }\n if (message.minPrice !== \"\") {\n obj.min_price = message.minPrice;\n }\n if (message.maxPrice !== \"\") {\n obj.max_price = message.maxPrice;\n }\n if (message.timestamp !== undefined) {\n obj.timestamp = message.timestamp.toISOString();\n }\n if (message.numSources !== 0) {\n obj.num_sources = Math.round(message.numSources);\n }\n if (!message.deviationBps.equals(Long.UZERO)) {\n obj.deviation_bps = (message.deviationBps || Long.UZERO).toString();\n }\n return obj;\n },\n fromPartial(object: DeepPartial<AggregatedPrice>): AggregatedPrice {\n const message = createBaseAggregatedPrice();\n message.denom = object.denom ?? \"\";\n message.twap = object.twap ?? \"\";\n message.medianPrice = object.medianPrice ?? \"\";\n message.minPrice = object.minPrice ?? \"\";\n message.maxPrice = object.maxPrice ?? \"\";\n message.timestamp = object.timestamp ?? undefined;\n message.numSources = object.numSources ?? 0;\n message.deviationBps = (object.deviationBps !== undefined && object.deviationBps !== null)\n ? Long.fromValue(object.deviationBps)\n : Long.UZERO;\n return message;\n },\n};\n\nfunction createBasePriceHealth(): PriceHealth {\n return {\n denom: \"\",\n isHealthy: false,\n hasMinSources: false,\n deviationOk: false,\n totalSources: 0,\n totalHealthySources: 0,\n failureReason: [],\n };\n}\n\nexport const PriceHealth: MessageFns<PriceHealth, \"akash.oracle.v1.PriceHealth\"> = {\n $type: \"akash.oracle.v1.PriceHealth\" as const,\n\n encode(message: PriceHealth, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.denom !== \"\") {\n writer.uint32(10).string(message.denom);\n }\n if (message.isHealthy !== false) {\n writer.uint32(24).bool(message.isHealthy);\n }\n if (message.hasMinSources !== false) {\n writer.uint32(32).bool(message.hasMinSources);\n }\n if (message.deviationOk !== false) {\n writer.uint32(40).bool(message.deviationOk);\n }\n if (message.totalSources !== 0) {\n writer.uint32(48).uint32(message.totalSources);\n }\n if (message.totalHealthySources !== 0) {\n writer.uint32(56).uint32(message.totalHealthySources);\n }\n for (const v of message.failureReason) {\n writer.uint32(66).string(v!);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceHealth {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceHealth();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.isHealthy = reader.bool();\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.hasMinSources = reader.bool();\n continue;\n }\n case 5: {\n if (tag !== 40) {\n break;\n }\n\n message.deviationOk = reader.bool();\n continue;\n }\n case 6: {\n if (tag !== 48) {\n break;\n }\n\n message.totalSources = reader.uint32();\n continue;\n }\n case 7: {\n if (tag !== 56) {\n break;\n }\n\n message.totalHealthySources = reader.uint32();\n continue;\n }\n case 8: {\n if (tag !== 66) {\n break;\n }\n\n message.failureReason.push(reader.string());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceHealth {\n return {\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n isHealthy: isSet(object.is_healthy) ? globalThis.Boolean(object.is_healthy) : false,\n hasMinSources: isSet(object.has_min_sources) ? globalThis.Boolean(object.has_min_sources) : false,\n deviationOk: isSet(object.deviation_ok) ? globalThis.Boolean(object.deviation_ok) : false,\n totalSources: isSet(object.total_sources) ? globalThis.Number(object.total_sources) : 0,\n totalHealthySources: isSet(object.total_healthy_sources) ? globalThis.Number(object.total_healthy_sources) : 0,\n failureReason: globalThis.Array.isArray(object?.failure_reason)\n ? object.failure_reason.map((e: any) => globalThis.String(e))\n : [],\n };\n },\n\n toJSON(message: PriceHealth): unknown {\n const obj: any = {};\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.isHealthy !== false) {\n obj.is_healthy = message.isHealthy;\n }\n if (message.hasMinSources !== false) {\n obj.has_min_sources = message.hasMinSources;\n }\n if (message.deviationOk !== false) {\n obj.deviation_ok = message.deviationOk;\n }\n if (message.totalSources !== 0) {\n obj.total_sources = Math.round(message.totalSources);\n }\n if (message.totalHealthySources !== 0) {\n obj.total_healthy_sources = Math.round(message.totalHealthySources);\n }\n if (message.failureReason?.length) {\n obj.failure_reason = message.failureReason;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceHealth>): PriceHealth {\n const message = createBasePriceHealth();\n message.denom = object.denom ?? \"\";\n message.isHealthy = object.isHealthy ?? false;\n message.hasMinSources = object.hasMinSources ?? false;\n message.deviationOk = object.deviationOk ?? false;\n message.totalSources = object.totalSources ?? 0;\n message.totalHealthySources = object.totalHealthySources ?? 0;\n message.failureReason = object.failureReason?.map((e) => e) || [];\n return message;\n },\n};\n\nfunction createBasePricesFilter(): PricesFilter {\n return { assetDenom: \"\", baseDenom: \"\", height: Long.ZERO };\n}\n\nexport const PricesFilter: MessageFns<PricesFilter, \"akash.oracle.v1.PricesFilter\"> = {\n $type: \"akash.oracle.v1.PricesFilter\" as const,\n\n encode(message: PricesFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.assetDenom !== \"\") {\n writer.uint32(10).string(message.assetDenom);\n }\n if (message.baseDenom !== \"\") {\n writer.uint32(18).string(message.baseDenom);\n }\n if (!message.height.equals(Long.ZERO)) {\n writer.uint32(24).int64(message.height.toString());\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PricesFilter {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePricesFilter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.assetDenom = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.baseDenom = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.height = Long.fromString(reader.int64().toString());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PricesFilter {\n return {\n assetDenom: isSet(object.asset_denom) ? globalThis.String(object.asset_denom) : \"\",\n baseDenom: isSet(object.base_denom) ? globalThis.String(object.base_denom) : \"\",\n height: isSet(object.height) ? Long.fromValue(object.height) : Long.ZERO,\n };\n },\n\n toJSON(message: PricesFilter): unknown {\n const obj: any = {};\n if (message.assetDenom !== \"\") {\n obj.asset_denom = message.assetDenom;\n }\n if (message.baseDenom !== \"\") {\n obj.base_denom = message.baseDenom;\n }\n if (!message.height.equals(Long.ZERO)) {\n obj.height = (message.height || Long.ZERO).toString();\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PricesFilter>): PricesFilter {\n const message = createBasePricesFilter();\n message.assetDenom = object.assetDenom ?? \"\";\n message.baseDenom = object.baseDenom ?? \"\";\n message.height = (object.height !== undefined && object.height !== null)\n ? Long.fromValue(object.height)\n : Long.ZERO;\n return message;\n },\n};\n\nfunction createBaseQueryPricesRequest(): QueryPricesRequest {\n return { filters: undefined, pagination: undefined };\n}\n\nexport const QueryPricesRequest: MessageFns<QueryPricesRequest, \"akash.oracle.v1.QueryPricesRequest\"> = {\n $type: \"akash.oracle.v1.QueryPricesRequest\" as const,\n\n encode(message: QueryPricesRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.filters !== undefined) {\n PricesFilter.encode(message.filters, writer.uint32(10).fork()).join();\n }\n if (message.pagination !== undefined) {\n PageRequest.encode(message.pagination, writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): QueryPricesRequest {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseQueryPricesRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.filters = PricesFilter.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.pagination = PageRequest.decode(reader, reader.uint32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): QueryPricesRequest {\n return {\n filters: isSet(object.filters) ? PricesFilter.fromJSON(object.filters) : undefined,\n pagination: isSet(object.pagination) ? PageRequest.fromJSON(object.pagination) : undefined,\n };\n },\n\n toJSON(message: QueryPricesRequest): unknown {\n const obj: any = {};\n if (message.filters !== undefined) {\n obj.filters = PricesFilter.toJSON(message.filters);\n }\n if (message.pagination !== undefined) {\n obj.pagination = PageRequest.toJSON(message.pagination);\n }\n return obj;\n },\n fromPartial(object: DeepPartial<QueryPricesRequest>): QueryPricesRequest {\n const message = createBaseQueryPricesRequest();\n message.filters = (object.filters !== undefined && object.filters !== null)\n ? PricesFilter.fromPartial(object.filters)\n : undefined;\n message.pagination = (object.pagination !== undefined && object.pagination !== null)\n ? PageRequest.fromPartial(object.pagination)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseQueryPricesResponse(): QueryPricesResponse {\n return { prices: [], pagination: undefined };\n}\n\nexport const QueryPricesResponse: MessageFns<QueryPricesResponse, \"akash.oracle.v1.QueryPricesResponse\"> = {\n $type: \"akash.oracle.v1.QueryPricesResponse\" as const,\n\n encode(message: QueryPricesResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n for (const v of message.prices) {\n PriceData.encode(v!, writer.uint32(10).fork()).join();\n }\n if (message.pagination !== undefined) {\n PageResponse.encode(message.pagination, writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): QueryPricesResponse {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseQueryPricesResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.prices.push(PriceData.decode(reader, reader.uint32()));\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.pagination = PageResponse.decode(reader, reader.uint32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): QueryPricesResponse {\n return {\n prices: globalThis.Array.isArray(object?.prices) ? object.prices.map((e: any) => PriceData.fromJSON(e)) : [],\n pagination: isSet(object.pagination) ? PageResponse.fromJSON(object.pagination) : undefined,\n };\n },\n\n toJSON(message: QueryPricesResponse): unknown {\n const obj: any = {};\n if (message.prices?.length) {\n obj.prices = message.prices.map((e) => PriceData.toJSON(e));\n }\n if (message.pagination !== undefined) {\n obj.pagination = PageResponse.toJSON(message.pagination);\n }\n return obj;\n },\n fromPartial(object: DeepPartial<QueryPricesResponse>): QueryPricesResponse {\n const message = createBaseQueryPricesResponse();\n message.prices = object.prices?.map((e) => PriceData.fromPartial(e)) || [];\n message.pagination = (object.pagination !== undefined && object.pagination !== null)\n ? PageResponse.fromPartial(object.pagination)\n : undefined;\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\ntype _unused_DeepPartial<T> = T extends Builtin ? T\n : T extends Long ? string | number | Long : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\nfunction _unused_toTimestamp(date: Date): Timestamp {\n const seconds = numberToLong(Math.trunc(date.getTime() / 1_000));\n const nanos = (date.getTime() % 1_000) * 1_000_000;\n return { seconds, nanos };\n}\n\nfunction _unused_fromTimestamp(t: Timestamp): Date {\n let millis = (t.seconds.toNumber() || 0) * 1_000;\n millis += (t.nanos || 0) / 1_000_000;\n return new globalThis.Date(millis);\n}\n\nfunction _unused_fromJsonTimestamp(o: any): Date {\n if (o instanceof globalThis.Date) {\n return o;\n } else if (typeof o === \"string\") {\n return new globalThis.Date(o);\n } else {\n return fromTimestamp(Timestamp.fromJSON(o));\n }\n}\n\nfunction _unused_numberToLong(number: number) {\n return Long.fromNumber(number);\n}\n\nfunction _unused_isSet(value: any): boolean {\n return value !== null && value !== undefined;\n}\n\ninterface _unused_MessageFns<T, V extends string> {\n readonly $type: V;\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n fromJSON(object: any): T;\n toJSON(message: T): unknown;\n create(base?: DeepPartial<T>): T;\n fromPartial(object: DeepPartial<T>): T;\n}\n\nexport const PriceDataState = patched(_PriceDataState);\nexport const AggregatedPrice = patched(_AggregatedPrice);\n", "import { isSet } from \"../../../../../encoding/typeEncodingHelpers.ts\"\nimport type { DeepPartial, MessageFns } from \"../../../../../encoding/typeEncodingHelpers.ts\"\n// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.7.7\n// protoc unknown\n// source: akash/oracle/v1/params.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\nimport Long from \"long\";\nimport { Any } from \"../../../google/protobuf/any.ts\";\n\n/** PythContractParams contains configuration for Pyth price feeds */\nexport interface PythContractParams {\n /** akt_price_feed_id is the Pyth price feed identifier for AKT/USD */\n aktPriceFeedId: string;\n}\n\n/** Params defines the parameters for the oracle module */\nexport interface Params {\n /**\n * sources addresses allowed to write prices into oracle module\n * those are to be smartcontract addresses\n */\n sources: string[];\n /** Minimum number of price sources required (default: 2) */\n minPriceSources: number;\n /** Maximum price staleness in blocks (default: 50 = ~ 5 minutes) */\n maxPriceStalenessBlocks: Long;\n /** TWAP window in blocks (default: 50 = ~ 5 minutes) */\n twapWindow: Long;\n /** Maximum price deviation in basis points (default: 150 = 1.5%) */\n maxPriceDeviationBps: Long;\n /** feed_contracts_params contains the configuration for the price feed contracts */\n feedContractsParams: Any[];\n}\n\nfunction createBasePythContractParams(): PythContractParams {\n return { aktPriceFeedId: \"\" };\n}\n\nexport const PythContractParams: MessageFns<PythContractParams, \"akash.oracle.v1.PythContractParams\"> = {\n $type: \"akash.oracle.v1.PythContractParams\" as const,\n\n encode(message: PythContractParams, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.aktPriceFeedId !== \"\") {\n writer.uint32(10).string(message.aktPriceFeedId);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PythContractParams {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePythContractParams();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.aktPriceFeedId = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PythContractParams {\n return { aktPriceFeedId: isSet(object.akt_price_feed_id) ? globalThis.String(object.akt_price_feed_id) : \"\" };\n },\n\n toJSON(message: PythContractParams): unknown {\n const obj: any = {};\n if (message.aktPriceFeedId !== \"\") {\n obj.akt_price_feed_id = message.aktPriceFeedId;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PythContractParams>): PythContractParams {\n const message = createBasePythContractParams();\n message.aktPriceFeedId = object.aktPriceFeedId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseParams(): Params {\n return {\n sources: [],\n minPriceSources: 0,\n maxPriceStalenessBlocks: Long.ZERO,\n twapWindow: Long.ZERO,\n maxPriceDeviationBps: Long.UZERO,\n feedContractsParams: [],\n };\n}\n\nexport const Params: MessageFns<Params, \"akash.oracle.v1.Params\"> = {\n $type: \"akash.oracle.v1.Params\" as const,\n\n encode(message: Params, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n for (const v of message.sources) {\n writer.uint32(10).string(v!);\n }\n if (message.minPriceSources !== 0) {\n writer.uint32(16).uint32(message.minPriceSources);\n }\n if (!message.maxPriceStalenessBlocks.equals(Long.ZERO)) {\n writer.uint32(24).int64(message.maxPriceStalenessBlocks.toString());\n }\n if (!message.twapWindow.equals(Long.ZERO)) {\n writer.uint32(32).int64(message.twapWindow.toString());\n }\n if (!message.maxPriceDeviationBps.equals(Long.UZERO)) {\n writer.uint32(40).uint64(message.maxPriceDeviationBps.toString());\n }\n for (const v of message.feedContractsParams) {\n Any.encode(v!, writer.uint32(50).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): Params {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseParams();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.sources.push(reader.string());\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.minPriceSources = reader.uint32();\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.maxPriceStalenessBlocks = Long.fromString(reader.int64().toString());\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.twapWindow = Long.fromString(reader.int64().toString());\n continue;\n }\n case 5: {\n if (tag !== 40) {\n break;\n }\n\n message.maxPriceDeviationBps = Long.fromString(reader.uint64().toString(), true);\n continue;\n }\n case 6: {\n if (tag !== 50) {\n break;\n }\n\n message.feedContractsParams.push(Any.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Params {\n return {\n sources: globalThis.Array.isArray(object?.sources) ? object.sources.map((e: any) => globalThis.String(e)) : [],\n minPriceSources: isSet(object.min_price_sources) ? globalThis.Number(object.min_price_sources) : 0,\n maxPriceStalenessBlocks: isSet(object.max_price_staleness_blocks)\n ? Long.fromValue(object.max_price_staleness_blocks)\n : Long.ZERO,\n twapWindow: isSet(object.twap_window) ? Long.fromValue(object.twap_window) : Long.ZERO,\n maxPriceDeviationBps: isSet(object.max_price_deviation_bps)\n ? Long.fromValue(object.max_price_deviation_bps)\n : Long.UZERO,\n feedContractsParams: globalThis.Array.isArray(object?.feed_contracts_params)\n ? object.feed_contracts_params.map((e: any) => Any.fromJSON(e))\n : [],\n };\n },\n\n toJSON(message: Params): unknown {\n const obj: any = {};\n if (message.sources?.length) {\n obj.sources = message.sources;\n }\n if (message.minPriceSources !== 0) {\n obj.min_price_sources = Math.round(message.minPriceSources);\n }\n if (!message.maxPriceStalenessBlocks.equals(Long.ZERO)) {\n obj.max_price_staleness_blocks = (message.maxPriceStalenessBlocks || Long.ZERO).toString();\n }\n if (!message.twapWindow.equals(Long.ZERO)) {\n obj.twap_window = (message.twapWindow || Long.ZERO).toString();\n }\n if (!message.maxPriceDeviationBps.equals(Long.UZERO)) {\n obj.max_price_deviation_bps = (message.maxPriceDeviationBps || Long.UZERO).toString();\n }\n if (message.feedContractsParams?.length) {\n obj.feed_contracts_params = message.feedContractsParams.map((e) => Any.toJSON(e));\n }\n return obj;\n },\n fromPartial(object: DeepPartial<Params>): Params {\n const message = createBaseParams();\n message.sources = object.sources?.map((e) => e) || [];\n message.minPriceSources = object.minPriceSources ?? 0;\n message.maxPriceStalenessBlocks =\n (object.maxPriceStalenessBlocks !== undefined && object.maxPriceStalenessBlocks !== null)\n ? Long.fromValue(object.maxPriceStalenessBlocks)\n : Long.ZERO;\n message.twapWindow = (object.twapWindow !== undefined && object.twapWindow !== null)\n ? Long.fromValue(object.twapWindow)\n : Long.ZERO;\n message.maxPriceDeviationBps = (object.maxPriceDeviationBps !== undefined && object.maxPriceDeviationBps !== null)\n ? Long.fromValue(object.maxPriceDeviationBps)\n : Long.UZERO;\n message.feedContractsParams = object.feedContractsParams?.map((e) => Any.fromPartial(e)) || [];\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\ntype _unused_DeepPartial<T> = T extends Builtin ? T\n : T extends Long ? string | number | Long : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\nfunction _unused_isSet(value: any): boolean {\n return value !== null && value !== undefined;\n}\n\ninterface _unused_MessageFns<T, V extends string> {\n readonly $type: V;\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n fromJSON(object: any): T;\n toJSON(message: T): unknown;\n create(base?: DeepPartial<T>): T;\n fromPartial(object: DeepPartial<T>): T;\n}\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { patched } from \"../../../../patches/nodePatchMessage.ts\";\nimport { toTimestamp, fromTimestamp, fromJsonTimestamp, numberToLong, isSet } from \"../../../../../encoding/typeEncodingHelpers.ts\"\nimport type { DeepPartial, MessageFns } from \"../../../../../encoding/typeEncodingHelpers.ts\"\n// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.7.7\n// protoc unknown\n// source: akash/oracle/v1/prices.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\nimport Long from \"long\";\nimport { PageRequest, PageResponse } from \"../../../cosmos/base/query/v1beta1/pagination.ts\";\nimport { Timestamp } from \"../../../google/protobuf/timestamp.ts\";\n\n/** DataID uniquely identifies a price pair by asset and base denomination */\nexport interface DataID {\n /** denom is the asset denomination (e.g., \"uakt\") */\n denom: string;\n /** base_denom is the base denomination for the price pair (e.g., \"usd\") */\n baseDenom: string;\n}\n\n/** PriceDataID identifies price data from a specific source for a specific pair */\nexport interface PriceDataID {\n /** source is the index of the price source (oracle provider) */\n source: number;\n /** denom is the asset denomination */\n denom: string;\n /** base_denom is the base denomination for the price pair */\n baseDenom: string;\n}\n\n/**\n * PriceDataRecordID represents a price from a specific source at a specific time.\n * It also represents a single data point in TWAP history\n */\nexport interface PriceDataRecordID {\n /** source is the index of the price source (oracle provider) */\n source: number;\n /** denom is the asset denomination */\n denom: string;\n /** base_denom is the base denomination for the price pair */\n baseDenom: string;\n /** height is the block height when this price was recorded */\n height: Long;\n}\n\n/** PriceDataState represents the price value and timestamp for a price entry */\nexport interface PriceDataState {\n /** price is the decimal price value */\n price: string;\n /** timestamp is when the price was recorded */\n timestamp: Date | undefined;\n}\n\n/** PriceData combines a price record identifier with its state */\nexport interface PriceData {\n /** id uniquely identifies this price record */\n id:\n | PriceDataRecordID\n | undefined;\n /** state contains the price value and timestamp */\n state: PriceDataState | undefined;\n}\n\n/** AggregatedPrice represents the final aggregated price from all sources */\nexport interface AggregatedPrice {\n /** denom is the asset denomination */\n denom: string;\n /** twap is the time-weighted average price over the configured window */\n twap: string;\n /** median_price is the median of all source prices */\n medianPrice: string;\n /** min_price is the minimum price from all sources */\n minPrice: string;\n /** max_price is the maximum price from all sources */\n maxPrice: string;\n /** timestamp is when the aggregated price was computed */\n timestamp:\n | Date\n | undefined;\n /** num_sources is the number of price sources contributing to this aggregation */\n numSources: number;\n /** deviation_bps is the price deviation in basis points between min and max prices */\n deviationBps: Long;\n}\n\n/** PriceHealth represents the health status of a price feed */\nexport interface PriceHealth {\n /** denom is the asset denomination */\n denom: string;\n /** is_healthy indicates if the price feed meets all health requirements */\n isHealthy: boolean;\n /** has_min_sources indicates if minimum number of sources are reporting */\n hasMinSources: boolean;\n /** deviation_ok indicates if price deviation is within acceptable limits */\n deviationOk: boolean;\n /** total_sources indicates total amount of sources registered for price calculations */\n totalSources: number;\n /** total_healthy_sources indicates total usable sources for price calculations */\n totalHealthySources: number;\n /** failure_reason lists reasons for unhealthy status, if any */\n failureReason: string[];\n}\n\n/** PricesFilter defines filters used to query price data */\nexport interface PricesFilter {\n /** asset_denom is the asset denomination to filter by */\n assetDenom: string;\n /** base_denom is the base denomination to filter by */\n baseDenom: string;\n /** height is the block height to filter by */\n height: Long;\n}\n\n/** QueryPricesRequest is the request type for querying price history */\nexport interface QueryPricesRequest {\n /** filters holds the price fields to filter the request */\n filters:\n | PricesFilter\n | undefined;\n /** pagination is used to paginate the request */\n pagination: PageRequest | undefined;\n}\n\n/** QueryPricesResponse is the response type for querying price history */\nexport interface QueryPricesResponse {\n /** prices is the list of historical price data matching the filters */\n prices: PriceData[];\n /** pagination contains the information about response pagination */\n pagination: PageResponse | undefined;\n}\n\nfunction createBaseDataID(): DataID {\n return { denom: \"\", baseDenom: \"\" };\n}\n\nexport const DataID: MessageFns<DataID, \"akash.oracle.v1.DataID\"> = {\n $type: \"akash.oracle.v1.DataID\" as const,\n\n encode(message: DataID, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.denom !== \"\") {\n writer.uint32(10).string(message.denom);\n }\n if (message.baseDenom !== \"\") {\n writer.uint32(18).string(message.baseDenom);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): DataID {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDataID();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.baseDenom = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): DataID {\n return {\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n baseDenom: isSet(object.base_denom) ? globalThis.String(object.base_denom) : \"\",\n };\n },\n\n toJSON(message: DataID): unknown {\n const obj: any = {};\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.baseDenom !== \"\") {\n obj.base_denom = message.baseDenom;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<DataID>): DataID {\n const message = createBaseDataID();\n message.denom = object.denom ?? \"\";\n message.baseDenom = object.baseDenom ?? \"\";\n return message;\n },\n};\n\nfunction createBasePriceDataID(): PriceDataID {\n return { source: 0, denom: \"\", baseDenom: \"\" };\n}\n\nexport const PriceDataID: MessageFns<PriceDataID, \"akash.oracle.v1.PriceDataID\"> = {\n $type: \"akash.oracle.v1.PriceDataID\" as const,\n\n encode(message: PriceDataID, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.source !== 0) {\n writer.uint32(8).uint32(message.source);\n }\n if (message.denom !== \"\") {\n writer.uint32(18).string(message.denom);\n }\n if (message.baseDenom !== \"\") {\n writer.uint32(26).string(message.baseDenom);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceDataID {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceDataID();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.source = reader.uint32();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.baseDenom = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceDataID {\n return {\n source: isSet(object.source) ? globalThis.Number(object.source) : 0,\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n baseDenom: isSet(object.base_denom) ? globalThis.String(object.base_denom) : \"\",\n };\n },\n\n toJSON(message: PriceDataID): unknown {\n const obj: any = {};\n if (message.source !== 0) {\n obj.source = Math.round(message.source);\n }\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.baseDenom !== \"\") {\n obj.base_denom = message.baseDenom;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceDataID>): PriceDataID {\n const message = createBasePriceDataID();\n message.source = object.source ?? 0;\n message.denom = object.denom ?? \"\";\n message.baseDenom = object.baseDenom ?? \"\";\n return message;\n },\n};\n\nfunction createBasePriceDataRecordID(): PriceDataRecordID {\n return { source: 0, denom: \"\", baseDenom: \"\", height: Long.ZERO };\n}\n\nexport const PriceDataRecordID: MessageFns<PriceDataRecordID, \"akash.oracle.v1.PriceDataRecordID\"> = {\n $type: \"akash.oracle.v1.PriceDataRecordID\" as const,\n\n encode(message: PriceDataRecordID, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.source !== 0) {\n writer.uint32(8).uint32(message.source);\n }\n if (message.denom !== \"\") {\n writer.uint32(18).string(message.denom);\n }\n if (message.baseDenom !== \"\") {\n writer.uint32(26).string(message.baseDenom);\n }\n if (!message.height.equals(Long.ZERO)) {\n writer.uint32(32).int64(message.height.toString());\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceDataRecordID {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceDataRecordID();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 8) {\n break;\n }\n\n message.source = reader.uint32();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.baseDenom = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.height = Long.fromString(reader.int64().toString());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceDataRecordID {\n return {\n source: isSet(object.source) ? globalThis.Number(object.source) : 0,\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n baseDenom: isSet(object.base_denom) ? globalThis.String(object.base_denom) : \"\",\n height: isSet(object.height) ? Long.fromValue(object.height) : Long.ZERO,\n };\n },\n\n toJSON(message: PriceDataRecordID): unknown {\n const obj: any = {};\n if (message.source !== 0) {\n obj.source = Math.round(message.source);\n }\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.baseDenom !== \"\") {\n obj.base_denom = message.baseDenom;\n }\n if (!message.height.equals(Long.ZERO)) {\n obj.height = (message.height || Long.ZERO).toString();\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceDataRecordID>): PriceDataRecordID {\n const message = createBasePriceDataRecordID();\n message.source = object.source ?? 0;\n message.denom = object.denom ?? \"\";\n message.baseDenom = object.baseDenom ?? \"\";\n message.height = (object.height !== undefined && object.height !== null)\n ? Long.fromValue(object.height)\n : Long.ZERO;\n return message;\n },\n};\n\nfunction createBasePriceDataState(): PriceDataState {\n return { price: \"\", timestamp: undefined };\n}\n\nconst _PriceDataState: MessageFns<PriceDataState, \"akash.oracle.v1.PriceDataState\"> = {\n $type: \"akash.oracle.v1.PriceDataState\" as const,\n\n encode(message: PriceDataState, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.price !== \"\") {\n writer.uint32(10).string(message.price);\n }\n if (message.timestamp !== undefined) {\n Timestamp.encode(toTimestamp(message.timestamp), writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceDataState {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceDataState();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.price = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.timestamp = fromTimestamp(Timestamp.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceDataState {\n return {\n price: isSet(object.price) ? globalThis.String(object.price) : \"\",\n timestamp: isSet(object.timestamp) ? fromJsonTimestamp(object.timestamp) : undefined,\n };\n },\n\n toJSON(message: PriceDataState): unknown {\n const obj: any = {};\n if (message.price !== \"\") {\n obj.price = message.price;\n }\n if (message.timestamp !== undefined) {\n obj.timestamp = message.timestamp.toISOString();\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceDataState>): PriceDataState {\n const message = createBasePriceDataState();\n message.price = object.price ?? \"\";\n message.timestamp = object.timestamp ?? undefined;\n return message;\n },\n};\n\nfunction createBasePriceData(): PriceData {\n return { id: undefined, state: undefined };\n}\n\nexport const PriceData: MessageFns<PriceData, \"akash.oracle.v1.PriceData\"> = {\n $type: \"akash.oracle.v1.PriceData\" as const,\n\n encode(message: PriceData, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.id !== undefined) {\n PriceDataRecordID.encode(message.id, writer.uint32(10).fork()).join();\n }\n if (message.state !== undefined) {\n PriceDataState.encode(message.state, writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceData {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceData();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.id = PriceDataRecordID.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.state = PriceDataState.decode(reader, reader.uint32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceData {\n return {\n id: isSet(object.id) ? PriceDataRecordID.fromJSON(object.id) : undefined,\n state: isSet(object.state) ? PriceDataState.fromJSON(object.state) : undefined,\n };\n },\n\n toJSON(message: PriceData): unknown {\n const obj: any = {};\n if (message.id !== undefined) {\n obj.id = PriceDataRecordID.toJSON(message.id);\n }\n if (message.state !== undefined) {\n obj.state = PriceDataState.toJSON(message.state);\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceData>): PriceData {\n const message = createBasePriceData();\n message.id = (object.id !== undefined && object.id !== null) ? PriceDataRecordID.fromPartial(object.id) : undefined;\n message.state = (object.state !== undefined && object.state !== null)\n ? PriceDataState.fromPartial(object.state)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseAggregatedPrice(): AggregatedPrice {\n return {\n denom: \"\",\n twap: \"\",\n medianPrice: \"\",\n minPrice: \"\",\n maxPrice: \"\",\n timestamp: undefined,\n numSources: 0,\n deviationBps: Long.UZERO,\n };\n}\n\nconst _AggregatedPrice: MessageFns<AggregatedPrice, \"akash.oracle.v1.AggregatedPrice\"> = {\n $type: \"akash.oracle.v1.AggregatedPrice\" as const,\n\n encode(message: AggregatedPrice, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.denom !== \"\") {\n writer.uint32(10).string(message.denom);\n }\n if (message.twap !== \"\") {\n writer.uint32(18).string(message.twap);\n }\n if (message.medianPrice !== \"\") {\n writer.uint32(26).string(message.medianPrice);\n }\n if (message.minPrice !== \"\") {\n writer.uint32(34).string(message.minPrice);\n }\n if (message.maxPrice !== \"\") {\n writer.uint32(42).string(message.maxPrice);\n }\n if (message.timestamp !== undefined) {\n Timestamp.encode(toTimestamp(message.timestamp), writer.uint32(50).fork()).join();\n }\n if (message.numSources !== 0) {\n writer.uint32(56).uint32(message.numSources);\n }\n if (!message.deviationBps.equals(Long.UZERO)) {\n writer.uint32(64).uint64(message.deviationBps.toString());\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): AggregatedPrice {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseAggregatedPrice();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.twap = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 26) {\n break;\n }\n\n message.medianPrice = reader.string();\n continue;\n }\n case 4: {\n if (tag !== 34) {\n break;\n }\n\n message.minPrice = reader.string();\n continue;\n }\n case 5: {\n if (tag !== 42) {\n break;\n }\n\n message.maxPrice = reader.string();\n continue;\n }\n case 6: {\n if (tag !== 50) {\n break;\n }\n\n message.timestamp = fromTimestamp(Timestamp.decode(reader, reader.uint32()));\n continue;\n }\n case 7: {\n if (tag !== 56) {\n break;\n }\n\n message.numSources = reader.uint32();\n continue;\n }\n case 8: {\n if (tag !== 64) {\n break;\n }\n\n message.deviationBps = Long.fromString(reader.uint64().toString(), true);\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): AggregatedPrice {\n return {\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n twap: isSet(object.twap) ? globalThis.String(object.twap) : \"\",\n medianPrice: isSet(object.median_price) ? globalThis.String(object.median_price) : \"\",\n minPrice: isSet(object.min_price) ? globalThis.String(object.min_price) : \"\",\n maxPrice: isSet(object.max_price) ? globalThis.String(object.max_price) : \"\",\n timestamp: isSet(object.timestamp) ? fromJsonTimestamp(object.timestamp) : undefined,\n numSources: isSet(object.num_sources) ? globalThis.Number(object.num_sources) : 0,\n deviationBps: isSet(object.deviation_bps) ? Long.fromValue(object.deviation_bps) : Long.UZERO,\n };\n },\n\n toJSON(message: AggregatedPrice): unknown {\n const obj: any = {};\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.twap !== \"\") {\n obj.twap = message.twap;\n }\n if (message.medianPrice !== \"\") {\n obj.median_price = message.medianPrice;\n }\n if (message.minPrice !== \"\") {\n obj.min_price = message.minPrice;\n }\n if (message.maxPrice !== \"\") {\n obj.max_price = message.maxPrice;\n }\n if (message.timestamp !== undefined) {\n obj.timestamp = message.timestamp.toISOString();\n }\n if (message.numSources !== 0) {\n obj.num_sources = Math.round(message.numSources);\n }\n if (!message.deviationBps.equals(Long.UZERO)) {\n obj.deviation_bps = (message.deviationBps || Long.UZERO).toString();\n }\n return obj;\n },\n fromPartial(object: DeepPartial<AggregatedPrice>): AggregatedPrice {\n const message = createBaseAggregatedPrice();\n message.denom = object.denom ?? \"\";\n message.twap = object.twap ?? \"\";\n message.medianPrice = object.medianPrice ?? \"\";\n message.minPrice = object.minPrice ?? \"\";\n message.maxPrice = object.maxPrice ?? \"\";\n message.timestamp = object.timestamp ?? undefined;\n message.numSources = object.numSources ?? 0;\n message.deviationBps = (object.deviationBps !== undefined && object.deviationBps !== null)\n ? Long.fromValue(object.deviationBps)\n : Long.UZERO;\n return message;\n },\n};\n\nfunction createBasePriceHealth(): PriceHealth {\n return {\n denom: \"\",\n isHealthy: false,\n hasMinSources: false,\n deviationOk: false,\n totalSources: 0,\n totalHealthySources: 0,\n failureReason: [],\n };\n}\n\nexport const PriceHealth: MessageFns<PriceHealth, \"akash.oracle.v1.PriceHealth\"> = {\n $type: \"akash.oracle.v1.PriceHealth\" as const,\n\n encode(message: PriceHealth, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.denom !== \"\") {\n writer.uint32(10).string(message.denom);\n }\n if (message.isHealthy !== false) {\n writer.uint32(24).bool(message.isHealthy);\n }\n if (message.hasMinSources !== false) {\n writer.uint32(32).bool(message.hasMinSources);\n }\n if (message.deviationOk !== false) {\n writer.uint32(40).bool(message.deviationOk);\n }\n if (message.totalSources !== 0) {\n writer.uint32(48).uint32(message.totalSources);\n }\n if (message.totalHealthySources !== 0) {\n writer.uint32(56).uint32(message.totalHealthySources);\n }\n for (const v of message.failureReason) {\n writer.uint32(66).string(v!);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PriceHealth {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePriceHealth();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.denom = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.isHealthy = reader.bool();\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.hasMinSources = reader.bool();\n continue;\n }\n case 5: {\n if (tag !== 40) {\n break;\n }\n\n message.deviationOk = reader.bool();\n continue;\n }\n case 6: {\n if (tag !== 48) {\n break;\n }\n\n message.totalSources = reader.uint32();\n continue;\n }\n case 7: {\n if (tag !== 56) {\n break;\n }\n\n message.totalHealthySources = reader.uint32();\n continue;\n }\n case 8: {\n if (tag !== 66) {\n break;\n }\n\n message.failureReason.push(reader.string());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PriceHealth {\n return {\n denom: isSet(object.denom) ? globalThis.String(object.denom) : \"\",\n isHealthy: isSet(object.is_healthy) ? globalThis.Boolean(object.is_healthy) : false,\n hasMinSources: isSet(object.has_min_sources) ? globalThis.Boolean(object.has_min_sources) : false,\n deviationOk: isSet(object.deviation_ok) ? globalThis.Boolean(object.deviation_ok) : false,\n totalSources: isSet(object.total_sources) ? globalThis.Number(object.total_sources) : 0,\n totalHealthySources: isSet(object.total_healthy_sources) ? globalThis.Number(object.total_healthy_sources) : 0,\n failureReason: globalThis.Array.isArray(object?.failure_reason)\n ? object.failure_reason.map((e: any) => globalThis.String(e))\n : [],\n };\n },\n\n toJSON(message: PriceHealth): unknown {\n const obj: any = {};\n if (message.denom !== \"\") {\n obj.denom = message.denom;\n }\n if (message.isHealthy !== false) {\n obj.is_healthy = message.isHealthy;\n }\n if (message.hasMinSources !== false) {\n obj.has_min_sources = message.hasMinSources;\n }\n if (message.deviationOk !== false) {\n obj.deviation_ok = message.deviationOk;\n }\n if (message.totalSources !== 0) {\n obj.total_sources = Math.round(message.totalSources);\n }\n if (message.totalHealthySources !== 0) {\n obj.total_healthy_sources = Math.round(message.totalHealthySources);\n }\n if (message.failureReason?.length) {\n obj.failure_reason = message.failureReason;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PriceHealth>): PriceHealth {\n const message = createBasePriceHealth();\n message.denom = object.denom ?? \"\";\n message.isHealthy = object.isHealthy ?? false;\n message.hasMinSources = object.hasMinSources ?? false;\n message.deviationOk = object.deviationOk ?? false;\n message.totalSources = object.totalSources ?? 0;\n message.totalHealthySources = object.totalHealthySources ?? 0;\n message.failureReason = object.failureReason?.map((e) => e) || [];\n return message;\n },\n};\n\nfunction createBasePricesFilter(): PricesFilter {\n return { assetDenom: \"\", baseDenom: \"\", height: Long.ZERO };\n}\n\nexport const PricesFilter: MessageFns<PricesFilter, \"akash.oracle.v1.PricesFilter\"> = {\n $type: \"akash.oracle.v1.PricesFilter\" as const,\n\n encode(message: PricesFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.assetDenom !== \"\") {\n writer.uint32(10).string(message.assetDenom);\n }\n if (message.baseDenom !== \"\") {\n writer.uint32(18).string(message.baseDenom);\n }\n if (!message.height.equals(Long.ZERO)) {\n writer.uint32(24).int64(message.height.toString());\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PricesFilter {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePricesFilter();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.assetDenom = reader.string();\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.baseDenom = reader.string();\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.height = Long.fromString(reader.int64().toString());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PricesFilter {\n return {\n assetDenom: isSet(object.asset_denom) ? globalThis.String(object.asset_denom) : \"\",\n baseDenom: isSet(object.base_denom) ? globalThis.String(object.base_denom) : \"\",\n height: isSet(object.height) ? Long.fromValue(object.height) : Long.ZERO,\n };\n },\n\n toJSON(message: PricesFilter): unknown {\n const obj: any = {};\n if (message.assetDenom !== \"\") {\n obj.asset_denom = message.assetDenom;\n }\n if (message.baseDenom !== \"\") {\n obj.base_denom = message.baseDenom;\n }\n if (!message.height.equals(Long.ZERO)) {\n obj.height = (message.height || Long.ZERO).toString();\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PricesFilter>): PricesFilter {\n const message = createBasePricesFilter();\n message.assetDenom = object.assetDenom ?? \"\";\n message.baseDenom = object.baseDenom ?? \"\";\n message.height = (object.height !== undefined && object.height !== null)\n ? Long.fromValue(object.height)\n : Long.ZERO;\n return message;\n },\n};\n\nfunction createBaseQueryPricesRequest(): QueryPricesRequest {\n return { filters: undefined, pagination: undefined };\n}\n\nexport const QueryPricesRequest: MessageFns<QueryPricesRequest, \"akash.oracle.v1.QueryPricesRequest\"> = {\n $type: \"akash.oracle.v1.QueryPricesRequest\" as const,\n\n encode(message: QueryPricesRequest, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.filters !== undefined) {\n PricesFilter.encode(message.filters, writer.uint32(10).fork()).join();\n }\n if (message.pagination !== undefined) {\n PageRequest.encode(message.pagination, writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): QueryPricesRequest {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseQueryPricesRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.filters = PricesFilter.decode(reader, reader.uint32());\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.pagination = PageRequest.decode(reader, reader.uint32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): QueryPricesRequest {\n return {\n filters: isSet(object.filters) ? PricesFilter.fromJSON(object.filters) : undefined,\n pagination: isSet(object.pagination) ? PageRequest.fromJSON(object.pagination) : undefined,\n };\n },\n\n toJSON(message: QueryPricesRequest): unknown {\n const obj: any = {};\n if (message.filters !== undefined) {\n obj.filters = PricesFilter.toJSON(message.filters);\n }\n if (message.pagination !== undefined) {\n obj.pagination = PageRequest.toJSON(message.pagination);\n }\n return obj;\n },\n fromPartial(object: DeepPartial<QueryPricesRequest>): QueryPricesRequest {\n const message = createBaseQueryPricesRequest();\n message.filters = (object.filters !== undefined && object.filters !== null)\n ? PricesFilter.fromPartial(object.filters)\n : undefined;\n message.pagination = (object.pagination !== undefined && object.pagination !== null)\n ? PageRequest.fromPartial(object.pagination)\n : undefined;\n return message;\n },\n};\n\nfunction createBaseQueryPricesResponse(): QueryPricesResponse {\n return { prices: [], pagination: undefined };\n}\n\nexport const QueryPricesResponse: MessageFns<QueryPricesResponse, \"akash.oracle.v1.QueryPricesResponse\"> = {\n $type: \"akash.oracle.v1.QueryPricesResponse\" as const,\n\n encode(message: QueryPricesResponse, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n for (const v of message.prices) {\n PriceData.encode(v!, writer.uint32(10).fork()).join();\n }\n if (message.pagination !== undefined) {\n PageResponse.encode(message.pagination, writer.uint32(18).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): QueryPricesResponse {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseQueryPricesResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.prices.push(PriceData.decode(reader, reader.uint32()));\n continue;\n }\n case 2: {\n if (tag !== 18) {\n break;\n }\n\n message.pagination = PageResponse.decode(reader, reader.uint32());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): QueryPricesResponse {\n return {\n prices: globalThis.Array.isArray(object?.prices) ? object.prices.map((e: any) => PriceData.fromJSON(e)) : [],\n pagination: isSet(object.pagination) ? PageResponse.fromJSON(object.pagination) : undefined,\n };\n },\n\n toJSON(message: QueryPricesResponse): unknown {\n const obj: any = {};\n if (message.prices?.length) {\n obj.prices = message.prices.map((e) => PriceData.toJSON(e));\n }\n if (message.pagination !== undefined) {\n obj.pagination = PageResponse.toJSON(message.pagination);\n }\n return obj;\n },\n fromPartial(object: DeepPartial<QueryPricesResponse>): QueryPricesResponse {\n const message = createBaseQueryPricesResponse();\n message.prices = object.prices?.map((e) => PriceData.fromPartial(e)) || [];\n message.pagination = (object.pagination !== undefined && object.pagination !== null)\n ? PageResponse.fromPartial(object.pagination)\n : undefined;\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\ntype _unused_DeepPartial<T> = T extends Builtin ? T\n : T extends Long ? string | number | Long : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\nfunction _unused_toTimestamp(date: Date): Timestamp {\n const seconds = numberToLong(Math.trunc(date.getTime() / 1_000));\n const nanos = (date.getTime() % 1_000) * 1_000_000;\n return { seconds, nanos };\n}\n\nfunction _unused_fromTimestamp(t: Timestamp): Date {\n let millis = (t.seconds.toNumber() || 0) * 1_000;\n millis += (t.nanos || 0) / 1_000_000;\n return new globalThis.Date(millis);\n}\n\nfunction _unused_fromJsonTimestamp(o: any): Date {\n if (o instanceof globalThis.Date) {\n return o;\n } else if (typeof o === \"string\") {\n return new globalThis.Date(o);\n } else {\n return fromTimestamp(Timestamp.fromJSON(o));\n }\n}\n\nfunction _unused_numberToLong(number: number) {\n return Long.fromNumber(number);\n}\n\nfunction _unused_isSet(value: any): boolean {\n return value !== null && value !== undefined;\n}\n\ninterface _unused_MessageFns<T, V extends string> {\n readonly $type: V;\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n fromJSON(object: any): T;\n toJSON(message: T): unknown;\n create(base?: DeepPartial<T>): T;\n fromPartial(object: DeepPartial<T>): T;\n}\n\nexport const PriceDataState = patched(_PriceDataState);\nexport const AggregatedPrice = patched(_AggregatedPrice);\n", "import { isSet } from \"../../../../../encoding/typeEncodingHelpers.ts\"\nimport type { DeepPartial, MessageFns } from \"../../../../../encoding/typeEncodingHelpers.ts\"\n// Code generated by protoc-gen-ts_proto. DO NOT EDIT.\n// versions:\n// protoc-gen-ts_proto v2.7.7\n// protoc unknown\n// source: akash/oracle/v1/params.proto\n\n/* eslint-disable */\nimport { BinaryReader, BinaryWriter } from \"@bufbuild/protobuf/wire\";\nimport Long from \"long\";\nimport { Any } from \"../../../google/protobuf/any.ts\";\n\n/** PythContractParams contains configuration for Pyth price feeds */\nexport interface PythContractParams {\n /** akt_price_feed_id is the Pyth price feed identifier for AKT/USD */\n aktPriceFeedId: string;\n}\n\n/**\n * WormholeContractParams contains configuration for Wormhole guardian set.\n * This allows the Wormhole contract to pull guardian public keys from x/oracle\n * module params, enabling guardian set updates via Akash governance.\n */\nexport interface WormholeContractParams {\n /**\n * guardian_addresses is the list of Wormhole guardian addresses.\n * Each address is a 20-byte Ethereum-style address, hex-encoded.\n * The Wormhole contract uses these to verify VAA signatures.\n */\n guardianAddresses: string[];\n}\n\n/** Params defines the parameters for the oracle module */\nexport interface Params {\n /**\n * sources addresses allowed to write prices into oracle module\n * those are to be smartcontract addresses\n */\n sources: string[];\n /** Minimum number of price sources required (default: 2) */\n minPriceSources: number;\n /** Maximum price staleness in blocks (default: 50 = ~ 5 minutes) */\n maxPriceStalenessBlocks: Long;\n /** TWAP window in blocks (default: 50 = ~ 5 minutes) */\n twapWindow: Long;\n /** Maximum price deviation in basis points (default: 150 = 1.5%) */\n maxPriceDeviationBps: Long;\n /** feed_contracts_params contains the configuration for the price feed contracts */\n feedContractsParams: Any[];\n}\n\nfunction createBasePythContractParams(): PythContractParams {\n return { aktPriceFeedId: \"\" };\n}\n\nexport const PythContractParams: MessageFns<PythContractParams, \"akash.oracle.v1.PythContractParams\"> = {\n $type: \"akash.oracle.v1.PythContractParams\" as const,\n\n encode(message: PythContractParams, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n if (message.aktPriceFeedId !== \"\") {\n writer.uint32(10).string(message.aktPriceFeedId);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): PythContractParams {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBasePythContractParams();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.aktPriceFeedId = reader.string();\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): PythContractParams {\n return { aktPriceFeedId: isSet(object.akt_price_feed_id) ? globalThis.String(object.akt_price_feed_id) : \"\" };\n },\n\n toJSON(message: PythContractParams): unknown {\n const obj: any = {};\n if (message.aktPriceFeedId !== \"\") {\n obj.akt_price_feed_id = message.aktPriceFeedId;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<PythContractParams>): PythContractParams {\n const message = createBasePythContractParams();\n message.aktPriceFeedId = object.aktPriceFeedId ?? \"\";\n return message;\n },\n};\n\nfunction createBaseWormholeContractParams(): WormholeContractParams {\n return { guardianAddresses: [] };\n}\n\nexport const WormholeContractParams: MessageFns<WormholeContractParams, \"akash.oracle.v1.WormholeContractParams\"> = {\n $type: \"akash.oracle.v1.WormholeContractParams\" as const,\n\n encode(message: WormholeContractParams, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n for (const v of message.guardianAddresses) {\n writer.uint32(10).string(v!);\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): WormholeContractParams {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseWormholeContractParams();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.guardianAddresses.push(reader.string());\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): WormholeContractParams {\n return {\n guardianAddresses: globalThis.Array.isArray(object?.guardian_addresses)\n ? object.guardian_addresses.map((e: any) => globalThis.String(e))\n : [],\n };\n },\n\n toJSON(message: WormholeContractParams): unknown {\n const obj: any = {};\n if (message.guardianAddresses?.length) {\n obj.guardian_addresses = message.guardianAddresses;\n }\n return obj;\n },\n fromPartial(object: DeepPartial<WormholeContractParams>): WormholeContractParams {\n const message = createBaseWormholeContractParams();\n message.guardianAddresses = object.guardianAddresses?.map((e) => e) || [];\n return message;\n },\n};\n\nfunction createBaseParams(): Params {\n return {\n sources: [],\n minPriceSources: 0,\n maxPriceStalenessBlocks: Long.ZERO,\n twapWindow: Long.ZERO,\n maxPriceDeviationBps: Long.UZERO,\n feedContractsParams: [],\n };\n}\n\nexport const Params: MessageFns<Params, \"akash.oracle.v1.Params\"> = {\n $type: \"akash.oracle.v1.Params\" as const,\n\n encode(message: Params, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {\n for (const v of message.sources) {\n writer.uint32(10).string(v!);\n }\n if (message.minPriceSources !== 0) {\n writer.uint32(16).uint32(message.minPriceSources);\n }\n if (!message.maxPriceStalenessBlocks.equals(Long.ZERO)) {\n writer.uint32(24).int64(message.maxPriceStalenessBlocks.toString());\n }\n if (!message.twapWindow.equals(Long.ZERO)) {\n writer.uint32(32).int64(message.twapWindow.toString());\n }\n if (!message.maxPriceDeviationBps.equals(Long.UZERO)) {\n writer.uint32(40).uint64(message.maxPriceDeviationBps.toString());\n }\n for (const v of message.feedContractsParams) {\n Any.encode(v!, writer.uint32(50).fork()).join();\n }\n return writer;\n },\n\n decode(input: BinaryReader | Uint8Array, length?: number): Params {\n const reader = input instanceof BinaryReader ? input : new BinaryReader(input);\n const end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseParams();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1: {\n if (tag !== 10) {\n break;\n }\n\n message.sources.push(reader.string());\n continue;\n }\n case 2: {\n if (tag !== 16) {\n break;\n }\n\n message.minPriceSources = reader.uint32();\n continue;\n }\n case 3: {\n if (tag !== 24) {\n break;\n }\n\n message.maxPriceStalenessBlocks = Long.fromString(reader.int64().toString());\n continue;\n }\n case 4: {\n if (tag !== 32) {\n break;\n }\n\n message.twapWindow = Long.fromString(reader.int64().toString());\n continue;\n }\n case 5: {\n if (tag !== 40) {\n break;\n }\n\n message.maxPriceDeviationBps = Long.fromString(reader.uint64().toString(), true);\n continue;\n }\n case 6: {\n if (tag !== 50) {\n break;\n }\n\n message.feedContractsParams.push(Any.decode(reader, reader.uint32()));\n continue;\n }\n }\n if ((tag & 7) === 4 || tag === 0) {\n break;\n }\n reader.skip(tag & 7);\n }\n return message;\n },\n\n fromJSON(object: any): Params {\n return {\n sources: globalThis.Array.isArray(object?.sources) ? object.sources.map((e: any) => globalThis.String(e)) : [],\n minPriceSources: isSet(object.min_price_sources) ? globalThis.Number(object.min_price_sources) : 0,\n maxPriceStalenessBlocks: isSet(object.max_price_staleness_blocks)\n ? Long.fromValue(object.max_price_staleness_blocks)\n : Long.ZERO,\n twapWindow: isSet(object.twap_window) ? Long.fromValue(object.twap_window) : Long.ZERO,\n maxPriceDeviationBps: isSet(object.max_price_deviation_bps)\n ? Long.fromValue(object.max_price_deviation_bps)\n : Long.UZERO,\n feedContractsParams: globalThis.Array.isArray(object?.feed_contracts_params)\n ? object.feed_contracts_params.map((e: any) => Any.fromJSON(e))\n : [],\n };\n },\n\n toJSON(message: Params): unknown {\n const obj: any = {};\n if (message.sources?.length) {\n obj.sources = message.sources;\n }\n if (message.minPriceSources !== 0) {\n obj.min_price_sources = Math.round(message.minPriceSources);\n }\n if (!message.maxPriceStalenessBlocks.equals(Long.ZERO)) {\n obj.max_price_staleness_blocks = (message.maxPriceStalenessBlocks || Long.ZERO).toString();\n }\n if (!message.twapWindow.equals(Long.ZERO)) {\n obj.twap_window = (message.twapWindow || Long.ZERO).toString();\n }\n if (!message.maxPriceDeviationBps.equals(Long.UZERO)) {\n obj.max_price_deviation_bps = (message.maxPriceDeviationBps || Long.UZERO).toString();\n }\n if (message.feedContractsParams?.length) {\n obj.feed_contracts_params = message.feedContractsParams.map((e) => Any.toJSON(e));\n }\n return obj;\n },\n fromPartial(object: DeepPartial<Params>): Params {\n const message = createBaseParams();\n message.sources = object.sources?.map((e) => e) || [];\n message.minPriceSources = object.minPriceSources ?? 0;\n message.maxPriceStalenessBlocks =\n (object.maxPriceStalenessBlocks !== undefined && object.maxPriceStalenessBlocks !== null)\n ? Long.fromValue(object.maxPriceStalenessBlocks)\n : Long.ZERO;\n message.twapWindow = (object.twapWindow !== undefined && object.twapWindow !== null)\n ? Long.fromValue(object.twapWindow)\n : Long.ZERO;\n message.maxPriceDeviationBps = (object.maxPriceDeviationBps !== undefined && object.maxPriceDeviationBps !== null)\n ? Long.fromValue(object.maxPriceDeviationBps)\n : Long.UZERO;\n message.feedContractsParams = object.feedContractsParams?.map((e) => Any.fromPartial(e)) || [];\n return message;\n },\n};\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\ntype _unused_DeepPartial<T> = T extends Builtin ? T\n : T extends Long ? string | number | Long : T extends globalThis.Array<infer U> ? globalThis.Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U> ? ReadonlyArray<DeepPartial<U>>\n : T extends {} ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\nfunction _unused_isSet(value: any): boolean {\n return value !== null && value !== undefined;\n}\n\ninterface _unused_MessageFns<T, V extends string> {\n readonly $type: V;\n encode(message: T, writer?: BinaryWriter): BinaryWriter;\n decode(input: BinaryReader | Uint8Array, length?: number): T;\n fromJSON(object: any): T;\n toJSON(message: T): unknown;\n create(base?: DeepPartial<T>): T;\n fromPartial(object: DeepPartial<T>): T;\n}\n"],
5
+ "mappings": "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",
6
6
  "names": ["BinaryReader", "BinaryWriter", "Long", "BinaryWriter", "BinaryReader", "Long"]
7
7
  }
@@ -2,7 +2,7 @@ import {
2
2
  AggregatedPrice,
3
3
  Params,
4
4
  PriceHealth
5
- } from "./chunk-MQPC6TDF.js";
5
+ } from "./chunk-C3DBWOZD.js";
6
6
  import {
7
7
  isSet
8
8
  } from "./chunk-35BIJBXD.js";
@@ -347,4 +347,4 @@ export {
347
347
  QueryAggregatedPriceRequest,
348
348
  QueryAggregatedPriceResponse
349
349
  };
350
- //# sourceMappingURL=chunk-TCVGOF7L.js.map
350
+ //# sourceMappingURL=chunk-DJASDN6A.js.map
@@ -591,8 +591,10 @@ export {
591
591
  GPU,
592
592
  Memory,
593
593
  Endpoint_Kind,
594
+ endpoint_KindFromJSON,
595
+ endpoint_KindToJSON,
594
596
  Endpoint,
595
597
  Storage,
596
598
  Resources
597
599
  };
598
- //# sourceMappingURL=chunk-5DCYIWCG.js.map
600
+ //# sourceMappingURL=chunk-E76SLJJ3.js.map
@@ -1,7 +1,9 @@
1
1
  import {
2
- Params,
2
+ Params
3
+ } from "./chunk-KFWTFROT.js";
4
+ import {
3
5
  ResourceOffer
4
- } from "./chunk-C7UQYVYH.js";
6
+ } from "./chunk-Y7JCYDLU.js";
5
7
  import {
6
8
  LeaseFilters,
7
9
  OrderID
@@ -18,7 +20,7 @@ import {
18
20
  } from "./chunk-LKYHOABO.js";
19
21
  import {
20
22
  GroupSpec
21
- } from "./chunk-5YECXI3P.js";
23
+ } from "./chunk-RUC3LXDX.js";
22
24
  import {
23
25
  Account
24
26
  } from "./chunk-CT7AHZAH.js";
@@ -1429,4 +1431,4 @@ export {
1429
1431
  QueryParamsRequest,
1430
1432
  QueryParamsResponse
1431
1433
  };
1432
- //# sourceMappingURL=chunk-4D3QNKFB.js.map
1434
+ //# sourceMappingURL=chunk-EKFJV4QU.js.map