@akashnetwork/chain-sdk 1.0.0-alpha.25 → 1.0.0-alpha.27
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.
- package/dist/cjs/generated/createNodeSDK.cjs +10 -8
- package/dist/cjs/generated/createNodeSDK.cjs.map +2 -2
- package/dist/cjs/generated/protos/akash/bme/v1/events.cjs +261 -2
- package/dist/cjs/generated/protos/akash/bme/v1/events.cjs.map +2 -2
- package/dist/cjs/generated/protos/akash/bme/v1/filters.cjs.map +1 -1
- package/dist/cjs/generated/protos/akash/bme/v1/msgs.cjs +18 -32
- package/dist/cjs/generated/protos/akash/bme/v1/msgs.cjs.map +2 -2
- package/dist/cjs/generated/protos/akash/bme/v1/service_akash.cjs +8 -0
- package/dist/cjs/generated/protos/akash/bme/v1/service_akash.cjs.map +2 -2
- package/dist/cjs/generated/protos/akash/bme/v1/types.cjs +152 -0
- package/dist/cjs/generated/protos/akash/bme/v1/types.cjs.map +3 -3
- package/dist/cjs/generated/protos/akash/escrow/types/v1/deposit.cjs +2 -17
- package/dist/cjs/generated/protos/akash/escrow/types/v1/deposit.cjs.map +2 -2
- package/dist/cjs/generated/protos/akash/escrow/v1/authz.cjs +17 -2
- package/dist/cjs/generated/protos/akash/escrow/v1/authz.cjs.map +2 -2
- package/dist/cjs/generated/protos/akash/oracle/v1/params.cjs +1 -103
- package/dist/cjs/generated/protos/akash/oracle/v1/params.cjs.map +2 -2
- package/dist/cjs/generated/protos/akash/oracle/v1/query.cjs +1 -133
- package/dist/cjs/generated/protos/akash/oracle/v1/query.cjs.map +2 -2
- package/dist/cjs/generated/protos/akash/oracle/v1/query_akash.cjs +0 -9
- package/dist/cjs/generated/protos/akash/oracle/v1/query_akash.cjs.map +2 -2
- package/dist/cjs/generated/protos/index.akash.v1.cjs +6 -7
- package/dist/cjs/generated/protos/index.akash.v1.cjs.map +2 -2
- package/dist/cjs/utils/yaml.cjs +3 -0
- package/dist/cjs/utils/yaml.cjs.map +2 -2
- package/dist/esm/{chunk-CT7AHZAH.js → chunk-BNXSING3.js} +3 -18
- package/dist/esm/chunk-BNXSING3.js.map +7 -0
- package/dist/esm/{chunk-ZYQHH55Q.js → chunk-CWUY6LIH.js} +3 -3
- package/dist/esm/{chunk-EKFJV4QU.js → chunk-DZA4DZ5G.js} +3 -3
- package/dist/esm/{chunk-6CIH635G.js → chunk-FXRP7A3E.js} +2 -2
- package/dist/esm/{chunk-UFJRY3ID.js → chunk-JPXDOHZO.js} +20 -34
- package/dist/esm/chunk-JPXDOHZO.js.map +7 -0
- package/dist/esm/{chunk-6FPGPRCO.js → chunk-OAFZZVHG.js} +2 -2
- package/dist/esm/{chunk-OL4JUIQC.js → chunk-OYYJMHQ3.js} +2 -2
- package/dist/esm/chunk-OYYJMHQ3.js.map +7 -0
- package/dist/esm/{chunk-BWGYKJLS.js → chunk-V2U5JQHJ.js} +2 -2
- package/dist/esm/{chunk-MVADLHLI.js → chunk-VG4MSYO3.js} +2 -2
- package/dist/esm/{chunk-LGAXM6RX.js → chunk-W2FEAX2Q.js} +153 -1
- package/dist/esm/chunk-W2FEAX2Q.js.map +7 -0
- package/dist/esm/{chunk-ZRM47VCZ.js → chunk-WH2VEITL.js} +21 -16
- package/dist/esm/{chunk-ZRM47VCZ.js.map → chunk-WH2VEITL.js.map} +2 -2
- package/dist/esm/{chunk-C3DBWOZD.js → chunk-XCOULB5P.js} +1 -103
- package/dist/esm/{chunk-C3DBWOZD.js.map → chunk-XCOULB5P.js.map} +3 -3
- package/dist/esm/{chunk-DJASDN6A.js → chunk-Z3KCQDCI.js} +2 -134
- package/dist/esm/chunk-Z3KCQDCI.js.map +7 -0
- package/dist/esm/generated/protos/index.akash.v1.js +300 -28
- package/dist/esm/generated/protos/index.akash.v1.js.map +2 -2
- package/dist/esm/generated/protos/index.akash.v1beta4.js +3 -3
- package/dist/esm/generated/protos/index.akash.v1beta5.js +3 -3
- package/dist/esm/index.js +4 -4
- package/dist/esm/index.web.js +4 -4
- package/dist/esm/{query_akash-LW3YJGS6.js → query_akash-2XAWK4QC.js} +3 -3
- package/dist/esm/{query_akash-FYNRLU72.js → query_akash-347IWP76.js} +4 -4
- package/dist/esm/{query_akash-4OVOGRBT.js → query_akash-GKNMAC72.js} +4 -4
- package/dist/esm/{query_akash-745M5I3X.js → query_akash-LK7RYFHN.js} +4 -15
- package/dist/esm/query_akash-LK7RYFHN.js.map +7 -0
- package/dist/esm/{query_akash-EHAEDYOH.js → query_akash-XYBD7HGP.js} +3 -3
- package/dist/esm/{service_akash-2VS4VW6P.js → service_akash-KSM5UR43.js} +13 -3
- package/dist/esm/service_akash-KSM5UR43.js.map +7 -0
- package/dist/esm/{service_akash-VFDQVHZD.js → service_akash-WLSC2YDO.js} +3 -3
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/generated/createNodeSDK.d.ts +12 -11
- package/dist/types/generated/protos/akash/bme/v1/events.d.ts +34 -1
- package/dist/types/generated/protos/akash/bme/v1/filters.d.ts +1 -1
- package/dist/types/generated/protos/akash/bme/v1/msgs.d.ts +6 -8
- package/dist/types/generated/protos/akash/bme/v1/service_akash.d.ts +7 -1
- package/dist/types/generated/protos/akash/bme/v1/types.d.ts +32 -0
- package/dist/types/generated/protos/akash/escrow/types/v1/deposit.d.ts +0 -2
- package/dist/types/generated/protos/akash/escrow/v1/authz.d.ts +7 -0
- package/dist/types/generated/protos/akash/oracle/v1/params.d.ts +0 -20
- package/dist/types/generated/protos/akash/oracle/v1/query.d.ts +0 -16
- package/dist/types/generated/protos/akash/oracle/v1/query_akash.d.ts +1 -8
- package/dist/types/generated/protos/index.akash.v1.d.ts +5 -5
- package/dist/types/sdk/chain/createChainNodeSDK.d.ts +1 -1
- package/dist/types/sdk/chain/createChainNodeWebSDK.d.ts +1 -1
- package/dist/types/utils/yaml.d.ts +1 -0
- package/package.json +1 -1
- package/dist/esm/chunk-CT7AHZAH.js.map +0 -7
- package/dist/esm/chunk-DJASDN6A.js.map +0 -7
- package/dist/esm/chunk-LGAXM6RX.js.map +0 -7
- package/dist/esm/chunk-OL4JUIQC.js.map +0 -7
- package/dist/esm/chunk-UFJRY3ID.js.map +0 -7
- package/dist/esm/query_akash-745M5I3X.js.map +0 -7
- package/dist/esm/service_akash-2VS4VW6P.js.map +0 -7
- /package/dist/esm/{chunk-ZYQHH55Q.js.map → chunk-CWUY6LIH.js.map} +0 -0
- /package/dist/esm/{chunk-EKFJV4QU.js.map → chunk-DZA4DZ5G.js.map} +0 -0
- /package/dist/esm/{chunk-6CIH635G.js.map → chunk-FXRP7A3E.js.map} +0 -0
- /package/dist/esm/{chunk-6FPGPRCO.js.map → chunk-OAFZZVHG.js.map} +0 -0
- /package/dist/esm/{chunk-BWGYKJLS.js.map → chunk-V2U5JQHJ.js.map} +0 -0
- /package/dist/esm/{chunk-MVADLHLI.js.map → chunk-VG4MSYO3.js.map} +0 -0
- /package/dist/esm/{query_akash-LW3YJGS6.js.map → query_akash-2XAWK4QC.js.map} +0 -0
- /package/dist/esm/{query_akash-FYNRLU72.js.map → query_akash-347IWP76.js.map} +0 -0
- /package/dist/esm/{query_akash-4OVOGRBT.js.map → query_akash-GKNMAC72.js.map} +0 -0
- /package/dist/esm/{query_akash-EHAEDYOH.js.map → query_akash-XYBD7HGP.js.map} +0 -0
- /package/dist/esm/{service_akash-VFDQVHZD.js.map → service_akash-WLSC2YDO.js.map} +0 -0
|
@@ -927,106 +927,6 @@ var AggregatedPrice = patched(_AggregatedPrice);
|
|
|
927
927
|
// src/generated/protos/akash/oracle/v1/params.ts
|
|
928
928
|
import { BinaryReader as BinaryReader2, BinaryWriter as BinaryWriter2 } from "@bufbuild/protobuf/wire";
|
|
929
929
|
import Long2 from "long";
|
|
930
|
-
function createBasePythContractParams() {
|
|
931
|
-
return { aktPriceFeedId: "" };
|
|
932
|
-
}
|
|
933
|
-
var PythContractParams = {
|
|
934
|
-
$type: "akash.oracle.v1.PythContractParams",
|
|
935
|
-
encode(message, writer = new BinaryWriter2()) {
|
|
936
|
-
if (message.aktPriceFeedId !== "") {
|
|
937
|
-
writer.uint32(10).string(message.aktPriceFeedId);
|
|
938
|
-
}
|
|
939
|
-
return writer;
|
|
940
|
-
},
|
|
941
|
-
decode(input, length) {
|
|
942
|
-
const reader = input instanceof BinaryReader2 ? input : new BinaryReader2(input);
|
|
943
|
-
const end = length === void 0 ? reader.len : reader.pos + length;
|
|
944
|
-
const message = createBasePythContractParams();
|
|
945
|
-
while (reader.pos < end) {
|
|
946
|
-
const tag = reader.uint32();
|
|
947
|
-
switch (tag >>> 3) {
|
|
948
|
-
case 1: {
|
|
949
|
-
if (tag !== 10) {
|
|
950
|
-
break;
|
|
951
|
-
}
|
|
952
|
-
message.aktPriceFeedId = reader.string();
|
|
953
|
-
continue;
|
|
954
|
-
}
|
|
955
|
-
}
|
|
956
|
-
if ((tag & 7) === 4 || tag === 0) {
|
|
957
|
-
break;
|
|
958
|
-
}
|
|
959
|
-
reader.skip(tag & 7);
|
|
960
|
-
}
|
|
961
|
-
return message;
|
|
962
|
-
},
|
|
963
|
-
fromJSON(object) {
|
|
964
|
-
return { aktPriceFeedId: isSet(object.akt_price_feed_id) ? globalThis.String(object.akt_price_feed_id) : "" };
|
|
965
|
-
},
|
|
966
|
-
toJSON(message) {
|
|
967
|
-
const obj = {};
|
|
968
|
-
if (message.aktPriceFeedId !== "") {
|
|
969
|
-
obj.akt_price_feed_id = message.aktPriceFeedId;
|
|
970
|
-
}
|
|
971
|
-
return obj;
|
|
972
|
-
},
|
|
973
|
-
fromPartial(object) {
|
|
974
|
-
const message = createBasePythContractParams();
|
|
975
|
-
message.aktPriceFeedId = object.aktPriceFeedId ?? "";
|
|
976
|
-
return message;
|
|
977
|
-
}
|
|
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
|
-
};
|
|
1030
930
|
function createBaseParams() {
|
|
1031
931
|
return {
|
|
1032
932
|
sources: [],
|
|
@@ -1172,8 +1072,6 @@ export {
|
|
|
1172
1072
|
QueryPricesResponse,
|
|
1173
1073
|
PriceDataState,
|
|
1174
1074
|
AggregatedPrice,
|
|
1175
|
-
PythContractParams,
|
|
1176
|
-
WormholeContractParams,
|
|
1177
1075
|
Params
|
|
1178
1076
|
};
|
|
1179
|
-
//# sourceMappingURL=chunk-
|
|
1077
|
+
//# sourceMappingURL=chunk-XCOULB5P.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/**\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
|
-
"names": ["BinaryReader", "BinaryWriter", "Long", "
|
|
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/** 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 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
|
+
"names": ["BinaryReader", "BinaryWriter", "Long", "Long", "BinaryWriter", "BinaryReader"]
|
|
7
7
|
}
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
AggregatedPrice,
|
|
3
3
|
Params,
|
|
4
4
|
PriceHealth
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-XCOULB5P.js";
|
|
6
6
|
import {
|
|
7
7
|
isSet
|
|
8
8
|
} from "./chunk-35BIJBXD.js";
|
|
@@ -93,136 +93,6 @@ var QueryParamsResponse = {
|
|
|
93
93
|
return message;
|
|
94
94
|
}
|
|
95
95
|
};
|
|
96
|
-
function createBaseQueryPriceFeedConfigRequest() {
|
|
97
|
-
return { denom: "" };
|
|
98
|
-
}
|
|
99
|
-
var QueryPriceFeedConfigRequest = {
|
|
100
|
-
$type: "akash.oracle.v1.QueryPriceFeedConfigRequest",
|
|
101
|
-
encode(message, writer = new BinaryWriter()) {
|
|
102
|
-
if (message.denom !== "") {
|
|
103
|
-
writer.uint32(10).string(message.denom);
|
|
104
|
-
}
|
|
105
|
-
return writer;
|
|
106
|
-
},
|
|
107
|
-
decode(input, length) {
|
|
108
|
-
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
|
|
109
|
-
const end = length === void 0 ? reader.len : reader.pos + length;
|
|
110
|
-
const message = createBaseQueryPriceFeedConfigRequest();
|
|
111
|
-
while (reader.pos < end) {
|
|
112
|
-
const tag = reader.uint32();
|
|
113
|
-
switch (tag >>> 3) {
|
|
114
|
-
case 1: {
|
|
115
|
-
if (tag !== 10) {
|
|
116
|
-
break;
|
|
117
|
-
}
|
|
118
|
-
message.denom = reader.string();
|
|
119
|
-
continue;
|
|
120
|
-
}
|
|
121
|
-
}
|
|
122
|
-
if ((tag & 7) === 4 || tag === 0) {
|
|
123
|
-
break;
|
|
124
|
-
}
|
|
125
|
-
reader.skip(tag & 7);
|
|
126
|
-
}
|
|
127
|
-
return message;
|
|
128
|
-
},
|
|
129
|
-
fromJSON(object) {
|
|
130
|
-
return { denom: isSet(object.denom) ? globalThis.String(object.denom) : "" };
|
|
131
|
-
},
|
|
132
|
-
toJSON(message) {
|
|
133
|
-
const obj = {};
|
|
134
|
-
if (message.denom !== "") {
|
|
135
|
-
obj.denom = message.denom;
|
|
136
|
-
}
|
|
137
|
-
return obj;
|
|
138
|
-
},
|
|
139
|
-
fromPartial(object) {
|
|
140
|
-
const message = createBaseQueryPriceFeedConfigRequest();
|
|
141
|
-
message.denom = object.denom ?? "";
|
|
142
|
-
return message;
|
|
143
|
-
}
|
|
144
|
-
};
|
|
145
|
-
function createBaseQueryPriceFeedConfigResponse() {
|
|
146
|
-
return { priceFeedId: "", pythContractAddress: "", enabled: false };
|
|
147
|
-
}
|
|
148
|
-
var QueryPriceFeedConfigResponse = {
|
|
149
|
-
$type: "akash.oracle.v1.QueryPriceFeedConfigResponse",
|
|
150
|
-
encode(message, writer = new BinaryWriter()) {
|
|
151
|
-
if (message.priceFeedId !== "") {
|
|
152
|
-
writer.uint32(10).string(message.priceFeedId);
|
|
153
|
-
}
|
|
154
|
-
if (message.pythContractAddress !== "") {
|
|
155
|
-
writer.uint32(18).string(message.pythContractAddress);
|
|
156
|
-
}
|
|
157
|
-
if (message.enabled !== false) {
|
|
158
|
-
writer.uint32(24).bool(message.enabled);
|
|
159
|
-
}
|
|
160
|
-
return writer;
|
|
161
|
-
},
|
|
162
|
-
decode(input, length) {
|
|
163
|
-
const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
|
|
164
|
-
const end = length === void 0 ? reader.len : reader.pos + length;
|
|
165
|
-
const message = createBaseQueryPriceFeedConfigResponse();
|
|
166
|
-
while (reader.pos < end) {
|
|
167
|
-
const tag = reader.uint32();
|
|
168
|
-
switch (tag >>> 3) {
|
|
169
|
-
case 1: {
|
|
170
|
-
if (tag !== 10) {
|
|
171
|
-
break;
|
|
172
|
-
}
|
|
173
|
-
message.priceFeedId = reader.string();
|
|
174
|
-
continue;
|
|
175
|
-
}
|
|
176
|
-
case 2: {
|
|
177
|
-
if (tag !== 18) {
|
|
178
|
-
break;
|
|
179
|
-
}
|
|
180
|
-
message.pythContractAddress = reader.string();
|
|
181
|
-
continue;
|
|
182
|
-
}
|
|
183
|
-
case 3: {
|
|
184
|
-
if (tag !== 24) {
|
|
185
|
-
break;
|
|
186
|
-
}
|
|
187
|
-
message.enabled = reader.bool();
|
|
188
|
-
continue;
|
|
189
|
-
}
|
|
190
|
-
}
|
|
191
|
-
if ((tag & 7) === 4 || tag === 0) {
|
|
192
|
-
break;
|
|
193
|
-
}
|
|
194
|
-
reader.skip(tag & 7);
|
|
195
|
-
}
|
|
196
|
-
return message;
|
|
197
|
-
},
|
|
198
|
-
fromJSON(object) {
|
|
199
|
-
return {
|
|
200
|
-
priceFeedId: isSet(object.price_feed_id) ? globalThis.String(object.price_feed_id) : "",
|
|
201
|
-
pythContractAddress: isSet(object.pyth_contract_address) ? globalThis.String(object.pyth_contract_address) : "",
|
|
202
|
-
enabled: isSet(object.enabled) ? globalThis.Boolean(object.enabled) : false
|
|
203
|
-
};
|
|
204
|
-
},
|
|
205
|
-
toJSON(message) {
|
|
206
|
-
const obj = {};
|
|
207
|
-
if (message.priceFeedId !== "") {
|
|
208
|
-
obj.price_feed_id = message.priceFeedId;
|
|
209
|
-
}
|
|
210
|
-
if (message.pythContractAddress !== "") {
|
|
211
|
-
obj.pyth_contract_address = message.pythContractAddress;
|
|
212
|
-
}
|
|
213
|
-
if (message.enabled !== false) {
|
|
214
|
-
obj.enabled = message.enabled;
|
|
215
|
-
}
|
|
216
|
-
return obj;
|
|
217
|
-
},
|
|
218
|
-
fromPartial(object) {
|
|
219
|
-
const message = createBaseQueryPriceFeedConfigResponse();
|
|
220
|
-
message.priceFeedId = object.priceFeedId ?? "";
|
|
221
|
-
message.pythContractAddress = object.pythContractAddress ?? "";
|
|
222
|
-
message.enabled = object.enabled ?? false;
|
|
223
|
-
return message;
|
|
224
|
-
}
|
|
225
|
-
};
|
|
226
96
|
function createBaseQueryAggregatedPriceRequest() {
|
|
227
97
|
return { denom: "" };
|
|
228
98
|
}
|
|
@@ -342,9 +212,7 @@ var QueryAggregatedPriceResponse = {
|
|
|
342
212
|
export {
|
|
343
213
|
QueryParamsRequest,
|
|
344
214
|
QueryParamsResponse,
|
|
345
|
-
QueryPriceFeedConfigRequest,
|
|
346
|
-
QueryPriceFeedConfigResponse,
|
|
347
215
|
QueryAggregatedPriceRequest,
|
|
348
216
|
QueryAggregatedPriceResponse
|
|
349
217
|
};
|
|
350
|
-
//# sourceMappingURL=chunk-
|
|
218
|
+
//# sourceMappingURL=chunk-Z3KCQDCI.js.map
|